Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'tests/org.eclipse.wst.wsdl.tests.performance/.settings/org.eclipse.jdt.core.prefs')
-rw-r--r--tests/org.eclipse.wst.wsdl.tests.performance/.settings/org.eclipse.jdt.core.prefs7
1 files changed, 0 insertions, 7 deletions
diff --git a/tests/org.eclipse.wst.wsdl.tests.performance/.settings/org.eclipse.jdt.core.prefs b/tests/org.eclipse.wst.wsdl.tests.performance/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index 485fafafb..000000000
--- a/tests/org.eclipse.wst.wsdl.tests.performance/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,7 +0,0 @@
-#Sun Jun 03 00:41:44 EDT 2007
-eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.2
-org.eclipse.jdt.core.compiler.compliance=1.4
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=warning
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=warning
-org.eclipse.jdt.core.compiler.source=1.3

Back to the top

/projectfiles/style1.xsl?h=v200906231448'>tests/org.eclipse.wst.xsl.core.tests/projectfiles/style1.xsl28
-rw-r--r--tests/org.eclipse.wst.xsl.core.tests/src/org/eclipse/wst/xsl/core/internal/utils/tests/TestXMLContentType.java43
-rw-r--r--tests/org.eclipse.wst.xsl.core.tests/src/org/eclipse/wst/xsl/core/tests/XSLCoreTestSuite.java39
-rw-r--r--tests/org.eclipse.wst.xsl.core.tests/src/org/eclipse/wst/xsl/core/tests/XSLCoreTestsPlugin.java62
-rw-r--r--tests/org.eclipse.wst.xsl.core.tests/src/org/eclipse/wst/xsl/internal/core/tests/AbstractValidationTest.java229
-rw-r--r--tests/org.eclipse.wst.xsl.core.tests/src/org/eclipse/wst/xsl/internal/core/tests/TestIncludedTemplates.java19
-rw-r--r--tests/org.eclipse.wst.xsl.core.tests/src/org/eclipse/wst/xsl/internal/core/tests/TestStructuredTextPartitionerForXSL.java25
-rw-r--r--tests/org.eclipse.wst.xsl.core.tests/src/org/eclipse/wst/xsl/internal/core/tests/TestXSLCore.java20
-rw-r--r--tests/org.eclipse.wst.xsl.core.tests/src/org/eclipse/wst/xsl/internal/model/tests/AbstractModelTest.java229
-rw-r--r--tests/org.eclipse.wst.xsl.core.tests/src/org/eclipse/wst/xsl/internal/model/tests/TestStylesheet.java110
-rw-r--r--tests/org.eclipse.wst.xsl.core.tests/src/org/eclipse/wst/xsl/internal/model/tests/TestStylesheetModel.java48
-rw-r--r--tests/org.eclipse.wst.xsl.core.tests/test.xml115
-rw-r--r--tests/org.eclipse.wst.xsl.launching.tests/.classpath8
-rw-r--r--tests/org.eclipse.wst.xsl.launching.tests/.project28
-rw-r--r--tests/org.eclipse.wst.xsl.launching.tests/.settings/org.eclipse.core.resources.prefs3
-rw-r--r--tests/org.eclipse.wst.xsl.launching.tests/.settings/org.eclipse.jdt.core.prefs7
-rw-r--r--tests/org.eclipse.wst.xsl.launching.tests/.settings/org.eclipse.pde.prefs16
-rw-r--r--tests/org.eclipse.wst.xsl.launching.tests/META-INF/MANIFEST.MF33
-rw-r--r--tests/org.eclipse.wst.xsl.launching.tests/about.html34
-rw-r--r--tests/org.eclipse.wst.xsl.launching.tests/build.properties14
-rw-r--r--tests/org.eclipse.wst.xsl.launching.tests/plugin.properties3
-rw-r--r--tests/org.eclipse.wst.xsl.launching.tests/test-launching-src/org/eclipse/wst/xsl/launching/tests/AbstractLaunchingTest.java229
-rw-r--r--tests/org.eclipse.wst.xsl.launching.tests/test-launching-src/org/eclipse/wst/xsl/launching/tests/Activator.java71
-rw-r--r--tests/org.eclipse.wst.xsl.launching.tests/test-launching-src/org/eclipse/wst/xsl/launching/tests/LaunchingSuite.java53
-rw-r--r--tests/org.eclipse.wst.xsl.launching.tests/test-launching-src/org/eclipse/wst/xsl/launching/tests/Misc.java75
-rw-r--r--tests/org.eclipse.wst.xsl.launching.tests/test-launching-src/org/eclipse/wst/xsl/launching/tests/MockXSLLaunchShortCut.java38
-rw-r--r--tests/org.eclipse.wst.xsl.launching.tests/test-launching-src/org/eclipse/wst/xsl/launching/tests/TestEnvironment.java138
-rwxr-xr-xtests/org.eclipse.wst.xsl.launching.tests/test-launching-src/org/eclipse/wst/xsl/launching/tests/testcase/LaunchShortcutTests.java99
-rw-r--r--tests/org.eclipse.wst.xsl.launching.tests/test-launching-src/org/eclipse/wst/xsl/launching/tests/testcase/MockInputFileBlock.java28
-rw-r--r--tests/org.eclipse.wst.xsl.launching.tests/test-launching-src/org/eclipse/wst/xsl/launching/tests/testcase/MockResultRunnable.java30
-rw-r--r--tests/org.eclipse.wst.xsl.launching.tests/test-launching-src/org/eclipse/wst/xsl/launching/tests/testcase/ResultRunnableTest.java115
-rw-r--r--tests/org.eclipse.wst.xsl.launching.tests/test-launching-src/org/eclipse/wst/xsl/launching/tests/testcase/TestInputFileBlock.java38
-rw-r--r--tests/org.eclipse.wst.xsl.launching.tests/test-launching-src/org/eclipse/wst/xsl/launching/tests/testcase/XSLLaunchingTests.java91
-rw-r--r--tests/org.eclipse.wst.xsl.launching.tests/test.xml115
-rw-r--r--tests/org.eclipse.wst.xsl.launching.tests/testFiles/SimpleTransform.launch16
-rw-r--r--tests/org.eclipse.wst.xsl.launching.tests/testFiles/TransformComments.launch16
-rw-r--r--tests/org.eclipse.wst.xsl.launching.tests/xsl-test-resources/org/eclipse/wst/xsl/launching/tests/1-input.xml4
-rw-r--r--tests/org.eclipse.wst.xsl.launching.tests/xsl-test-resources/org/eclipse/wst/xsl/launching/tests/1-transform.xsl7
-rw-r--r--tests/org.eclipse.wst.xsl.launching.tests/xsl-test-resources/org/eclipse/wst/xsl/launching/tests/testCommentInput.out.xml6
-rw-r--r--tests/org.eclipse.wst.xsl.launching.tests/xsl-test-resources/org/eclipse/wst/xsl/launching/tests/testCommentInput.xml7
-rw-r--r--tests/org.eclipse.wst.xsl.launching.tests/xsl-test-resources/org/eclipse/wst/xsl/launching/tests/testComments.xsl7
-rw-r--r--tests/org.eclipse.wst.xsl.launching.tests/xsl-test-resources/org/eclipse/wst/xsl/launching/tests/testCommentsExpected.xml5
-rw-r--r--tests/org.eclipse.wst.xsl.tests/.classpath7
-rw-r--r--tests/org.eclipse.wst.xsl.tests/.project28
-rw-r--r--tests/org.eclipse.wst.xsl.tests/.settings/org.eclipse.jdt.core.prefs7
-rw-r--r--tests/org.eclipse.wst.xsl.tests/META-INF/MANIFEST.MF19
-rw-r--r--tests/org.eclipse.wst.xsl.tests/about.html34
-rw-r--r--tests/org.eclipse.wst.xsl.tests/build.properties19
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/0.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/10.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/100.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/101.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/102.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/103.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/104.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/105.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/106.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/107.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/108.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/109.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/10a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/10b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/10c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/10d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/10e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/10f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/11.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/110.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/111.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/112.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/113.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/114.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/115.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/116.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/117.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/118.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/119.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/11a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/11b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/11c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/11d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/11e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/11f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/12.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/120.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/121.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/122.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/123.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/124.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/125.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/126.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/127.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/128.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/129.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/12a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/12b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/12c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/12d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/12e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/12f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/13.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/130.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/131.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/132.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/133.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/134.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/135.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/136.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/137.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/138.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/139.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/13a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/13b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/13c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/13d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/13e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/13f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/14.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/140.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/141.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/142.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/143.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/144.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/145.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/146.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/147.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/148.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/149.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/14a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/14b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/14c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/14d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/14e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/14f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/15.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/150.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/151.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/152.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/153.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/154.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/155.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/156.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/157.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/158.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/159.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/15a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/15b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/15c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/15d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/15e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/15f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/16.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/160.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/161.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/162.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/163.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/164.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/165.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/166.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/167.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/168.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/169.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/16a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/16b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/16c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/16d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/16e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/16f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/17.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/170.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/171.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/172.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/173.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/174.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/175.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/176.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/177.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/178.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/179.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/17a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/17b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/17c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/17d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/17e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/17f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/18.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/180.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/181.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/182.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/183.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/184.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/185.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/186.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/187.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/188.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/189.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/18a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/18b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/18c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/18d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/18e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/18f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/19.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/190.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/191.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/192.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/193.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/194.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/195.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/196.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/197.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/198.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/199.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/19a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/19b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/19c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/19d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/19e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/19f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1a0.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1a1.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1a2.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1a3.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1a4.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1a5.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1a6.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1a7.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1a8.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1a9.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1aa.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1ab.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1ac.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1ad.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1ae.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1af.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1b0.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1b1.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1b2.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1b3.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1b4.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1b5.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1b6.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1b7.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1b8.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1b9.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1ba.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1bb.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1bc.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1bd.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1be.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1bf.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1c0.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1c1.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1c2.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1c3.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1c4.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1c5.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1c6.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1c7.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1c8.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1c9.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1ca.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1cb.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1cc.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1cd.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1ce.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1cf.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1d0.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1d1.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1d2.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1d3.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1d4.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1d5.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1d6.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1d7.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1d8.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1d9.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1da.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1db.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1dc.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1dd.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1de.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1df.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1e0.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1e1.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1e2.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1e3.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1e4.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1e5.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1e6.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1e7.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1e8.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1e9.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1ea.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1eb.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1ec.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1ed.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1ee.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1ef.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1f0.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1f1.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1f2.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1f3.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1f4.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1f5.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1f6.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1f7.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1f8.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1f9.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1fa.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1fb.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1fc.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1fd.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1fe.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1ff.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/20.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/200.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/201.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/202.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/203.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/204.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/205.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/206.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/207.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/208.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/209.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/20a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/20b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/20c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/20d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/20e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/20f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/21.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/210.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/211.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/212.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/213.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/214.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/215.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/216.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/217.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/218.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/219.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/21a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/21b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/21c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/21d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/21e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/21f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/22.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/220.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/221.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/222.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/223.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/224.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/225.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/226.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/227.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/228.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/229.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/22a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/22b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/22c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/22d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/22e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/22f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/23.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/230.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/231.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/232.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/233.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/234.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/235.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/236.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/237.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/238.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/239.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/23a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/23b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/23c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/23d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/23e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/23f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/24.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/240.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/241.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/242.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/243.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/244.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/245.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/246.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/247.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/248.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/249.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/24a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/24b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/24c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/24d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/24e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/24f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/25.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/250.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/251.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/252.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/253.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/254.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/255.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/256.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/257.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/258.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/259.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/25a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/25b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/25c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/25d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/25e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/25f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/26.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/260.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/261.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/262.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/263.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/264.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/265.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/266.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/267.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/268.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/269.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/26a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/26b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/26c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/26d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/26e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/26f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/27.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/270.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/271.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/272.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/273.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/274.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/275.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/276.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/277.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/278.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/279.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/27a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/27b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/27c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/27d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/27e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/27f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/28.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/280.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/281.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/282.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/283.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/284.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/285.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/286.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/287.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/288.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/289.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/28a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/28b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/28c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/28d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/28e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/28f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/29.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/290.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/291.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/292.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/293.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/294.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/295.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/296.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/297.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/298.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/299.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/29a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/29b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/29c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/29d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/29e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/29f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2a0.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2a1.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2a2.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2a3.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2a4.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2a5.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2a6.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2a7.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2a8.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2a9.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2aa.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2ab.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2ac.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2ad.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2ae.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2af.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2b0.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2b1.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2b2.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2b3.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2b4.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2b5.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2b6.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2b7.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2b8.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2b9.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2ba.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2bb.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2bc.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2bd.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2be.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2bf.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2c0.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2c1.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2c2.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2c3.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2c4.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2c5.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2c6.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2c7.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2c8.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2c9.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2ca.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2cb.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2cc.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2cd.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2ce.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2cf.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2d0.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2d1.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2d2.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2d3.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2d4.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2d5.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2d6.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2d7.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2d8.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2d9.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2da.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2db.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2dc.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2dd.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2de.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2df.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2e0.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2e1.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2e2.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2e3.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2e4.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2e5.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2e6.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2e7.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2e8.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2e9.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2ea.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2eb.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2ec.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2ed.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2ee.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2ef.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2f0.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2f1.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2f2.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2f3.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2f4.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2f5.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2f6.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2f7.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2f8.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2f9.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2fa.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2fb.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2fc.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2fd.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2fe.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/2ff.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/30.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/300.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/301.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/302.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/303.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/304.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/305.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/306.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/307.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/308.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/309.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/30a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/30b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/30c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/30d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/30e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/30f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/31.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/310.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/311.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/312.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/313.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/314.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/315.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/316.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/317.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/318.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/319.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/31a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/31b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/31c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/31d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/31e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/31f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/32.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/320.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/321.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/322.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/323.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/324.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/325.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/326.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/327.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/328.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/329.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/32a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/32b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/32c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/32d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/32e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/32f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/33.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/330.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/331.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/332.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/333.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/334.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/335.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/336.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/337.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/338.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/339.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/33a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/33b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/33c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/33d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/33e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/33f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/34.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/340.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/341.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/342.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/343.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/344.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/345.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/346.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/347.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/348.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/349.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/34a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/34b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/34c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/34d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/34e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/34f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/35.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/350.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/351.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/352.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/353.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/354.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/355.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/356.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/357.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/358.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/359.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/35a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/35b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/35c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/35d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/35e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/35f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/36.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/360.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/361.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/362.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/363.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/364.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/365.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/366.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/367.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/368.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/369.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/36a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/36b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/36c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/36d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/36e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/36f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/37.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/370.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/371.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/372.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/373.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/374.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/375.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/376.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/377.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/378.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/379.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/37a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/37b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/37c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/37d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/37e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/37f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/38.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/380.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/381.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/382.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/383.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/384.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/385.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/386.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/387.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/388.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/389.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/38a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/38b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/38c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/38d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/38e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/38f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/39.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/390.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/391.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/392.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/393.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/394.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/395.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/396.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/397.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/398.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/399.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/39a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/39b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/39c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/39d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/39e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/39f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3a0.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3a1.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3a2.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3a3.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3a4.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3a5.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3a6.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3a7.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3a8.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3a9.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3aa.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3ab.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3ac.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3ad.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3ae.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3af.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3b0.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3b1.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3b2.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3b3.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3b4.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3b5.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3b6.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3b7.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3b8.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3b9.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3ba.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3bb.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3bc.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3bd.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3be.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3bf.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3c0.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3c1.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3c2.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3c3.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3c4.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3c5.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3c6.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3c7.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3c8.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3c9.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3ca.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3cb.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3cc.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3cd.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3ce.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3cf.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3d0.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3d1.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3d2.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3d3.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3d4.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3d5.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3d6.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3d7.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3d8.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3d9.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3da.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3db.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3dc.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3dd.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3de.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3df.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3e0.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3e1.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3e2.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3e3.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3e4.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3e5.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3e6.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3e7.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3e8.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3e9.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3ea.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3eb.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3ec.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3ed.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3ee.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3ef.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3f0.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3f1.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3f2.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3f3.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3f4.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3f5.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3f6.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3f7.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3f8.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3f9.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3fa.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3fb.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3fc.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3fd.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3fe.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/3ff.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/40.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/400.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/401.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/402.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/403.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/404.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/405.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/406.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/407.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/408.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/409.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/40a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/40b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/40c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/40d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/40e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/40f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/41.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/410.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/411.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/412.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/413.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/414.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/415.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/416.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/417.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/418.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/419.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/41a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/41b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/41c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/41d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/41e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/41f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/42.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/420.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/421.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/422.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/423.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/424.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/425.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/426.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/427.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/428.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/429.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/42a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/42b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/42c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/42d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/42e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/42f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/43.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/430.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/431.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/432.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/433.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/434.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/435.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/436.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/437.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/438.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/439.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/43a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/43b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/43c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/43d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/43e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/43f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/44.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/440.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/441.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/442.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/443.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/444.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/445.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/446.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/447.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/448.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/449.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/44a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/44b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/44c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/44d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/44e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/44f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/45.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/450.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/451.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/452.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/453.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/454.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/455.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/456.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/457.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/458.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/459.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/45a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/45b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/45c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/45d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/45e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/45f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/46.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/460.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/461.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/462.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/463.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/464.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/465.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/466.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/467.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/468.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/469.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/46a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/46b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/46c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/46d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/46e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/46f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/47.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/470.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/471.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/472.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/473.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/474.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/475.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/476.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/477.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/478.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/479.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/47a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/47b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/47c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/47d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/47e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/47f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/48.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/480.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/481.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/482.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/483.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/484.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/485.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/486.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/487.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/488.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/489.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/48a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/48b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/48c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/48d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/48e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/48f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/49.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/490.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/491.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/492.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/493.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/494.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/495.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/496.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/497.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/498.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/499.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/49a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/49b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/49c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/49d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/49e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/49f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4a0.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4a1.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4a2.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4a3.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4a4.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4a5.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4a6.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4a7.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4a8.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4a9.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4aa.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4ab.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4ac.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4ad.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4ae.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4af.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4b0.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4b1.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4b2.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4b3.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4b4.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4b5.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4b6.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4b7.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4b8.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4b9.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4ba.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4bb.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4bc.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4bd.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4be.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4bf.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4c0.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4c1.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4c2.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4c3.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4c4.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4c5.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4c6.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4c7.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4c8.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4c9.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4ca.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4cb.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4cc.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4cd.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4ce.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4cf.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4d0.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4d1.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4d2.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4d3.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4d4.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4d5.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4d6.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4d7.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4d8.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4d9.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4da.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4db.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4dc.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4dd.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4de.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4df.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4e0.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4e1.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4e2.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4e3.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4e4.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4e5.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4e6.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4e7.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4e8.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4e9.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4ea.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4eb.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4ec.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4ed.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4ee.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4ef.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4f0.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4f1.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4f2.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4f3.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4f4.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4f5.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4f6.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4f7.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4f8.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4f9.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4fa.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4fb.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4fc.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4fd.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4fe.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/4ff.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/50.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/500.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/501.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/502.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/503.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/504.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/505.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/506.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/507.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/508.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/509.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/50a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/50b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/50c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/50d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/50e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/50f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/51.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/510.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/511.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/512.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/513.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/514.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/515.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/516.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/517.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/518.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/519.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/51a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/51b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/51c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/51d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/51e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/51f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/52.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/520.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/521.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/522.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/523.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/524.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/525.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/526.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/527.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/528.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/529.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/52a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/52b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/52c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/52d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/52e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/52f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/53.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/530.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/531.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/532.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/533.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/534.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/535.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/536.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/537.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/538.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/539.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/53a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/53b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/53c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/53d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/53e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/53f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/54.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/540.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/541.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/542.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/543.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/544.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/545.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/546.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/547.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/548.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/549.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/54a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/54b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/54c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/54d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/54e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/54f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/55.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/550.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/551.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/552.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/553.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/554.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/555.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/556.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/557.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/558.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/559.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/55a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/55b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/55c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/55d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/55e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/55f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/56.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/560.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/561.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/562.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/563.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/564.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/565.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/566.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/567.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/568.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/569.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/56a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/56b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/56c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/56d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/56e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/56f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/57.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/570.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/571.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/572.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/573.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/574.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/575.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/576.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/577.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/578.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/579.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/57a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/57b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/57c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/57d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/57e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/57f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/58.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/580.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/581.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/582.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/583.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/584.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/585.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/586.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/587.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/588.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/589.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/58a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/58b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/58c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/58d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/58e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/58f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/59.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/590.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/591.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/592.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/593.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/594.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/595.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/596.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/597.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/598.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/599.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/59a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/59b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/59c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/59d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/59e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/59f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5a0.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5a1.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5a2.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5a3.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5a4.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5a5.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5a6.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5a7.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5a8.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5a9.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5aa.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5ab.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5ac.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5ad.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5ae.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5af.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5b0.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5b1.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5b2.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5b3.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5b4.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5b5.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5b6.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5b7.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5b8.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5b9.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5ba.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5bb.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5bc.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5bd.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5be.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5bf.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5c0.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5c1.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5c2.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5c3.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5c4.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5c5.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5c6.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5c7.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5c8.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5c9.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5ca.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5cb.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5cc.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5cd.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5ce.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5cf.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5d0.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5d1.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5d2.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5d3.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5d4.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5d5.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5d6.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5d7.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5d8.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5d9.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5da.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5db.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5dc.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5dd.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5de.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5df.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5e0.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5e1.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5e2.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5e3.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5e4.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5e5.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5e6.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5e7.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5e8.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5e9.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5ea.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5eb.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5ec.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5ed.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5ee.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5ef.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5f0.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5f1.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5f2.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5f3.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5f4.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5f5.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5f6.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5f7.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5f8.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5f9.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5fa.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5fb.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5fc.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5fd.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5fe.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/5ff.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/6.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/60.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/600.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/601.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/602.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/603.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/604.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/605.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/606.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/607.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/608.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/609.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/60a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/60b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/60c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/60d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/60e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/60f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/61.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/610.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/611.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/612.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/613.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/614.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/615.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/616.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/617.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/618.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/619.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/62.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/63.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/64.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/65.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/66.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/67.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/68.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/69.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/6a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/6b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/6c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/6d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/6e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/6f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/7.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/70.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/71.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/72.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/73.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/74.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/75.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/76.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/77.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/78.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/79.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/7a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/7b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/7c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/7d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/7e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/7f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/8.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/80.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/81.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/82.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/83.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/84.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/85.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/86.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/87.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/88.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/89.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/8a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/8b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/8c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/8d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/8e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/8f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/9.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/90.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/91.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/92.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/93.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/94.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/95.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/96.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/97.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/98.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/99.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/9a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/9b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/9c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/9d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/9e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/9f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/a.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/a0.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/a1.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/a2.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/a3.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/a4.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/a5.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/a6.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/a7.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/a8.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/a9.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/aa.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/ab.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/ac.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/ad.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/ae.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/af.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/b.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/b0.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/b1.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/b2.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/b3.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/b4.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/b5.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/b6.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/b7.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/b8.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/b9.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/ba.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/bb.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/bc.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/bd.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/be.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/bf.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/c.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/c0.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/c1.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/c2.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/c3.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/c4.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/c5.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/c6.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/c7.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/c8.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/c9.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/ca.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/cb.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/cc.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/cd.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/ce.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/cf.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/d.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/d0.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/d1.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/d2.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/d3.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/d4.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/d5.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/d6.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/d7.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/d8.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/d9.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/da.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/db.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/dc.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/dd.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/de.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/df.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/e.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/e0.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/e1.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/e2.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/e3.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/e4.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/e5.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/e6.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/e7.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/e8.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/e9.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/ea.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/eb.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/ec.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/ed.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/ee.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/ef.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/f.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/f0.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/f1.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/f2.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/f3.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/f4.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/f5.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/f6.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/f7.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/f8.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/f9.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/fa.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/fb.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/fc.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/fd.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/fe.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/_files/ff.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/coverageReport/xslUnitTestCoverage.html1
-rw-r--r--tests/org.eclipse.wst.xsl.tests/plugin.properties13
-rw-r--r--tests/org.eclipse.wst.xsl.tests/src/org/eclipse/wst/xsl/tests/AllTestsSuite.java46
-rw-r--r--tests/org.eclipse.wst.xsl.tests/src/org/eclipse/wst/xsl/tests/XSLTestPlugin.java46
-rw-r--r--tests/org.eclipse.wst.xsl.tests/test.xml115
1630 files changed, 0 insertions, 4436 deletions
diff --git a/tests/org.eclipse.wst.xsl.core.tests/.classpath b/tests/org.eclipse.wst.xsl.core.tests/.classpath
deleted file mode 100644
index bf37251..0000000
--- a/tests/org.eclipse.wst.xsl.core.tests/.classpath
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
- <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins">
- <accessrules>
- <accessrule kind="accessible" pattern="**/internal/**"/>
- </accessrules>
- </classpathentry>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
- <classpathentry kind="src" path="src"/>
- <classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/tests/org.eclipse.wst.xsl.core.tests/.project b/tests/org.eclipse.wst.xsl.core.tests/.project
deleted file mode 100644
index cd1a756..0000000
--- a/tests/org.eclipse.wst.xsl.core.tests/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.wst.xsl.core.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/tests/org.eclipse.wst.xsl.core.tests/.settings/org.eclipse.jdt.core.prefs b/tests/org.eclipse.wst.xsl.core.tests/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index 3e6ccbe..0000000
--- a/tests/org.eclipse.wst.xsl.core.tests/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,7 +0,0 @@
-#Fri Apr 11 09:57:20 BST 2008
-eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
-org.eclipse.jdt.core.compiler.compliance=1.5
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.5
diff --git a/tests/org.eclipse.wst.xsl.core.tests/META-INF/MANIFEST.MF b/tests/org.eclipse.wst.xsl.core.tests/META-INF/MANIFEST.MF
deleted file mode 100644
index c4fbda9..0000000
--- a/tests/org.eclipse.wst.xsl.core.tests/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,19 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %pluginName
-Bundle-SymbolicName: org.eclipse.wst.xsl.core.tests
-Bundle-Version: 1.0.0.qualifier
-Bundle-Activator: org.eclipse.wst.xsl.core.tests.XSLCoreTestsPlugin
-Require-Bundle: org.eclipse.core.runtime;bundle-version="[3.4.0,4.0.0)",
- org.eclipse.core.resources;bundle-version="[3.4.0,4.0.0)",
- org.eclipse.wst.xsl.core;bundle-version="[1.0.0,2.0.0)",
- org.eclipse.wst.sse.core;bundle-version="[1.1.0,2.0.0)",
- org.eclipse.wst.xml.core;bundle-version="[1.1.0,2.0.0)",
- org.apache.xalan;bundle-version="[2.7.1,2.8.0)"
-Bundle-ActivationPolicy: lazy
-Bundle-RequiredExecutionEnvironment: J2SE-1.5
-Import-Package: junit.framework,
- org.eclipse.wst.xml.core.internal.validation.core
-Export-Package: org.eclipse.wst.xsl.core.tests;uses:="org.osgi.framework,junit.framework,org.eclipse.core.runtime",
- org.eclipse.wst.xsl.internal.core.tests;x-internal:=true
-Bundle-Localization: plugin
diff --git a/tests/org.eclipse.wst.xsl.core.tests/about.html b/tests/org.eclipse.wst.xsl.core.tests/about.html
deleted file mode 100644
index 2199df3..0000000
--- a/tests/org.eclipse.wst.xsl.core.tests/about.html
+++ /dev/null
@@ -1,34 +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">
-
-<H3>About This Content</H3>
-
-<P>June, 2008</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/org/documents/epl-v10.php">http://www.eclipse.org/org/documents/epl-v10.php</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
-and such source code may be obtained at
-<A href="http://www.eclipse.org/">http://www.eclipse.org/</A>.</P>
-
-</BODY>
-</HTML>
diff --git a/tests/org.eclipse.wst.xsl.core.tests/build.properties b/tests/org.eclipse.wst.xsl.core.tests/build.properties
deleted file mode 100644
index cc9a00a..0000000
--- a/tests/org.eclipse.wst.xsl.core.tests/build.properties
+++ /dev/null
@@ -1,8 +0,0 @@
-source.. = src/
-output.. = bin/
-bin.includes = META-INF/,\
- .,\
- projectfiles/,\
- bin/,\
- about.html,\
- plugin.properties
diff --git a/tests/org.eclipse.wst.xsl.core.tests/plugin.properties b/tests/org.eclipse.wst.xsl.core.tests/plugin.properties
deleted file mode 100644
index b801a96..0000000
--- a/tests/org.eclipse.wst.xsl.core.tests/plugin.properties
+++ /dev/null
@@ -1,2 +0,0 @@
-#Properties file for org.eclipse.wst.xsl.core.tests
-pluginName = XSL Core Tests Plug-in \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.core.tests/projectfiles/XSLT20Test.xsl b/tests/org.eclipse.wst.xsl.core.tests/projectfiles/XSLT20Test.xsl
deleted file mode 100644
index 0661940..0000000
--- a/tests/org.eclipse.wst.xsl.core.tests/projectfiles/XSLT20Test.xsl
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
- <xsl:template match="/">
- <!-- TODO: Auto-generated template -->
- </xsl:template>
-</xsl:stylesheet> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.core.tests/projectfiles/circularref.xsl b/tests/org.eclipse.wst.xsl.core.tests/projectfiles/circularref.xsl
deleted file mode 100644
index af5305f..0000000
--- a/tests/org.eclipse.wst.xsl.core.tests/projectfiles/circularref.xsl
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
-
- <xsl:include href="ref1.xsl"/>
-
- <xsl:template match="/">
- <!-- TODO: Auto-generated template -->
- </xsl:template>
-</xsl:stylesheet> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.core.tests/projectfiles/globalVariablesTest.xsl b/tests/org.eclipse.wst.xsl.core.tests/projectfiles/globalVariablesTest.xsl
deleted file mode 100644
index 3ca1ee2..0000000
--- a/tests/org.eclipse.wst.xsl.core.tests/projectfiles/globalVariablesTest.xsl
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- ******************************************************************************
- * Copyright (c) 2008 Standards for Technology in Automotive Retail 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:
- * David Carver - STAR - bug 243578 - initial API and implementation
- ******************************************************************************* -->
-<xsl:stylesheet version="1.0"
- xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
- xmlns:xhtml="http://www.w3c.org/1999/xhtml"
- exclude-result-prefixes="xhtml">
-
- <xsl:variable name="globalVariable">
- This is a global variable
- </xsl:variable>
- When xsl:i
- <xsl:param name="selectParam" select="'1'"/>
- <xsl:param name="contentParam">Test</xsl:param>
-
- <xsl:template name="func1">
- <xsl:param name="p1" select="1"/>
- <xsl:param name="p2"/>
- <literal>Hello World</literal>
- </xsl:template>
-
-</xsl:stylesheet> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.core.tests/projectfiles/lib1.xsl b/tests/org.eclipse.wst.xsl.core.tests/projectfiles/lib1.xsl
deleted file mode 100644
index f393e6d..0000000
--- a/tests/org.eclipse.wst.xsl.core.tests/projectfiles/lib1.xsl
+++ /dev/null
@@ -1,30 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- ******************************************************************************
- * Copyright (c) 2008 Chase Technology Ltd - http://www.chasetechnology.co.uk
- * 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:
- * Doug Satchwell (Chase Technology Ltd) - initial API and implementation
- ******************************************************************************* -->
-<xsl:stylesheet version="1.0"
- xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
-
- <xsl:template name="existsInlib1Only">
- <xsl:param name="p1"></xsl:param>
- <literal>Hello World</literal>
- </xsl:template>
-
- <xsl:template name="existsInStyle1AndLib1">
- <xsl:param name="p1"></xsl:param>
- <literal>Hello World</literal>
- </xsl:template>
-
- <xsl:template name="existsInLib2">
- <xsl:param name="p1"></xsl:param>
- <literal>Hello World</literal>
- </xsl:template>
-
-</xsl:stylesheet> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.core.tests/projectfiles/lib2.xsl b/tests/org.eclipse.wst.xsl.core.tests/projectfiles/lib2.xsl
deleted file mode 100644
index b391214..0000000
--- a/tests/org.eclipse.wst.xsl.core.tests/projectfiles/lib2.xsl
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- ******************************************************************************
- * Copyright (c) 2008 Chase Technology Ltd - http://www.chasetechnology.co.uk
- * 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:
- * Doug Satchwell (Chase Technology Ltd) - initial API and implementation
- ******************************************************************************* -->
-<xsl:stylesheet version="1.0"
- xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
-
- <xsl:template name="func1">
- <xsl:param name="p1" select="1"/>
- <xsl:param name="p2"/>
- <literal>Hello World</literal>
- </xsl:template>
-
-</xsl:stylesheet> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.core.tests/projectfiles/modeTest.xsl b/tests/org.eclipse.wst.xsl.core.tests/projectfiles/modeTest.xsl
deleted file mode 100644
index 30930f0..0000000
--- a/tests/org.eclipse.wst.xsl.core.tests/projectfiles/modeTest.xsl
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
- <xsl:include href="modeTest2.xsl"/>
- <xsl:template match="/">
-
- </xsl:template>
- <xsl:template match="something" mode="mode1">
-
- </xsl:template>
- <xsl:template match="something" mode="mode2">
-
-
- </xsl:template>
- <xsl:template name="something" mode="mode1">
-
- </xsl:template>
-
-</xsl:stylesheet> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.core.tests/projectfiles/modeTest2.xsl b/tests/org.eclipse.wst.xsl.core.tests/projectfiles/modeTest2.xsl
deleted file mode 100644
index 3458e49..0000000
--- a/tests/org.eclipse.wst.xsl.core.tests/projectfiles/modeTest2.xsl
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
- <xsl:template match="/" mode="mode3">
- <!-- TODO: Auto-generated template -->
- </xsl:template>
-</xsl:stylesheet> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.core.tests/projectfiles/ref1.xsl b/tests/org.eclipse.wst.xsl.core.tests/projectfiles/ref1.xsl
deleted file mode 100644
index d6f2be1..0000000
--- a/tests/org.eclipse.wst.xsl.core.tests/projectfiles/ref1.xsl
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
-
- <xsl:include href="circularref.xsl"/>
- <xsl:template match="/">
- <!-- TODO: Auto-generated template -->
- </xsl:template>
-</xsl:stylesheet> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.core.tests/projectfiles/style1.xsl b/tests/org.eclipse.wst.xsl.core.tests/projectfiles/style1.xsl
deleted file mode 100644
index d9522dd..0000000
--- a/tests/org.eclipse.wst.xsl.core.tests/projectfiles/style1.xsl
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- ******************************************************************************
- * Copyright (c) 2008 Chase Technology Ltd - http://www.chasetechnology.co.uk
- * 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:
- * Doug Satchwell (Chase Technology Ltd) - initial API and implementation
- ******************************************************************************* -->
-<xsl:stylesheet version="1.0"
- xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
-
- <xsl:import href="lib2.xsl" />
- <xsl:include href="lib1.xsl" />
-
- <xsl:template name="existsInStyle1Only">
- <xsl:param name="p1"></xsl:param>
- <literal>Hello World</literal>
- </xsl:template>
-
- <xsl:template name="existsInStyle1AndLib1"> <!-- ERROR: template existsInStyle1AndLib1 is included from lib1.xsl-->
- <xsl:param name="p1"></xsl:param>
- <literal>Hello World</literal>
- </xsl:template>
-
-</xsl:stylesheet> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.core.tests/src/org/eclipse/wst/xsl/core/internal/utils/tests/TestXMLContentType.java b/tests/org.eclipse.wst.xsl.core.tests/src/org/eclipse/wst/xsl/core/internal/utils/tests/TestXMLContentType.java
deleted file mode 100644
index 40dc337..0000000
--- a/tests/org.eclipse.wst.xsl.core.tests/src/org/eclipse/wst/xsl/core/internal/utils/tests/TestXMLContentType.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2009 Standards for Technology in Automotive Retail 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:
- * David Carver (STAR) - bug 264788 - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.xsl.core.internal.utils.tests;
-
-import org.eclipse.wst.xsl.core.internal.util.XMLContentType;
-
-import junit.framework.TestCase;
-
-public class TestXMLContentType extends TestCase {
-
- public TestXMLContentType() {
- super();
- }
-
- public void testGetFileExtensions() {
- XMLContentType xmlContentType = new XMLContentType();
- String[] exts = xmlContentType.getFileExtensions();
- assertTrue("Missing xslt extension.", findExtension("xslt", exts));
- assertTrue("Missing xml extension.", findExtension("xml", exts));
- assertTrue("Missing xsl extension.", findExtension("xsl", exts));
- assertTrue("Missing xmi extension.", findExtension("xmi", exts));
-
- }
-
- private boolean findExtension(String extension, String[] exts) {
- boolean foundsw = false;
- for (int i = 0; i < exts.length; i++) {
- if (extension.equalsIgnoreCase(exts[i])) {
- foundsw = true;
- }
- }
- return foundsw;
- }
-
-}
diff --git a/tests/org.eclipse.wst.xsl.core.tests/src/org/eclipse/wst/xsl/core/tests/XSLCoreTestSuite.java b/tests/org.eclipse.wst.xsl.core.tests/src/org/eclipse/wst/xsl/core/tests/XSLCoreTestSuite.java
deleted file mode 100644
index e7b58db..0000000
--- a/tests/org.eclipse.wst.xsl.core.tests/src/org/eclipse/wst/xsl/core/tests/XSLCoreTestSuite.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008 Chase Technology Ltd - http://www.chasetechnology.co.uk
- * 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:
- * Doug Satchwell (Chase Technology Ltd) - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.xsl.core.tests;
-
-
-import org.eclipse.wst.xsl.core.internal.utils.tests.TestXMLContentType;
-import org.eclipse.wst.xsl.internal.core.tests.TestIncludedTemplates;
-import org.eclipse.wst.xsl.internal.core.tests.TestStructuredTextPartitionerForXSL;
-import org.eclipse.wst.xsl.internal.core.tests.TestXSLCore;
-import org.eclipse.wst.xsl.internal.model.tests.TestStylesheet;
-import org.eclipse.wst.xsl.internal.model.tests.TestStylesheetModel;
-
-import junit.framework.Test;
-import junit.framework.TestSuite;
-
-
-public class XSLCoreTestSuite extends TestSuite {
- public static Test suite() {
- return new XSLCoreTestSuite();
- }
-
- public XSLCoreTestSuite() {
- super("XSL Core Test Suite");
- addTestSuite(TestIncludedTemplates.class);
- addTestSuite(TestXSLCore.class);
- addTestSuite(TestStylesheet.class);
- addTestSuite(TestStylesheetModel.class);
- addTestSuite(TestXMLContentType.class);
- addTestSuite(TestStructuredTextPartitionerForXSL.class);
- }
-}
diff --git a/tests/org.eclipse.wst.xsl.core.tests/src/org/eclipse/wst/xsl/core/tests/XSLCoreTestsPlugin.java b/tests/org.eclipse.wst.xsl.core.tests/src/org/eclipse/wst/xsl/core/tests/XSLCoreTestsPlugin.java
deleted file mode 100644
index 0e14f35..0000000
--- a/tests/org.eclipse.wst.xsl.core.tests/src/org/eclipse/wst/xsl/core/tests/XSLCoreTestsPlugin.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008 Chase Technology Ltd - http://www.chasetechnology.co.uk
- * 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:
- * Doug Satchwell (Chase Technology Ltd) - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.xsl.core.tests;
-
-import org.eclipse.core.runtime.Plugin;
-import org.osgi.framework.BundleContext;
-
-/**
- * The activator class controls the plug-in life cycle
- */
-public class XSLCoreTestsPlugin extends Plugin {
-
- // The plug-in ID
- public static final String PLUGIN_ID = "org.eclipse.wst.xsl.core.tests";
-
- // The shared instance
- private static XSLCoreTestsPlugin plugin;
-
- /**
- * The constructor
- */
- public XSLCoreTestsPlugin() {
- }
-
- /*
- * (non-Javadoc)
- * @see org.eclipse.core.runtime.Plugins#start(org.osgi.framework.BundleContext)
- */
- @Override
- public void start(BundleContext context) throws Exception {
- super.start(context);
- plugin = this;
- }
-
- /*
- * (non-Javadoc)
- * @see org.eclipse.core.runtime.Plugin#stop(org.osgi.framework.BundleContext)
- */
- @Override
- public void stop(BundleContext context) throws Exception {
- plugin = null;
- super.stop(context);
- }
-
- /**
- * Returns the shared instance
- *
- * @return the shared instance
- */
- public static XSLCoreTestsPlugin getDefault() {
- return plugin;
- }
-
-}
diff --git a/tests/org.eclipse.wst.xsl.core.tests/src/org/eclipse/wst/xsl/internal/core/tests/AbstractValidationTest.java b/tests/org.eclipse.wst.xsl.core.tests/src/org/eclipse/wst/xsl/internal/core/tests/AbstractValidationTest.java
deleted file mode 100644
index e3b2a36..0000000
--- a/tests/org.eclipse.wst.xsl.core.tests/src/org/eclipse/wst/xsl/internal/core/tests/AbstractValidationTest.java
+++ /dev/null
@@ -1,229 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008 Chase Technology Ltd - http://www.chasetechnology.co.uk
- * 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:
- * Doug Satchwell (Chase Technology Ltd) - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.wst.xsl.internal.core.tests;
-
-import java.io.IOException;
-import java.net.URL;
-import java.util.Enumeration;
-import java.util.HashMap;
-import java.util.Map;
-
-import javax.xml.xpath.XPathConstants;
-import javax.xml.xpath.XPathExpression;
-import javax.xml.xpath.XPathExpressionException;
-import javax.xml.xpath.XPathFactory;
-
-import junit.framework.TestCase;
-
-import org.apache.xpath.jaxp.XPathFactoryImpl;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IProjectDescription;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IWorkspace;
-import org.eclipse.core.resources.IWorkspaceRoot;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.FileLocator;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.NullProgressMonitor;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.wst.sse.core.StructuredModelManager;
-import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;
-import org.eclipse.wst.xml.core.internal.validation.core.ValidationMessage;
-import org.eclipse.wst.xsl.core.XSLCore;
-import org.eclipse.wst.xsl.core.internal.validation.XSLValidationMessage;
-import org.eclipse.wst.xsl.core.internal.validation.XSLValidationReport;
-import org.eclipse.wst.xsl.core.internal.validation.XSLValidator;
-import org.eclipse.wst.xsl.core.model.StylesheetModel;
-import org.eclipse.wst.xsl.core.tests.XSLCoreTestsPlugin;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-/**
- * An abstract class to help with the testing.
- * It reads an XSL file, runs the validation on it, and then parses the document looking for comment nodes where the comment starts with ERROR or WARN.
- * For each comment node found, it determines whether the validation found a corresponding error or warning at the given comment node parent's line number.
- * It also checks to make sure that no unexpected errors/warnings are found (ones that don't have comment nodes).
- *
- * @author Doug Satchwell
- */
-public abstract class AbstractValidationTest extends TestCase
-{
- protected static IProject fTestProject;
- private static boolean fTestProjectInitialized;
- private static final String TEST_PROJECT_NAME = "testproject";
-
- @Override
- protected void setUp() throws Exception
- {
- super.setUp();
- if (!fTestProjectInitialized)
- {
- getAndCreateProject();
-
- // URL installLocation = Platform.getBundle(XSLCoreTestsPlugin.PLUGIN_ID).getEntry("/");
- Enumeration<String> e = Platform.getBundle(XSLCoreTestsPlugin.PLUGIN_ID).getEntryPaths("/projectfiles");// (path, filePattern, recurse)("/projectfiles", null, true);
- while (e.hasMoreElements())
- {
- String path = e.nextElement();
- URL url = Platform.getBundle(XSLCoreTestsPlugin.PLUGIN_ID).getEntry(path);
- if (!url.getFile().endsWith("/"))
- {
- url = FileLocator.resolve(url);
- path = path.substring("projectfiles".length());
- IFile destFile = fTestProject.getFile(path);
- System.out.println(destFile.getLocation()+" --> "+url.toExternalForm());
- destFile.createLink(url.toURI(), IResource.REPLACE, new NullProgressMonitor());
- }
- }
- fTestProject.refreshLocal(IResource.DEPTH_INFINITE, null);
- fTestProjectInitialized = true;
- }
- }
-
-
- protected IFile getFile(String path)
- {
- return fTestProject.getFile(new Path(path));
- }
-
- /**
- * Validate the file
- *
- * @param file
- * @return
- * @throws CoreException
- * @throws XPathExpressionException
- * @throws IOException
- */
- protected XSLValidationReport validate(IFile file) throws CoreException, XPathExpressionException, IOException
- {
- XSLValidationReport report = new XSLValidationReport(file.getLocationURI().toString());
- XSLValidator.getInstance().validate(file,report,true);
- StylesheetModel model = XSLCore.getInstance().getStylesheet(file);
- assertFalse("Stylesheet model is null",model == null);
- Map<Integer,String> expectedErrors = calculateErrorsAndWarnings(file);
- validateErrors(model,report,expectedErrors);
- return report;
- }
-
- private void validateErrors(StylesheetModel model, XSLValidationReport report, Map<Integer,String> expectedErrors)
- {
- expectedErrors = new HashMap<Integer, String>(expectedErrors);
- for (ValidationMessage msg : report.getValidationMessages())
- {
- XSLValidationMessage error = (XSLValidationMessage)msg;
- assertTrue("Error report must be for the current stylesheet only", error.getNode().getStylesheet() == model.getStylesheet());
- String comment = expectedErrors.remove(error.getLineNumber());
- assertNotNull("Unxpected error at line "+error.getLineNumber()+": "+error,comment);
- assertFalse("Incorrect error level for error at line "+error.getLineNumber()+": "+error,comment.startsWith("ERROR") && msg.getSeverity() != ValidationMessage.SEV_HIGH);
- assertFalse("Incorrect error level for error at line "+error.getLineNumber()+": "+error,comment.startsWith("WARN") && msg.getSeverity() == ValidationMessage.SEV_HIGH);
- }
- for (Map.Entry<Integer, String> entry : expectedErrors.entrySet())
- {
- assertTrue("Expected error "+entry.getValue()+" at line "+entry.getKey(), false);
- }
- }
-
- private Map<Integer,String> calculateErrorsAndWarnings(IFile file) throws XPathExpressionException, IOException, CoreException
- {
- Map<Integer,String> expectedErrors = new HashMap<Integer,String>();
- IStructuredModel smodel = null;
- try
- {
- smodel = StructuredModelManager.getModelManager().getModelForRead(file);
- if (smodel != null && smodel instanceof IDOMModel)
- {
- IDOMModel model = (IDOMModel) smodel;
- XPathExpression xp = XPathFactory.newInstance().newXPath().compile("//comment()");
- NodeList nodeSet = (NodeList)xp.evaluate(model.getDocument(), XPathConstants.NODESET);
- for (int i=0; i<nodeSet.getLength(); i++)
- {
- Node commentNode = nodeSet.item(i);
- String comment = commentNode.getNodeValue().trim();
- if (comment.startsWith("ERROR") || comment.startsWith("WARN"))
- {
- IDOMNode parent = (IDOMNode)commentNode.getParentNode();
- int line = model.getStructuredDocument().getLineOfOffset(parent.getStartOffset()) + 1;
- expectedErrors.put(line,comment);
- }
- }
- }
- }
- finally
- {
- if (smodel != null)
- smodel.releaseFromRead();
- }
- return expectedErrors;
- }
-
- private static void getAndCreateProject() throws CoreException
- {
- IWorkspace workspace = getWorkspace();
- IWorkspaceRoot root = workspace.getRoot();
- fTestProject = root.getProject(TEST_PROJECT_NAME);
-
- createProject(fTestProject, null, null);
- fTestProject.refreshLocal(IResource.DEPTH_INFINITE, null);
- assertTrue(fTestProject.exists());
- }
-
- private static void createProject(IProject project, IPath locationPath, IProgressMonitor monitor) throws CoreException
- {
- if (monitor == null)
- {
- monitor = new NullProgressMonitor();
- }
- monitor.beginTask("creating test project", 10);
- // create the project
- try
- {
- if (!project.exists())
- {
- IProjectDescription desc = project.getWorkspace().newProjectDescription(project.getName());
- if (Platform.getLocation().equals(locationPath))
- {
- locationPath = null;
- }
- desc.setLocation(locationPath);
- project.create(desc, monitor);
- monitor = null;
- }
- if (!project.isOpen())
- {
- project.open(monitor);
- monitor = null;
- }
- }
- finally
- {
- if (monitor != null)
- {
- monitor.done();
- }
- }
- }
-
- /**
- * Returns the workspace instance.
- */
- public static IWorkspace getWorkspace()
- {
- return ResourcesPlugin.getWorkspace();
- }
-}
diff --git a/tests/org.eclipse.wst.xsl.core.tests/src/org/eclipse/wst/xsl/internal/core/tests/TestIncludedTemplates.java b/tests/org.eclipse.wst.xsl.core.tests/src/org/eclipse/wst/xsl/internal/core/tests/TestIncludedTemplates.java
deleted file mode 100644
index ccd6542..0000000
--- a/tests/org.eclipse.wst.xsl.core.tests/src/org/eclipse/wst/xsl/internal/core/tests/TestIncludedTemplates.java
+++ /dev/null
@@ -1,19 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008 Chase Technology Ltd - http://www.chasetechnology.co.uk
- * 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:
- * Doug Satchwell (Chase Technology Ltd) - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.xsl.internal.core.tests;
-
-public class TestIncludedTemplates extends AbstractValidationTest
-{
- public void test1() throws Exception
- {
- validate(getFile("style1.xsl"));
- }
-}
diff --git a/tests/org.eclipse.wst.xsl.core.tests/src/org/eclipse/wst/xsl/internal/core/tests/TestStructuredTextPartitionerForXSL.java b/tests/org.eclipse.wst.xsl.core.tests/src/org/eclipse/wst/xsl/internal/core/tests/TestStructuredTextPartitionerForXSL.java
deleted file mode 100644
index 9d92b20..0000000
--- a/tests/org.eclipse.wst.xsl.core.tests/src/org/eclipse/wst/xsl/internal/core/tests/TestStructuredTextPartitionerForXSL.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2009 Standards for Technology in Automotive Retail 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:
- * David Carver (STAR) - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.xsl.internal.core.tests;
-
-import org.eclipse.jface.text.IDocumentPartitioner;
-import org.eclipse.wst.xsl.core.internal.text.rules.StructuredTextPartitionerForXSL;
-
-import junit.framework.TestCase;
-
-public class TestStructuredTextPartitionerForXSL extends TestCase {
-
- public void testXSLNewInstance() {
- StructuredTextPartitionerForXSL textPartioner = new StructuredTextPartitionerForXSL();
- IDocumentPartitioner documentPartitioner = textPartioner.newInstance();
- assertTrue("Did not retrieve StructuredTextPartitionerForXSL", documentPartitioner instanceof StructuredTextPartitionerForXSL);
- }
-}
diff --git a/tests/org.eclipse.wst.xsl.core.tests/src/org/eclipse/wst/xsl/internal/core/tests/TestXSLCore.java b/tests/org.eclipse.wst.xsl.core.tests/src/org/eclipse/wst/xsl/internal/core/tests/TestXSLCore.java
deleted file mode 100644
index 4857029..0000000
--- a/tests/org.eclipse.wst.xsl.core.tests/src/org/eclipse/wst/xsl/internal/core/tests/TestXSLCore.java
+++ /dev/null
@@ -1,20 +0,0 @@
-package org.eclipse.wst.xsl.internal.core.tests;
-
-import junit.framework.TestCase;
-import org.eclipse.wst.xsl.core.XSLCore;
-
-public class TestXSLCore extends TestCase {
-
- public TestXSLCore() {
- super();
- }
-
- public TestXSLCore(String name) {
- super(name);
- }
-
- public void testisXSLNamespaceNullFalse() {
- assertFalse(XSLCore.isXSLNamespace(null));
- }
-
-}
diff --git a/tests/org.eclipse.wst.xsl.core.tests/src/org/eclipse/wst/xsl/internal/model/tests/AbstractModelTest.java b/tests/org.eclipse.wst.xsl.core.tests/src/org/eclipse/wst/xsl/internal/model/tests/AbstractModelTest.java
deleted file mode 100644
index 2a9387b..0000000
--- a/tests/org.eclipse.wst.xsl.core.tests/src/org/eclipse/wst/xsl/internal/model/tests/AbstractModelTest.java
+++ /dev/null
@@ -1,229 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008 Chase Technology Ltd - http://www.chasetechnology.co.uk
- * 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:
- * Doug Satchwell (Chase Technology Ltd) - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.wst.xsl.internal.model.tests;
-
-import java.io.IOException;
-import java.net.URL;
-import java.util.Enumeration;
-import java.util.HashMap;
-import java.util.Map;
-
-import javax.xml.xpath.XPathConstants;
-import javax.xml.xpath.XPathExpression;
-import javax.xml.xpath.XPathExpressionException;
-import javax.xml.xpath.XPathFactory;
-
-import junit.framework.TestCase;
-
-import org.apache.xpath.jaxp.XPathFactoryImpl;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IProjectDescription;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IWorkspace;
-import org.eclipse.core.resources.IWorkspaceRoot;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.FileLocator;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.NullProgressMonitor;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.wst.sse.core.StructuredModelManager;
-import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;
-import org.eclipse.wst.xml.core.internal.validation.core.ValidationMessage;
-import org.eclipse.wst.xsl.core.XSLCore;
-import org.eclipse.wst.xsl.core.internal.validation.XSLValidationMessage;
-import org.eclipse.wst.xsl.core.internal.validation.XSLValidationReport;
-import org.eclipse.wst.xsl.core.internal.validation.XSLValidator;
-import org.eclipse.wst.xsl.core.model.StylesheetModel;
-import org.eclipse.wst.xsl.core.tests.XSLCoreTestsPlugin;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-/**
- * An abstract class to help with the testing.
- * It reads an XSL file, runs the validation on it, and then parses the document looking for comment nodes where the comment starts with ERROR or WARN.
- * For each comment node found, it determines whether the validation found a corresponding error or warning at the given comment node parent's line number.
- * It also checks to make sure that no unexpected errors/warnings are found (ones that don't have comment nodes).
- *
- * @author Doug Satchwell
- */
-public abstract class AbstractModelTest extends TestCase
-{
- protected static IProject fTestProject;
- private static boolean fTestProjectInitialized;
- private static final String TEST_PROJECT_NAME = "testproject";
-
- @Override
- protected void setUp() throws Exception
- {
- super.setUp();
- if (!fTestProjectInitialized)
- {
- getAndCreateProject();
-
- // URL installLocation = Platform.getBundle(XSLCoreTestsPlugin.PLUGIN_ID).getEntry("/");
- Enumeration<String> e = Platform.getBundle(XSLCoreTestsPlugin.PLUGIN_ID).getEntryPaths("/projectfiles");// (path, filePattern, recurse)("/projectfiles", null, true);
- while (e.hasMoreElements())
- {
- String path = e.nextElement();
- URL url = Platform.getBundle(XSLCoreTestsPlugin.PLUGIN_ID).getEntry(path);
- if (!url.getFile().endsWith("/"))
- {
- url = FileLocator.resolve(url);
- path = path.substring("projectfiles".length());
- IFile destFile = fTestProject.getFile(path);
- System.out.println(destFile.getLocation()+" --> "+url.toExternalForm());
- destFile.createLink(url.toURI(), IResource.REPLACE, new NullProgressMonitor());
- }
- }
- fTestProject.refreshLocal(IResource.DEPTH_INFINITE, null);
- fTestProjectInitialized = true;
- }
- }
-
-
- protected IFile getFile(String path)
- {
- return fTestProject.getFile(new Path(path));
- }
-
- /**
- * Validate the file
- *
- * @param file
- * @return
- * @throws CoreException
- * @throws XPathExpressionException
- * @throws IOException
- */
- protected XSLValidationReport validate(IFile file) throws CoreException, XPathExpressionException, IOException
- {
- XSLValidationReport report = new XSLValidationReport(file.getLocationURI().toString());
- XSLValidator.getInstance().validate(file,report,true);
- StylesheetModel model = XSLCore.getInstance().getStylesheet(file);
- assertFalse("Stylesheet model is null",model == null);
- Map<Integer,String> expectedErrors = calculateErrorsAndWarnings(file);
- validateErrors(model,report,expectedErrors);
- return report;
- }
-
- private void validateErrors(StylesheetModel model, XSLValidationReport report, Map<Integer,String> expectedErrors)
- {
- expectedErrors = new HashMap<Integer, String>(expectedErrors);
- for (ValidationMessage msg : report.getValidationMessages())
- {
- XSLValidationMessage error = (XSLValidationMessage)msg;
- assertTrue("Error report must be for the current stylesheet only", error.getNode().getStylesheet() == model.getStylesheet());
- String comment = expectedErrors.remove(error.getLineNumber());
- assertNotNull("Unxpected error at line "+error.getLineNumber()+": "+error,comment);
- assertFalse("Incorrect error level for error at line "+error.getLineNumber()+": "+error,comment.startsWith("ERROR") && msg.getSeverity() != ValidationMessage.SEV_HIGH);
- assertFalse("Incorrect error level for error at line "+error.getLineNumber()+": "+error,comment.startsWith("WARN") && msg.getSeverity() == ValidationMessage.SEV_HIGH);
- }
- for (Map.Entry<Integer, String> entry : expectedErrors.entrySet())
- {
- assertTrue("Expected error "+entry.getValue()+" at line "+entry.getKey(), false);
- }
- }
-
- private Map<Integer,String> calculateErrorsAndWarnings(IFile file) throws XPathExpressionException, IOException, CoreException
- {
- Map<Integer,String> expectedErrors = new HashMap<Integer,String>();
- IStructuredModel smodel = null;
- try
- {
- smodel = StructuredModelManager.getModelManager().getModelForRead(file);
- if (smodel != null && smodel instanceof IDOMModel)
- {
- IDOMModel model = (IDOMModel) smodel;
- XPathExpression xp = XPathFactory.newInstance().newXPath().compile("//comment()");
- NodeList nodeSet = (NodeList)xp.evaluate(model.getDocument(), XPathConstants.NODESET);
- for (int i=0; i<nodeSet.getLength(); i++)
- {
- Node commentNode = nodeSet.item(i);
- String comment = commentNode.getNodeValue().trim();
- if (comment.startsWith("ERROR") || comment.startsWith("WARN"))
- {
- IDOMNode parent = (IDOMNode)commentNode.getParentNode();
- int line = model.getStructuredDocument().getLineOfOffset(parent.getStartOffset()) + 1;
- expectedErrors.put(line,comment);
- }
- }
- }
- }
- finally
- {
- if (smodel != null)
- smodel.releaseFromRead();
- }
- return expectedErrors;
- }
-
- private static void getAndCreateProject() throws CoreException
- {
- IWorkspace workspace = getWorkspace();
- IWorkspaceRoot root = workspace.getRoot();
- fTestProject = root.getProject(TEST_PROJECT_NAME);
-
- createProject(fTestProject, null, null);
- fTestProject.refreshLocal(IResource.DEPTH_INFINITE, null);
- assertTrue(fTestProject.exists());
- }
-
- private static void createProject(IProject project, IPath locationPath, IProgressMonitor monitor) throws CoreException
- {
- if (monitor == null)
- {
- monitor = new NullProgressMonitor();
- }
- monitor.beginTask("creating test project", 10);
- // create the project
- try
- {
- if (!project.exists())
- {
- IProjectDescription desc = project.getWorkspace().newProjectDescription(project.getName());
- if (Platform.getLocation().equals(locationPath))
- {
- locationPath = null;
- }
- desc.setLocation(locationPath);
- project.create(desc, monitor);
- monitor = null;
- }
- if (!project.isOpen())
- {
- project.open(monitor);
- monitor = null;
- }
- }
- finally
- {
- if (monitor != null)
- {
- monitor.done();
- }
- }
- }
-
- /**
- * Returns the workspace instance.
- */
- public static IWorkspace getWorkspace()
- {
- return ResourcesPlugin.getWorkspace();
- }
-}
diff --git a/tests/org.eclipse.wst.xsl.core.tests/src/org/eclipse/wst/xsl/internal/model/tests/TestStylesheet.java b/tests/org.eclipse.wst.xsl.core.tests/src/org/eclipse/wst/xsl/internal/model/tests/TestStylesheet.java
deleted file mode 100644
index 5c9a119..0000000
--- a/tests/org.eclipse.wst.xsl.core.tests/src/org/eclipse/wst/xsl/internal/model/tests/TestStylesheet.java
+++ /dev/null
@@ -1,110 +0,0 @@
-package org.eclipse.wst.xsl.internal.model.tests;
-
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.wst.xsl.core.internal.StylesheetBuilder;
-import org.eclipse.wst.xsl.core.model.Import;
-import org.eclipse.wst.xsl.core.model.Include;
-import org.eclipse.wst.xsl.core.model.Stylesheet;
-import org.eclipse.wst.xsl.core.model.Template;
-import org.eclipse.wst.xsl.core.model.Variable;
-import org.eclipse.wst.xsl.core.model.XSLAttribute;
-
-public class TestStylesheet extends AbstractModelTest {
-
- public TestStylesheet() {
- // TODO Auto-generated constructor stub
- }
-
- public void testLoadModel() {
- StylesheetBuilder builder = StylesheetBuilder.getInstance();
- Stylesheet model = builder.getStylesheet(getFile("style1.xsl"), false);
- assertNotNull("Model failed to load, returned NULL", model);
- }
-
- public void testgetLocalTemplatesTemplates() {
- StylesheetBuilder builder = StylesheetBuilder.getInstance();
- Stylesheet model = builder.getStylesheet(getFile("style1.xsl"), false);
- assertNotNull("Model failed to load, returned NULL", model);
-
- List<Template> templatesList = model.getTemplates();
- assertEquals("Wrong number of templates returned.", 2, templatesList.size());
- }
-
- public void testGetIncludes() {
- StylesheetBuilder builder = StylesheetBuilder.getInstance();
- Stylesheet stylesheet = builder.getStylesheet(getFile("style1.xsl"), false);
- assertNotNull("Model failed to load, returned NULL", stylesheet);
-
- List<Include> includeList = stylesheet.getIncludes();
- assertEquals("Wrong number of includes returned.", 1, includeList.size());
- }
-
- public void testGetImports() {
- StylesheetBuilder builder = StylesheetBuilder.getInstance();
- Stylesheet stylesheet = builder.getStylesheet(getFile("style1.xsl"), false);
- assertNotNull("Model failed to load, returned NULL", stylesheet);
-
- List<Import> includeList = stylesheet.getImports();
- assertEquals("Wrong number of includes returned.", 1, includeList.size());
-
- }
-
- public void testGetGlobalVariables() {
- StylesheetBuilder builder = StylesheetBuilder.getInstance();
- Stylesheet stylesheet = builder.getStylesheet(getFile("globalVariablesTest.xsl"), false);
- assertNotNull("Model failed to load, returned NULL", stylesheet);
-
- List<Variable> globalVariablesList = stylesheet.getGlobalVariables();
- assertEquals("Wrong number of global variables returned.", 1, globalVariablesList.size());
- }
-
- public void testGetLineNumber() {
- StylesheetBuilder builder = StylesheetBuilder.getInstance();
- Stylesheet stylesheet = builder.getStylesheet(getFile("globalVariablesTest.xsl"), false);
- assertNotNull("Model failed to load, returned NULL", stylesheet);
- // Line Number is off by 1 from what is displayed in the Editor
- assertEquals("Incorrect line number.", 12, stylesheet.getLineNumber());
- }
-
- public void testGetColumnNumber() {
- StylesheetBuilder builder = StylesheetBuilder.getInstance();
- Stylesheet stylesheet = builder.getStylesheet(getFile("globalVariablesTest.xsl"), false);
- assertNotNull("Model failed to load, returned NULL", stylesheet);
- // Line Number is off by 1 from what is displayed in the Editor
- assertEquals("Incorrect column number.", 0, stylesheet.getColumnNumber());
- }
-
- public void testGetVersion() {
- StylesheetBuilder builder = StylesheetBuilder.getInstance();
- Stylesheet stylesheet = builder.getStylesheet(getFile("globalVariablesTest.xsl"), false);
- assertNotNull("Model failed to load, returned NULL", stylesheet);
-
- // Line Number is off by 1 from what is displayed in the Editor
- assertEquals("Wrong version number returned.", "1.0", stylesheet.getVersion());
- }
-
- public void testXSLT2GetVersion() {
- StylesheetBuilder builder = StylesheetBuilder.getInstance();
- Stylesheet stylesheet = builder.getStylesheet(getFile("XSLT20Test.xsl"), false);
- assertNotNull("Model failed to load, returned NULL", stylesheet);
- // Line Number is off by 1 from what is displayed in the Editor
- assertEquals("Wrong version number returned.", "2.0", stylesheet.getVersion());
- }
-
- public void testGetAttributes() {
- StylesheetBuilder builder = StylesheetBuilder.getInstance();
- Stylesheet stylesheet = builder.getStylesheet(getFile("globalVariablesTest.xsl"), false);
- assertNotNull("Model failed to load, returned NULL", stylesheet);
-
- Map<String,XSLAttribute> attributeList = stylesheet.getAttributes();
- assertEquals("Incorrect number of attributes", 4, attributeList.size());
- XSLAttribute attribute = stylesheet.getAttribute("exclude-result-prefixes");
- assertEquals("Wrong attribute returned:", "exclude-result-prefixes", attribute.getName());
-
- }
-
-
-
-}
diff --git a/tests/org.eclipse.wst.xsl.core.tests/src/org/eclipse/wst/xsl/internal/model/tests/TestStylesheetModel.java b/tests/org.eclipse.wst.xsl.core.tests/src/org/eclipse/wst/xsl/internal/model/tests/TestStylesheetModel.java
deleted file mode 100644
index 490f013..0000000
--- a/tests/org.eclipse.wst.xsl.core.tests/src/org/eclipse/wst/xsl/internal/model/tests/TestStylesheetModel.java
+++ /dev/null
@@ -1,48 +0,0 @@
-package org.eclipse.wst.xsl.internal.model.tests;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.wst.xsl.core.XSLCore;
-import org.eclipse.wst.xsl.core.model.StylesheetModel;
-import org.eclipse.wst.xsl.core.model.Template;
-import org.eclipse.wst.xsl.core.model.XSLAttribute;
-
-public class TestStylesheetModel extends AbstractModelTest {
-
- public TestStylesheetModel() {
-
- }
-
- public void testStyleSheetModel() {
-
- StylesheetModel model = XSLCore.getInstance().getStylesheet(getFile("globalVariablesTest.xsl"));
- assertNotNull("Failed to load stylesheet 'globalVariablesTest.xsl'.", model);
- model = XSLCore.getInstance().getStylesheet(getFile("style1.xsl"));
- assertNotNull("Failed to load stylesheet 'style1.xsl'.", model);
- model = XSLCore.getInstance().getStylesheet(getFile("XSLT20Test.xsl"));
- assertNotNull("Failed to load stylesheet 'XSLT20Test.xsl'.", model);
- model = XSLCore.getInstance().getStylesheet(getFile("circularref.xsl"));
- assertNotNull("Failed to load stylesheet 'circularref.xsl'.", model);
- model = XSLCore.getInstance().getStylesheet(getFile("modeTest.xsl"));
- assertNotNull("Failed to load stylesheet 'modeTest.xsl'.", model);
-
- }
-
- public void testFindAvailableTemplateModes() {
- ArrayList<String> modes = new ArrayList();
- StylesheetModel model = XSLCore.getInstance().getStylesheet(getFile("modeTest.xsl"));
- List<Template> templates = model.getTemplates();
- assertTrue("No templates returned.", templates.size() > 0);
-
- for (Template template : templates) {
- XSLAttribute attribute = template.getAttribute("mode");
- if (attribute != null) {
- if (modes.indexOf(attribute.getValue()) == -1 ) {
- modes.add(attribute.getValue());
- }
- }
- }
- assertEquals("Wrong number of mode templates returned.", 3, modes.size());
- }
-}
diff --git a/tests/org.eclipse.wst.xsl.core.tests/test.xml b/tests/org.eclipse.wst.xsl.core.tests/test.xml
deleted file mode 100644
index f4cd65d..0000000
--- a/tests/org.eclipse.wst.xsl.core.tests/test.xml
+++ /dev/null
@@ -1,115 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<project
- name="testsuite"
- default="run"
- basedir=".">
-
- <!-- The following properties should be passed into this script -->
- <!-- ${eclipse-home} -->
- <!-- ${buildDirectory} -->
- <!-- ${buildLabel} -->
-
- <!-- should be little need to change what's above -->
-
- <property
- name="plugin-name"
- value="org.eclipse.wst.xsl.core.tests" />
- <property
- name="classname"
- value="org.eclipse.wst.xsl.core.tests.XSLCoreTestSuite" />
- <property
- name="testType"
- value="core-test" />
-
- <!-- should be little need to change what's below -->
-
- <echo message="basedir: ${basedir}" />
- <echo message="eclipse-home: ${eclipse-home}" />
- <echo message="buildDirectory: ${buildDirectory}" />
- <echo message="plugin-name: ${plugin-name}" />
- <echo message="classname: ${classname}" />
- <echo message="testType ${testType}" />
-
-
- <property
- name="library-file"
- value="${eclipse-home}/plugins/org.eclipse.test_3.1.0/library.xml" />
- <property
- name="workspace"
- value="${eclipse-home}/junitworkspaces/${plugin-name}" />
-
- <!-- 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="${plugin-name}.*xml" />
- </delete>
- <!-- make directory, in case path doesn't exist yet -->
- <mkdir dir="${workspace}" />
- <!-- but delete to make sure fresh contents-->
- <delete
- dir="${workspace}"
- quiet="true" />
-
- </target>
-
- <!-- This target defines the tests that need to be run. -->
- <target name="suite">
-
- <ant
- target="${testType}"
- antfile="${library-file}"
- dir="${eclipse-home}">
- <property
- name="data-dir"
- value="${workspace}" />
- <property
- name="plugin-name"
- value="${plugin-name}" />
- <property
- name="classname"
- value="${classname}" />
- <property
- name="plugin-path"
- value="${eclipse-home}/plugins/${plugin-name}" />
- </ant>
-
- <copy
- failonerror="false"
- file="${workspace}/.metadata/.log"
- tofile="${buildDirectory}/${buildLabel}/testResults/consolelogs/${plugin-name}.consolelog.txt" />
-
- </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">
- <!-- usually no need to delete workspace until next run, and leaving it allows inspection -->
- <!-- <delete dir="${workspace}" quiet="true" /> -->
- </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="${plugin-name}.*xml" />
- <property
- name="output-file"
- value="${plugin-name}.xml" />
- </ant>
- </target>
-
-</project> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.launching.tests/.classpath b/tests/org.eclipse.wst.xsl.launching.tests/.classpath
deleted file mode 100644
index 3100a6b..0000000
--- a/tests/org.eclipse.wst.xsl.launching.tests/.classpath
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
- <classpathentry kind="src" path="test-launching-src"/>
- <classpathentry kind="src" path="xsl-test-resources"/>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
- <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
- <classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/tests/org.eclipse.wst.xsl.launching.tests/.project b/tests/org.eclipse.wst.xsl.launching.tests/.project
deleted file mode 100644
index 2b08b8e..0000000
--- a/tests/org.eclipse.wst.xsl.launching.tests/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.wst.xsl.launching.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/tests/org.eclipse.wst.xsl.launching.tests/.settings/org.eclipse.core.resources.prefs b/tests/org.eclipse.wst.xsl.launching.tests/.settings/org.eclipse.core.resources.prefs
deleted file mode 100644
index df7824f..0000000
--- a/tests/org.eclipse.wst.xsl.launching.tests/.settings/org.eclipse.core.resources.prefs
+++ /dev/null
@@ -1,3 +0,0 @@
-#Thu Jan 03 22:24:37 EST 2008
-eclipse.preferences.version=1
-encoding/<project>=ISO-8859-1
diff --git a/tests/org.eclipse.wst.xsl.launching.tests/.settings/org.eclipse.jdt.core.prefs b/tests/org.eclipse.wst.xsl.launching.tests/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index 6fb9c3a..0000000
--- a/tests/org.eclipse.wst.xsl.launching.tests/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,7 +0,0 @@
-#Fri Jan 04 09:08:42 EST 2008
-eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
-org.eclipse.jdt.core.compiler.compliance=1.5
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.5
diff --git a/tests/org.eclipse.wst.xsl.launching.tests/.settings/org.eclipse.pde.prefs b/tests/org.eclipse.wst.xsl.launching.tests/.settings/org.eclipse.pde.prefs
deleted file mode 100644
index fdd8568..0000000
--- a/tests/org.eclipse.wst.xsl.launching.tests/.settings/org.eclipse.pde.prefs
+++ /dev/null
@@ -1,16 +0,0 @@
-#Fri Jan 04 09:04:43 EST 2008
-compilers.incompatible-environment=1
-compilers.p.build=0
-compilers.p.deprecated=1
-compilers.p.missing-bundle-classpath-entries=0
-compilers.p.missing-packages=2
-compilers.p.no-required-att=0
-compilers.p.not-externalized-att=0
-compilers.p.unknown-attribute=0
-compilers.p.unknown-class=1
-compilers.p.unknown-element=0
-compilers.p.unknown-resource=1
-compilers.p.unresolved-ex-points=0
-compilers.p.unresolved-import=0
-compilers.use-project=true
-eclipse.preferences.version=1
diff --git a/tests/org.eclipse.wst.xsl.launching.tests/META-INF/MANIFEST.MF b/tests/org.eclipse.wst.xsl.launching.tests/META-INF/MANIFEST.MF
deleted file mode 100644
index 66a6851..0000000
--- a/tests/org.eclipse.wst.xsl.launching.tests/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,33 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %Bundle-Name.0
-Bundle-SymbolicName: org.eclipse.wst.xsl.launching.tests
-Bundle-Version: 1.0.0.qualifier
-Require-Bundle: org.eclipse.ui;bundle-version="[3.4.0,4.0.0)",
- org.eclipse.core.resources;bundle-version="[3.4.0,4.0.0)",
- org.eclipse.core.runtime;bundle-version="[3.4.0,4.0.0)",
- org.junit;bundle-version="[3.8.0,4.0.0)",
- org.eclipse.debug.core;bundle-version="[3.4.0,4.0.0)",
- org.eclipse.wst.xsl.launching;bundle-version="[1.0.0,2.0.0)",
- org.eclipse.wst.xsl.debug.ui;bundle-version="[1.0.0,2.0.0)",
- org.eclipse.debug.ui;bundle-version="[3.4.0,4.0.0)",
- org.eclipse.swt;bundle-version="[3.4.0,4.0.0)",
- org.eclipse.wst.xsl.jaxp.launching;bundle-version="1.0.0",
- org.eclipse.wst.xsl.ui;bundle-version="[1.0.0,2.0.0)",
- org.eclipse.ui.ide;bundle-version="[3.4.0,4.0.0)",
- org.eclipse.wst.xml.core;bundle-version="[1.1.300,2.0.0)",
- org.eclipse.jface.text;bundle-version="[3.4.0,4.0.0)",
- org.eclipse.wst.sse.core;bundle-version="[1.1.300,2.0.0)",
- org.eclipse.ui.workbench.texteditor;bundle-version="[3.4.0,4.0.0)",
- org.eclipse.wst.sse.ui;bundle-version="[1.1.0,2.0.0)",
- org.eclipse.wst.xml.ui;bundle-version="[1.0.400,2.0.0)",
- org.eclipse.wst.xsl.jaxp.debug.ui;bundle-version="[1.0,2.0.0)"
-
-Bundle-Activator: org.eclipse.wst.xsl.launching.tests.Activator
-Bundle-ActivationPolicy: lazy
-Bundle-Localization: plugin
-Bundle-RequiredExecutionEnvironment: J2SE-1.5
-Bundle-Vendor: %Bundle-Vendor.0
-Export-Package: org.eclipse.wst.xsl.launching.tests,
- org.eclipse.wst.xsl.launching.tests.testcase
-
diff --git a/tests/org.eclipse.wst.xsl.launching.tests/about.html b/tests/org.eclipse.wst.xsl.launching.tests/about.html
deleted file mode 100644
index 2199df3..0000000
--- a/tests/org.eclipse.wst.xsl.launching.tests/about.html
+++ /dev/null
@@ -1,34 +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">
-
-<H3>About This Content</H3>
-
-<P>June, 2008</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/org/documents/epl-v10.php">http://www.eclipse.org/org/documents/epl-v10.php</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
-and such source code may be obtained at
-<A href="http://www.eclipse.org/">http://www.eclipse.org/</A>.</P>
-
-</BODY>
-</HTML>
diff --git a/tests/org.eclipse.wst.xsl.launching.tests/build.properties b/tests/org.eclipse.wst.xsl.launching.tests/build.properties
deleted file mode 100644
index 046d1b9..0000000
--- a/tests/org.eclipse.wst.xsl.launching.tests/build.properties
+++ /dev/null
@@ -1,14 +0,0 @@
-source.. = test-launching-src/,\
- xsl-test-resources/
-output.. = bin/
-src.includes = test-launching-src/,\
- xsl-test-resources/,\
- build.properties,\
- testFiles/
-bin.includes = .,\
- META-INF/,\
- plugin.properties,\
- about.html,\
- xsl-test-resources/,\
- bin/,\
- testFiles/
diff --git a/tests/org.eclipse.wst.xsl.launching.tests/plugin.properties b/tests/org.eclipse.wst.xsl.launching.tests/plugin.properties
deleted file mode 100644
index aa1a975..0000000
--- a/tests/org.eclipse.wst.xsl.launching.tests/plugin.properties
+++ /dev/null
@@ -1,3 +0,0 @@
-#Properties file for org.eclipse.wst.xsl.launching.tests
-Bundle-Name.0 = XST Core Test Plug-in
-Bundle-Vendor.0 = Eclipse.org \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.launching.tests/test-launching-src/org/eclipse/wst/xsl/launching/tests/AbstractLaunchingTest.java b/tests/org.eclipse.wst.xsl.launching.tests/test-launching-src/org/eclipse/wst/xsl/launching/tests/AbstractLaunchingTest.java
deleted file mode 100644
index 865b196..0000000
--- a/tests/org.eclipse.wst.xsl.launching.tests/test-launching-src/org/eclipse/wst/xsl/launching/tests/AbstractLaunchingTest.java
+++ /dev/null
@@ -1,229 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2009 Standards for Technology in Automotive Retail 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:
- * David Carver (STAR) - bug 262046 - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.wst.xsl.launching.tests;
-
-import java.io.*;
-import java.net.URL;
-import java.util.List;
-
-import javax.xml.parsers.*;
-
-import org.eclipse.core.resources.*;
-import org.eclipse.core.runtime.*;
-import org.eclipse.debug.core.*;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationManager;
-import org.eclipse.debug.internal.ui.launchConfigurations.LaunchShortcutExtension;
-import org.eclipse.wst.xsl.launching.XSLLaunchConfigurationConstants;
-import org.w3c.dom.Document;
-
-import junit.framework.TestCase;
-
-public abstract class AbstractLaunchingTest extends TestCase {
- private static final String XSL_TEST_PROJECT = "XSLTestProject";
- protected static final String XSL_LAUNCH_SHORTCUT_ID = "org.eclipse.wst.xsl.debug.ui.launchshortcut";
- protected static final String LAUNCHCONFIGS = "launchConfigs";
- protected TestEnvironment env;
- protected IProject testProject;
- protected IFolder folder;
-
- public AbstractLaunchingTest() {
- super();
- }
-
- public AbstractLaunchingTest(String name) {
- super(name);
- }
-
- @Override
- protected void setUp() throws Exception {
- super.setUp();
- createProject();
- createEmptyLaunchConfigsFolder();
- deleteExistingLaunchConfigs();
- }
-
- private void createProject() throws CoreException {
- env = new TestEnvironment();
- testProject = env.createProject(XSL_TEST_PROJECT);
- }
-
- private void createEmptyLaunchConfigsFolder() throws CoreException {
- IPath path = testProject.getFullPath();
- folder = testProject.getFolder(LAUNCHCONFIGS);
- if (folder.exists()) {
- folder.delete(true, null);
- }
- folder.create(true, true, null);
- }
-
- private void deleteExistingLaunchConfigs() throws CoreException {
- ILaunchConfiguration[] configs = getLaunchManager()
- .getLaunchConfigurations();
- for (int i = 0; i < configs.length; i++) {
- configs[i].delete();
- }
- }
-
- @Override
- protected void tearDown() throws Exception {
- super.tearDown();
- testProject.delete(true, new NullProgressMonitor());
- }
-
- protected void copyConfigurationToWorkspace(IPath folder, String filename)
- throws Exception {
- URL url = Activator.getDefault().getBundle().getEntry(
- "testFiles" + File.separator + filename);
-
- String workspacePath = getWorkspacePath();
-
- File target = new File(workspacePath + folder.toPortableString()
- + File.separator + filename);
- copyFile(url, target);
- }
-
- private String getWorkspacePath() {
- IWorkspace workspace = ResourcesPlugin.getWorkspace();
- IWorkspaceRoot root = workspace.getRoot();
- IPath rootPath = root.getLocation();
- String workspacePath = rootPath.toPortableString();
- return workspacePath;
- }
-
- private void copyFile(URL src, File target) throws Exception {
- BufferedOutputStream bos = new BufferedOutputStream(
- new FileOutputStream(target));
- BufferedInputStream bis = new BufferedInputStream(src.openStream());
- try {
- while (bis.available() > 0) {
- int size = bis.available();
- if (size > 1024)
- size = 1024;
- byte[] b = new byte[size];
- bis.read(b, 0, b.length);
- bos.write(b);
- }
- } finally {
- if (bis != null) {
- bis.close();
- }
- if (bos != null) {
- bos.close();
- }
- }
- }
-
- /**
- * Returns the launch shortcut with the given id
- *
- * @param id
- * @return the <code>LaunchShortcutExtension</code> with the given id, or
- * <code>null</code> if none
- *
- * @since 1.0
- */
- protected LaunchShortcutExtension getLaunchShortcutExtension(String id) {
- List exts = getLaunchConfigurationManager().getLaunchShortcuts();
- LaunchShortcutExtension ext = null;
- for (int i = 0; i < exts.size(); i++) {
- ext = (LaunchShortcutExtension) exts.get(i);
- if (ext.getId().equals(id)) {
- return ext;
- }
- }
- return null;
- }
-
- /**
- * Returns the singleton instance of the
- * <code>LaunchConfigurationManager</code>
- *
- * @return the singleton instance of the
- * <code>LaunchConfigurationManager</code>
- * @since 1.0
- */
- protected LaunchConfigurationManager getLaunchConfigurationManager() {
- return DebugUIPlugin.getDefault().getLaunchConfigurationManager();
- }
-
- private ILaunchManager getLaunchManager() {
- return DebugPlugin.getDefault().getLaunchManager();
- }
-
- protected ILaunch launch(String name) throws Exception {
- ILaunchConfiguration configuration = getLaunchConfiguration(name);
- ILaunch launch = configuration.launch(ILaunchManager.RUN_MODE,
- new NullProgressMonitor());
- return launch;
- }
-
- /**
- * Returns the launch configuration for the given main type
- *
- * @param mainTypeName
- * program to launch
- * @see ProjectCreationDecorator
- */
- protected ILaunchConfiguration getLaunchConfiguration(String mainTypeName) throws Exception {
- ILaunchManager mgr = DebugPlugin.getDefault().getLaunchManager();
- IFile file = testProject.getProject().getFolder("launchConfigs")
- .getFile(mainTypeName + ".launch");
- ILaunchConfiguration mine = mgr.getLaunchConfiguration(file);
- assertEquals("Wrong type found: ",
- XSLLaunchConfigurationConstants.ID_LAUNCH_CONFIG_TYPE, mine
- .getType().getIdentifier());
-
- return mine;
- }
-
- protected void refreshProject() throws CoreException,
- InterruptedException {
- testProject.refreshLocal(IResource.DEPTH_INFINITE,
- new NullProgressMonitor());
- while (testProject.isSynchronized(IResource.DEPTH_INFINITE) == false) {
- Thread.sleep(1000);
- }
- }
-
- protected void launchConfiguration(String launchConfigName) throws Exception {
- ILaunch launch = launch(launchConfigName);
- // Wait until the launch configuration terminates.
- while (launch.isTerminated() == false) {
- Thread.sleep(1000);
- }
- refreshProject();
- }
-
- protected String readFile(InputStream input) {
- String str;
- String finalString = "";
- try {
- BufferedReader in = new BufferedReader(new InputStreamReader(input));
- while ((str = in.readLine()) != null) {
- finalString = finalString + str + "\n";
- }
- in.close();
- } catch (IOException e) {
- }
- return finalString;
- }
-
- protected Document parseXml(InputStream contents) throws Exception {
- DocumentBuilderFactory builderFactory = DocumentBuilderFactory
- .newInstance();
- DocumentBuilder builder = builderFactory.newDocumentBuilder();
-
- return builder.parse(contents);
- }
-
-}
diff --git a/tests/org.eclipse.wst.xsl.launching.tests/test-launching-src/org/eclipse/wst/xsl/launching/tests/Activator.java b/tests/org.eclipse.wst.xsl.launching.tests/test-launching-src/org/eclipse/wst/xsl/launching/tests/Activator.java
deleted file mode 100644
index 4e2aa07..0000000
--- a/tests/org.eclipse.wst.xsl.launching.tests/test-launching-src/org/eclipse/wst/xsl/launching/tests/Activator.java
+++ /dev/null
@@ -1,71 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007, 2008 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:
- * Gary Karasiuk (IBM Corporation) - initial implementation
- * Jesper Steen Møller - adapted for XSL
- *******************************************************************************/
-
-package org.eclipse.wst.xsl.launching.tests;
-
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Plugin;
-import org.eclipse.core.runtime.Status;
-import org.osgi.framework.BundleContext;
-
-/**
- * The activator class controls the plug-in life cycle
- */
-public class Activator extends Plugin {
-
- /** org.eclipse.wst.xsl.launching.tests - plug-in id */
- public static final String PLUGIN_ID = "org.eclipse.wst.xsl.launching.tests";
-
- // The shared instance
- private static Activator plugin;
-
- /**
- * The constructor
- */
- public Activator() {
- }
-
- /*
- * (non-Javadoc)
- * @see org.eclipse.core.runtime.Plugins#start(org.osgi.framework.BundleContext)
- */
- @Override
- public void start(BundleContext context) throws Exception {
- super.start(context);
- plugin = this;
- }
-
- /*
- * (non-Javadoc)
- * @see org.eclipse.core.runtime.Plugin#stop(org.osgi.framework.BundleContext)
- */
- @Override
- public void stop(BundleContext context) throws Exception {
- plugin = null;
- super.stop(context);
- }
-
- /**
- * Returns the shared instance
- *
- * @return the shared instance
- */
- public static Activator getDefault() {
- return plugin;
- }
-
- public void handleException(Exception e){
- Status status = new Status(IStatus.ERROR, PLUGIN_ID, e.getLocalizedMessage(), e);
- getLog().log(status);
- }
-
-}
diff --git a/tests/org.eclipse.wst.xsl.launching.tests/test-launching-src/org/eclipse/wst/xsl/launching/tests/LaunchingSuite.java b/tests/org.eclipse.wst.xsl.launching.tests/test-launching-src/org/eclipse/wst/xsl/launching/tests/LaunchingSuite.java
deleted file mode 100644
index 1fde7dc..0000000
--- a/tests/org.eclipse.wst.xsl.launching.tests/test-launching-src/org/eclipse/wst/xsl/launching/tests/LaunchingSuite.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008 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:
- * IBM Corporation - initial API and implementation
- * David Carver (STAR) - bug 262046 - refactored launching suite.
- *******************************************************************************/
-
-package org.eclipse.wst.xsl.launching.tests;
-
-import junit.framework.TestSuite;
-
-import org.eclipse.wst.xsl.launching.tests.testcase.LaunchShortcutTests;
-import org.eclipse.wst.xsl.launching.tests.testcase.ResultRunnableTest;
-import org.eclipse.wst.xsl.launching.tests.testcase.TestInputFileBlock;
-import org.eclipse.wst.xsl.launching.tests.testcase.XSLLaunchingTests;
-
-
-/**
- * This class does specifies all the classes in this bundle
- * that provide tests. It is primarily for the convenience of
- * the AllTestsSuite.
- *
- */
-public class LaunchingSuite extends TestSuite {
- public static TestSuite suite() {
- return new LaunchingSuite();
- }
-
- public LaunchingSuite() {
- super("XSL Launching Test Suite");
- addTest(new TestSuite(XSLLaunchingTests.class));
- addTest(new TestSuite(TestInputFileBlock.class));
- addTest(new TestSuite(LaunchShortcutTests.class));
- addTest(new TestSuite(ResultRunnableTest.class));
- }
-
- public LaunchingSuite(Class theClass, String name) {
- super(theClass, name);
- }
-
- public LaunchingSuite(Class theClass) {
- super(theClass);
- }
-
- public LaunchingSuite(String name) {
- super(name);
- }
-}
diff --git a/tests/org.eclipse.wst.xsl.launching.tests/test-launching-src/org/eclipse/wst/xsl/launching/tests/Misc.java b/tests/org.eclipse.wst.xsl.launching.tests/test-launching-src/org/eclipse/wst/xsl/launching/tests/Misc.java
deleted file mode 100644
index 3478c4a..0000000
--- a/tests/org.eclipse.wst.xsl.launching.tests/test-launching-src/org/eclipse/wst/xsl/launching/tests/Misc.java
+++ /dev/null
@@ -1,75 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007, 2008 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:
- * Gary Karasiuk (IBM Corporation) - initial implementation
- * Jesper Steen Møller - adapted for XSL
- *******************************************************************************/
-
-package org.eclipse.wst.xsl.launching.tests;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.OutputStream;
-import java.text.DateFormat;
-import java.text.SimpleDateFormat;
-import java.util.Date;
-
-/**
- * Some miscellaneous helper methods.
- * @author karasiuk
- *
- */
-public class Misc {
-
- private static DateFormat _df = new SimpleDateFormat("HH:mm:ss.SSSS"); //$NON-NLS-1$
-
- public static void close(InputStream in){
- if (in == null)return;
- try {
- in.close();
- }
- catch (IOException e){
- // eat it
- }
- }
-
- public static void close(OutputStream out) {
- if (out == null)return;
- try {
- out.close();
- }
- catch (IOException e){
- // eat it
- }
- }
-
- /**
- * Write a line to the console for debugging.
- * @param line
- */
- public static void log(String line){
- System.err.println(timestampIt(line));
- }
-
- public static String timestampIt(String line){
- Date date = new Date();
- long thread = Thread.currentThread().getId();
- return _df.format(date) + " " + thread + " " + line;//$NON-NLS-1$//$NON-NLS-2$
- }
-
- public static void log(StringBuffer b){
- log(b.toString());
- b.setLength(0);
- }
-
- public static void niy(String msg){
- if (msg == null)msg = "Sorry, this function is not implemented yet"; //$NON-NLS-1$
- throw new RuntimeException(msg);
- }
-
-}
diff --git a/tests/org.eclipse.wst.xsl.launching.tests/test-launching-src/org/eclipse/wst/xsl/launching/tests/MockXSLLaunchShortCut.java b/tests/org.eclipse.wst.xsl.launching.tests/test-launching-src/org/eclipse/wst/xsl/launching/tests/MockXSLLaunchShortCut.java
deleted file mode 100644
index 4700634..0000000
--- a/tests/org.eclipse.wst.xsl.launching.tests/test-launching-src/org/eclipse/wst/xsl/launching/tests/MockXSLLaunchShortCut.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2009 Standards for Technology in Automotive Retail 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:
- * David Carver (STAR) - bug 262046 - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.wst.xsl.launching.tests;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILaunchConfigurationType;
-import org.eclipse.debug.core.ILaunchManager;
-import org.eclipse.debug.internal.core.IConfigurationElementConstants;
-import org.eclipse.wst.xsl.internal.debug.ui.XSLLaunchShortcut;
-import org.eclipse.wst.xsl.launching.XSLLaunchConfigurationConstants;
-
-public class MockXSLLaunchShortCut extends XSLLaunchShortcut {
-
- public ILaunchManager testGetLaunchManager()
- {
- return DebugPlugin.getDefault().getLaunchManager();
- }
-
- public ILaunchConfigurationType testGetConfigurationType()
- {
- return getLaunchManager().getLaunchConfigurationType(XSLLaunchConfigurationConstants.ID_LAUNCH_CONFIG_TYPE);
- }
-
-
-}
diff --git a/tests/org.eclipse.wst.xsl.launching.tests/test-launching-src/org/eclipse/wst/xsl/launching/tests/TestEnvironment.java b/tests/org.eclipse.wst.xsl.launching.tests/test-launching-src/org/eclipse/wst/xsl/launching/tests/TestEnvironment.java
deleted file mode 100644
index d310089..0000000
--- a/tests/org.eclipse.wst.xsl.launching.tests/test-launching-src/org/eclipse/wst/xsl/launching/tests/TestEnvironment.java
+++ /dev/null
@@ -1,138 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007, 2008 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:
- * Gary Karasiuk (IBM Corporation) - initial implementation
- * Jesper Steen Møller - adapted for XSL
- *******************************************************************************/
-package org.eclipse.wst.xsl.launching.tests;
-
-import java.io.ByteArrayInputStream;
-import java.io.InputStream;
-import java.io.UnsupportedEncodingException;
-import java.util.HashMap;
-import java.util.Iterator;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IFolder;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IWorkspace;
-import org.eclipse.core.resources.IWorkspaceRunnable;
-import org.eclipse.core.resources.IncrementalProjectBuilder;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.jobs.Job;
-
-public class TestEnvironment {
-
- public static final boolean DEBUG = true;
-
- private IWorkspace _workspace;
- private HashMap<String, IProject> _projects = new HashMap<String, IProject>(20);
-
- public TestEnvironment() throws CoreException {
- _workspace = ResourcesPlugin.getWorkspace();
- if (DEBUG){
- _workspace.getRoot().delete(true, true, null);
- }
- }
-
- public IPath addFolder(IPath root, String folderName) throws CoreException {
- IPath path = root.append(folderName);
- createFolder(path);
- return path;
- }
-
- public void incrementalBuild() throws CoreException{
- getWorkspace().build(IncrementalProjectBuilder.INCREMENTAL_BUILD, null);
- }
-
- public void fullBuild() throws CoreException{
- getWorkspace().build(IncrementalProjectBuilder.FULL_BUILD, null);
- }
-
- public void waitForBuild(){
- boolean wasInterrupted = false;
- do {
- try {
- Job.getJobManager().join(ResourcesPlugin.FAMILY_MANUAL_BUILD, null);
- wasInterrupted = false;
- }
- catch (InterruptedException e){
- wasInterrupted = true;
- }
- } while(wasInterrupted);
- }
-
- private IFolder createFolder(IPath path) throws CoreException {
- if (path.segmentCount() <= 1)return null;
-
- IFolder folder = _workspace.getRoot().getFolder(path);
- if (!folder.exists()){
- folder.create(true, true, null);
- }
- return folder;
- }
-
- public IProject createProject(String name) throws CoreException {
- final IProject project = _workspace.getRoot().getProject(name);
- IWorkspaceRunnable create = new IWorkspaceRunnable() {
-
- public void run(IProgressMonitor monitor) throws CoreException {
- project.create(monitor);
- project.open(monitor);
- }
- };
-
- _workspace.run(create, null);
- _projects.put(name, project);
-
- return project;
- }
-
- public void dispose() throws CoreException {
- if (DEBUG)return;
- for (Iterator<IProject> it=_projects.values().iterator(); it.hasNext();){
- IProject project = it.next();
- project.delete(true, null);
- }
- }
-
- public IPath addFile(IPath folder, String fileName, String contents) throws CoreException, UnsupportedEncodingException {
- IPath filePath = folder.append(fileName);
- createFile(filePath, contents.getBytes("UTF8"));
- return filePath;
- }
-
- public IPath addFileFromResource(IPath folder, String fileName, String path) throws CoreException {
- IPath filePath = folder.append(fileName);
- createFileFromResource(filePath, path);
- return filePath;
- }
-
- private IFile createFile(IPath filePath, byte[] contents) throws CoreException {
- IFile file = _workspace.getRoot().getFile(filePath);
- ByteArrayInputStream in = new ByteArrayInputStream(contents);
- if (file.exists())file.setContents(in, true, false, null);
- else file.create(in, true, null);
- return file;
- }
-
- private IFile createFileFromResource(IPath filePath, String path) throws CoreException {
- IFile file = _workspace.getRoot().getFile(filePath);
- InputStream in = TestEnvironment.class.getResourceAsStream(path);
- if (file.exists())file.setContents(in, true, false, null);
- else file.create(in, true, null);
- return file;
- }
- public IWorkspace getWorkspace(){
- return _workspace;
- }
-
-}
diff --git a/tests/org.eclipse.wst.xsl.launching.tests/test-launching-src/org/eclipse/wst/xsl/launching/tests/testcase/LaunchShortcutTests.java b/tests/org.eclipse.wst.xsl.launching.tests/test-launching-src/org/eclipse/wst/xsl/launching/tests/testcase/LaunchShortcutTests.java
deleted file mode 100755
index 93af6ae..0000000
--- a/tests/org.eclipse.wst.xsl.launching.tests/test-launching-src/org/eclipse/wst/xsl/launching/tests/testcase/LaunchShortcutTests.java
+++ /dev/null
@@ -1,99 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2009 Standards for Technology in Automotive Retail 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:
- * David Carver (STAR) - bug 262046 - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.xsl.launching.tests.testcase;
-
-import java.util.ArrayList;
-import java.util.List;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.debug.internal.ui.launchConfigurations.LaunchShortcutExtension;
-import org.eclipse.ui.activities.WorkbenchActivityHelper;
-import org.eclipse.wst.xsl.launching.XSLLaunchConfigurationConstants;
-import org.eclipse.wst.xsl.launching.tests.AbstractLaunchingTest;
-import org.eclipse.wst.xsl.launching.tests.MockXSLLaunchShortCut;
-
-/**
- * Tests the capabilities of launch shortcuts from the <code>LaunchShortcuts</code> extension point
- *
- * @since 1.0
- */
-public class LaunchShortcutTests extends AbstractLaunchingTest {
-
-
- /**
- * Constructor
- * @param name
- */
- public LaunchShortcutTests(String name) {
- super(name);
- }
-
- @Override
- protected void setUp() throws Exception {
- // TODO Auto-generated method stub
- super.setUp();
- IPath path = folder.getFullPath();
- copyConfigurationToWorkspace(path, "SimpleTransform.launch");
- }
-
- @Override
- protected void tearDown() throws Exception {
- env.dispose();
- super.tearDown();
- }
-
- /**
- * Tests that the short cut is defined via the extension point.
- */
- public void testShortcutExtensionPointConfigured() {
- LaunchShortcutExtension ext = getLaunchShortcutExtension(XSL_LAUNCH_SHORTCUT_ID);
- assertNotNull("XSLT stylesheet shortcut not found", ext); //$NON-NLS-1$
- }
-
- public void testXSLLaunchConfigTypeDefined() {
- MockXSLLaunchShortCut shortCut = new MockXSLLaunchShortCut();
-
- String typeid = XSLLaunchConfigurationConstants.ID_LAUNCH_CONFIG_TYPE;
- assertEquals("Unexpected shortcut Type", typeid, shortCut.testGetConfigurationType().getIdentifier());
- }
-
- /**
- * Tests that the local java app shortcut does not support some fake type id 'foo'
- */
- public void testAssociatedConfigurationTypeNotSupported() {
- LaunchShortcutExtension ext = getLaunchShortcutExtension(XSL_LAUNCH_SHORTCUT_ID);
- assertNotNull("XSLT shortcut not found", ext); //$NON-NLS-1$
- String typeid = "org.eclipse.jdt.launching.foo"; //$NON-NLS-1$
- assertTrue("local xslt app shortcut should not support foo", !ext.getAssociatedConfigurationTypes().contains(typeid)); //$NON-NLS-1$
- }
-
-
- /**
- * Returns a listing of all applicable <code>LaunchShortcutExtension</code>s for the given
- * launch configuration type id.
- * @param typeid the id of the launch configuration
- * @return a listing of <code>LaunchShortcutExtension</code>s that are associated with the specified launch configuration
- * type id or an empty list, never <code>null</code>
- *
- * @since 1.0
- */
- public List getApplicableLaunchShortcuts(String typeid) {
- List list = new ArrayList();
- LaunchShortcutExtension ext = null;
- List shortcuts = getLaunchConfigurationManager().getLaunchShortcuts();
- for(int i = 0; i < shortcuts.size(); i++) {
- ext = (LaunchShortcutExtension) shortcuts.get(i);
- if(ext.getAssociatedConfigurationTypes().contains(typeid) && !WorkbenchActivityHelper.filterItem(ext)) {
- list.add(ext);
- }
- }
- return list;
- }
-}
diff --git a/tests/org.eclipse.wst.xsl.launching.tests/test-launching-src/org/eclipse/wst/xsl/launching/tests/testcase/MockInputFileBlock.java b/tests/org.eclipse.wst.xsl.launching.tests/test-launching-src/org/eclipse/wst/xsl/launching/tests/testcase/MockInputFileBlock.java
deleted file mode 100644
index 93d47b2..0000000
--- a/tests/org.eclipse.wst.xsl.launching.tests/test-launching-src/org/eclipse/wst/xsl/launching/tests/testcase/MockInputFileBlock.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*******************************************************************************
- *Copyright (c) 2008 Standards for Technology in Automotive Retail 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:
- * David Carver - bug 214228 - Verify that File Extensions available for input block
- *******************************************************************************/
-package org.eclipse.wst.xsl.launching.tests.testcase;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.wst.xsl.internal.debug.ui.tabs.main.InputFileBlock;
-
-public class MockInputFileBlock extends InputFileBlock {
-
- public MockInputFileBlock(IFile defaultFile) {
- super(defaultFile);
- // TODO Auto-generated constructor stub
- }
-
- public String[] getAvailableFileExtensions() {
- // Since this is private we need to expose it for testing.
- return getFileExtensions();
- }
-
-}
diff --git a/tests/org.eclipse.wst.xsl.launching.tests/test-launching-src/org/eclipse/wst/xsl/launching/tests/testcase/MockResultRunnable.java b/tests/org.eclipse.wst.xsl.launching.tests/test-launching-src/org/eclipse/wst/xsl/launching/tests/testcase/MockResultRunnable.java
deleted file mode 100644
index 548560e..0000000
--- a/tests/org.eclipse.wst.xsl.launching.tests/test-launching-src/org/eclipse/wst/xsl/launching/tests/testcase/MockResultRunnable.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2009 Standards for Technology in Automotive Retail 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:
- * David Carver (STAR) - bug 259053 - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.xsl.launching.tests.testcase;
-
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.source.SourceViewer;
-import org.eclipse.ui.IWorkbenchPartSite;
-import org.eclipse.wst.xsl.jaxp.debug.ui.internal.views.ResultRunnable;
-
-public class MockResultRunnable extends ResultRunnable {
-
- public MockResultRunnable(SourceViewer viewer, String results,
- IWorkbenchPartSite site) {
- super(viewer, results, site);
- // TODO Auto-generated constructor stub
- }
-
- public IDocument testCreateDocument() {
- return createDocument();
- }
-
-}
diff --git a/tests/org.eclipse.wst.xsl.launching.tests/test-launching-src/org/eclipse/wst/xsl/launching/tests/testcase/ResultRunnableTest.java b/tests/org.eclipse.wst.xsl.launching.tests/test-launching-src/org/eclipse/wst/xsl/launching/tests/testcase/ResultRunnableTest.java
deleted file mode 100644
index 25b240b..0000000
--- a/tests/org.eclipse.wst.xsl.launching.tests/test-launching-src/org/eclipse/wst/xsl/launching/tests/testcase/ResultRunnableTest.java
+++ /dev/null
@@ -1,115 +0,0 @@
-/*******************************************************************************
- *Copyright (c) 2009 Standards for Technology in Automotive Retail 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:
- * David Carver (STAR) - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.xsl.launching.tests.testcase;
-
-import java.io.IOException;
-
-import junit.framework.Assert;
-import junit.framework.TestCase;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IProjectDescription;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.NullProgressMonitor;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.contentassist.ICompletionProposal;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.IEditorPart;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.texteditor.ITextEditor;
-import org.eclipse.wst.sse.core.StructuredModelManager;
-import org.eclipse.wst.sse.core.internal.provisional.IModelManager;
-import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
-import org.eclipse.wst.sse.core.internal.provisional.exceptions.ResourceAlreadyExists;
-import org.eclipse.wst.sse.core.internal.provisional.exceptions.ResourceInUse;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;
-import org.eclipse.wst.sse.ui.internal.StructuredTextViewer;
-import org.eclipse.wst.xml.core.internal.encoding.XMLDocumentLoader;
-import org.eclipse.wst.xsl.ui.internal.StructuredTextViewerConfigurationXSL;
-import org.eclipse.wst.xsl.jaxp.debug.ui.internal.views.*;
-
-/**
- * This class is an abstract class for Content Completion Tests. It provides all
- * of the common methods that are used by the completion tests so that they
- * aren't duplicated across the various classes. Overrides can be done where
- * appropriate.
- *
- * @author David Carver
- *
- */
-public class ResultRunnableTest extends TestCase {
-
- protected StructuredTextViewer sourceViewer = null;
- protected Shell shell = null;
- protected Composite parent = null;
-
-
- public ResultRunnableTest() {
- }
-
- protected void initializeSourceViewer() {
- // some test environments might not have a "real" display
- if (Display.getCurrent() != null) {
-
-
- if (PlatformUI.isWorkbenchRunning()) {
- shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow()
- .getShell();
- } else {
- shell = new Shell(Display.getCurrent());
- }
- parent = new Composite(shell, SWT.NONE);
-
- // dummy viewer
- sourceViewer = new StructuredTextViewer(parent, null, null, false,
- SWT.NONE);
- } else {
- Assert
- .fail("Unable to run the test as a display must be available.");
- }
-
- configureSourceViewer();
- }
-
- protected void configureSourceViewer() {
- sourceViewer.configure(new StructuredTextViewerConfigurationXSL());
-
- }
-
- /**
- * Setup the necessary projects, files, and source viewer for the tests.
- */
- @Override
- protected void setUp() throws Exception {
- initializeSourceViewer();
- }
-
- @Override
- protected void tearDown() throws Exception {
- parent.dispose();
- super.tearDown();
- }
-
-
- public void testNoProcessingInstruction() throws Exception {
- String results = "This is some sample text.";
- MockResultRunnable runnable = new MockResultRunnable(sourceViewer, results, null);
- IDocument document = runnable.testCreateDocument();
- assertNotNull("Structured Document wasn not created successfully.", document);
- }
-}
diff --git a/tests/org.eclipse.wst.xsl.launching.tests/test-launching-src/org/eclipse/wst/xsl/launching/tests/testcase/TestInputFileBlock.java b/tests/org.eclipse.wst.xsl.launching.tests/test-launching-src/org/eclipse/wst/xsl/launching/tests/testcase/TestInputFileBlock.java
deleted file mode 100644
index 4e470c6..0000000
--- a/tests/org.eclipse.wst.xsl.launching.tests/test-launching-src/org/eclipse/wst/xsl/launching/tests/testcase/TestInputFileBlock.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*******************************************************************************
- *Copyright (c) 2008 Standards for Technology in Automotive Retail 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:
- * David Carver - bug 214228 - Verify that File Extensions available for input block
- *******************************************************************************/
-package org.eclipse.wst.xsl.launching.tests.testcase;
-
-import junit.framework.TestCase;
-
-
-public class TestInputFileBlock extends TestCase {
-
- public void testXMLFileExtensions() throws Exception {
- MockInputFileBlock fileBlock = new MockInputFileBlock(null);
- String[] fileExtensions = fileBlock.getAvailableFileExtensions();
- assertNotNull("No file extensions returned.", fileExtensions);
- assertTrue("Did not find 'xml'", findExtension("xml", fileExtensions));
- assertTrue("Did not find 'xsl'", findExtension("xsl", fileExtensions));
- assertTrue("Did not find 'xslt'", findExtension("xslt", fileExtensions));
- assertTrue("Did not find 'xmi'", findExtension("xmi", fileExtensions));
- }
-
- private boolean findExtension(String extension, String[] exts) {
- boolean foundsw = false;
- for (int i = 0; i < exts.length; i++) {
- if (extension.equalsIgnoreCase(exts[i])) {
- foundsw = true;
- }
- }
- return foundsw;
- }
-
-}
diff --git a/tests/org.eclipse.wst.xsl.launching.tests/test-launching-src/org/eclipse/wst/xsl/launching/tests/testcase/XSLLaunchingTests.java b/tests/org.eclipse.wst.xsl.launching.tests/test-launching-src/org/eclipse/wst/xsl/launching/tests/testcase/XSLLaunchingTests.java
deleted file mode 100644
index 4939073..0000000
--- a/tests/org.eclipse.wst.xsl.launching.tests/test-launching-src/org/eclipse/wst/xsl/launching/tests/testcase/XSLLaunchingTests.java
+++ /dev/null
@@ -1,91 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008 Jesper Steen Møller
- * 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:
- * Jesper Steen Møller - initial XSL launching test
- * David Carver (STAR) - bug 262046 - refactored for better reliability.
- *******************************************************************************/
-
-package org.eclipse.wst.xsl.launching.tests.testcase;
-
-import java.io.*;
-import javax.xml.parsers.*;
-
-import org.eclipse.core.resources.*;
-import org.eclipse.core.runtime.*;
-import org.w3c.dom.*;
-import org.xml.sax.*;
-
-import org.eclipse.wst.xsl.launching.tests.AbstractLaunchingTest;
-
-public class XSLLaunchingTests extends AbstractLaunchingTest {
-
- private static final String TRANSFORM_COMMENTS = "TransformComments";
- private static final String SIMPLE_TRANSFORM = "SimpleTransform";
-
- @Override
- protected void setUp() throws Exception {
- super.setUp();
-
- IPath path = folder.getFullPath();
- copyConfigurationToWorkspace(path, "SimpleTransform.launch");
- copyConfigurationToWorkspace(path, "TransformComments.launch");
- testProject.refreshLocal(IResource.DEPTH_INFINITE,
- new NullProgressMonitor());
- while (testProject.isSynchronized(IResource.DEPTH_INFINITE) == false) {
- Thread.sleep(100);
- }
- }
-
- @Override
- protected void tearDown() throws Exception {
- env.dispose();
- super.tearDown();
- }
-
- public synchronized void testSimpleTransformation() throws Exception {
- IPath folder = testProject.getFullPath();
- env.addFileFromResource(folder, "1-input.xml", "1-input.xml");
- env.addFileFromResource(folder, "1-transform.xsl", "1-transform.xsl");
- refreshProject();
-
- launchConfiguration(SIMPLE_TRANSFORM);
- IFile output = testProject.getFile("1-input.out.xml");
- Document doc = parseXml(output.getContents(true));
- assertEquals("root-out", doc.getDocumentElement().getNodeName());
- }
-
- /**
- * Test to make sure comments are being copied out to the output file. bug
- * 253703
- *
- * @throws CoreException
- * @throws InterruptedException
- * @throws ParserConfigurationException
- * @throws SAXException
- * @throws IOException
- */
- public synchronized void testTransformComments() throws Exception {
- IPath folder = testProject.getFullPath();
- env.addFileFromResource(folder, "testCommentInput.xml",
- "testCommentInput.xml");
- env.addFileFromResource(folder, "testComments.xsl", "testComments.xsl");
- env.addFileFromResource(folder, "expected.xml",
- "testCommentsExpected.xml");
- refreshProject();
-
- launchConfiguration(TRANSFORM_COMMENTS);
- IFile output = testProject.getFile("testCommentInput.out.xml");
- IFile expected = testProject.getFile("expected.xml");
-
- String result = readFile(output.getContents());
- String wanted = readFile(expected.getContents());
-
- assertEquals("Unexpected results:", wanted, result);
- }
-
-}
diff --git a/tests/org.eclipse.wst.xsl.launching.tests/test.xml b/tests/org.eclipse.wst.xsl.launching.tests/test.xml
deleted file mode 100644
index 0d0e48d..0000000
--- a/tests/org.eclipse.wst.xsl.launching.tests/test.xml
+++ /dev/null
@@ -1,115 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<project
- name="testsuite"
- default="run"
- basedir=".">
-
- <!-- The following properties should be passed into this script -->
- <!-- ${eclipse-home} -->
- <!-- ${buildDirectory} -->
- <!-- ${buildLabel} -->
-
- <!-- should be little need to change what's above -->
-
- <property
- name="plugin-name"
- value="org.eclipse.wst.xsl.launching.tests" />
- <property
- name="classname"
- value="org.eclipse.wst.xsl.launching.tests.LaunchingSuite" />
- <property
- name="testType"
- value="core-test" />
-
- <!-- should be little need to change what's below -->
-
- <echo message="basedir: ${basedir}" />
- <echo message="eclipse-home: ${eclipse-home}" />
- <echo message="buildDirectory: ${buildDirectory}" />
- <echo message="plugin-name: ${plugin-name}" />
- <echo message="classname: ${classname}" />
- <echo message="testType ${testType}" />
-
-
- <property
- name="library-file"
- value="${eclipse-home}/plugins/org.eclipse.test_3.1.0/library.xml" />
- <property
- name="workspace"
- value="${eclipse-home}/junitworkspaces/${plugin-name}" />
-
- <!-- 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="${plugin-name}.*xml" />
- </delete>
- <!-- make directory, in case path doesn't exist yet -->
- <mkdir dir="${workspace}" />
- <!-- but delete to make sure fresh contents-->
- <delete
- dir="${workspace}"
- quiet="true" />
-
- </target>
-
- <!-- This target defines the tests that need to be run. -->
- <target name="suite">
-
- <ant
- target="${testType}"
- antfile="${library-file}"
- dir="${eclipse-home}">
- <property
- name="data-dir"
- value="${workspace}" />
- <property
- name="plugin-name"
- value="${plugin-name}" />
- <property
- name="classname"
- value="${classname}" />
- <property
- name="plugin-path"
- value="${eclipse-home}/plugins/${plugin-name}" />
- </ant>
-
- <copy
- failonerror="false"
- file="${workspace}/.metadata/.log"
- tofile="${buildDirectory}/${buildLabel}/testResults/consolelogs/${plugin-name}.consolelog.txt" />
-
- </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">
- <!-- usually no need to delete workspace until next run, and leaving it allows inspection -->
- <!-- <delete dir="${workspace}" quiet="true" /> -->
- </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="${plugin-name}.*xml" />
- <property
- name="output-file"
- value="${plugin-name}.xml" />
- </ant>
- </target>
-
-</project> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.launching.tests/testFiles/SimpleTransform.launch b/tests/org.eclipse.wst.xsl.launching.tests/testFiles/SimpleTransform.launch
deleted file mode 100644
index b2151fd..0000000
--- a/tests/org.eclipse.wst.xsl.launching.tests/testFiles/SimpleTransform.launch
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<launchConfiguration type="org.eclipse.wst.xsl.launching.launchConfigurationType">
-<stringAttribute key="org.eclipse.wst.xsl.jaxp.launching.ATTR_ATTRIBUTES" value="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;no&quot;?&gt;&#10;&lt;Attributes/&gt;&#10;"/>
-<stringAttribute key="org.eclipse.wst.xsl.jaxp.launching.ATTR_OUTPUT_PROPERTIES" value="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;no&quot;?&gt;&#10;&lt;Properties/&gt;&#10;"/>
-<stringAttribute key="org.eclipse.wst.xsl.jaxp.launching.ATTR_PROCESSOR" value="org.eclipse.wst.xsl.launching.xalan.processor"/>
-<stringAttribute key="org.eclipse.wst.xsl.jaxp.launching.ATTR_TRANSFORMER_FACTORY" value="org.apache.xalan.processor.TransformerFactoryImpl"/>
-<booleanAttribute key="org.eclipse.wst.xsl.jaxp.launching.ATTR_USE_DEFAULT_PROCESSOR" value="false"/>
-<stringAttribute key="org.eclipse.wst.xsl.jaxp.launching.INVOKER_DESCRIPTOR" value="org.eclipse.wst.xsl.launching.jaxp.invoke"/>
-<booleanAttribute key="org.eclipse.wst.xsl.launching.ATTR_FORMAT_FILE" value="false"/>
-<stringAttribute key="org.eclipse.wst.xsl.launching.ATTR_INPUT_FILE" value="${workspace_loc:/XSLTestProject/1-input.xml}"/>
-<booleanAttribute key="org.eclipse.wst.xsl.launching.ATTR_OPEN_FILE" value="true"/>
-<stringAttribute key="org.eclipse.wst.xsl.launching.ATTR_OUTPUT_FILENAME" value=""/>
-<stringAttribute key="org.eclipse.wst.xsl.launching.ATTR_OUTPUT_FOLDER" value=""/>
-<stringAttribute key="org.eclipse.wst.xsl.launching.ATTR_PIPELINE" value="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;no&quot;?&gt;&#10;&lt;Pipeline&gt;&#10;&lt;OutputProperties/&gt;&#10;&lt;Transform path=&quot;/XSLTestProject/1-transform.xsl&quot; pathType=&quot;resource&quot; uriResolver=&quot;&quot;&gt;&#10;&lt;Parameters/&gt;&#10;&lt;/Transform&gt;&#10;&lt;/Pipeline&gt;&#10;"/>
-<booleanAttribute key="org.eclipse.wst.xsl.launching.ATTR_USE_DEFAULT_OUTPUT_FILE" value="true"/>
-</launchConfiguration>
diff --git a/tests/org.eclipse.wst.xsl.launching.tests/testFiles/TransformComments.launch b/tests/org.eclipse.wst.xsl.launching.tests/testFiles/TransformComments.launch
deleted file mode 100644
index 2790de7..0000000
--- a/tests/org.eclipse.wst.xsl.launching.tests/testFiles/TransformComments.launch
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<launchConfiguration type="org.eclipse.wst.xsl.launching.launchConfigurationType">
-<stringAttribute key="org.eclipse.wst.xsl.jaxp.launching.ATTR_ATTRIBUTES" value="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;no&quot;?&gt;&#10;&lt;Attributes/&gt;&#10;"/>
-<stringAttribute key="org.eclipse.wst.xsl.jaxp.launching.ATTR_OUTPUT_PROPERTIES" value="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;no&quot;?&gt;&#10;&lt;Properties/&gt;&#10;"/>
-<stringAttribute key="org.eclipse.wst.xsl.jaxp.launching.ATTR_PROCESSOR" value="org.eclipse.wst.xsl.launching.xalan.processor"/>
-<stringAttribute key="org.eclipse.wst.xsl.jaxp.launching.ATTR_TRANSFORMER_FACTORY" value="org.apache.xalan.processor.TransformerFactoryImpl"/>
-<booleanAttribute key="org.eclipse.wst.xsl.jaxp.launching.ATTR_USE_DEFAULT_PROCESSOR" value="false"/>
-<stringAttribute key="org.eclipse.wst.xsl.jaxp.launching.INVOKER_DESCRIPTOR" value="org.eclipse.wst.xsl.launching.jaxp.invoke"/>
-<booleanAttribute key="org.eclipse.wst.xsl.launching.ATTR_FORMAT_FILE" value="false"/>
-<stringAttribute key="org.eclipse.wst.xsl.launching.ATTR_INPUT_FILE" value="${workspace_loc:/XSLTestProject/testCommentInput.xml}"/>
-<booleanAttribute key="org.eclipse.wst.xsl.launching.ATTR_OPEN_FILE" value="true"/>
-<stringAttribute key="org.eclipse.wst.xsl.launching.ATTR_OUTPUT_FILENAME" value="testCommentInput.out.xml"/>
-<stringAttribute key="org.eclipse.wst.xsl.launching.ATTR_OUTPUT_FOLDER" value="${workspace_loc:/XSLTestProject}"/>
-<stringAttribute key="org.eclipse.wst.xsl.launching.ATTR_PIPELINE" value="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;no&quot;?&gt;&#10;&lt;Pipeline&gt;&#10;&lt;OutputProperties/&gt;&#10;&lt;Transform path=&quot;/XSLTestProject/testComments.xsl&quot; pathType=&quot;resource&quot; uriResolver=&quot;&quot;&gt;&#10;&lt;Parameters/&gt;&#10;&lt;/Transform&gt;&#10;&lt;/Pipeline&gt;&#10;"/>
-<booleanAttribute key="org.eclipse.wst.xsl.launching.ATTR_USE_DEFAULT_OUTPUT_FILE" value="true"/>
-</launchConfiguration>
diff --git a/tests/org.eclipse.wst.xsl.launching.tests/xsl-test-resources/org/eclipse/wst/xsl/launching/tests/1-input.xml b/tests/org.eclipse.wst.xsl.launching.tests/xsl-test-resources/org/eclipse/wst/xsl/launching/tests/1-input.xml
deleted file mode 100644
index 5757dde..0000000
--- a/tests/org.eclipse.wst.xsl.launching.tests/xsl-test-resources/org/eclipse/wst/xsl/launching/tests/1-input.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<root>
- <element attribute="yes"/>
-</root>
diff --git a/tests/org.eclipse.wst.xsl.launching.tests/xsl-test-resources/org/eclipse/wst/xsl/launching/tests/1-transform.xsl b/tests/org.eclipse.wst.xsl.launching.tests/xsl-test-resources/org/eclipse/wst/xsl/launching/tests/1-transform.xsl
deleted file mode 100644
index 36af48c..0000000
--- a/tests/org.eclipse.wst.xsl.launching.tests/xsl-test-resources/org/eclipse/wst/xsl/launching/tests/1-transform.xsl
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
- <xsl:template match="//root">
- <root-out/>
- </xsl:template>
-</xsl:stylesheet>
-
diff --git a/tests/org.eclipse.wst.xsl.launching.tests/xsl-test-resources/org/eclipse/wst/xsl/launching/tests/testCommentInput.out.xml b/tests/org.eclipse.wst.xsl.launching.tests/xsl-test-resources/org/eclipse/wst/xsl/launching/tests/testCommentInput.out.xml
deleted file mode 100644
index 6351287..0000000
--- a/tests/org.eclipse.wst.xsl.launching.tests/xsl-test-resources/org/eclipse/wst/xsl/launching/tests/testCommentInput.out.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?><root><element>
- </element><element>
-
- </element><element>
-
-</element></root> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.launching.tests/xsl-test-resources/org/eclipse/wst/xsl/launching/tests/testCommentInput.xml b/tests/org.eclipse.wst.xsl.launching.tests/xsl-test-resources/org/eclipse/wst/xsl/launching/tests/testCommentInput.xml
deleted file mode 100644
index 11abc90..0000000
--- a/tests/org.eclipse.wst.xsl.launching.tests/xsl-test-resources/org/eclipse/wst/xsl/launching/tests/testCommentInput.xml
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<doc>
- <test>
- <!--first comment-->
- </test>
- <!--second comment-->
-</doc> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.launching.tests/xsl-test-resources/org/eclipse/wst/xsl/launching/tests/testComments.xsl b/tests/org.eclipse.wst.xsl.launching.tests/xsl-test-resources/org/eclipse/wst/xsl/launching/tests/testComments.xsl
deleted file mode 100644
index 91ee3d1..0000000
--- a/tests/org.eclipse.wst.xsl.launching.tests/xsl-test-resources/org/eclipse/wst/xsl/launching/tests/testComments.xsl
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
- version="1.0">
- <xsl:template match="comment()">
- <xsl:copy />
- </xsl:template>
-</xsl:stylesheet> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.launching.tests/xsl-test-resources/org/eclipse/wst/xsl/launching/tests/testCommentsExpected.xml b/tests/org.eclipse.wst.xsl.launching.tests/xsl-test-resources/org/eclipse/wst/xsl/launching/tests/testCommentsExpected.xml
deleted file mode 100644
index 038aaad..0000000
--- a/tests/org.eclipse.wst.xsl.launching.tests/xsl-test-resources/org/eclipse/wst/xsl/launching/tests/testCommentsExpected.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
- <!--first comment-->
-
- <!--second comment--> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/.classpath b/tests/org.eclipse.wst.xsl.tests/.classpath
deleted file mode 100644
index ce73933..0000000
--- a/tests/org.eclipse.wst.xsl.tests/.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.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.4"/>
- <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
- <classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/tests/org.eclipse.wst.xsl.tests/.project b/tests/org.eclipse.wst.xsl.tests/.project
deleted file mode 100644
index 4293a3d..0000000
--- a/tests/org.eclipse.wst.xsl.tests/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.wst.xsl.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/tests/org.eclipse.wst.xsl.tests/.settings/org.eclipse.jdt.core.prefs b/tests/org.eclipse.wst.xsl.tests/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index 5552f02..0000000
--- a/tests/org.eclipse.wst.xsl.tests/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,7 +0,0 @@
-#Thu Jan 10 09:20:54 EST 2008
-eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.2
-org.eclipse.jdt.core.compiler.compliance=1.4
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=warning
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=warning
-org.eclipse.jdt.core.compiler.source=1.3
diff --git a/tests/org.eclipse.wst.xsl.tests/META-INF/MANIFEST.MF b/tests/org.eclipse.wst.xsl.tests/META-INF/MANIFEST.MF
deleted file mode 100644
index 262b998..0000000
--- a/tests/org.eclipse.wst.xsl.tests/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,19 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %Bundle-Name.0
-Bundle-SymbolicName: org.eclipse.wst.xsl.tests;singleton:=true
-Bundle-Version: 1.0.0.qualifier
-Bundle-Vendor: %Bundle-Vendor.0
-Bundle-RequiredExecutionEnvironment: J2SE-1.4
-Bundle-Localization: plugin
-Require-Bundle: org.junit;bundle-version="3.8.1",
- org.eclipse.wst.xsl.launching.tests;bundle-version="[1.0.0,2.0.0)",
- org.eclipse.wst.xsl.ui.tests;bundle-version="[1.0.0,2.0.0)",
- org.eclipse.wst.xsl.core.tests;bundle-version="[1.0.0,2.0.0)",
- org.eclipse.wst.xml.xpath.core.tests;bundle-version="[1.0.0,2.0.0)",
- org.eclipse.wst.xml.xpath2.processor.tests;bundle-version="[1.0.0,2.0.0)",
- org.eclipse.core.runtime;bundle-version="[3.4.0,4.0.0)"
-Export-Package: org.eclipse.wst.xsl.tests
-Bundle-ClassPath: .
-Bundle-ActivationPolicy: lazy
-Bundle-Activator: org.eclipse.wst.xsl.tests.XSLTestPlugin
diff --git a/tests/org.eclipse.wst.xsl.tests/about.html b/tests/org.eclipse.wst.xsl.tests/about.html
deleted file mode 100644
index 2199df3..0000000
--- a/tests/org.eclipse.wst.xsl.tests/about.html
+++ /dev/null
@@ -1,34 +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">
-
-<H3>About This Content</H3>
-
-<P>June, 2008</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/org/documents/epl-v10.php">http://www.eclipse.org/org/documents/epl-v10.php</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
-and such source code may be obtained at
-<A href="http://www.eclipse.org/">http://www.eclipse.org/</A>.</P>
-
-</BODY>
-</HTML>
diff --git a/tests/org.eclipse.wst.xsl.tests/build.properties b/tests/org.eclipse.wst.xsl.tests/build.properties
deleted file mode 100644
index 8d3b787..0000000
--- a/tests/org.eclipse.wst.xsl.tests/build.properties
+++ /dev/null
@@ -1,19 +0,0 @@
-###############################################################################
-# Copyright (c) 2008 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:
-# IBM Corporation - initial API and implementation
-###############################################################################
-source.. = src/
-output.. = bin/
-bin.includes = META-INF/,\
- .,\
- plugin.properties,\
- test.xml,\
- about.html,\
- bin/
-source.. = src/
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/0.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/0.html
deleted file mode 100644
index f5f4e44..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/0.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR PACKAGE [<SPAN CLASS="in">org.eclipse.wst.sse.core.internal.cleanup</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>org.eclipse.wst.sse.core.internal.cleanup</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/43)</TD><TD CLASS="h">0%   (0/834)</TD><TD CLASS="h">0%   (0/252)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY SOURCE FILE</H3><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR CLASS="o"><TD><A HREF="e7.html">AbstractStructuredCleanupProcessor.java</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/19)</TD><TD CLASS="h">0%   (0/709)</TD><TD CLASS="h">0%   (0/206)</TD></TR><TR><TD><A HREF="e8.html">StructuredCleanupPreferences.java</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/21)</TD><TD CLASS="h">0%   (0/83)</TD><TD CLASS="h">0%   (0/34)</TD></TR><TR CLASS="o"><TD><A HREF="e9.html">StructuredContentCleanupHandlerImpl.java</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/42)</TD><TD CLASS="h">0%   (0/12)</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1.html
deleted file mode 100644
index 80f1f24..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR PACKAGE [<SPAN CLASS="in">org.eclipse.wst.sse.core.internal.exceptions</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>org.eclipse.wst.sse.core.internal.exceptions</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/16)</TD><TD CLASS="h">0%   (0/105)</TD><TD CLASS="h">0%   (0/39)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY SOURCE FILE</H3><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR CLASS="o"><TD><A HREF="ea.html">CharConversionErrorWithDetail.java</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD><A HREF="eb.html">MalformedInputExceptionWithDetail.java</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/72)</TD><TD CLASS="h">0%   (0/25)</TD></TR><TR CLASS="o"><TD><A HREF="ec.html">MalformedOutputExceptionWithDetail.java</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD><A HREF="ed.html">UnsupportedCharsetExceptionWithDetail.java</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/6)</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/10.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/10.html
deleted file mode 100644
index fdbb5cc..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/10.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR PACKAGE [<SPAN CLASS="in">org.eclipse.wst.sse.ui.internal.editor</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>org.eclipse.wst.sse.ui.internal.editor</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/43)</TD><TD CLASS="h">0%   (0/316)</TD><TD CLASS="h">0%   (0/106)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY SOURCE FILE</H3><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR CLASS="o"><TD><A HREF="11a.html">EditorModelUtil.java</A></TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/73)</TD><TD CLASS="h">0%   (0/21)</TD></TR><TR><TD><A HREF="11b.html">EditorPluginImageHelper.java</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/104)</TD><TD CLASS="h">0%   (0/33)</TD></TR><TR CLASS="o"><TD><A HREF="11c.html">EditorPluginImages.java</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD><A HREF="11d.html">SelectionConvertor.java</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/67)</TD><TD CLASS="h">0%   (0/17)</TD></TR><TR CLASS="o"><TD><A HREF="11e.html">StructuredModelDocumentProvider.java</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/27)</TD><TD CLASS="h">0%   (0/69)</TD><TD CLASS="h">0%   (0/34)</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/100.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/100.html
deleted file mode 100644
index fa52c09..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/100.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="9.html">org.eclipse.wst.sse.internal.contentproperties</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">ContentSettingsSelfHandler.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>ContentSettingsSelfHandler.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/104)</TD><TD CLASS="h">0%   (0/27)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">ContentSettingsSelfHandler</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/104)</TD><TD CLASS="h">0%   (0/27)</TD></TR><TR><TD CLASS="f"><A HREF="#0">ContentSettingsSelfHandler (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">getSubject (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#3">handleAdded (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/28)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">handleChanged (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/42)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR><TD CLASS="f"><A HREF="#5">handleRemoved (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/28)</TD><TD CLASS="h">0%   (0/8)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.internal.contentproperties;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD> </TD></TR><TR><TD CLASS="l">16</TD><TD> </TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.core.resources.IResourceDelta;</TD></TR><TR><TD CLASS="l"><A NAME="0">18</A></TD><TD> </TD></TR><TR><TD CLASS="l">19</TD><TD>/**</TD></TR><TR><TD CLASS="l">20</TD><TD>* @deprecated This is package protected so no one cares anyways.</TD></TR><TR><TD CLASS="l">21</TD><TD>*/</TD></TR><TR CLASS="z"><TD CLASS="l">22</TD><TD>final class ContentSettingsSelfHandler extends AbstractContentSettingsHandler {</TD></TR><TR><TD CLASS="l">23</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="2">24</A></TD><TD>        private static INotify notify;// = new ContentSettingsChangedSubject();</TD></TR><TR><TD CLASS="l">25</TD><TD> </TD></TR><TR><TD CLASS="l">26</TD><TD> </TD></TR><TR><TD CLASS="l">27</TD><TD>        private final void getSubject() {</TD></TR><TR CLASS="z"><TD CLASS="l">28</TD><TD>                notify = ContentSettingsChangeSubject.getNotify();</TD></TR><TR CLASS="z"><TD CLASS="l">29</TD><TD>        }</TD></TR><TR><TD CLASS="l">30</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="3">31</A></TD><TD>        /*</TD></TR><TR><TD CLASS="l">32</TD><TD>         * @see AbstractContentSettingsHandler#handleAdded()</TD></TR><TR><TD CLASS="l">33</TD><TD>         */</TD></TR><TR><TD CLASS="l">34</TD><TD>        protected void handleAdded() {</TD></TR><TR CLASS="z"><TD CLASS="l">35</TD><TD>                getSubject();</TD></TR><TR CLASS="z"><TD CLASS="l">36</TD><TD>                if (super.getDelta().getFlags() == 0) {</TD></TR><TR><TD CLASS="l">37</TD><TD>                        // pulldown memu-&gt;copy-&gt;create file without override, new file,</TD></TR><TR><TD CLASS="l">38</TD><TD>                        // property page create .contentsettings</TD></TR><TR CLASS="z"><TD CLASS="l">39</TD><TD>                        super.handleAdded();</TD></TR><TR CLASS="z"><TD CLASS="l">40</TD><TD>                        notify.notifyListeners(getDelta().getResource());</TD></TR><TR><TD CLASS="l">41</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">42</TD><TD>                } else if ((getDelta().getFlags() &amp; IResourceDelta.MOVED_FROM) != 0) {</TD></TR><TR><TD CLASS="l">43</TD><TD>                        // pulldown menu-&gt; rename without override,pulldown menu-&gt;move</TD></TR><TR><TD CLASS="l">44</TD><TD>                        // without override</TD></TR><TR CLASS="z"><TD CLASS="l">45</TD><TD>                        super.handleAdded();</TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>                        notify.notifyListeners(getDelta().getResource());</TD></TR><TR><TD CLASS="l">47</TD><TD> </TD></TR><TR><TD CLASS="l">48</TD><TD>                }</TD></TR><TR><TD CLASS="l">49</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">50</TD><TD>        }</TD></TR><TR><TD CLASS="l">51</TD><TD> </TD></TR><TR><TD CLASS="l">52</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="4">53</A></TD><TD>        /*</TD></TR><TR><TD CLASS="l">54</TD><TD>         * @see AbstractContentSettingsHandler#handleChanged()</TD></TR><TR><TD CLASS="l">55</TD><TD>         */</TD></TR><TR><TD CLASS="l">56</TD><TD>        protected void handleChanged() {</TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>                getSubject();</TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>                if ((getDelta().getFlags() &amp; IResourceDelta.CONTENT) != 0 &amp;&amp; (getDelta().getFlags() &amp; IResourceDelta.REPLACED) == 0) {</TD></TR><TR><TD CLASS="l">59</TD><TD>                        // result of edit, property page operate setProperty(apply or ok</TD></TR><TR><TD CLASS="l">60</TD><TD>                        // button) in .contentsettings</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                        super.handleChanged();</TD></TR><TR><TD CLASS="l">62</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>                        notify.notifyListeners(getDelta().getResource());</TD></TR><TR><TD CLASS="l">64</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>                } else if ((getDelta().getFlags() &amp; IResourceDelta.CONTENT) != 0 &amp;&amp; (getDelta().getFlags() &amp; IResourceDelta.REPLACED) != 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                        super.handleChanged();</TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>                        notify.notifyListeners(getDelta().getResource());</TD></TR><TR><TD CLASS="l">68</TD><TD> </TD></TR><TR><TD CLASS="l">69</TD><TD>                }</TD></TR><TR><TD CLASS="l">70</TD><TD> </TD></TR><TR><TD CLASS="l">71</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>        }</TD></TR><TR><TD CLASS="l">73</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="5">74</A></TD><TD>        /*</TD></TR><TR><TD CLASS="l">75</TD><TD>         * @see AbstractContentSettingsHandler#handleRemoved()</TD></TR><TR><TD CLASS="l">76</TD><TD>         */</TD></TR><TR><TD CLASS="l">77</TD><TD>        protected void handleRemoved() {</TD></TR><TR CLASS="z"><TD CLASS="l">78</TD><TD>                getSubject();</TD></TR><TR CLASS="z"><TD CLASS="l">79</TD><TD>                if (getDelta().getFlags() == 0) {</TD></TR><TR><TD CLASS="l">80</TD><TD>                        // pulldown menu-&gt;delete</TD></TR><TR CLASS="z"><TD CLASS="l">81</TD><TD>                        super.handleRemoved();</TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>                        notify.notifyListeners(getDelta().getResource());</TD></TR><TR><TD CLASS="l">83</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">84</TD><TD>                } else if ((getDelta().getFlags() &amp; IResourceDelta.MOVED_TO) != 0) {</TD></TR><TR><TD CLASS="l">85</TD><TD>                        // pulldown menu-&gt; rename, pulldown menu-&gt;move</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                        super.handleRemoved();</TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>                        notify.notifyListeners(getDelta().getResource());</TD></TR><TR><TD CLASS="l">88</TD><TD> </TD></TR><TR><TD CLASS="l">89</TD><TD>                }</TD></TR><TR><TD CLASS="l">90</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">91</TD><TD>        }</TD></TR><TR><TD CLASS="l">92</TD><TD> </TD></TR><TR><TD CLASS="l">93</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="9.html">org.eclipse.wst.sse.internal.contentproperties</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/101.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/101.html
deleted file mode 100644
index 5ec3817..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/101.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="9.html">org.eclipse.wst.sse.internal.contentproperties</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">ContentSettingsSynchronizer.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>ContentSettingsSynchronizer.java</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/218)</TD><TD CLASS="h">0%   (0/63)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">ContentSettingsSynchronizer</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/79)</TD><TD CLASS="h">0%   (0/27)</TD></TR><TR><TD CLASS="f"><A HREF="#1">&lt;static initializer&gt;</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#0">ContentSettingsSynchronizer (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#3">getInstance (): ContentSettingsSynchronizer</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">getProject (): IProject</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#5">getWorkspace (): IWorkspace</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">install (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#7">isListening (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">resourceChanged (IResourceChangeEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/27)</TD><TD CLASS="h">0%   (0/9)</TD></TR><TR><TD CLASS="f"><A HREF="#9">unInstall (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#a">ContentSettingsSynchronizer$ContentSettingsVisitor</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/139)</TD><TD CLASS="h">0%   (0/36)</TD></TR><TR><TD CLASS="f"><A HREF="#a">ContentSettingsSynchronizer$ContentSettingsVisitor (ContentSettingsSynchroniz...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#c">visit (IResourceDelta): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/127)</TD><TD CLASS="h">0%   (0/32)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.internal.contentproperties;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.core.resources.IProject;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.core.resources.IResource;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.core.resources.IResourceChangeEvent;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.core.resources.IResourceChangeListener;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.core.resources.IResourceDelta;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.core.resources.IResourceDeltaVisitor;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.core.resources.IWorkspace;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.core.resources.ResourcesPlugin;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.core.runtime.CoreException;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.wst.sse.core.internal.Logger;</TD></TR><TR><TD CLASS="l">25</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="0">26</A></TD><TD>/**</TD></TR><TR><TD CLASS="l">27</TD><TD> * @deprecated See</TD></TR><TR><TD CLASS="l">28</TD><TD> *             org.eclipse.html.core.internal.contentproperties.HTMLContentProperties</TD></TR><TR><TD CLASS="l">29</TD><TD> */</TD></TR><TR CLASS="z"><TD CLASS="l">30</TD><TD>public class ContentSettingsSynchronizer implements IResourceChangeListener {</TD></TR><TR><TD CLASS="l">31</TD><TD>        class ContentSettingsVisitor implements IResourceDeltaVisitor {</TD></TR><TR><TD CLASS="l">32</TD><TD>                // redefinition in ContentSettings.java</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="a">33</A></TD><TD>                private String contentSettingsName = ContentSettings.getContentSettingsName(); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">34</TD><TD>                private IResourceChangeEvent fEvent;</TD></TR><TR><TD CLASS="l">35</TD><TD>                private IContentSettingsHandler handler;</TD></TR><TR><TD CLASS="l">36</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">37</TD><TD>                public ContentSettingsVisitor(IResourceChangeEvent event) {</TD></TR><TR CLASS="z"><TD CLASS="l">38</TD><TD>                        this.fEvent = event;</TD></TR><TR CLASS="z"><TD CLASS="l">39</TD><TD>                }</TD></TR><TR><TD CLASS="l">40</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="c">41</A></TD><TD>                /**</TD></TR><TR><TD CLASS="l">42</TD><TD>                 * @see IResourceDeltaVisitor#visit(org.eclipse.core.resources.IResourceDelta)</TD></TR><TR><TD CLASS="l">43</TD><TD>                 */</TD></TR><TR><TD CLASS="l">44</TD><TD>                public boolean visit(IResourceDelta delta) {</TD></TR><TR CLASS="z"><TD CLASS="l">45</TD><TD>                        if (delta == null)</TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>                                return false;</TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>                        IResource resource = delta.getResource();</TD></TR><TR CLASS="z"><TD CLASS="l">48</TD><TD>                        if (resource == null)</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>                                return false;</TD></TR><TR><TD CLASS="l">50</TD><TD>                        // parent folder or project</TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>                        if (delta.getKind() == IResourceDelta.CHANGED &amp;&amp; delta.getFlags() == 0)</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                                return true;</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>                        final int resourceType = resource.getType();</TD></TR><TR CLASS="z"><TD CLASS="l">54</TD><TD>                        switch (resourceType) {</TD></TR><TR><TD CLASS="l">55</TD><TD>                                case IResource.PROJECT :</TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>                                        return false;</TD></TR><TR><TD CLASS="l">57</TD><TD>                                case IResource.FILE :</TD></TR><TR><TD CLASS="l">58</TD><TD>                                        // whether resource is .contentsettings file or not</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>                                        IProject project = delta.getResource().getProject();</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                                        if (this.fEvent.getType() == IResourceChangeEvent.POST_CHANGE &amp;&amp; resource.equals(project.getFile(this.contentSettingsName))) {</TD></TR><TR><TD CLASS="l">61</TD><TD>                                                // new object for .contentsettings</TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>                                                handler = new ContentSettingsSelfHandler();</TD></TR><TR><TD CLASS="l">63</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                                        else if (this.fEvent.getType() == IResourceChangeEvent.PRE_BUILD &amp;&amp; resource.getFileExtension() != null) {</TD></TR><TR><TD CLASS="l">65</TD><TD>                                                // TODO change to content type!</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                                                if (resource.getFileExtension().equalsIgnoreCase(&#34;shtml&#34;) //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>                                                                        || resource.getFileExtension().equalsIgnoreCase(&#34;htm&#34;) //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>                                                                        || resource.getFileExtension().equalsIgnoreCase(&#34;html&#34;) //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                                                                        || resource.getFileExtension().equalsIgnoreCase(&#34;jhtml&#34;) //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">70</TD><TD>                                                                        || resource.getFileExtension().equalsIgnoreCase(&#34;xhtml&#34;) //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>                                                                        || resource.getFileExtension().equalsIgnoreCase(&#34;jsp&#34;) //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>                                                                        || resource.getFileExtension().equalsIgnoreCase(&#34;css&#34;) //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">73</TD><TD>                                                                        || resource.getFileExtension().equalsIgnoreCase(&#34;jsf&#34;) //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>                                                                        || resource.getFileExtension().equalsIgnoreCase(&#34;jspf&#34;)) { //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">75</TD><TD>                                                        // new object for IFile</TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>                                                        handler = new ContentSettingsFileHandler();</TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>                                                        handler.handle(delta);</TD></TR><TR CLASS="z"><TD CLASS="l">78</TD><TD>                                                        handler = null;</TD></TR><TR CLASS="z"><TD CLASS="l">79</TD><TD>                                                        return true;</TD></TR><TR><TD CLASS="l">80</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">81</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">82</TD><TD>                                        else</TD></TR><TR CLASS="z"><TD CLASS="l">83</TD><TD>                                                return false; // true or false;motomoto true;</TD></TR><TR><TD CLASS="l">84</TD><TD>                                        break;</TD></TR><TR><TD CLASS="l">85</TD><TD>                                case IResource.FOLDER :</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                                        return true;</TD></TR><TR><TD CLASS="l">87</TD><TD>                                default :</TD></TR><TR CLASS="z"><TD CLASS="l">88</TD><TD>                                        return true;</TD></TR><TR><TD CLASS="l">89</TD><TD>                        }</TD></TR><TR><TD CLASS="l">90</TD><TD>//                        final IResourceDelta fDelta = delta;</TD></TR><TR><TD CLASS="l">91</TD><TD>//                        final IContentSettingsHandler deltaHandler = this.handler;</TD></TR><TR><TD CLASS="l">92</TD><TD>                        // XXX FIXME</TD></TR><TR><TD CLASS="l">93</TD><TD>                        // I commented out following to move this to &#34;model&#34; </TD></TR><TR><TD CLASS="l">94</TD><TD>                        // packages. Since wasnt't hooked up/working anyway, I think </TD></TR><TR><TD CLASS="l">95</TD><TD>                        // ok for now, but need to re-work as Job, once we do implement </TD></TR><TR><TD CLASS="l">96</TD><TD>                        // settings for resources again. </TD></TR><TR><TD CLASS="l">97</TD><TD>//                        Display display = getDisplay();</TD></TR><TR><TD CLASS="l">98</TD><TD>//                        if (display != null &amp;&amp; !display.isDisposed()) {</TD></TR><TR><TD CLASS="l">99</TD><TD>//                                display.asyncExec(new Runnable() {</TD></TR><TR><TD CLASS="l">100</TD><TD>//                                        public void run() {</TD></TR><TR><TD CLASS="l">101</TD><TD>//                                                if (deltaHandler != null) {</TD></TR><TR><TD CLASS="l">102</TD><TD>//                                                        deltaHandler.handle(fDelta);</TD></TR><TR><TD CLASS="l">103</TD><TD>//                                                }</TD></TR><TR><TD CLASS="l">104</TD><TD>//                                        }</TD></TR><TR><TD CLASS="l">105</TD><TD>//                                });</TD></TR><TR><TD CLASS="l">106</TD><TD>//                        }</TD></TR><TR><TD CLASS="l">107</TD><TD>//                        else if (deltaHandler != null) {</TD></TR><TR><TD CLASS="l">108</TD><TD>//                                deltaHandler.handle(fDelta);</TD></TR><TR><TD CLASS="l">109</TD><TD>//                        }</TD></TR><TR CLASS="z"><TD CLASS="l">110</TD><TD>                        handler = null;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="1">111</A></TD><TD>                        return true; // true or false;motomoto true;</TD></TR><TR><TD CLASS="l">112</TD><TD>                }</TD></TR><TR><TD CLASS="l">113</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="3">114</A></TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">115</TD><TD>        private static ContentSettingsSynchronizer instance = null;</TD></TR><TR><TD CLASS="l">116</TD><TD> </TD></TR><TR><TD CLASS="l">117</TD><TD>        public synchronized static ContentSettingsSynchronizer getInstance() {</TD></TR><TR CLASS="z"><TD CLASS="l">118</TD><TD>                if (instance == null)</TD></TR><TR CLASS="z"><TD CLASS="l">119</TD><TD>                        instance = new ContentSettingsSynchronizer();</TD></TR><TR CLASS="z"><TD CLASS="l">120</TD><TD>                return instance;</TD></TR><TR><TD CLASS="l">121</TD><TD>        }</TD></TR><TR><TD CLASS="l">122</TD><TD> </TD></TR><TR><TD CLASS="l">123</TD><TD>        private ContentSettingsVisitor csVisitor;</TD></TR><TR CLASS="z"><TD CLASS="l">124</TD><TD>        private boolean fListening = false;</TD></TR><TR><TD CLASS="l"><A NAME="4">125</A></TD><TD>        private IProject fProject;</TD></TR><TR><TD CLASS="l">126</TD><TD> </TD></TR><TR><TD CLASS="l">127</TD><TD> </TD></TR><TR><TD CLASS="l">128</TD><TD>        private final IProject getProject() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="5">129</A></TD><TD>                return fProject;</TD></TR><TR><TD CLASS="l">130</TD><TD>        }</TD></TR><TR><TD CLASS="l">131</TD><TD> </TD></TR><TR><TD CLASS="l">132</TD><TD>        private final IWorkspace getWorkspace() {</TD></TR><TR CLASS="z"><TD CLASS="l">133</TD><TD>                if (getProject() == null)</TD></TR><TR CLASS="z"><TD CLASS="l">134</TD><TD>                        return ResourcesPlugin.getWorkspace();</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="6">135</A></TD><TD>                return getProject().getWorkspace();</TD></TR><TR><TD CLASS="l">136</TD><TD>        }</TD></TR><TR><TD CLASS="l">137</TD><TD> </TD></TR><TR><TD CLASS="l">138</TD><TD>        public synchronized void install() {</TD></TR><TR CLASS="z"><TD CLASS="l">139</TD><TD>                if (!fListening) {</TD></TR><TR CLASS="z"><TD CLASS="l">140</TD><TD>                        getWorkspace().addResourceChangeListener(this, IResourceChangeEvent.PRE_BUILD | IResourceChangeEvent.POST_CHANGE);</TD></TR><TR CLASS="z"><TD CLASS="l">141</TD><TD>                        fListening = true;</TD></TR><TR><TD CLASS="l">142</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">143</TD><TD>        }</TD></TR><TR><TD CLASS="l">144</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="7">145</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">146</TD><TD>         * @return</TD></TR><TR><TD CLASS="l">147</TD><TD>         */</TD></TR><TR><TD CLASS="l">148</TD><TD>        public synchronized boolean isListening() {</TD></TR><TR CLASS="z"><TD CLASS="l">149</TD><TD>                return fListening;</TD></TR><TR><TD CLASS="l">150</TD><TD>        }</TD></TR><TR><TD CLASS="l">151</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="8">152</A></TD><TD>        /*</TD></TR><TR><TD CLASS="l">153</TD><TD>         * @see IResourceChangeListener#resourceChanged(IResourceChangeEvent)</TD></TR><TR><TD CLASS="l">154</TD><TD>         */</TD></TR><TR><TD CLASS="l">155</TD><TD>        public void resourceChanged(IResourceChangeEvent event) {</TD></TR><TR CLASS="z"><TD CLASS="l">156</TD><TD>                IResourceDelta delta = event.getDelta();</TD></TR><TR CLASS="z"><TD CLASS="l">157</TD><TD>                if (delta != null) {</TD></TR><TR><TD CLASS="l">158</TD><TD>                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">159</TD><TD>                                if (csVisitor == null)</TD></TR><TR CLASS="z"><TD CLASS="l">160</TD><TD>                                        csVisitor = new ContentSettingsVisitor(event);</TD></TR><TR CLASS="z"><TD CLASS="l">161</TD><TD>                                delta.accept(csVisitor);</TD></TR><TR><TD CLASS="l">162</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">163</TD><TD>                        catch (CoreException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">164</TD><TD>                                Logger.logException(e);</TD></TR><TR><TD CLASS="l">165</TD><TD>                        }</TD></TR><TR><TD CLASS="l">166</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="9">167</A></TD><TD>                csVisitor = null;</TD></TR><TR CLASS="z"><TD CLASS="l">168</TD><TD>        }</TD></TR><TR><TD CLASS="l">169</TD><TD> </TD></TR><TR><TD CLASS="l">170</TD><TD>        public synchronized void unInstall() {</TD></TR><TR CLASS="z"><TD CLASS="l">171</TD><TD>                getWorkspace().removeResourceChangeListener(this);</TD></TR><TR CLASS="z"><TD CLASS="l">172</TD><TD>                fListening = false;</TD></TR><TR CLASS="z"><TD CLASS="l">173</TD><TD>        }</TD></TR><TR><TD CLASS="l">174</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="9.html">org.eclipse.wst.sse.internal.contentproperties</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/102.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/102.html
deleted file mode 100644
index 71a9091..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/102.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="9.html">org.eclipse.wst.sse.internal.contentproperties</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">SimpleNodeOperator.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>SimpleNodeOperator.java</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/24)</TD><TD CLASS="h">0%   (0/570)</TD><TD CLASS="h">0%   (0/151)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">SimpleNodeOperator</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/18)</TD><TD CLASS="h">0%   (0/488)</TD><TD CLASS="h">0%   (0/126)</TD></TR><TR><TD CLASS="f"><A HREF="#1">SimpleNodeOperator (Document): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/28)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">SimpleNodeOperator (String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#3">addAttributeAt (Element, String, String): Node</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/16)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">addElementUnder (Node, String, Map): Node</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/43)</TD><TD CLASS="h">0%   (0/12)</TD></TR><TR><TD CLASS="f"><A HREF="#5">addElementUnderRoot (String): Node</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">addElementUnderRoot (String, Map): Node</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#7">createObjectOfDocument (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/59)</TD><TD CLASS="h">0%   (0/13)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">getAttributesOf (Node): Map</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/36)</TD><TD CLASS="h">0%   (0/9)</TD></TR><TR><TD CLASS="f"><A HREF="#9">getElementWithAttribute (Node, String, String): Node</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/53)</TD><TD CLASS="h">0%   (0/16)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">getElementWithAttribute (String, String): Node</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/18)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#b">getElementWithNodeName (String): Node</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/18)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#0">main (String []): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/40)</TD><TD CLASS="h">0%   (0/12)</TD></TR><TR><TD CLASS="f"><A HREF="#d">printTree (NodeIterator): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/56)</TD><TD CLASS="h">0%   (0/10)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#e">removeAttributeAt (Element, String): Attr</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#f">removeElementWith (String): Element</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/24)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#10">removeElementWith (String, String): Element</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/25)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#11">updateAttributeAt (Element, String, String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/14)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#12">writeDocument (OutputStream): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/21)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#13">SimpleNodeOperator$CreateContentSettingsFailureException</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#13">SimpleNodeOperator$CreateContentSettingsFailureException (SimpleNodeOperator,...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#15">SimpleNodeOperator$ReadContentSettingsFailureException</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#15">SimpleNodeOperator$ReadContentSettingsFailureException (SimpleNodeOperator, S...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#17">SimpleNodeOperator$WriteContentSettingsFailureException</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#17">SimpleNodeOperator$WriteContentSettingsFailureException (String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#19">SimpleNodeOperator$XMLDocumentWriter</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/64)</TD><TD CLASS="h">0%   (0/19)</TD></TR><TR><TD CLASS="f"><A HREF="#19">SimpleNodeOperator$XMLDocumentWriter (SimpleNodeOperator, OutputStream): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#1b">close (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#1c">serialize (Document): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/49)</TD><TD CLASS="h">0%   (0/13)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.internal.contentproperties;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD> </TD></TR><TR><TD CLASS="l">16</TD><TD> </TD></TR><TR><TD CLASS="l">17</TD><TD>import java.io.File;</TD></TR><TR><TD CLASS="l">18</TD><TD>import java.io.IOException;</TD></TR><TR><TD CLASS="l">19</TD><TD>import java.io.OutputStream;</TD></TR><TR><TD CLASS="l">20</TD><TD>import java.util.HashMap;</TD></TR><TR><TD CLASS="l">21</TD><TD>import java.util.Hashtable;</TD></TR><TR><TD CLASS="l">22</TD><TD>import java.util.Iterator;</TD></TR><TR><TD CLASS="l">23</TD><TD>import java.util.Map;</TD></TR><TR><TD CLASS="l">24</TD><TD>import java.util.Set;</TD></TR><TR><TD CLASS="l">25</TD><TD> </TD></TR><TR><TD CLASS="l">26</TD><TD>import javax.xml.parsers.DocumentBuilderFactory;</TD></TR><TR><TD CLASS="l">27</TD><TD>import javax.xml.parsers.FactoryConfigurationError;</TD></TR><TR><TD CLASS="l">28</TD><TD>import javax.xml.parsers.ParserConfigurationException;</TD></TR><TR><TD CLASS="l">29</TD><TD>import javax.xml.transform.OutputKeys;</TD></TR><TR><TD CLASS="l">30</TD><TD>import javax.xml.transform.Source;</TD></TR><TR><TD CLASS="l">31</TD><TD>import javax.xml.transform.Transformer;</TD></TR><TR><TD CLASS="l">32</TD><TD>import javax.xml.transform.TransformerConfigurationException;</TD></TR><TR><TD CLASS="l">33</TD><TD>import javax.xml.transform.TransformerException;</TD></TR><TR><TD CLASS="l">34</TD><TD>import javax.xml.transform.TransformerFactory;</TD></TR><TR><TD CLASS="l">35</TD><TD>import javax.xml.transform.TransformerFactoryConfigurationError;</TD></TR><TR><TD CLASS="l">36</TD><TD>import javax.xml.transform.dom.DOMSource;</TD></TR><TR><TD CLASS="l">37</TD><TD>import javax.xml.transform.stream.StreamResult;</TD></TR><TR><TD CLASS="l">38</TD><TD> </TD></TR><TR><TD CLASS="l">39</TD><TD>import org.eclipse.wst.sse.core.internal.Logger;</TD></TR><TR><TD CLASS="l">40</TD><TD>import org.w3c.dom.Attr;</TD></TR><TR><TD CLASS="l">41</TD><TD>import org.w3c.dom.Document;</TD></TR><TR><TD CLASS="l">42</TD><TD>import org.w3c.dom.Element;</TD></TR><TR><TD CLASS="l">43</TD><TD>import org.w3c.dom.NamedNodeMap;</TD></TR><TR><TD CLASS="l">44</TD><TD>import org.w3c.dom.Node;</TD></TR><TR><TD CLASS="l">45</TD><TD>import org.w3c.dom.NodeList;</TD></TR><TR><TD CLASS="l">46</TD><TD>import org.w3c.dom.traversal.NodeIterator;</TD></TR><TR><TD CLASS="l">47</TD><TD>import org.xml.sax.SAXException;</TD></TR><TR><TD CLASS="l">48</TD><TD> </TD></TR><TR><TD CLASS="l">49</TD><TD>/**</TD></TR><TR><TD CLASS="l">50</TD><TD>* @deprecated This is package protected so no one cares anyways.</TD></TR><TR><TD CLASS="l">51</TD><TD>*/</TD></TR><TR><TD CLASS="l">52</TD><TD>class SimpleNodeOperator {</TD></TR><TR><TD CLASS="l">53</TD><TD> </TD></TR><TR><TD CLASS="l">54</TD><TD>        class CreateContentSettingsFailureException extends Exception {</TD></TR><TR><TD CLASS="l">55</TD><TD>                /**</TD></TR><TR><TD CLASS="l">56</TD><TD>                 * Comment for &lt;code&gt;serialVersionUID&lt;/code&gt;</TD></TR><TR><TD CLASS="l"><A NAME="13">57</A></TD><TD>                 */</TD></TR><TR><TD CLASS="l">58</TD><TD>                private static final long serialVersionUID = 1L;</TD></TR><TR><TD CLASS="l">59</TD><TD> </TD></TR><TR><TD CLASS="l">60</TD><TD>                public CreateContentSettingsFailureException(String reason) {</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                        super(reason);</TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>                }</TD></TR><TR><TD CLASS="l">63</TD><TD>        }</TD></TR><TR><TD CLASS="l">64</TD><TD> </TD></TR><TR><TD CLASS="l">65</TD><TD> </TD></TR><TR><TD CLASS="l">66</TD><TD>        class ReadContentSettingsFailureException extends Exception {</TD></TR><TR><TD CLASS="l">67</TD><TD>                /**</TD></TR><TR><TD CLASS="l">68</TD><TD>                 * Comment for &lt;code&gt;serialVersionUID&lt;/code&gt;</TD></TR><TR><TD CLASS="l"><A NAME="15">69</A></TD><TD>                 */</TD></TR><TR><TD CLASS="l">70</TD><TD>                private static final long serialVersionUID = 1L;</TD></TR><TR><TD CLASS="l">71</TD><TD> </TD></TR><TR><TD CLASS="l">72</TD><TD>                public ReadContentSettingsFailureException(String reason) {</TD></TR><TR CLASS="z"><TD CLASS="l">73</TD><TD>                        super(reason);</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>                }</TD></TR><TR><TD CLASS="l">75</TD><TD>        }</TD></TR><TR><TD CLASS="l">76</TD><TD> </TD></TR><TR><TD CLASS="l">77</TD><TD>        static class WriteContentSettingsFailureException extends Exception {</TD></TR><TR><TD CLASS="l">78</TD><TD>                /**</TD></TR><TR><TD CLASS="l">79</TD><TD>                 * Comment for &lt;code&gt;serialVersionUID&lt;/code&gt;</TD></TR><TR><TD CLASS="l"><A NAME="17">80</A></TD><TD>                 */</TD></TR><TR><TD CLASS="l">81</TD><TD>                private static final long serialVersionUID = 1L;</TD></TR><TR><TD CLASS="l">82</TD><TD> </TD></TR><TR><TD CLASS="l">83</TD><TD>                public WriteContentSettingsFailureException(String reason) {</TD></TR><TR CLASS="z"><TD CLASS="l">84</TD><TD>                        super(reason);</TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>                }</TD></TR><TR><TD CLASS="l">86</TD><TD>        }</TD></TR><TR><TD CLASS="l">87</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="19">88</A></TD><TD>        // writer class for .contentSettings.</TD></TR><TR><TD CLASS="l">89</TD><TD>        class XMLDocumentWriter {</TD></TR><TR><TD CLASS="l">90</TD><TD>                OutputStream fOut;</TD></TR><TR><TD CLASS="l">91</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">92</TD><TD>                protected XMLDocumentWriter(OutputStream out) {</TD></TR><TR CLASS="z"><TD CLASS="l">93</TD><TD>                        this.fOut = out;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="1b">94</A></TD><TD>                }</TD></TR><TR><TD CLASS="l">95</TD><TD> </TD></TR><TR><TD CLASS="l">96</TD><TD>                protected final void close() {</TD></TR><TR><TD CLASS="l">97</TD><TD>                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">98</TD><TD>                                fOut.close();</TD></TR><TR CLASS="z"><TD CLASS="l">99</TD><TD>                        } catch (IOException e) {</TD></TR><TR><TD CLASS="l">100</TD><TD>                                // do nothing, shouldn't matter</TD></TR><TR><TD CLASS="l">101</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="1c">102</A></TD><TD>                }</TD></TR><TR><TD CLASS="l">103</TD><TD> </TD></TR><TR><TD CLASS="l">104</TD><TD>                protected void serialize(Document sourceDocument) throws WriteContentSettingsFailureException {</TD></TR><TR><TD CLASS="l">105</TD><TD>                        // JAXP transformation</TD></TR><TR CLASS="z"><TD CLASS="l">106</TD><TD>                        Source domSource = new DOMSource(sourceDocument);</TD></TR><TR><TD CLASS="l">107</TD><TD>                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">108</TD><TD>                                Transformer serializer = TransformerFactory.newInstance().newTransformer();</TD></TR><TR><TD CLASS="l">109</TD><TD>                                try {</TD></TR><TR CLASS="z"><TD CLASS="l">110</TD><TD>                                        serializer.setOutputProperty(OutputKeys.INDENT, &#34;yes&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">111</TD><TD>                                        serializer.setOutputProperty(&#34;{http://xml.apache.org/xslt}indent-amount&#34;, &#34;4&#34;); //$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR CLASS="z"><TD CLASS="l">112</TD><TD>                                } catch (IllegalArgumentException e) {</TD></TR><TR><TD CLASS="l">113</TD><TD>                                        // unsupported properties</TD></TR><TR><TD CLASS="l">114</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">115</TD><TD>                                serializer.transform(domSource, new StreamResult(fOut));</TD></TR><TR CLASS="z"><TD CLASS="l">116</TD><TD>                        } catch (TransformerConfigurationException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">117</TD><TD>                                throw new WriteContentSettingsFailureException(e.getMessage());</TD></TR><TR CLASS="z"><TD CLASS="l">118</TD><TD>                        } catch (TransformerFactoryConfigurationError e) {</TD></TR><TR CLASS="z"><TD CLASS="l">119</TD><TD>                                throw new WriteContentSettingsFailureException(e.getMessage());</TD></TR><TR CLASS="z"><TD CLASS="l">120</TD><TD>                        } catch (TransformerException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">121</TD><TD>                                throw new WriteContentSettingsFailureException(e.getMessage());</TD></TR><TR><TD CLASS="l">122</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="0">123</A></TD><TD>                }</TD></TR><TR><TD CLASS="l">124</TD><TD>        }</TD></TR><TR><TD CLASS="l">125</TD><TD> </TD></TR><TR><TD CLASS="l">126</TD><TD>        public static void main(String[] args) {</TD></TR><TR CLASS="z"><TD CLASS="l">127</TD><TD>                SimpleNodeOperator a = null;</TD></TR><TR><TD CLASS="l">128</TD><TD>                try {</TD></TR><TR CLASS="z"><TD CLASS="l">129</TD><TD>                        a = new SimpleNodeOperator(&#34;workspace/org.eclipse.examples.contentsettings/.contentsettings.xml&#34;);//$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">130</TD><TD>                } catch (Exception e) {</TD></TR><TR CLASS="z"><TD CLASS="l">131</TD><TD>                        System.exit(0);</TD></TR><TR><TD CLASS="l">132</TD><TD>                }</TD></TR><TR><TD CLASS="l">133</TD><TD> </TD></TR><TR><TD CLASS="l">134</TD><TD>                // print all Elements</TD></TR><TR><TD CLASS="l">135</TD><TD>                //a.printTree(iter);</TD></TR><TR><TD CLASS="l">136</TD><TD> </TD></TR><TR><TD CLASS="l">137</TD><TD>                // add Element</TD></TR><TR CLASS="z"><TD CLASS="l">138</TD><TD>                Map attMap = new Hashtable();</TD></TR><TR CLASS="z"><TD CLASS="l">139</TD><TD>                attMap.put(&#34;path&#34;, &#34;hogepath&#34;);//$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR CLASS="z"><TD CLASS="l">140</TD><TD>                attMap.put(&#34;fDocument-type&#34;, &#34;documenthogehoge&#34;);//$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR CLASS="z"><TD CLASS="l">141</TD><TD>                a.addElementUnderRoot(&#34;file&#34;, attMap);//$NON-NLS-1$</TD></TR><TR><TD CLASS="l">142</TD><TD> </TD></TR><TR><TD CLASS="l">143</TD><TD>                try {</TD></TR><TR CLASS="z"><TD CLASS="l">144</TD><TD>                        a.writeDocument(System.out);</TD></TR><TR CLASS="z"><TD CLASS="l">145</TD><TD>                } catch (Exception e) {</TD></TR><TR CLASS="z"><TD CLASS="l">146</TD><TD>                        System.err.println(e.toString());</TD></TR><TR><TD CLASS="l">147</TD><TD>                }</TD></TR><TR><TD CLASS="l">148</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">149</TD><TD>        }</TD></TR><TR><TD CLASS="l">150</TD><TD> </TD></TR><TR><TD CLASS="l">151</TD><TD>        //never used</TD></TR><TR><TD CLASS="l">152</TD><TD>        //private DOMParser parser;</TD></TR><TR><TD CLASS="l">153</TD><TD>        private Document fDocument;</TD></TR><TR><TD CLASS="l">154</TD><TD>        private Node root;</TD></TR><TR><TD CLASS="l"><A NAME="1">155</A></TD><TD> </TD></TR><TR><TD CLASS="l">156</TD><TD>        private String settingsFileName;</TD></TR><TR><TD CLASS="l">157</TD><TD> </TD></TR><TR><TD CLASS="l">158</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">159</TD><TD>        public SimpleNodeOperator(Document doc) throws CreateContentSettingsFailureException {</TD></TR><TR><TD CLASS="l">160</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">161</TD><TD>                if (doc == null)</TD></TR><TR CLASS="z"><TD CLASS="l">162</TD><TD>                        throw new CreateContentSettingsFailureException(&#34;Document doc==null&#34;);//$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">163</TD><TD>                fDocument = doc;</TD></TR><TR CLASS="z"><TD CLASS="l">164</TD><TD>                root = fDocument.getLastChild();</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">165</A></TD><TD>                if (root == null)</TD></TR><TR CLASS="z"><TD CLASS="l">166</TD><TD>                        throw new CreateContentSettingsFailureException(&#34;Node root==null&#34;);//$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">167</TD><TD>        }</TD></TR><TR><TD CLASS="l">168</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">169</TD><TD>        public SimpleNodeOperator(String fullPath) throws ReadContentSettingsFailureException {</TD></TR><TR CLASS="z"><TD CLASS="l">170</TD><TD>                this.settingsFileName = fullPath;</TD></TR><TR CLASS="z"><TD CLASS="l">171</TD><TD>                createObjectOfDocument();</TD></TR><TR CLASS="z"><TD CLASS="l">172</TD><TD>        }</TD></TR><TR><TD CLASS="l">173</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="3">174</A></TD><TD>        // add attribute(attName=attValue) of ele without checking overlapping of</TD></TR><TR><TD CLASS="l">175</TD><TD>        // another attributes of ele.</TD></TR><TR><TD CLASS="l">176</TD><TD>        // if overlapping ,override</TD></TR><TR><TD CLASS="l">177</TD><TD>        protected Node addAttributeAt(Element ele, String attName, String attValue) {</TD></TR><TR CLASS="z"><TD CLASS="l">178</TD><TD>                Attr att = fDocument.createAttribute(attName);</TD></TR><TR CLASS="z"><TD CLASS="l">179</TD><TD>                att.setValue(attValue);</TD></TR><TR CLASS="z"><TD CLASS="l">180</TD><TD>                if (ele != null)</TD></TR><TR CLASS="z"><TD CLASS="l">181</TD><TD>                        ele.setAttributeNode(att);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">182</A></TD><TD>                return ele;</TD></TR><TR><TD CLASS="l">183</TD><TD>        }</TD></TR><TR><TD CLASS="l">184</TD><TD> </TD></TR><TR><TD CLASS="l">185</TD><TD>        protected Node addElementUnder(Node parent, String tagName, Map attMap) {</TD></TR><TR CLASS="z"><TD CLASS="l">186</TD><TD>                if (parent == null || tagName == null)</TD></TR><TR CLASS="z"><TD CLASS="l">187</TD><TD>                        return null;</TD></TR><TR CLASS="z"><TD CLASS="l">188</TD><TD>                Element e = fDocument.createElement(tagName);</TD></TR><TR CLASS="z"><TD CLASS="l">189</TD><TD>                if (attMap != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">190</TD><TD>                        if (!attMap.isEmpty()) {</TD></TR><TR CLASS="z"><TD CLASS="l">191</TD><TD>                                Set attKeys = attMap.keySet();</TD></TR><TR CLASS="z"><TD CLASS="l">192</TD><TD>                                Iterator iter = attKeys.iterator();</TD></TR><TR CLASS="z"><TD CLASS="l">193</TD><TD>                                while (iter.hasNext()) {</TD></TR><TR CLASS="z"><TD CLASS="l">194</TD><TD>                                        String key = (String) iter.next();</TD></TR><TR CLASS="z"><TD CLASS="l">195</TD><TD>                                        e.setAttribute(key, (String) attMap.get(key));</TD></TR><TR><TD CLASS="l">196</TD><TD>                                }</TD></TR><TR><TD CLASS="l">197</TD><TD>                        }</TD></TR><TR><TD CLASS="l">198</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">199</TD><TD>                parent.appendChild(e);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="5">200</A></TD><TD>                return e;</TD></TR><TR><TD CLASS="l">201</TD><TD>        }</TD></TR><TR><TD CLASS="l">202</TD><TD> </TD></TR><TR><TD CLASS="l">203</TD><TD>        protected final Node addElementUnderRoot(String tagName) {</TD></TR><TR CLASS="z"><TD CLASS="l">204</TD><TD>                return addElementUnder(root, tagName, null);</TD></TR><TR><TD CLASS="l"><A NAME="6">205</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">206</TD><TD> </TD></TR><TR><TD CLASS="l">207</TD><TD>        // add element with attMap as attribute without checking overlapping.</TD></TR><TR><TD CLASS="l">208</TD><TD>        protected final Node addElementUnderRoot(String tagName, Map attMap) {</TD></TR><TR CLASS="z"><TD CLASS="l">209</TD><TD>                return addElementUnder(root, tagName, attMap);</TD></TR><TR><TD CLASS="l"><A NAME="7">210</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">211</TD><TD> </TD></TR><TR><TD CLASS="l">212</TD><TD>        private void createObjectOfDocument() throws ReadContentSettingsFailureException {</TD></TR><TR><TD CLASS="l">213</TD><TD>                try {</TD></TR><TR CLASS="z"><TD CLASS="l">214</TD><TD>                        fDocument = DocumentBuilderFactory.newInstance().newDocumentBuilder().parse(new File(settingsFileName));</TD></TR><TR CLASS="z"><TD CLASS="l">215</TD><TD>                } catch (SAXException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">216</TD><TD>                        Logger.logException(&#34;exception parsing&#34; + settingsFileName, e); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">217</TD><TD>                } catch (IOException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">218</TD><TD>                        Logger.logException(&#34;I/O exception parsing&#34; + settingsFileName, e); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">219</TD><TD>                } catch (ParserConfigurationException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">220</TD><TD>                        Logger.logException(&#34;exception accessing DOMImplementation&#34;, e); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">221</TD><TD>                } catch (FactoryConfigurationError e) {</TD></TR><TR CLASS="z"><TD CLASS="l">222</TD><TD>                        Logger.logException(&#34;exception accessing DOMImplementation&#34;, e); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">223</TD><TD>                }</TD></TR><TR><TD CLASS="l">224</TD><TD>                //get the root of the XML fDocument</TD></TR><TR CLASS="z"><TD CLASS="l">225</TD><TD>                root = fDocument.getLastChild();</TD></TR><TR CLASS="z"><TD CLASS="l">226</TD><TD>                if (root == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">227</TD><TD>                        throw new ReadContentSettingsFailureException(&#34;Error: Node root==null&#34;);//$NON-NLS-1$</TD></TR><TR><TD CLASS="l"><A NAME="8">228</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">229</TD><TD>        }</TD></TR><TR><TD CLASS="l">230</TD><TD> </TD></TR><TR><TD CLASS="l">231</TD><TD>        protected Map getAttributesOf(Node node) {</TD></TR><TR CLASS="z"><TD CLASS="l">232</TD><TD>                if (!node.hasAttributes())</TD></TR><TR CLASS="z"><TD CLASS="l">233</TD><TD>                        return null;</TD></TR><TR CLASS="z"><TD CLASS="l">234</TD><TD>                Map map = new HashMap();</TD></TR><TR CLASS="z"><TD CLASS="l">235</TD><TD>                NamedNodeMap attrs = node.getAttributes();</TD></TR><TR CLASS="z"><TD CLASS="l">236</TD><TD>                int size = attrs.getLength();</TD></TR><TR CLASS="z"><TD CLASS="l">237</TD><TD>                for (int i = 0; i &lt; size; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">238</TD><TD>                        Attr attr = (Attr) attrs.item(i);</TD></TR><TR CLASS="z"><TD CLASS="l">239</TD><TD>                        map.put(attr.getName(), attr.getValue());</TD></TR><TR><TD CLASS="l">240</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="9">241</A></TD><TD>                return (map);</TD></TR><TR><TD CLASS="l">242</TD><TD>        }</TD></TR><TR><TD CLASS="l">243</TD><TD> </TD></TR><TR><TD CLASS="l">244</TD><TD>        private Node getElementWithAttribute(Node first, String attName, String attValue) {</TD></TR><TR CLASS="z"><TD CLASS="l">245</TD><TD>                Node navpoint = first;</TD></TR><TR CLASS="z"><TD CLASS="l">246</TD><TD>                while (navpoint != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">247</TD><TD>                        if (navpoint.getNodeType() == Node.ELEMENT_NODE) {</TD></TR><TR CLASS="z"><TD CLASS="l">248</TD><TD>                                NamedNodeMap m = navpoint.getAttributes();</TD></TR><TR CLASS="z"><TD CLASS="l">249</TD><TD>                                if (m == null)</TD></TR><TR CLASS="z"><TD CLASS="l">250</TD><TD>                                        continue;</TD></TR><TR CLASS="z"><TD CLASS="l">251</TD><TD>                                if (m.getNamedItem(attName) != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">252</TD><TD>                                        if (attValue.equals(((Attr) m.getNamedItem(attName)).getNodeValue()))</TD></TR><TR CLASS="z"><TD CLASS="l">253</TD><TD>                                                return navpoint;</TD></TR><TR><TD CLASS="l">254</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">255</TD><TD>                                NodeList childNodes = navpoint.getChildNodes();</TD></TR><TR CLASS="z"><TD CLASS="l">256</TD><TD>                                if (childNodes != null &amp;&amp; childNodes.getLength() &gt; 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">257</TD><TD>                                        Node holdNode = getElementWithAttribute(navpoint.getFirstChild(), attName, attValue);</TD></TR><TR CLASS="z"><TD CLASS="l">258</TD><TD>                                        if (holdNode != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">259</TD><TD>                                                return holdNode;</TD></TR><TR><TD CLASS="l">260</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">261</TD><TD>                                }</TD></TR><TR><TD CLASS="l">262</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">263</TD><TD>                        navpoint = navpoint.getNextSibling();</TD></TR><TR><TD CLASS="l">264</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">265</TD><TD>                return null;</TD></TR><TR><TD CLASS="l">266</TD><TD>        }</TD></TR><TR><TD CLASS="l">267</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="a">268</A></TD><TD> </TD></TR><TR><TD CLASS="l">269</TD><TD>        // return a (first) Element with attr(attName=attValue) it if exists,</TD></TR><TR><TD CLASS="l">270</TD><TD>        // otherwise return null</TD></TR><TR><TD CLASS="l">271</TD><TD>        protected Node getElementWithAttribute(String attName, String attValue) {</TD></TR><TR CLASS="z"><TD CLASS="l">272</TD><TD>                if (attName == null || attValue == null || !fDocument.hasChildNodes())</TD></TR><TR CLASS="z"><TD CLASS="l">273</TD><TD>                        return null;</TD></TR><TR CLASS="z"><TD CLASS="l">274</TD><TD>                return getElementWithAttribute(fDocument.getFirstChild(), attName, attValue);</TD></TR><TR><TD CLASS="l"><A NAME="b">275</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">276</TD><TD> </TD></TR><TR><TD CLASS="l">277</TD><TD>        // retrun Element which has nodeName as Node Name</TD></TR><TR><TD CLASS="l">278</TD><TD>        protected Node getElementWithNodeName(String nodeName) {</TD></TR><TR CLASS="z"><TD CLASS="l">279</TD><TD>                if (nodeName == null)</TD></TR><TR CLASS="z"><TD CLASS="l">280</TD><TD>                        return null;</TD></TR><TR CLASS="z"><TD CLASS="l">281</TD><TD>                NodeList nodes = fDocument.getElementsByTagName(nodeName);</TD></TR><TR CLASS="z"><TD CLASS="l">282</TD><TD>                if (nodes.getLength() &gt; 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">283</TD><TD>                        return nodes.item(0);</TD></TR><TR><TD CLASS="l">284</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">285</TD><TD>                return null;</TD></TR><TR><TD CLASS="l"><A NAME="d">286</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">287</TD><TD> </TD></TR><TR><TD CLASS="l">288</TD><TD>        public void printTree(NodeIterator iter) {</TD></TR><TR><TD CLASS="l">289</TD><TD>                Node n;</TD></TR><TR CLASS="z"><TD CLASS="l">290</TD><TD>                while ((n = iter.nextNode()) != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">291</TD><TD>                        System.out.println(n.getNodeName() + &#34;:&#34;);//$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">292</TD><TD>                        NamedNodeMap m = n.getAttributes();</TD></TR><TR CLASS="z"><TD CLASS="l">293</TD><TD>                        if (m == null)</TD></TR><TR CLASS="z"><TD CLASS="l">294</TD><TD>                                continue;</TD></TR><TR CLASS="z"><TD CLASS="l">295</TD><TD>                        for (int i = 0; i &lt; m.getLength(); i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">296</TD><TD>                                String attName = m.item(i).getNodeName();</TD></TR><TR CLASS="z"><TD CLASS="l">297</TD><TD>                                System.out.print(&#34; &#34; + attName + &#34;=&#34; + m.item(i).getNodeValue());//$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR><TD CLASS="l">298</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">299</TD><TD>                        System.out.println(&#34;&#34;);//$NON-NLS-1$</TD></TR><TR><TD CLASS="l">300</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">301</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="e">302</A></TD><TD> </TD></TR><TR><TD CLASS="l">303</TD><TD> </TD></TR><TR><TD CLASS="l">304</TD><TD>        // remove attribute(attName) at ele.</TD></TR><TR><TD CLASS="l">305</TD><TD>        protected Attr removeAttributeAt(Element ele, String attName) {</TD></TR><TR CLASS="z"><TD CLASS="l">306</TD><TD>                if (ele == null || attName == null)</TD></TR><TR CLASS="z"><TD CLASS="l">307</TD><TD>                        return null;</TD></TR><TR CLASS="z"><TD CLASS="l">308</TD><TD>                Attr att = ele.getAttributeNode(attName);</TD></TR><TR CLASS="z"><TD CLASS="l">309</TD><TD>                ele.removeAttribute(attName);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="f">310</A></TD><TD>                return att;</TD></TR><TR><TD CLASS="l">311</TD><TD>        }</TD></TR><TR><TD CLASS="l">312</TD><TD> </TD></TR><TR><TD CLASS="l">313</TD><TD>        protected Element removeElementWith(String nodeName) {</TD></TR><TR CLASS="z"><TD CLASS="l">314</TD><TD>                NodeList nodes = fDocument.getElementsByTagName(nodeName);</TD></TR><TR CLASS="z"><TD CLASS="l">315</TD><TD>                for (int i = 0; i &lt; nodes.getLength(); i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">316</TD><TD>                        nodes.item(i).getParentNode().removeChild(nodes.item(i));</TD></TR><TR><TD CLASS="l">317</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">318</TD><TD>                return null;</TD></TR><TR><TD CLASS="l">319</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="10">320</A></TD><TD> </TD></TR><TR><TD CLASS="l">321</TD><TD>        // remove a (first) Element with attr(attName=attValue) and return it if</TD></TR><TR><TD CLASS="l">322</TD><TD>        // exists, otherwise return null</TD></TR><TR><TD CLASS="l">323</TD><TD>        protected Element removeElementWith(String attName, String attValue) {</TD></TR><TR CLASS="z"><TD CLASS="l">324</TD><TD>                if (fDocument.hasChildNodes()) {</TD></TR><TR CLASS="z"><TD CLASS="l">325</TD><TD>                        Node element = getElementWithAttribute(attName, attValue);</TD></TR><TR CLASS="z"><TD CLASS="l">326</TD><TD>                        if (element != null &amp;&amp; element.getNodeType() == Node.ELEMENT_NODE) {</TD></TR><TR CLASS="z"><TD CLASS="l">327</TD><TD>                                element.getParentNode().removeChild(element);</TD></TR><TR CLASS="z"><TD CLASS="l">328</TD><TD>                                return (Element) element;</TD></TR><TR><TD CLASS="l">329</TD><TD>                        }</TD></TR><TR><TD CLASS="l">330</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">331</TD><TD>                return null;</TD></TR><TR><TD CLASS="l">332</TD><TD> </TD></TR><TR><TD CLASS="l">333</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="11">334</A></TD><TD> </TD></TR><TR><TD CLASS="l">335</TD><TD>        // update attribute(attName=newValue) at ele if both ele and attribute of</TD></TR><TR><TD CLASS="l">336</TD><TD>        // ele exist</TD></TR><TR><TD CLASS="l">337</TD><TD>        protected void updateAttributeAt(Element ele, String attName, String newValue) {</TD></TR><TR CLASS="z"><TD CLASS="l">338</TD><TD>                Attr att = null;</TD></TR><TR CLASS="z"><TD CLASS="l">339</TD><TD>                if (ele != null)</TD></TR><TR CLASS="z"><TD CLASS="l">340</TD><TD>                        if ((att = ele.getAttributeNode(attName)) != null)</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="12">341</A></TD><TD>                                att.setValue(newValue);</TD></TR><TR CLASS="z"><TD CLASS="l">342</TD><TD>        }</TD></TR><TR><TD CLASS="l">343</TD><TD> </TD></TR><TR><TD CLASS="l">344</TD><TD>        protected void writeDocument(OutputStream out) throws WriteContentSettingsFailureException {</TD></TR><TR CLASS="z"><TD CLASS="l">345</TD><TD>                XMLDocumentWriter writer = new XMLDocumentWriter(out);</TD></TR><TR><TD CLASS="l">346</TD><TD>                try {</TD></TR><TR CLASS="z"><TD CLASS="l">347</TD><TD>                        writer.serialize(fDocument);</TD></TR><TR CLASS="z"><TD CLASS="l">348</TD><TD>                } finally {</TD></TR><TR CLASS="z"><TD CLASS="l">349</TD><TD>                        writer.close();</TD></TR><TR CLASS="z"><TD CLASS="l">350</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">351</TD><TD>        }</TD></TR><TR><TD CLASS="l">352</TD><TD> </TD></TR><TR><TD CLASS="l">353</TD><TD> </TD></TR><TR><TD CLASS="l">354</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="9.html">org.eclipse.wst.sse.internal.contentproperties</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/103.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/103.html
deleted file mode 100644
index ad225b8..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/103.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="a.html">org.eclipse.wst.sse.ui.internal.actions</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">ActionContributor.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>ActionContributor.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/17)</TD><TD CLASS="h">0%   (0/441)</TD><TD CLASS="h">0%   (0/113)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">ActionContributor</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/17)</TD><TD CLASS="h">0%   (0/441)</TD><TD CLASS="h">0%   (0/113)</TD></TR><TR><TD CLASS="f"><A HREF="#0">&lt;static initializer&gt;</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/21)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">ActionContributor (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/271)</TD><TD CLASS="h">0%   (0/60)</TD></TR><TR><TD CLASS="f"><A HREF="#3">addToMenu (IMenuManager): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">addToPopupMenu (IMenuManager): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#5">addToStatusLine (IStatusLineManager): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">addToToolBar (IToolBarManager): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#7">contributeToMenu (IMenuManager): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">contributeToPopupMenu (IMenuManager): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#9">contributeToStatusLine (IStatusLineManager): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/14)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">contributeToToolBar (IToolBarManager): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#b">dispose (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#c">getExtensionIDs (): String []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#d">getTextEditor (IEditorPart): ITextEditor</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/33)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#e">init (IActionBars, IWorkbenchPage): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#f">setActiveEditor (IEditorPart): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/35)</TD><TD CLASS="h">0%   (0/10)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#10">setViewerSpecificContributionsEnabled (boolean): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#11">updateToolbarActions (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/3)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2008 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     David Carver/STAR - [212330] can't contribute to the XML or any SSE based menu</TD></TR><TR><TD CLASS="l">12</TD><TD> *     </TD></TR><TR><TD CLASS="l">13</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">14</TD><TD>package org.eclipse.wst.sse.ui.internal.actions;</TD></TR><TR><TD CLASS="l">15</TD><TD> </TD></TR><TR><TD CLASS="l">16</TD><TD>//import java.util.ResourceBundle;</TD></TR><TR><TD CLASS="l">17</TD><TD> </TD></TR><TR><TD CLASS="l">18</TD><TD>import java.util.ResourceBundle;</TD></TR><TR><TD CLASS="l">19</TD><TD> </TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.core.runtime.Platform;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.jface.action.GroupMarker;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.jface.action.IAction;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.jface.action.IMenuManager;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.jface.action.IStatusLineManager;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.jface.action.IToolBarManager;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.jface.action.MenuManager;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.jface.action.Separator;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.ui.IActionBars;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.ui.IEditorPart;</TD></TR><TR><TD CLASS="l">30</TD><TD>import org.eclipse.ui.IWorkbenchPage;</TD></TR><TR><TD CLASS="l">31</TD><TD>import org.eclipse.ui.editors.text.TextEditorActionContributor;</TD></TR><TR><TD CLASS="l">32</TD><TD>import org.eclipse.ui.texteditor.ITextEditor;</TD></TR><TR><TD CLASS="l">33</TD><TD>import org.eclipse.ui.texteditor.ITextEditorActionConstants;</TD></TR><TR><TD CLASS="l">34</TD><TD>import org.eclipse.ui.texteditor.ITextEditorActionDefinitionIds;</TD></TR><TR><TD CLASS="l">35</TD><TD>import org.eclipse.ui.texteditor.ITextEditorExtension;</TD></TR><TR><TD CLASS="l">36</TD><TD>import org.eclipse.ui.texteditor.RetargetTextEditorAction;</TD></TR><TR><TD CLASS="l">37</TD><TD>import org.eclipse.wst.sse.ui.internal.ExtendedEditorActionBuilder;</TD></TR><TR><TD CLASS="l">38</TD><TD>import org.eclipse.wst.sse.ui.internal.GotoAnnotationAction;</TD></TR><TR><TD CLASS="l">39</TD><TD>import org.eclipse.wst.sse.ui.internal.IExtendedContributor;</TD></TR><TR><TD CLASS="l">40</TD><TD>import org.eclipse.wst.sse.ui.internal.ISourceViewerActionBarContributor;</TD></TR><TR><TD CLASS="l">41</TD><TD>import org.eclipse.wst.sse.ui.internal.SSEUIMessages;</TD></TR><TR><TD CLASS="l">42</TD><TD>import org.eclipse.wst.sse.ui.internal.ui.OffsetStatusLineContributionItem;</TD></TR><TR><TD CLASS="l">43</TD><TD> </TD></TR><TR><TD CLASS="l">44</TD><TD>/**</TD></TR><TR><TD CLASS="l">45</TD><TD> * This class should not be used inside multi page editor's</TD></TR><TR><TD CLASS="l">46</TD><TD> * ActionBarContributor, since cascaded init() call from the</TD></TR><TR><TD CLASS="l">47</TD><TD> * ActionBarContributor will causes exception and it leads to lose whole</TD></TR><TR><TD CLASS="l">48</TD><TD> * toolbars.</TD></TR><TR><TD CLASS="l">49</TD><TD> * </TD></TR><TR><TD CLASS="l">50</TD><TD> * Instead, use SourcePageActionContributor for source page contributor of</TD></TR><TR><TD CLASS="l">51</TD><TD> * multi page editor.</TD></TR><TR><TD CLASS="l">52</TD><TD> * </TD></TR><TR><TD CLASS="l"><A NAME="0">53</A></TD><TD> * Note that this class is still valid for single page editor</TD></TR><TR><TD CLASS="l">54</TD><TD> */</TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>public class ActionContributor extends TextEditorActionContributor implements ISourceViewerActionBarContributor, IExtendedContributor {</TD></TR><TR><TD CLASS="l">56</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>        public static final boolean _showDebugStatus = &#34;true&#34;.equalsIgnoreCase(Platform.getDebugOption(&#34;org.eclipse.wst.sse.ui/actioncontributor/debugstatusfields&#34;)) || Platform.inDebugMode() || Platform.inDevelopmentMode(); //$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR><TD CLASS="l">58</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>        private static final String[] EDITOR_IDS = {&#34;org.eclipse.wst.sse.ui.StructuredTextEditor&#34;}; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">60</TD><TD> </TD></TR><TR><TD CLASS="l">61</TD><TD>        protected IExtendedContributor extendedContributor;</TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>        protected RetargetTextEditorAction fAddBlockComment = null;</TD></TR><TR><TD CLASS="l">63</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>        protected Separator fCommandsSeparator = null;</TD></TR><TR><TD CLASS="l">65</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>        private OffsetStatusLineContributionItem fDebugStatusOffset = null;</TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>        protected MenuManager fExpandSelectionToMenu = null;</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>        protected GroupMarker fMenuAdditionsGroupMarker = null;</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>        protected GotoAnnotationAction fNextAnnotation = null;</TD></TR><TR><TD CLASS="l">70</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>        protected GotoAnnotationAction fPreviousAnnotation = null;</TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>        protected RetargetTextEditorAction fRemoveBlockComment = null;</TD></TR><TR CLASS="z"><TD CLASS="l">73</TD><TD>        protected RetargetTextEditorAction fShiftLeft = null;</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>        protected RetargetTextEditorAction fShiftRight = null;</TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>        protected RetargetTextEditorAction fStructureSelectEnclosingAction = null;</TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>        protected RetargetTextEditorAction fStructureSelectHistoryAction = null;</TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>        protected RetargetTextEditorAction fStructureSelectNextAction = null;</TD></TR><TR CLASS="z"><TD CLASS="l">78</TD><TD>        protected RetargetTextEditorAction fStructureSelectPreviousAction = null;</TD></TR><TR><TD CLASS="l">79</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">80</TD><TD>        protected RetargetTextEditorAction fToggleComment = null;</TD></TR><TR><TD CLASS="l">81</TD><TD>        protected RetargetTextEditorAction fToggleInsertModeAction;</TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>        protected GroupMarker fToolbarAdditionsGroupMarker = null;</TD></TR><TR CLASS="z"><TD CLASS="l">83</TD><TD>        protected Separator fToolbarSeparator = null;</TD></TR><TR><TD CLASS="l"><A NAME="2">84</A></TD><TD>        </TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>        protected RetargetTextEditorAction fGotoMatchingBracketAction = null;</TD></TR><TR><TD CLASS="l">86</TD><TD> </TD></TR><TR><TD CLASS="l">87</TD><TD>        public ActionContributor() {</TD></TR><TR CLASS="z"><TD CLASS="l">88</TD><TD>                super();</TD></TR><TR><TD CLASS="l">89</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">90</TD><TD>                ResourceBundle resourceBundle = SSEUIMessages.getResourceBundle();</TD></TR><TR><TD CLASS="l">91</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">92</TD><TD>                fCommandsSeparator = new Separator();</TD></TR><TR><TD CLASS="l">93</TD><TD> </TD></TR><TR><TD CLASS="l">94</TD><TD>                // edit commands</TD></TR><TR CLASS="z"><TD CLASS="l">95</TD><TD>                fStructureSelectEnclosingAction = new RetargetTextEditorAction(resourceBundle, StructuredTextEditorActionConstants.ACTION_NAME_STRUCTURE_SELECT_ENCLOSING + StructuredTextEditorActionConstants.UNDERSCORE);</TD></TR><TR CLASS="z"><TD CLASS="l">96</TD><TD>                fStructureSelectEnclosingAction.setActionDefinitionId(ActionDefinitionIds.STRUCTURE_SELECT_ENCLOSING);</TD></TR><TR><TD CLASS="l">97</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">98</TD><TD>                fStructureSelectNextAction = new RetargetTextEditorAction(resourceBundle, StructuredTextEditorActionConstants.ACTION_NAME_STRUCTURE_SELECT_NEXT + StructuredTextEditorActionConstants.UNDERSCORE);</TD></TR><TR CLASS="z"><TD CLASS="l">99</TD><TD>                fStructureSelectNextAction.setActionDefinitionId(ActionDefinitionIds.STRUCTURE_SELECT_NEXT);</TD></TR><TR><TD CLASS="l">100</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">101</TD><TD>                fStructureSelectPreviousAction = new RetargetTextEditorAction(resourceBundle, StructuredTextEditorActionConstants.ACTION_NAME_STRUCTURE_SELECT_PREVIOUS + StructuredTextEditorActionConstants.UNDERSCORE);</TD></TR><TR CLASS="z"><TD CLASS="l">102</TD><TD>                fStructureSelectPreviousAction.setActionDefinitionId(ActionDefinitionIds.STRUCTURE_SELECT_PREVIOUS);</TD></TR><TR><TD CLASS="l">103</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">104</TD><TD>                fStructureSelectHistoryAction = new RetargetTextEditorAction(resourceBundle, StructuredTextEditorActionConstants.ACTION_NAME_STRUCTURE_SELECT_HISTORY + StructuredTextEditorActionConstants.UNDERSCORE);</TD></TR><TR CLASS="z"><TD CLASS="l">105</TD><TD>                fStructureSelectHistoryAction.setActionDefinitionId(ActionDefinitionIds.STRUCTURE_SELECT_HISTORY);</TD></TR><TR><TD CLASS="l">106</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">107</TD><TD>                fExpandSelectionToMenu = new MenuManager(SSEUIMessages.ExpandSelectionToMenu_label); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">108</TD><TD>                fExpandSelectionToMenu.add(fStructureSelectEnclosingAction);</TD></TR><TR CLASS="z"><TD CLASS="l">109</TD><TD>                fExpandSelectionToMenu.add(fStructureSelectNextAction);</TD></TR><TR CLASS="z"><TD CLASS="l">110</TD><TD>                fExpandSelectionToMenu.add(fStructureSelectPreviousAction);</TD></TR><TR CLASS="z"><TD CLASS="l">111</TD><TD>                fExpandSelectionToMenu.add(fStructureSelectHistoryAction);</TD></TR><TR><TD CLASS="l">112</TD><TD> </TD></TR><TR><TD CLASS="l">113</TD><TD>                // source commands</TD></TR><TR CLASS="z"><TD CLASS="l">114</TD><TD>                fShiftRight = new RetargetTextEditorAction(resourceBundle, ITextEditorActionConstants.SHIFT_RIGHT + StructuredTextEditorActionConstants.UNDERSCORE);</TD></TR><TR CLASS="z"><TD CLASS="l">115</TD><TD>                fShiftRight.setActionDefinitionId(ITextEditorActionDefinitionIds.SHIFT_RIGHT);</TD></TR><TR><TD CLASS="l">116</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">117</TD><TD>                fShiftLeft = new RetargetTextEditorAction(resourceBundle, ITextEditorActionConstants.SHIFT_LEFT + StructuredTextEditorActionConstants.UNDERSCORE);</TD></TR><TR CLASS="z"><TD CLASS="l">118</TD><TD>                fShiftLeft.setActionDefinitionId(ITextEditorActionDefinitionIds.SHIFT_LEFT);</TD></TR><TR><TD CLASS="l">119</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">120</TD><TD>                fToggleComment = new RetargetTextEditorAction(resourceBundle, StructuredTextEditorActionConstants.ACTION_NAME_TOGGLE_COMMENT + StructuredTextEditorActionConstants.UNDERSCORE);</TD></TR><TR CLASS="z"><TD CLASS="l">121</TD><TD>                fToggleComment.setActionDefinitionId(ActionDefinitionIds.TOGGLE_COMMENT);</TD></TR><TR><TD CLASS="l">122</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">123</TD><TD>                fAddBlockComment = new RetargetTextEditorAction(resourceBundle, StructuredTextEditorActionConstants.ACTION_NAME_ADD_BLOCK_COMMENT + StructuredTextEditorActionConstants.UNDERSCORE);</TD></TR><TR CLASS="z"><TD CLASS="l">124</TD><TD>                fAddBlockComment.setActionDefinitionId(ActionDefinitionIds.ADD_BLOCK_COMMENT);</TD></TR><TR><TD CLASS="l">125</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">126</TD><TD>                fRemoveBlockComment = new RetargetTextEditorAction(resourceBundle, StructuredTextEditorActionConstants.ACTION_NAME_REMOVE_BLOCK_COMMENT + StructuredTextEditorActionConstants.UNDERSCORE);</TD></TR><TR CLASS="z"><TD CLASS="l">127</TD><TD>                fRemoveBlockComment.setActionDefinitionId(ActionDefinitionIds.REMOVE_BLOCK_COMMENT);</TD></TR><TR><TD CLASS="l">128</TD><TD> </TD></TR><TR><TD CLASS="l">129</TD><TD>                // goto prev/next error</TD></TR><TR><TD CLASS="l">130</TD><TD>                // CMVC 249017 for JavaEditor consistancy</TD></TR><TR CLASS="z"><TD CLASS="l">131</TD><TD>                fPreviousAnnotation = new GotoAnnotationAction(&#34;Previous_annotation&#34;, false); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">132</TD><TD>                fPreviousAnnotation.setActionDefinitionId(&#34;org.eclipse.ui.navigate.previous&#34;); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">133</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">134</TD><TD>                fNextAnnotation = new GotoAnnotationAction(&#34;Next_annotation&#34;, true); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">135</TD><TD>                fNextAnnotation.setActionDefinitionId(&#34;org.eclipse.ui.navigate.next&#34;); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">136</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">137</TD><TD>                fGotoMatchingBracketAction = new RetargetTextEditorAction(resourceBundle, StructuredTextEditorActionConstants.ACTION_NAME_GOTO_MATCHING_BRACKET + StructuredTextEditorActionConstants.UNDERSCORE);</TD></TR><TR CLASS="z"><TD CLASS="l">138</TD><TD>                fGotoMatchingBracketAction.setActionDefinitionId(ActionDefinitionIds.GOTO_MATCHING_BRACKET);</TD></TR><TR><TD CLASS="l">139</TD><TD> </TD></TR><TR><TD CLASS="l">140</TD><TD>                // Read action extensions.</TD></TR><TR CLASS="z"><TD CLASS="l">141</TD><TD>                ExtendedEditorActionBuilder builder = new ExtendedEditorActionBuilder();</TD></TR><TR CLASS="z"><TD CLASS="l">142</TD><TD>                extendedContributor = builder.readActionExtensions(getExtensionIDs());</TD></TR><TR><TD CLASS="l">143</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">144</TD><TD>                fMenuAdditionsGroupMarker = new GroupMarker(StructuredTextEditorActionConstants.GROUP_NAME_MENU_ADDITIONS);</TD></TR><TR CLASS="z"><TD CLASS="l">145</TD><TD>                fToolbarSeparator = new Separator();</TD></TR><TR CLASS="z"><TD CLASS="l">146</TD><TD>                fToolbarAdditionsGroupMarker = new GroupMarker(StructuredTextEditorActionConstants.GROUP_NAME_TOOLBAR_ADDITIONS);</TD></TR><TR><TD CLASS="l">147</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">148</TD><TD>                fToggleInsertModeAction = new RetargetTextEditorAction(resourceBundle, &#34;Editor.ToggleInsertMode.&#34;, IAction.AS_CHECK_BOX); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">149</TD><TD>                fToggleInsertModeAction.setActionDefinitionId(ITextEditorActionDefinitionIds.TOGGLE_INSERT_MODE);</TD></TR><TR><TD CLASS="l">150</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">151</TD><TD>                if (_showDebugStatus) {</TD></TR><TR CLASS="z"><TD CLASS="l">152</TD><TD>                        fDebugStatusOffset = new OffsetStatusLineContributionItem(StructuredTextEditorActionConstants.STATUS_CATEGORY_OFFSET, true, 20);</TD></TR><TR><TD CLASS="l">153</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">154</TD><TD>        }</TD></TR><TR><TD CLASS="l">155</TD><TD> </TD></TR><TR><TD CLASS="l">156</TD><TD>        protected void addToMenu(IMenuManager menu) {</TD></TR><TR><TD CLASS="l">157</TD><TD>                // edit commands</TD></TR><TR><TD CLASS="l">158</TD><TD>/*                IMenuManager editMenu = menu.findMenuUsingPath(IWorkbenchActionConstants.M_EDIT);</TD></TR><TR><TD CLASS="l">159</TD><TD>                if (editMenu != null) {</TD></TR><TR><TD CLASS="l">160</TD><TD>                        editMenu.add(fCommandsSeparator);</TD></TR><TR><TD CLASS="l">161</TD><TD>                        editMenu.add(fToggleInsertModeAction);</TD></TR><TR><TD CLASS="l">162</TD><TD>                        editMenu.add(fCommandsSeparator);</TD></TR><TR><TD CLASS="l">163</TD><TD>                        editMenu.add(fExpandSelectionToMenu);</TD></TR><TR><TD CLASS="l">164</TD><TD>                        editMenu.add(fCommandsSeparator);</TD></TR><TR><TD CLASS="l">165</TD><TD>                        editMenu.add(fMenuAdditionsGroupMarker);</TD></TR><TR><TD CLASS="l">166</TD><TD>                }</TD></TR><TR><TD CLASS="l">167</TD><TD> </TD></TR><TR><TD CLASS="l">168</TD><TD>                // source commands</TD></TR><TR><TD CLASS="l">169</TD><TD>                String sourceMenuLabel = SSEUIMessages.SourceMenu_label; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">170</TD><TD>                String sourceMenuId = &#34;sourceMenuId&#34;; // This is just a menu id. No //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">171</TD><TD>                // need to translate.</TD></TR><TR><TD CLASS="l">172</TD><TD>                // //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">173</TD><TD>                IMenuManager sourceMenu = new MenuManager(sourceMenuLabel, sourceMenuId);</TD></TR><TR><TD CLASS="l">174</TD><TD>                menu.insertAfter(IWorkbenchActionConstants.M_EDIT, sourceMenu);</TD></TR><TR><TD CLASS="l">175</TD><TD>                if (sourceMenu != null) {</TD></TR><TR><TD CLASS="l">176</TD><TD>                        sourceMenu.add(fCommandsSeparator);</TD></TR><TR><TD CLASS="l">177</TD><TD>                        sourceMenu.add(fToggleComment);</TD></TR><TR><TD CLASS="l">178</TD><TD>                        sourceMenu.add(fAddBlockComment);</TD></TR><TR><TD CLASS="l">179</TD><TD>                        sourceMenu.add(fRemoveBlockComment);</TD></TR><TR><TD CLASS="l">180</TD><TD>                        sourceMenu.add(fShiftRight);</TD></TR><TR><TD CLASS="l">181</TD><TD>                        sourceMenu.add(fShiftLeft);</TD></TR><TR><TD CLASS="l">182</TD><TD>                }</TD></TR><TR><TD CLASS="l">183</TD><TD>                </TD></TR><TR><TD CLASS="l">184</TD><TD>                IMenuManager gotoMenu = menu.findMenuUsingPath(IWorkbenchActionConstants.GO_TO);</TD></TR><TR><TD CLASS="l"><A NAME="3">185</A></TD><TD>                if (gotoMenu != null) {</TD></TR><TR><TD CLASS="l">186</TD><TD>                        gotoMenu.add(fGotoMatchingBracketAction);</TD></TR><TR><TD CLASS="l">187</TD><TD>                }</TD></TR><TR><TD CLASS="l">188</TD><TD>*/</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">189</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">190</TD><TD> </TD></TR><TR><TD CLASS="l">191</TD><TD>        protected void addToPopupMenu(IMenuManager menu) {</TD></TR><TR><TD CLASS="l"><A NAME="5">192</A></TD><TD>                // add nothing</TD></TR><TR CLASS="z"><TD CLASS="l">193</TD><TD>        }</TD></TR><TR><TD CLASS="l">194</TD><TD> </TD></TR><TR><TD CLASS="l">195</TD><TD>        protected void addToStatusLine(IStatusLineManager manager) {</TD></TR><TR CLASS="z"><TD CLASS="l">196</TD><TD>                if (_showDebugStatus) {</TD></TR><TR CLASS="z"><TD CLASS="l">197</TD><TD>                        manager.add(fDebugStatusOffset);</TD></TR><TR><TD CLASS="l">198</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">199</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="6">200</A></TD><TD> </TD></TR><TR><TD CLASS="l">201</TD><TD>        protected void addToToolBar(IToolBarManager toolBarManager) {</TD></TR><TR><TD CLASS="l">202</TD><TD>/*                toolBarManager.add(fToolbarSeparator);</TD></TR><TR><TD CLASS="l">203</TD><TD>                toolBarManager.add(fToolbarAdditionsGroupMarker);</TD></TR><TR CLASS="z"><TD CLASS="l">204</TD><TD>*/        }</TD></TR><TR><TD CLASS="l">205</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="7">206</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">207</TD><TD>         * @see org.eclipse.ui.part.EditorActionBarContributor#contributeToMenu(IMenuManager)</TD></TR><TR><TD CLASS="l">208</TD><TD>         */</TD></TR><TR><TD CLASS="l">209</TD><TD>        public void contributeToMenu(IMenuManager menu) {</TD></TR><TR CLASS="z"><TD CLASS="l">210</TD><TD>                super.contributeToMenu(menu);</TD></TR><TR><TD CLASS="l">211</TD><TD>/*</TD></TR><TR><TD CLASS="l">212</TD><TD>                addToMenu(menu);</TD></TR><TR><TD CLASS="l">213</TD><TD>*/</TD></TR><TR CLASS="z"><TD CLASS="l">214</TD><TD>                if (extendedContributor != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">215</TD><TD>                        extendedContributor.contributeToMenu(menu);</TD></TR><TR><TD CLASS="l">216</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">217</TD><TD>        }</TD></TR><TR><TD CLASS="l">218</TD><TD> </TD></TR><TR><TD CLASS="l">219</TD><TD>        /*</TD></TR><TR><TD CLASS="l">220</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l">221</TD><TD>         * </TD></TR><TR><TD CLASS="l">222</TD><TD>         * @see org.eclipse.wst.sse.ui.extension.IPopupMenuContributor#contributeToPopupMenu(org.eclipse.jface.action.IMenuManager)</TD></TR><TR><TD CLASS="l">223</TD><TD>         */</TD></TR><TR><TD CLASS="l"><A NAME="8">224</A></TD><TD>        public void contributeToPopupMenu(IMenuManager menu) {</TD></TR><TR><TD CLASS="l">225</TD><TD>/*</TD></TR><TR><TD CLASS="l">226</TD><TD>                addToPopupMenu(menu);</TD></TR><TR><TD CLASS="l">227</TD><TD>*/</TD></TR><TR CLASS="z"><TD CLASS="l">228</TD><TD>                if (extendedContributor != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">229</TD><TD>                        extendedContributor.contributeToPopupMenu(menu);</TD></TR><TR><TD CLASS="l">230</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">231</TD><TD>        }</TD></TR><TR><TD CLASS="l">232</TD><TD> </TD></TR><TR><TD CLASS="l">233</TD><TD>        /*</TD></TR><TR><TD CLASS="l">234</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="9">235</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">236</TD><TD>         * @see org.eclipse.ui.part.EditorActionBarContributor#contributeToStatusLine(org.eclipse.jface.action.IStatusLineManager)</TD></TR><TR><TD CLASS="l">237</TD><TD>         */</TD></TR><TR><TD CLASS="l">238</TD><TD>        public void contributeToStatusLine(IStatusLineManager manager) {</TD></TR><TR CLASS="z"><TD CLASS="l">239</TD><TD>                super.contributeToStatusLine(manager);</TD></TR><TR><TD CLASS="l">240</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">241</TD><TD>                addToStatusLine(manager);</TD></TR><TR><TD CLASS="l">242</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">243</TD><TD>                if (extendedContributor != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">244</TD><TD>                        extendedContributor.contributeToStatusLine(manager);</TD></TR><TR><TD CLASS="l">245</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">246</TD><TD>        }</TD></TR><TR><TD CLASS="l">247</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="a">248</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">249</TD><TD>         * @see org.eclipse.ui.part.EditorActionBarContributor#contributeToToolBar(IToolBarManager)</TD></TR><TR><TD CLASS="l">250</TD><TD>         */</TD></TR><TR><TD CLASS="l">251</TD><TD>        public void contributeToToolBar(IToolBarManager toolBarManager) {</TD></TR><TR CLASS="z"><TD CLASS="l">252</TD><TD>                super.contributeToToolBar(toolBarManager);</TD></TR><TR><TD CLASS="l">253</TD><TD> </TD></TR><TR><TD CLASS="l">254</TD><TD>/*                addToToolBar(toolBarManager);</TD></TR><TR><TD CLASS="l">255</TD><TD>*/</TD></TR><TR CLASS="z"><TD CLASS="l">256</TD><TD>                if (extendedContributor != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">257</TD><TD>                        extendedContributor.contributeToToolBar(toolBarManager);</TD></TR><TR><TD CLASS="l">258</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">259</TD><TD>        }</TD></TR><TR><TD CLASS="l">260</TD><TD> </TD></TR><TR><TD CLASS="l">261</TD><TD>        /**</TD></TR><TR><TD CLASS="l">262</TD><TD>         * @see org.eclipse.ui.part.EditorActionBarContributor#dispose()</TD></TR><TR><TD CLASS="l">263</TD><TD>         */</TD></TR><TR><TD CLASS="l">264</TD><TD>        public void dispose() {</TD></TR><TR><TD CLASS="l">265</TD><TD>                // need to call setActiveEditor before super.dispose because in both</TD></TR><TR><TD CLASS="l">266</TD><TD>                // setActiveEditor &amp; super.setActiveEditor if getEditorPart ==</TD></TR><TR><TD CLASS="l"><A NAME="b">267</A></TD><TD>                // activeEditor,</TD></TR><TR><TD CLASS="l">268</TD><TD>                // the method is just returned. so to get both methods to run,</TD></TR><TR><TD CLASS="l">269</TD><TD>                // setActiveEditor</TD></TR><TR><TD CLASS="l">270</TD><TD>                // needs to be called so that it correctly calls super.setActiveEditor</TD></TR><TR CLASS="z"><TD CLASS="l">271</TD><TD>                setActiveEditor(null);</TD></TR><TR><TD CLASS="l">272</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">273</TD><TD>                super.dispose();</TD></TR><TR><TD CLASS="l">274</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">275</TD><TD>                if (extendedContributor != null)</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="c">276</A></TD><TD>                        extendedContributor.dispose();</TD></TR><TR CLASS="z"><TD CLASS="l">277</TD><TD>        }</TD></TR><TR><TD CLASS="l">278</TD><TD> </TD></TR><TR><TD CLASS="l">279</TD><TD>        protected String[] getExtensionIDs() {</TD></TR><TR CLASS="z"><TD CLASS="l">280</TD><TD>                return EDITOR_IDS;</TD></TR><TR><TD CLASS="l">281</TD><TD>        }</TD></TR><TR><TD CLASS="l">282</TD><TD> </TD></TR><TR><TD CLASS="l">283</TD><TD>        /**</TD></TR><TR><TD CLASS="l"><A NAME="d">284</A></TD><TD>         * @param editor</TD></TR><TR><TD CLASS="l">285</TD><TD>         * @return</TD></TR><TR><TD CLASS="l">286</TD><TD>         */</TD></TR><TR><TD CLASS="l">287</TD><TD>        protected ITextEditor getTextEditor(IEditorPart editor) {</TD></TR><TR CLASS="z"><TD CLASS="l">288</TD><TD>                ITextEditor textEditor = null;</TD></TR><TR CLASS="z"><TD CLASS="l">289</TD><TD>                if (editor instanceof ITextEditor)</TD></TR><TR CLASS="z"><TD CLASS="l">290</TD><TD>                        textEditor = (ITextEditor) editor;</TD></TR><TR CLASS="z"><TD CLASS="l">291</TD><TD>                if (textEditor == null &amp;&amp; editor != null)</TD></TR><TR CLASS="z"><TD CLASS="l">292</TD><TD>                        textEditor = (ITextEditor) editor.getAdapter(ITextEditor.class);</TD></TR><TR CLASS="z"><TD CLASS="l">293</TD><TD>                return textEditor;</TD></TR><TR><TD CLASS="l">294</TD><TD>        }</TD></TR><TR><TD CLASS="l">295</TD><TD> </TD></TR><TR><TD CLASS="l">296</TD><TD>        /*</TD></TR><TR><TD CLASS="l">297</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l">298</TD><TD>         * </TD></TR><TR><TD CLASS="l"><A NAME="e">299</A></TD><TD>         * @see org.eclipse.ui.IEditorActionBarContributor#init(org.eclipse.ui.IActionBars,</TD></TR><TR><TD CLASS="l">300</TD><TD>         *      org.eclipse.ui.IWorkbenchPage)</TD></TR><TR><TD CLASS="l">301</TD><TD>         */</TD></TR><TR><TD CLASS="l">302</TD><TD>        public void init(IActionBars bars, IWorkbenchPage page) {</TD></TR><TR CLASS="z"><TD CLASS="l">303</TD><TD>                super.init(bars, page);</TD></TR><TR CLASS="z"><TD CLASS="l">304</TD><TD>        }</TD></TR><TR><TD CLASS="l">305</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="f">306</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">307</TD><TD>         * @see org.eclipse.ui.IEditorActionBarContributor#setActiveEditor(IEditorPart)</TD></TR><TR><TD CLASS="l">308</TD><TD>         */</TD></TR><TR><TD CLASS="l">309</TD><TD>        public void setActiveEditor(IEditorPart activeEditor) {</TD></TR><TR CLASS="z"><TD CLASS="l">310</TD><TD>                if (getActiveEditorPart() == activeEditor)</TD></TR><TR CLASS="z"><TD CLASS="l">311</TD><TD>                        return;</TD></TR><TR CLASS="z"><TD CLASS="l">312</TD><TD>                super.setActiveEditor(activeEditor);</TD></TR><TR><TD CLASS="l">313</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">314</TD><TD>                ITextEditor textEditor = getTextEditor(activeEditor);</TD></TR><TR><TD CLASS="l">315</TD><TD> </TD></TR><TR><TD CLASS="l">316</TD><TD>/*                IActionBars actionBars = getActionBars();</TD></TR><TR><TD CLASS="l">317</TD><TD>                if (actionBars != null) {</TD></TR><TR><TD CLASS="l">318</TD><TD>                        actionBars.setGlobalActionHandler(ITextEditorActionDefinitionIds.GOTO_NEXT_ANNOTATION, fNextAnnotation);</TD></TR><TR><TD CLASS="l">319</TD><TD>                        actionBars.setGlobalActionHandler(ITextEditorActionDefinitionIds.GOTO_PREVIOUS_ANNOTATION, fPreviousAnnotation);</TD></TR><TR><TD CLASS="l">320</TD><TD>                        actionBars.setGlobalActionHandler(ActionFactory.PREVIOUS.getId(), fPreviousAnnotation);</TD></TR><TR><TD CLASS="l">321</TD><TD>                        actionBars.setGlobalActionHandler(ActionFactory.NEXT.getId(), fNextAnnotation);</TD></TR><TR><TD CLASS="l">322</TD><TD> </TD></TR><TR><TD CLASS="l">323</TD><TD>                        if (textEditor != null) {</TD></TR><TR><TD CLASS="l">324</TD><TD>                                actionBars.setGlobalActionHandler(IDEActionFactory.ADD_TASK.getId(), getAction(textEditor, IDEActionFactory.ADD_TASK.getId()));</TD></TR><TR><TD CLASS="l">325</TD><TD>                                actionBars.setGlobalActionHandler(IDEActionFactory.BOOKMARK.getId(), getAction(textEditor, IDEActionFactory.BOOKMARK.getId()));</TD></TR><TR><TD CLASS="l">326</TD><TD>                        }</TD></TR><TR><TD CLASS="l">327</TD><TD>                }</TD></TR><TR><TD CLASS="l">328</TD><TD> </TD></TR><TR><TD CLASS="l">329</TD><TD>                fStructureSelectEnclosingAction.setAction(getAction(textEditor, StructuredTextEditorActionConstants.ACTION_NAME_STRUCTURE_SELECT_ENCLOSING));</TD></TR><TR><TD CLASS="l">330</TD><TD>                fStructureSelectNextAction.setAction(getAction(textEditor, StructuredTextEditorActionConstants.ACTION_NAME_STRUCTURE_SELECT_NEXT));</TD></TR><TR><TD CLASS="l">331</TD><TD>                fStructureSelectPreviousAction.setAction(getAction(textEditor, StructuredTextEditorActionConstants.ACTION_NAME_STRUCTURE_SELECT_PREVIOUS));</TD></TR><TR><TD CLASS="l">332</TD><TD>                fStructureSelectHistoryAction.setAction(getAction(textEditor, StructuredTextEditorActionConstants.ACTION_NAME_STRUCTURE_SELECT_HISTORY));</TD></TR><TR><TD CLASS="l">333</TD><TD> </TD></TR><TR><TD CLASS="l">334</TD><TD>                fShiftRight.setAction(getAction(textEditor, ITextEditorActionConstants.SHIFT_RIGHT));</TD></TR><TR><TD CLASS="l">335</TD><TD>                fShiftLeft.setAction(getAction(textEditor, ITextEditorActionConstants.SHIFT_LEFT));</TD></TR><TR><TD CLASS="l">336</TD><TD> </TD></TR><TR><TD CLASS="l">337</TD><TD>                fToggleComment.setAction(getAction(textEditor, StructuredTextEditorActionConstants.ACTION_NAME_TOGGLE_COMMENT));</TD></TR><TR><TD CLASS="l">338</TD><TD>                fAddBlockComment.setAction(getAction(textEditor, StructuredTextEditorActionConstants.ACTION_NAME_ADD_BLOCK_COMMENT));</TD></TR><TR><TD CLASS="l">339</TD><TD>                fRemoveBlockComment.setAction(getAction(textEditor, StructuredTextEditorActionConstants.ACTION_NAME_REMOVE_BLOCK_COMMENT));</TD></TR><TR><TD CLASS="l">340</TD><TD> </TD></TR><TR><TD CLASS="l">341</TD><TD>                // go to prev/next error</TD></TR><TR><TD CLASS="l">342</TD><TD>                // CMVC 249017 for JavaEditor consistancy</TD></TR><TR><TD CLASS="l">343</TD><TD>                fPreviousAnnotation.setEditor(textEditor);</TD></TR><TR><TD CLASS="l">344</TD><TD>                fNextAnnotation.setEditor(textEditor);</TD></TR><TR><TD CLASS="l">345</TD><TD>                fGotoMatchingBracketAction.setAction(getAction(textEditor, StructuredTextEditorActionConstants.ACTION_NAME_GOTO_MATCHING_BRACKET));</TD></TR><TR><TD CLASS="l">346</TD><TD> </TD></TR><TR><TD CLASS="l">347</TD><TD>                fToggleInsertModeAction.setAction(getAction(textEditor, ITextEditorActionConstants.TOGGLE_INSERT_MODE));</TD></TR><TR><TD CLASS="l">348</TD><TD>*/</TD></TR><TR CLASS="z"><TD CLASS="l">349</TD><TD>                if (extendedContributor != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">350</TD><TD>                        extendedContributor.setActiveEditor(activeEditor);</TD></TR><TR><TD CLASS="l">351</TD><TD>                }</TD></TR><TR><TD CLASS="l">352</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">353</TD><TD>                if (_showDebugStatus &amp;&amp; textEditor instanceof ITextEditorExtension) {</TD></TR><TR CLASS="z"><TD CLASS="l">354</TD><TD>                        ((ITextEditorExtension) textEditor).setStatusField(fDebugStatusOffset, StructuredTextEditorActionConstants.STATUS_CATEGORY_OFFSET);</TD></TR><TR CLASS="z"><TD CLASS="l">355</TD><TD>                        fDebugStatusOffset.setActiveEditor(textEditor);</TD></TR><TR><TD CLASS="l">356</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">357</TD><TD>        }</TD></TR><TR><TD CLASS="l">358</TD><TD> </TD></TR><TR><TD CLASS="l">359</TD><TD>        /*</TD></TR><TR><TD CLASS="l">360</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l">361</TD><TD>         * </TD></TR><TR><TD CLASS="l">362</TD><TD>         * @see org.eclipse.wst.sse.ui.ISourceViewerActionBarContributor#setViewerSpecificContributionsEnabled(boolean)</TD></TR><TR><TD CLASS="l">363</TD><TD>         */</TD></TR><TR><TD CLASS="l">364</TD><TD>        public void setViewerSpecificContributionsEnabled(boolean enabled) {</TD></TR><TR><TD CLASS="l">365</TD><TD>/*                fShiftRight.setEnabled(enabled);</TD></TR><TR><TD CLASS="l">366</TD><TD>                fShiftLeft.setEnabled(enabled);</TD></TR><TR><TD CLASS="l">367</TD><TD>                fNextAnnotation.setEnabled(enabled);</TD></TR><TR><TD CLASS="l">368</TD><TD>                fPreviousAnnotation.setEnabled(enabled);</TD></TR><TR><TD CLASS="l">369</TD><TD>*/</TD></TR><TR><TD CLASS="l">370</TD><TD>                /*</TD></TR><TR><TD CLASS="l">371</TD><TD>                 * fComment.setEnabled(enabled); fUncomment.setEnabled(enabled);</TD></TR><TR><TD CLASS="l">372</TD><TD>                 */</TD></TR><TR><TD CLASS="l">373</TD><TD>/*                </TD></TR><TR><TD CLASS="l">374</TD><TD>                fToggleComment.setEnabled(enabled);</TD></TR><TR><TD CLASS="l">375</TD><TD>                fAddBlockComment.setEnabled(enabled);</TD></TR><TR><TD CLASS="l"><A NAME="10">376</A></TD><TD>                fRemoveBlockComment.setEnabled(enabled);</TD></TR><TR><TD CLASS="l">377</TD><TD>*/                </TD></TR><TR><TD CLASS="l">378</TD><TD>                // convert line delimiters are not source viewer-specific</TD></TR><TR><TD CLASS="l">379</TD><TD>                </TD></TR><TR CLASS="z"><TD CLASS="l">380</TD><TD>        }</TD></TR><TR><TD CLASS="l">381</TD><TD> </TD></TR><TR><TD CLASS="l">382</TD><TD>        /*</TD></TR><TR><TD CLASS="l">383</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="11">384</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">385</TD><TD>         * @see org.eclipse.wst.sse.ui.extension.IExtendedContributor#updateToolbarActions()</TD></TR><TR><TD CLASS="l">386</TD><TD>         */</TD></TR><TR><TD CLASS="l">387</TD><TD>        public void updateToolbarActions() {</TD></TR><TR CLASS="z"><TD CLASS="l">388</TD><TD>                if (extendedContributor != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">389</TD><TD>                        extendedContributor.updateToolbarActions();</TD></TR><TR><TD CLASS="l">390</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">391</TD><TD>        }</TD></TR><TR><TD CLASS="l">392</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="a.html">org.eclipse.wst.sse.ui.internal.actions</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/104.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/104.html
deleted file mode 100644
index 27a5285..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/104.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="a.html">org.eclipse.wst.sse.ui.internal.actions</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">ActiveEditorActionHandler.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>ActiveEditorActionHandler.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/34)</TD><TD CLASS="h">0%   (0/258)</TD><TD CLASS="h">0%   (0/65)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">ActiveEditorActionHandler</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/34)</TD><TD CLASS="h">0%   (0/258)</TD><TD CLASS="h">0%   (0/65)</TD></TR><TR><TD CLASS="f"><A HREF="#0">ActiveEditorActionHandler (IWorkbenchSite, String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">addPropertyChangeListener (IPropertyChangeListener): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#3">getAccelerator (): int</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">getActionDefinitionId (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#5">getDescription (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">getDisabledImageDescriptor (): ImageDescriptor</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#7">getHelpListener (): HelpListener</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">getHoverImageDescriptor (): ImageDescriptor</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#9">getId (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">getImageDescriptor (): ImageDescriptor</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#b">getMenuCreator (): IMenuCreator</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#c">getStyle (): int</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#d">getText (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#e">getToolTipText (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#f">isChecked (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#10">isEnabled (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#11">isHandled (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#12">removePropertyChangeListener (IPropertyChangeListener): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#13">run (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#14">runWithEvent (Event): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#15">setAccelerator (int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#16">setActionDefinitionId (String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#17">setChecked (boolean): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#18">setDescription (String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#19">setDisabledImageDescriptor (ImageDescriptor): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#1a">setEnabled (boolean): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#1b">setHelpListener (HelpListener): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#1c">setHoverImageDescriptor (ImageDescriptor): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#1d">setId (String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#1e">setImageDescriptor (ImageDescriptor): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#1f">setMenuCreator (IMenuCreator): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#20">setText (String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#21">setToolTipText (String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#22">updateTargetAction (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/67)</TD><TD CLASS="h">0%   (0/11)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2005 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.actions;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.jface.action.IAction;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.jface.action.IMenuCreator;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.jface.resource.ImageDescriptor;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.jface.util.IPropertyChangeListener;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.swt.events.HelpListener;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.swt.widgets.Event;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.ui.IEditorPart;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.ui.IWorkbenchSite;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.ui.texteditor.ITextEditor;</TD></TR><TR><TD CLASS="l">24</TD><TD> </TD></TR><TR><TD CLASS="l">25</TD><TD>/**</TD></TR><TR><TD CLASS="l">26</TD><TD> * @deprecated actions are not properly activated with this handler so do not</TD></TR><TR><TD CLASS="l">27</TD><TD> *             use</TD></TR><TR><TD CLASS="l">28</TD><TD> */</TD></TR><TR><TD CLASS="l">29</TD><TD>public class ActiveEditorActionHandler implements IAction {</TD></TR><TR><TD CLASS="l">30</TD><TD> </TD></TR><TR><TD CLASS="l">31</TD><TD>        private String fActionId;</TD></TR><TR><TD CLASS="l"><A NAME="0">32</A></TD><TD>        private IWorkbenchSite fSite;</TD></TR><TR><TD CLASS="l">33</TD><TD>        private IAction fTargetAction;</TD></TR><TR><TD CLASS="l">34</TD><TD> </TD></TR><TR><TD CLASS="l">35</TD><TD>        public ActiveEditorActionHandler(IWorkbenchSite site, String id) {</TD></TR><TR CLASS="z"><TD CLASS="l">36</TD><TD>                super();</TD></TR><TR CLASS="z"><TD CLASS="l">37</TD><TD>                fActionId = id;</TD></TR><TR CLASS="z"><TD CLASS="l">38</TD><TD>                fSite = site;</TD></TR><TR CLASS="z"><TD CLASS="l">39</TD><TD>        }</TD></TR><TR><TD CLASS="l">40</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="2">41</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">42</TD><TD>         * @see org.eclipse.jface.action.IAction#addPropertyChangeListener(org.eclipse.jface.util.IPropertyChangeListener)</TD></TR><TR><TD CLASS="l">43</TD><TD>         */</TD></TR><TR><TD CLASS="l">44</TD><TD>        public void addPropertyChangeListener(IPropertyChangeListener listener) {</TD></TR><TR CLASS="z"><TD CLASS="l">45</TD><TD>        }</TD></TR><TR><TD CLASS="l">46</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="3">47</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">48</TD><TD>         * @see org.eclipse.jface.action.IAction#getAccelerator()</TD></TR><TR><TD CLASS="l">49</TD><TD>         */</TD></TR><TR><TD CLASS="l">50</TD><TD>        public int getAccelerator() {</TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>                updateTargetAction();</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                return (fTargetAction != null ? fTargetAction.getAccelerator() : 0);</TD></TR><TR><TD CLASS="l">53</TD><TD>        }</TD></TR><TR><TD CLASS="l">54</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="4">55</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">56</TD><TD>         * @see org.eclipse.jface.action.IAction#getActionDefinitionId()</TD></TR><TR><TD CLASS="l">57</TD><TD>         */</TD></TR><TR><TD CLASS="l">58</TD><TD>        public String getActionDefinitionId() {</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>                updateTargetAction();</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                return (fTargetAction != null ? fTargetAction.getActionDefinitionId() : null);</TD></TR><TR><TD CLASS="l">61</TD><TD>        }</TD></TR><TR><TD CLASS="l">62</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="5">63</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">64</TD><TD>         * @see org.eclipse.jface.action.IAction#getDescription()</TD></TR><TR><TD CLASS="l">65</TD><TD>         */</TD></TR><TR><TD CLASS="l">66</TD><TD>        public String getDescription() {</TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>                updateTargetAction();</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>                return (fTargetAction != null ? fTargetAction.getDescription() : null);</TD></TR><TR><TD CLASS="l">69</TD><TD>        }</TD></TR><TR><TD CLASS="l">70</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="6">71</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">72</TD><TD>         * @see org.eclipse.jface.action.IAction#getDisabledImageDescriptor()</TD></TR><TR><TD CLASS="l">73</TD><TD>         */</TD></TR><TR><TD CLASS="l">74</TD><TD>        public ImageDescriptor getDisabledImageDescriptor() {</TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>                updateTargetAction();</TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>                return (fTargetAction != null ? fTargetAction.getDisabledImageDescriptor() : null);</TD></TR><TR><TD CLASS="l">77</TD><TD>        }</TD></TR><TR><TD CLASS="l">78</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="7">79</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">80</TD><TD>         * @see org.eclipse.jface.action.IAction#getHelpListener()</TD></TR><TR><TD CLASS="l">81</TD><TD>         */</TD></TR><TR><TD CLASS="l">82</TD><TD>        public HelpListener getHelpListener() {</TD></TR><TR CLASS="z"><TD CLASS="l">83</TD><TD>                updateTargetAction();</TD></TR><TR CLASS="z"><TD CLASS="l">84</TD><TD>                return (fTargetAction != null ? fTargetAction.getHelpListener() : null);</TD></TR><TR><TD CLASS="l">85</TD><TD>        }</TD></TR><TR><TD CLASS="l">86</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="8">87</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">88</TD><TD>         * @see org.eclipse.jface.action.IAction#getHoverImageDescriptor()</TD></TR><TR><TD CLASS="l">89</TD><TD>         */</TD></TR><TR><TD CLASS="l">90</TD><TD>        public ImageDescriptor getHoverImageDescriptor() {</TD></TR><TR CLASS="z"><TD CLASS="l">91</TD><TD>                updateTargetAction();</TD></TR><TR CLASS="z"><TD CLASS="l">92</TD><TD>                return (fTargetAction != null ? fTargetAction.getHoverImageDescriptor() : null);</TD></TR><TR><TD CLASS="l">93</TD><TD>        }</TD></TR><TR><TD CLASS="l">94</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="9">95</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">96</TD><TD>         * @see org.eclipse.jface.action.IAction#getId()</TD></TR><TR><TD CLASS="l">97</TD><TD>         */</TD></TR><TR><TD CLASS="l">98</TD><TD>        public String getId() {</TD></TR><TR CLASS="z"><TD CLASS="l">99</TD><TD>                return getClass().getName() + hashCode();</TD></TR><TR><TD CLASS="l">100</TD><TD>        }</TD></TR><TR><TD CLASS="l">101</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="a">102</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">103</TD><TD>         * @see org.eclipse.jface.action.IAction#getImageDescriptor()</TD></TR><TR><TD CLASS="l">104</TD><TD>         */</TD></TR><TR><TD CLASS="l">105</TD><TD>        public ImageDescriptor getImageDescriptor() {</TD></TR><TR CLASS="z"><TD CLASS="l">106</TD><TD>                updateTargetAction();</TD></TR><TR CLASS="z"><TD CLASS="l">107</TD><TD>                return (fTargetAction != null ? fTargetAction.getImageDescriptor() : null);</TD></TR><TR><TD CLASS="l">108</TD><TD>        }</TD></TR><TR><TD CLASS="l">109</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="b">110</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">111</TD><TD>         * @see org.eclipse.jface.action.IAction#getMenuCreator()</TD></TR><TR><TD CLASS="l">112</TD><TD>         */</TD></TR><TR><TD CLASS="l">113</TD><TD>        public IMenuCreator getMenuCreator() {</TD></TR><TR CLASS="z"><TD CLASS="l">114</TD><TD>                return null;</TD></TR><TR><TD CLASS="l">115</TD><TD>        }</TD></TR><TR><TD CLASS="l">116</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="c">117</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">118</TD><TD>         * @see org.eclipse.jface.action.IAction#getStyle()</TD></TR><TR><TD CLASS="l">119</TD><TD>         */</TD></TR><TR><TD CLASS="l">120</TD><TD>        public int getStyle() {</TD></TR><TR CLASS="z"><TD CLASS="l">121</TD><TD>                return IAction.AS_PUSH_BUTTON;</TD></TR><TR><TD CLASS="l">122</TD><TD>        }</TD></TR><TR><TD CLASS="l">123</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="d">124</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">125</TD><TD>         * @see org.eclipse.jface.action.IAction#getText()</TD></TR><TR><TD CLASS="l">126</TD><TD>         */</TD></TR><TR><TD CLASS="l">127</TD><TD>        public String getText() {</TD></TR><TR CLASS="z"><TD CLASS="l">128</TD><TD>                updateTargetAction();</TD></TR><TR CLASS="z"><TD CLASS="l">129</TD><TD>                return (fTargetAction != null ? fTargetAction.getText() : null);</TD></TR><TR><TD CLASS="l">130</TD><TD>        }</TD></TR><TR><TD CLASS="l">131</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="e">132</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">133</TD><TD>         * @see org.eclipse.jface.action.IAction#getToolTipText()</TD></TR><TR><TD CLASS="l">134</TD><TD>         */</TD></TR><TR><TD CLASS="l">135</TD><TD>        public String getToolTipText() {</TD></TR><TR CLASS="z"><TD CLASS="l">136</TD><TD>                updateTargetAction();</TD></TR><TR CLASS="z"><TD CLASS="l">137</TD><TD>                return (fTargetAction != null ? fTargetAction.getToolTipText() : null);</TD></TR><TR><TD CLASS="l">138</TD><TD>        }</TD></TR><TR><TD CLASS="l">139</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="f">140</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">141</TD><TD>         * @see org.eclipse.jface.action.IAction#isChecked()</TD></TR><TR><TD CLASS="l">142</TD><TD>         */</TD></TR><TR><TD CLASS="l">143</TD><TD>        public boolean isChecked() {</TD></TR><TR CLASS="z"><TD CLASS="l">144</TD><TD>                updateTargetAction();</TD></TR><TR CLASS="z"><TD CLASS="l">145</TD><TD>                return (fTargetAction != null ? fTargetAction.isChecked() : true);</TD></TR><TR><TD CLASS="l">146</TD><TD>        }</TD></TR><TR><TD CLASS="l">147</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="10">148</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">149</TD><TD>         * @see org.eclipse.jface.action.IAction#isEnabled()</TD></TR><TR><TD CLASS="l">150</TD><TD>         */</TD></TR><TR><TD CLASS="l">151</TD><TD>        public boolean isEnabled() {</TD></TR><TR CLASS="z"><TD CLASS="l">152</TD><TD>                updateTargetAction();</TD></TR><TR CLASS="z"><TD CLASS="l">153</TD><TD>                return (fTargetAction != null ? fTargetAction.isEnabled() : false);</TD></TR><TR><TD CLASS="l">154</TD><TD>        }</TD></TR><TR><TD CLASS="l">155</TD><TD> </TD></TR><TR><TD CLASS="l">156</TD><TD>        /*</TD></TR><TR><TD CLASS="l">157</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="11">158</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">159</TD><TD>         * @see org.eclipse.jface.action.IAction#isHandled()</TD></TR><TR><TD CLASS="l">160</TD><TD>         */</TD></TR><TR><TD CLASS="l">161</TD><TD>        public boolean isHandled() {</TD></TR><TR CLASS="z"><TD CLASS="l">162</TD><TD>                updateTargetAction();</TD></TR><TR CLASS="z"><TD CLASS="l">163</TD><TD>                return (fTargetAction != null ? fTargetAction.isHandled() : false);</TD></TR><TR><TD CLASS="l">164</TD><TD>        }</TD></TR><TR><TD CLASS="l">165</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="12">166</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">167</TD><TD>         * @see org.eclipse.jface.action.IAction#removePropertyChangeListener(org.eclipse.jface.util.IPropertyChangeListener)</TD></TR><TR><TD CLASS="l">168</TD><TD>         */</TD></TR><TR><TD CLASS="l">169</TD><TD>        public void removePropertyChangeListener(IPropertyChangeListener listener) {</TD></TR><TR CLASS="z"><TD CLASS="l">170</TD><TD>        }</TD></TR><TR><TD CLASS="l">171</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="13">172</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">173</TD><TD>         * @see org.eclipse.jface.action.IAction#run()</TD></TR><TR><TD CLASS="l">174</TD><TD>         */</TD></TR><TR><TD CLASS="l">175</TD><TD>        public void run() {</TD></TR><TR CLASS="z"><TD CLASS="l">176</TD><TD>                updateTargetAction();</TD></TR><TR CLASS="z"><TD CLASS="l">177</TD><TD>                if (fTargetAction != null)</TD></TR><TR CLASS="z"><TD CLASS="l">178</TD><TD>                        fTargetAction.run();</TD></TR><TR CLASS="z"><TD CLASS="l">179</TD><TD>        }</TD></TR><TR><TD CLASS="l">180</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="14">181</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">182</TD><TD>         * @see org.eclipse.jface.action.IAction#runWithEvent(org.eclipse.swt.widgets.Event)</TD></TR><TR><TD CLASS="l">183</TD><TD>         */</TD></TR><TR><TD CLASS="l">184</TD><TD>        public void runWithEvent(Event event) {</TD></TR><TR CLASS="z"><TD CLASS="l">185</TD><TD>                updateTargetAction();</TD></TR><TR CLASS="z"><TD CLASS="l">186</TD><TD>                if (fTargetAction != null)</TD></TR><TR CLASS="z"><TD CLASS="l">187</TD><TD>                        fTargetAction.runWithEvent(event);</TD></TR><TR CLASS="z"><TD CLASS="l">188</TD><TD>        }</TD></TR><TR><TD CLASS="l">189</TD><TD> </TD></TR><TR><TD CLASS="l">190</TD><TD>        /**</TD></TR><TR><TD CLASS="l">191</TD><TD>         * NOT SUPPORTED</TD></TR><TR><TD CLASS="l"><A NAME="15">192</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">193</TD><TD>         * @see org.eclipse.jface.action.IAction#setAccelerator(int)</TD></TR><TR><TD CLASS="l">194</TD><TD>         */</TD></TR><TR><TD CLASS="l">195</TD><TD>        public void setAccelerator(int keycode) {</TD></TR><TR CLASS="z"><TD CLASS="l">196</TD><TD>        }</TD></TR><TR><TD CLASS="l">197</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="16">198</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">199</TD><TD>         * @see org.eclipse.jface.action.IAction#setActionDefinitionId(java.lang.String)</TD></TR><TR><TD CLASS="l">200</TD><TD>         */</TD></TR><TR><TD CLASS="l">201</TD><TD>        public void setActionDefinitionId(String id) {</TD></TR><TR CLASS="z"><TD CLASS="l">202</TD><TD>        }</TD></TR><TR><TD CLASS="l">203</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="17">204</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">205</TD><TD>         * @see org.eclipse.jface.action.IAction#setChecked(boolean)</TD></TR><TR><TD CLASS="l">206</TD><TD>         */</TD></TR><TR><TD CLASS="l">207</TD><TD>        public void setChecked(boolean checked) {</TD></TR><TR CLASS="z"><TD CLASS="l">208</TD><TD>        }</TD></TR><TR><TD CLASS="l">209</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="18">210</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">211</TD><TD>         * @see org.eclipse.jface.action.IAction#setDescription(java.lang.String)</TD></TR><TR><TD CLASS="l">212</TD><TD>         */</TD></TR><TR><TD CLASS="l">213</TD><TD>        public void setDescription(String text) {</TD></TR><TR CLASS="z"><TD CLASS="l">214</TD><TD>        }</TD></TR><TR><TD CLASS="l">215</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="19">216</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">217</TD><TD>         * @see org.eclipse.jface.action.IAction#setDisabledImageDescriptor(org.eclipse.jface.resource.ImageDescriptor)</TD></TR><TR><TD CLASS="l">218</TD><TD>         */</TD></TR><TR><TD CLASS="l">219</TD><TD>        public void setDisabledImageDescriptor(ImageDescriptor newImage) {</TD></TR><TR CLASS="z"><TD CLASS="l">220</TD><TD>        }</TD></TR><TR><TD CLASS="l">221</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="1a">222</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">223</TD><TD>         * @see org.eclipse.jface.action.IAction#setEnabled(boolean)</TD></TR><TR><TD CLASS="l">224</TD><TD>         */</TD></TR><TR><TD CLASS="l">225</TD><TD>        public void setEnabled(boolean enabled) {</TD></TR><TR CLASS="z"><TD CLASS="l">226</TD><TD>        }</TD></TR><TR><TD CLASS="l">227</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="1b">228</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">229</TD><TD>         * @see org.eclipse.jface.action.IAction#setHelpListener(org.eclipse.swt.events.HelpListener)</TD></TR><TR><TD CLASS="l">230</TD><TD>         */</TD></TR><TR><TD CLASS="l">231</TD><TD>        public void setHelpListener(HelpListener listener) {</TD></TR><TR CLASS="z"><TD CLASS="l">232</TD><TD>        }</TD></TR><TR><TD CLASS="l">233</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="1c">234</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">235</TD><TD>         * @see org.eclipse.jface.action.IAction#setHoverImageDescriptor(org.eclipse.jface.resource.ImageDescriptor)</TD></TR><TR><TD CLASS="l">236</TD><TD>         */</TD></TR><TR><TD CLASS="l">237</TD><TD>        public void setHoverImageDescriptor(ImageDescriptor newImage) {</TD></TR><TR CLASS="z"><TD CLASS="l">238</TD><TD>        }</TD></TR><TR><TD CLASS="l">239</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="1d">240</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">241</TD><TD>         * @see org.eclipse.jface.action.IAction#setId(java.lang.String)</TD></TR><TR><TD CLASS="l">242</TD><TD>         */</TD></TR><TR><TD CLASS="l">243</TD><TD>        public void setId(String id) {</TD></TR><TR CLASS="z"><TD CLASS="l">244</TD><TD>        }</TD></TR><TR><TD CLASS="l">245</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="1e">246</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">247</TD><TD>         * @see org.eclipse.jface.action.IAction#setImageDescriptor(org.eclipse.jface.resource.ImageDescriptor)</TD></TR><TR><TD CLASS="l">248</TD><TD>         */</TD></TR><TR><TD CLASS="l">249</TD><TD>        public void setImageDescriptor(ImageDescriptor newImage) {</TD></TR><TR CLASS="z"><TD CLASS="l">250</TD><TD>        }</TD></TR><TR><TD CLASS="l">251</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="1f">252</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">253</TD><TD>         * @see org.eclipse.jface.action.IAction#setMenuCreator(org.eclipse.jface.action.IMenuCreator)</TD></TR><TR><TD CLASS="l">254</TD><TD>         */</TD></TR><TR><TD CLASS="l">255</TD><TD>        public void setMenuCreator(IMenuCreator creator) {</TD></TR><TR CLASS="z"><TD CLASS="l">256</TD><TD>        }</TD></TR><TR><TD CLASS="l">257</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="20">258</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">259</TD><TD>         * @see org.eclipse.jface.action.IAction#setText(java.lang.String)</TD></TR><TR><TD CLASS="l">260</TD><TD>         */</TD></TR><TR><TD CLASS="l">261</TD><TD>        public void setText(String text) {</TD></TR><TR CLASS="z"><TD CLASS="l">262</TD><TD>        }</TD></TR><TR><TD CLASS="l">263</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="21">264</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">265</TD><TD>         * @see org.eclipse.jface.action.IAction#setToolTipText(java.lang.String)</TD></TR><TR><TD CLASS="l">266</TD><TD>         */</TD></TR><TR><TD CLASS="l"><A NAME="22">267</A></TD><TD>        public void setToolTipText(String text) {</TD></TR><TR CLASS="z"><TD CLASS="l">268</TD><TD>        }</TD></TR><TR><TD CLASS="l">269</TD><TD> </TD></TR><TR><TD CLASS="l">270</TD><TD>        private void updateTargetAction() {</TD></TR><TR CLASS="z"><TD CLASS="l">271</TD><TD>                if (fSite != null &amp;&amp; fSite.getWorkbenchWindow() != null &amp;&amp; fSite.getWorkbenchWindow().getActivePage() != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">272</TD><TD>                        IEditorPart part = fSite.getWorkbenchWindow().getActivePage().getActiveEditor();</TD></TR><TR CLASS="z"><TD CLASS="l">273</TD><TD>                        ITextEditor editor = null;</TD></TR><TR CLASS="z"><TD CLASS="l">274</TD><TD>                        if (part instanceof ITextEditor)</TD></TR><TR CLASS="z"><TD CLASS="l">275</TD><TD>                                editor = (ITextEditor) part;</TD></TR><TR><TD CLASS="l">276</TD><TD>                        else</TD></TR><TR CLASS="z"><TD CLASS="l">277</TD><TD>                                editor = (ITextEditor) (part != null ? part.getAdapter(ITextEditor.class) : null);</TD></TR><TR CLASS="z"><TD CLASS="l">278</TD><TD>                        if (editor != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">279</TD><TD>                                fTargetAction = editor.getAction(fActionId);</TD></TR><TR><TD CLASS="l">280</TD><TD>                        } else {</TD></TR><TR CLASS="z"><TD CLASS="l">281</TD><TD>                                fTargetAction = null;</TD></TR><TR><TD CLASS="l">282</TD><TD>                        }</TD></TR><TR><TD CLASS="l">283</TD><TD>                } else</TD></TR><TR CLASS="z"><TD CLASS="l">284</TD><TD>                        fTargetAction = null;</TD></TR><TR CLASS="z"><TD CLASS="l">285</TD><TD>        }</TD></TR><TR><TD CLASS="l">286</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="a.html">org.eclipse.wst.sse.ui.internal.actions</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/105.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/105.html
deleted file mode 100644
index 7709f59..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/105.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="a.html">org.eclipse.wst.sse.ui.internal.actions</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">CleanupAction.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>CleanupAction.java</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/102)</TD><TD CLASS="h">0%   (0/25)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">CleanupAction</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/81)</TD><TD CLASS="h">0%   (0/20)</TD></TR><TR><TD CLASS="f"><A HREF="#0">CleanupAction (ResourceBundle, String, ITextEditor): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">run (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/75)</TD><TD CLASS="h">0%   (0/18)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#3">CleanupAction$1</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/21)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#3">CleanupAction$1 (CleanupAction, StructuredTextEditor): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#5">run (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/4)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR CLASS="z"><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2005 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.actions;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.util.ResourceBundle;</TD></TR><TR><TD CLASS="l">16</TD><TD> </TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.jface.dialogs.Dialog;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.jface.text.ITextSelection;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.jface.window.Window;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.swt.custom.BusyIndicator;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.swt.widgets.Shell;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.ui.texteditor.ITextEditor;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.ui.texteditor.TextEditorAction;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.wst.sse.core.internal.cleanup.IStructuredCleanupProcessor;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.wst.sse.ui.StructuredTextEditor;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.wst.sse.ui.internal.SSEUIMessages;</TD></TR><TR><TD CLASS="l">28</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="0">29</A></TD><TD>public abstract class CleanupAction extends TextEditorAction {</TD></TR><TR><TD CLASS="l">30</TD><TD>        protected Dialog fCleanupDialog;</TD></TR><TR><TD CLASS="l">31</TD><TD> </TD></TR><TR><TD CLASS="l">32</TD><TD>        public CleanupAction(ResourceBundle bundle, String prefix, ITextEditor editor) {</TD></TR><TR CLASS="z"><TD CLASS="l">33</TD><TD>                super(bundle, prefix, editor);</TD></TR><TR CLASS="z"><TD CLASS="l">34</TD><TD>        }</TD></TR><TR><TD CLASS="l">35</TD><TD> </TD></TR><TR><TD CLASS="l">36</TD><TD>        protected abstract Dialog getCleanupDialog(Shell shell);</TD></TR><TR><TD CLASS="l"><A NAME="2">37</A></TD><TD> </TD></TR><TR><TD CLASS="l">38</TD><TD>        protected abstract IStructuredCleanupProcessor getCleanupProcessor();</TD></TR><TR><TD CLASS="l">39</TD><TD> </TD></TR><TR><TD CLASS="l">40</TD><TD>        public void run() {</TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>                if (getTextEditor() instanceof StructuredTextEditor) {</TD></TR><TR CLASS="z"><TD CLASS="l">42</TD><TD>                        final StructuredTextEditor editor = (StructuredTextEditor) getTextEditor();</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">43</A></TD><TD>                        Dialog cleanupDialog = getCleanupDialog(editor.getSite().getShell());</TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>                        if (cleanupDialog != null) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="5">45</A></TD><TD>                                if (cleanupDialog.open() == Window.OK) {</TD></TR><TR><TD CLASS="l">46</TD><TD>                                        // setup runnable</TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>                                        Runnable runnable = new Runnable() {</TD></TR><TR><TD CLASS="l">48</TD><TD>                                                public void run() {</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>                                                        IStructuredCleanupProcessor cleanupProcessor = getCleanupProcessor();</TD></TR><TR CLASS="z"><TD CLASS="l">50</TD><TD>                                                        if (cleanupProcessor != null)</TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>                                                                cleanupProcessor.cleanupModel(editor.getModel());</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">53</TD><TD>                                        };</TD></TR><TR><TD CLASS="l">54</TD><TD> </TD></TR><TR><TD CLASS="l">55</TD><TD>                                        // TODO: make independent of 'model'.</TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>                                        IStructuredModel model = editor.getModel();</TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>                                        if (model != null) {</TD></TR><TR><TD CLASS="l">58</TD><TD>                                                try {</TD></TR><TR><TD CLASS="l">59</TD><TD>                                                        // begin recording</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                                                        ITextSelection selection = (ITextSelection) editor.getSelectionProvider().getSelection();</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                                                        model.beginRecording(this, SSEUIMessages.Cleanup_Document_UI_, SSEUIMessages.Cleanup_Document_UI_, selection.getOffset(), selection.getLength()); //$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR><TD CLASS="l">62</TD><TD> </TD></TR><TR><TD CLASS="l">63</TD><TD>                                                        // tell the model that we are about to make a big</TD></TR><TR><TD CLASS="l">64</TD><TD>                                                        // model change</TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>                                                        model.aboutToChangeModel();</TD></TR><TR><TD CLASS="l">66</TD><TD> </TD></TR><TR><TD CLASS="l">67</TD><TD>                                                        // run</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>                                                        BusyIndicator.showWhile(editor.getTextViewer().getControl().getDisplay(), runnable);</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                                                } finally {</TD></TR><TR><TD CLASS="l">70</TD><TD>                                                        // tell the model that we are done with the big</TD></TR><TR><TD CLASS="l">71</TD><TD>                                                        // model</TD></TR><TR><TD CLASS="l">72</TD><TD>                                                        // change</TD></TR><TR CLASS="z"><TD CLASS="l">73</TD><TD>                                                        model.changedModel();</TD></TR><TR><TD CLASS="l">74</TD><TD> </TD></TR><TR><TD CLASS="l">75</TD><TD>                                                        // end recording</TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>                                                        ITextSelection selection = (ITextSelection) editor.getSelectionProvider().getSelection();</TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>                                                        model.endRecording(this, selection.getOffset(), selection.getLength());</TD></TR><TR CLASS="z"><TD CLASS="l">78</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">79</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">80</TD><TD>                                }</TD></TR><TR><TD CLASS="l">81</TD><TD> </TD></TR><TR><TD CLASS="l">82</TD><TD>                        }</TD></TR><TR><TD CLASS="l">83</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">84</TD><TD>        }</TD></TR><TR><TD CLASS="l">85</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="a.html">org.eclipse.wst.sse.ui.internal.actions</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/106.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/106.html
deleted file mode 100644
index 6cd2c79..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/106.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="a.html">org.eclipse.wst.sse.ui.internal.actions</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">FormatActionDelegate.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>FormatActionDelegate.java</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/532)</TD><TD CLASS="h">0%   (0/112)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">FormatActionDelegate</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/440)</TD><TD CLASS="h">0%   (0/95)</TD></TR><TR><TD CLASS="f"><A HREF="#0">FormatActionDelegate (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">format (IProgressMonitor, IFile): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/133)</TD><TD CLASS="h">0%   (0/24)</TD></TR><TR><TD CLASS="f"><A HREF="#3">format (IProgressMonitor, IResource): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/166)</TD><TD CLASS="h">0%   (0/34)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">getDisplay (): Display</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#5">getFormatProcessor (String): IStructuredFormatProcessor</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">getJob (): Job</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#7">process (IProgressMonitor, IResource): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/47)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">processorAvailable (IResource): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/65)</TD><TD CLASS="h">0%   (0/22)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#9">FormatActionDelegate$1</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/20)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#9">FormatActionDelegate$1 (FormatActionDelegate, IProgressMonitor, IFile): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#b">run (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#c">FormatActionDelegate$FormatJob</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/72)</TD><TD CLASS="h">0%   (0/14)</TD></TR><TR><TD CLASS="f"><A HREF="#c">FormatActionDelegate$FormatJob (FormatActionDelegate, String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#e">run (IProgressMonitor): IStatus</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/65)</TD><TD CLASS="h">0%   (0/12)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR CLASS="z"><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2008 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.actions;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.io.IOException;</TD></TR><TR><TD CLASS="l">16</TD><TD> </TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.core.filebuffers.FileBuffers;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.core.filebuffers.ITextFileBuffer;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.core.filebuffers.ITextFileBufferManager;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.core.filebuffers.LocationKind;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.core.resources.IContainer;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.core.resources.IFile;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.core.resources.IResource;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.core.runtime.CoreException;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.core.runtime.IProgressMonitor;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.core.runtime.IStatus;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.core.runtime.MultiStatus;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.core.runtime.Status;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.core.runtime.SubProgressMonitor;</TD></TR><TR><TD CLASS="l">30</TD><TD>import org.eclipse.core.runtime.content.IContentDescription;</TD></TR><TR><TD CLASS="l">31</TD><TD>import org.eclipse.core.runtime.content.IContentType;</TD></TR><TR><TD CLASS="l">32</TD><TD>import org.eclipse.core.runtime.jobs.Job;</TD></TR><TR><TD CLASS="l">33</TD><TD>import org.eclipse.osgi.util.NLS;</TD></TR><TR><TD CLASS="l">34</TD><TD>import org.eclipse.swt.widgets.Display;</TD></TR><TR><TD CLASS="l">35</TD><TD>import org.eclipse.ui.PlatformUI;</TD></TR><TR><TD CLASS="l">36</TD><TD>import org.eclipse.wst.sse.core.internal.exceptions.MalformedInputExceptionWithDetail;</TD></TR><TR><TD CLASS="l">37</TD><TD>import org.eclipse.wst.sse.core.internal.format.IStructuredFormatProcessor;</TD></TR><TR><TD CLASS="l">38</TD><TD>import org.eclipse.wst.sse.ui.internal.FormatProcessorsExtensionReader;</TD></TR><TR><TD CLASS="l"><A NAME="0">39</A></TD><TD>import org.eclipse.wst.sse.ui.internal.Logger;</TD></TR><TR><TD CLASS="l">40</TD><TD>import org.eclipse.wst.sse.ui.internal.SSEUIMessages;</TD></TR><TR><TD CLASS="l">41</TD><TD>import org.eclipse.wst.sse.ui.internal.SSEUIPlugin;</TD></TR><TR><TD CLASS="l">42</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">43</TD><TD>public class FormatActionDelegate extends ResourceActionDelegate {</TD></TR><TR><TD CLASS="l"><A NAME="c">44</A></TD><TD> </TD></TR><TR><TD CLASS="l">45</TD><TD>        class FormatJob extends Job {</TD></TR><TR><TD CLASS="l">46</TD><TD> </TD></TR><TR><TD CLASS="l">47</TD><TD>                public FormatJob(String name) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="e">48</A></TD><TD>                        super(name);</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>                }</TD></TR><TR><TD CLASS="l">50</TD><TD> </TD></TR><TR><TD CLASS="l">51</TD><TD>                protected IStatus run(IProgressMonitor monitor) {</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                        IStatus status = Status.OK_STATUS;</TD></TR><TR><TD CLASS="l">53</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">54</TD><TD>                        Object[] elements = fSelection.toArray();</TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                        monitor.beginTask(&#34;&#34;, elements.length); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>                        for (int i = 0; i &lt; elements.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>                                if (elements[i] instanceof IResource) {</TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>                                        process(new SubProgressMonitor(monitor, 1), (IResource) elements[i]);</TD></TR><TR><TD CLASS="l">59</TD><TD>                                }</TD></TR><TR><TD CLASS="l">60</TD><TD>                                else {</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                                        monitor.worked(1);</TD></TR><TR><TD CLASS="l">62</TD><TD>                                }</TD></TR><TR><TD CLASS="l">63</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                        monitor.done();</TD></TR><TR><TD CLASS="l">65</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                        if (fErrorStatus.getChildren().length &gt; 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>                                status = fErrorStatus;</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>                                fErrorStatus = new MultiStatus(SSEUIPlugin.ID, IStatus.ERROR, SSEUIMessages.FormatActionDelegate_errorStatusMessage, null); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">69</TD><TD>                        }</TD></TR><TR><TD CLASS="l">70</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>                        return status;</TD></TR><TR><TD CLASS="l">72</TD><TD>                }</TD></TR><TR><TD CLASS="l">73</TD><TD> </TD></TR><TR><TD CLASS="l">74</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="2">75</A></TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>        private MultiStatus fErrorStatus = new MultiStatus(SSEUIPlugin.ID, IStatus.ERROR, SSEUIMessages.FormatActionDelegate_errorStatusMessage, null); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">77</TD><TD> </TD></TR><TR><TD CLASS="l">78</TD><TD>        protected void format(IProgressMonitor monitor, IFile file) {</TD></TR><TR CLASS="z"><TD CLASS="l">79</TD><TD>                if(monitor == null || monitor.isCanceled())</TD></TR><TR CLASS="z"><TD CLASS="l">80</TD><TD>                        return;</TD></TR><TR><TD CLASS="l">81</TD><TD>                </TD></TR><TR><TD CLASS="l">82</TD><TD>                try {</TD></TR><TR CLASS="z"><TD CLASS="l">83</TD><TD>                        monitor.beginTask(&#34;&#34;, 100);</TD></TR><TR CLASS="z"><TD CLASS="l">84</TD><TD>                        IContentDescription contentDescription = file.getContentDescription();</TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>                        monitor.worked(5);</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                        if (contentDescription != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>                                IContentType contentType = contentDescription.getContentType();</TD></TR><TR CLASS="z"><TD CLASS="l">88</TD><TD>                                IStructuredFormatProcessor formatProcessor = getFormatProcessor(contentType.getId());</TD></TR><TR CLASS="z"><TD CLASS="l">89</TD><TD>                                if (formatProcessor != null &amp;&amp; (monitor == null || !monitor.isCanceled())) {</TD></TR><TR CLASS="z"><TD CLASS="l">90</TD><TD>                                        String message = NLS.bind(SSEUIMessages.FormatActionDelegate_3, new String[]{file.getFullPath().toString().substring(1)});                                        monitor.subTask(message);</TD></TR><TR CLASS="z"><TD CLASS="l">91</TD><TD>                                        formatProcessor.setProgressMonitor(monitor);</TD></TR><TR CLASS="z"><TD CLASS="l">92</TD><TD>                                        formatProcessor.formatFile(file);</TD></TR><TR><TD CLASS="l">93</TD><TD>                                }</TD></TR><TR><TD CLASS="l">94</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">95</TD><TD>                        monitor.worked(95);</TD></TR><TR CLASS="z"><TD CLASS="l">96</TD><TD>                        monitor.done();</TD></TR><TR CLASS="z"><TD CLASS="l">97</TD><TD>                } catch (MalformedInputExceptionWithDetail e) {</TD></TR><TR CLASS="z"><TD CLASS="l">98</TD><TD>                        String message = NLS.bind(SSEUIMessages.FormatActionDelegate_5, new String[]{file.getFullPath().toString()});</TD></TR><TR CLASS="z"><TD CLASS="l">99</TD><TD>                        fErrorStatus.add(new Status(IStatus.ERROR, SSEUIPlugin.ID, IStatus.ERROR, message, e));</TD></TR><TR CLASS="z"><TD CLASS="l">100</TD><TD>                } catch (IOException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">101</TD><TD>                        String message = NLS.bind(SSEUIMessages.FormatActionDelegate_4, new String[]{file.getFullPath().toString()});</TD></TR><TR CLASS="z"><TD CLASS="l">102</TD><TD>                        fErrorStatus.add(new Status(IStatus.ERROR, SSEUIPlugin.ID, IStatus.ERROR, message, e));</TD></TR><TR CLASS="z"><TD CLASS="l">103</TD><TD>                } catch (CoreException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">104</TD><TD>                        String message = NLS.bind(SSEUIMessages.FormatActionDelegate_4, new String[]{file.getFullPath().toString()});</TD></TR><TR CLASS="z"><TD CLASS="l">105</TD><TD>                        fErrorStatus.add(new Status(IStatus.ERROR, SSEUIPlugin.ID, IStatus.ERROR, message, e));</TD></TR><TR><TD CLASS="l">106</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">107</TD><TD>        }</TD></TR><TR><TD CLASS="l">108</TD><TD>        </TD></TR><TR><TD CLASS="l">109</TD><TD>        private Display getDisplay() {</TD></TR><TR><TD CLASS="l">110</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="4">111</A></TD><TD>                // Note: the workbench should always have a display</TD></TR><TR><TD CLASS="l">112</TD><TD>                // (unless running headless), whereas Display.getCurrent()</TD></TR><TR><TD CLASS="l">113</TD><TD>                // only returns the display if the currently executing thread</TD></TR><TR><TD CLASS="l">114</TD><TD>                // has one.</TD></TR><TR CLASS="z"><TD CLASS="l">115</TD><TD>                if (PlatformUI.isWorkbenchRunning())</TD></TR><TR CLASS="z"><TD CLASS="l">116</TD><TD>                        return PlatformUI.getWorkbench().getDisplay();</TD></TR><TR><TD CLASS="l">117</TD><TD>                else</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">118</A></TD><TD>                        return null;</TD></TR><TR><TD CLASS="l">119</TD><TD>        }</TD></TR><TR><TD CLASS="l">120</TD><TD> </TD></TR><TR><TD CLASS="l">121</TD><TD>        protected void format(final IProgressMonitor monitor, IResource resource) {</TD></TR><TR CLASS="z"><TD CLASS="l">122</TD><TD>                if (resource instanceof IFile) {</TD></TR><TR CLASS="z"><TD CLASS="l">123</TD><TD>                        final IFile file = (IFile) resource;</TD></TR><TR><TD CLASS="l">124</TD><TD>                        </TD></TR><TR><TD CLASS="l">125</TD><TD>                        // BUG 178598 - If the resource is shared, and it's possible to</TD></TR><TR><TD CLASS="l">126</TD><TD>                        // get the workbench Display, the UI thread is asked to execute the</TD></TR><TR><TD CLASS="l">127</TD><TD>                        // format of the file when it can</TD></TR><TR><TD CLASS="l">128</TD><TD>                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">129</TD><TD>                                ITextFileBufferManager manager= FileBuffers.getTextFileBufferManager();</TD></TR><TR CLASS="z"><TD CLASS="l">130</TD><TD>                                ITextFileBuffer buffer = null;</TD></TR><TR><TD CLASS="l">131</TD><TD>                                </TD></TR><TR><TD CLASS="l">132</TD><TD>                                try {</TD></TR><TR CLASS="z"><TD CLASS="l">133</TD><TD>                                        if(manager != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">134</TD><TD>                                                manager.connect(file.getFullPath(), LocationKind.IFILE, monitor);</TD></TR><TR CLASS="z"><TD CLASS="l">135</TD><TD>                                                buffer = manager.getTextFileBuffer(resource.getFullPath(), LocationKind.IFILE);</TD></TR><TR><TD CLASS="l"><A NAME="9">136</A></TD><TD>                                        }</TD></TR><TR><TD CLASS="l">137</TD><TD>                                        </TD></TR><TR CLASS="z"><TD CLASS="l">138</TD><TD>                                        if(buffer != null &amp;&amp; buffer.isShared()) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="b">139</A></TD><TD>                                                Display display = getDisplay();</TD></TR><TR CLASS="z"><TD CLASS="l">140</TD><TD>                                                display.syncExec(new Runnable() {</TD></TR><TR><TD CLASS="l">141</TD><TD>                                                        public void run() {</TD></TR><TR CLASS="z"><TD CLASS="l">142</TD><TD>                                                                format(monitor, file);</TD></TR><TR CLASS="z"><TD CLASS="l">143</TD><TD>                                                        }</TD></TR><TR><TD CLASS="l">144</TD><TD>                                                });</TD></TR><TR><TD CLASS="l">145</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">146</TD><TD>                                        else</TD></TR><TR CLASS="z"><TD CLASS="l">147</TD><TD>                                                format(monitor, file);</TD></TR><TR><TD CLASS="l">148</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">149</TD><TD>                                finally {</TD></TR><TR CLASS="z"><TD CLASS="l">150</TD><TD>                                        if(manager != null)</TD></TR><TR CLASS="z"><TD CLASS="l">151</TD><TD>                                                manager.disconnect(file.getFullPath(), LocationKind.IFILE, new SubProgressMonitor(monitor, 1));</TD></TR><TR CLASS="z"><TD CLASS="l">152</TD><TD>                                }</TD></TR><TR><TD CLASS="l">153</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">154</TD><TD>                        catch(CoreException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">155</TD><TD>                                String message = NLS.bind(SSEUIMessages.FormatActionDelegate_4, new String[]{file.getFullPath().toString()});</TD></TR><TR CLASS="z"><TD CLASS="l">156</TD><TD>                                fErrorStatus.add(new Status(IStatus.ERROR, SSEUIPlugin.ID, IStatus.ERROR, message, e));</TD></TR><TR><TD CLASS="l">157</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">158</TD><TD>                        finally {</TD></TR><TR CLASS="z"><TD CLASS="l">159</TD><TD>                                if(monitor != null)</TD></TR><TR CLASS="z"><TD CLASS="l">160</TD><TD>                                        monitor.done();</TD></TR><TR CLASS="z"><TD CLASS="l">161</TD><TD>                        }</TD></TR><TR><TD CLASS="l">162</TD><TD>                        </TD></TR><TR CLASS="z"><TD CLASS="l">163</TD><TD>                } else if (resource instanceof IContainer) {</TD></TR><TR CLASS="z"><TD CLASS="l">164</TD><TD>                        IContainer container = (IContainer) resource;</TD></TR><TR><TD CLASS="l">165</TD><TD>                        </TD></TR><TR><TD CLASS="l">166</TD><TD>                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">167</TD><TD>                                IResource[] members = container.members();</TD></TR><TR CLASS="z"><TD CLASS="l">168</TD><TD>                                monitor.beginTask(&#34;&#34;, members.length);</TD></TR><TR CLASS="z"><TD CLASS="l">169</TD><TD>                                for (int i = 0; i &lt; members.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">170</TD><TD>                                        if (monitor != null &amp;&amp; !monitor.isCanceled())</TD></TR><TR CLASS="z"><TD CLASS="l">171</TD><TD>                                                format(new SubProgressMonitor(monitor, 1), members[i]);</TD></TR><TR><TD CLASS="l">172</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">173</TD><TD>                                monitor.done();</TD></TR><TR CLASS="z"><TD CLASS="l">174</TD><TD>                        } catch (CoreException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">175</TD><TD>                                String message = NLS.bind(SSEUIMessages.FormatActionDelegate_4, new String[]{resource.getFullPath().toString()});</TD></TR><TR CLASS="z"><TD CLASS="l">176</TD><TD>                                fErrorStatus.add(new Status(IStatus.ERROR, SSEUIPlugin.ID, IStatus.ERROR, message, e));</TD></TR><TR><TD CLASS="l">177</TD><TD>                        }</TD></TR><TR><TD CLASS="l"><A NAME="5">178</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">179</TD><TD>        }</TD></TR><TR><TD CLASS="l">180</TD><TD> </TD></TR><TR><TD CLASS="l">181</TD><TD>        protected IStructuredFormatProcessor getFormatProcessor(String contentTypeId) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="6">182</A></TD><TD>                return FormatProcessorsExtensionReader.getInstance().getFormatProcessor(contentTypeId);</TD></TR><TR><TD CLASS="l">183</TD><TD>        }</TD></TR><TR><TD CLASS="l">184</TD><TD> </TD></TR><TR><TD CLASS="l">185</TD><TD>        protected Job getJob() {</TD></TR><TR CLASS="z"><TD CLASS="l">186</TD><TD>                return new FormatJob(SSEUIMessages.FormatActionDelegate_jobName); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">187</TD><TD>        }</TD></TR><TR><TD CLASS="l">188</TD><TD> </TD></TR><TR><TD CLASS="l">189</TD><TD>        /*</TD></TR><TR><TD CLASS="l">190</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l">191</TD><TD>         * </TD></TR><TR><TD CLASS="l"><A NAME="7">192</A></TD><TD>         * @see org.eclipse.wst.sse.ui.edit.util.ResourceActionDelegate#process(org.eclipse.core.runtime.IProgressMonitor,</TD></TR><TR><TD CLASS="l">193</TD><TD>         *      org.eclipse.core.resources.IResource)</TD></TR><TR><TD CLASS="l">194</TD><TD>         */</TD></TR><TR><TD CLASS="l">195</TD><TD>        protected void process(IProgressMonitor monitor, IResource resource) {</TD></TR><TR CLASS="z"><TD CLASS="l">196</TD><TD>                monitor.beginTask(&#34;&#34;, 100);</TD></TR><TR CLASS="z"><TD CLASS="l">197</TD><TD>                format(new SubProgressMonitor(monitor, 98), resource);</TD></TR><TR><TD CLASS="l">198</TD><TD> </TD></TR><TR><TD CLASS="l">199</TD><TD>                try {</TD></TR><TR CLASS="z"><TD CLASS="l">200</TD><TD>                        resource.refreshLocal(IResource.DEPTH_INFINITE, new SubProgressMonitor(monitor, 2));</TD></TR><TR CLASS="z"><TD CLASS="l">201</TD><TD>                } catch (CoreException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">202</TD><TD>                        String message = NLS.bind(SSEUIMessages.FormatActionDelegate_4, new String[]{resource.getFullPath().toString()});</TD></TR><TR CLASS="z"><TD CLASS="l">203</TD><TD>                        fErrorStatus.add(new Status(IStatus.ERROR, SSEUIPlugin.ID, IStatus.ERROR, message, e));</TD></TR><TR><TD CLASS="l">204</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">205</TD><TD>                monitor.done();</TD></TR><TR CLASS="z"><TD CLASS="l">206</TD><TD>        }</TD></TR><TR><TD CLASS="l">207</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="8">208</A></TD><TD>        /* (non-Javadoc)</TD></TR><TR><TD CLASS="l">209</TD><TD>         * @see org.eclipse.wst.sse.ui.internal.actions.ResourceActionDelegate#processorAvailable(org.eclipse.core.resources.IResource)</TD></TR><TR><TD CLASS="l">210</TD><TD>         */</TD></TR><TR><TD CLASS="l">211</TD><TD>        protected boolean processorAvailable(IResource resource) {</TD></TR><TR CLASS="z"><TD CLASS="l">212</TD><TD>                boolean result = false;</TD></TR><TR CLASS="z"><TD CLASS="l">213</TD><TD>                if (resource.isAccessible()) {</TD></TR><TR><TD CLASS="l">214</TD><TD>                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">215</TD><TD>                                if (resource instanceof IFile) {</TD></TR><TR CLASS="z"><TD CLASS="l">216</TD><TD>                                        IFile file = (IFile) resource;</TD></TR><TR><TD CLASS="l">217</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">218</TD><TD>                                        IStructuredFormatProcessor formatProcessor = null;</TD></TR><TR CLASS="z"><TD CLASS="l">219</TD><TD>                                        IContentDescription contentDescription = file.getContentDescription();</TD></TR><TR CLASS="z"><TD CLASS="l">220</TD><TD>                                        if (contentDescription != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">221</TD><TD>                                                IContentType contentType = contentDescription.getContentType();</TD></TR><TR CLASS="z"><TD CLASS="l">222</TD><TD>                                                formatProcessor = getFormatProcessor(contentType.getId());</TD></TR><TR><TD CLASS="l">223</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">224</TD><TD>                                        if (formatProcessor != null)</TD></TR><TR CLASS="z"><TD CLASS="l">225</TD><TD>                                                result = true;</TD></TR><TR><TD CLASS="l">226</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">227</TD><TD>                                else if (resource instanceof IContainer) {</TD></TR><TR CLASS="z"><TD CLASS="l">228</TD><TD>                                        IContainer container = (IContainer) resource;</TD></TR><TR><TD CLASS="l">229</TD><TD>                                        IResource[] members;</TD></TR><TR CLASS="z"><TD CLASS="l">230</TD><TD>                                        members = container.members();</TD></TR><TR CLASS="z"><TD CLASS="l">231</TD><TD>                                        for (int i = 0; i &lt; members.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">232</TD><TD>                                                boolean available = processorAvailable(members[i]);</TD></TR><TR><TD CLASS="l">233</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">234</TD><TD>                                                if (available) {</TD></TR><TR CLASS="z"><TD CLASS="l">235</TD><TD>                                                        result = true;</TD></TR><TR CLASS="z"><TD CLASS="l">236</TD><TD>                                                        break;</TD></TR><TR><TD CLASS="l">237</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">238</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">239</TD><TD>                                }</TD></TR><TR><TD CLASS="l">240</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">241</TD><TD>                        catch (CoreException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">242</TD><TD>                                Logger.logException(e);</TD></TR><TR><TD CLASS="l">243</TD><TD>                        }</TD></TR><TR><TD CLASS="l">244</TD><TD>                }</TD></TR><TR><TD CLASS="l">245</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">246</TD><TD>                return result;</TD></TR><TR><TD CLASS="l">247</TD><TD>        }</TD></TR><TR><TD CLASS="l">248</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="a.html">org.eclipse.wst.sse.ui.internal.actions</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/107.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/107.html
deleted file mode 100644
index 8edfce8..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/107.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="a.html">org.eclipse.wst.sse.ui.internal.actions</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">ResourceActionDelegate.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>ResourceActionDelegate.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/112)</TD><TD CLASS="h">0%   (0/32)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">ResourceActionDelegate</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/112)</TD><TD CLASS="h">0%   (0/32)</TD></TR><TR><TD CLASS="f"><A HREF="#0">ResourceActionDelegate (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">getActiveProgressService (): IWorkbenchSiteProgressService</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/41)</TD><TD CLASS="h">0%   (0/10)</TD></TR><TR><TD CLASS="f"><A HREF="#3">getJob (): Job</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">processorAvailable (IResource): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#5">run (IAction): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/24)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">selectionChanged (IAction, ISelection): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/40)</TD><TD CLASS="h">0%   (0/11)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2005 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.actions;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.core.resources.IResource;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.core.runtime.jobs.Job;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.jface.action.IAction;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.jface.viewers.ISelection;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.jface.viewers.IStructuredSelection;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.ui.IActionDelegate;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.ui.IWorkbenchPage;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.ui.IWorkbenchPart;</TD></TR><TR><TD CLASS="l"><A NAME="0">23</A></TD><TD>import org.eclipse.ui.IWorkbenchWindow;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.ui.PlatformUI;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.ui.progress.IWorkbenchSiteProgressService;</TD></TR><TR><TD CLASS="l">26</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">27</A></TD><TD>public class ResourceActionDelegate implements IActionDelegate {</TD></TR><TR><TD CLASS="l">28</TD><TD>        protected IStructuredSelection fSelection;</TD></TR><TR><TD CLASS="l">29</TD><TD> </TD></TR><TR><TD CLASS="l">30</TD><TD>        private IWorkbenchSiteProgressService getActiveProgressService() {</TD></TR><TR CLASS="z"><TD CLASS="l">31</TD><TD>                IWorkbenchSiteProgressService service = null;</TD></TR><TR CLASS="z"><TD CLASS="l">32</TD><TD>                if (PlatformUI.isWorkbenchRunning()) {</TD></TR><TR CLASS="z"><TD CLASS="l">33</TD><TD>                        IWorkbenchWindow activeWorkbenchWindow = PlatformUI.getWorkbench().getActiveWorkbenchWindow();</TD></TR><TR CLASS="z"><TD CLASS="l">34</TD><TD>                        if (activeWorkbenchWindow != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">35</TD><TD>                                IWorkbenchPage activePage = activeWorkbenchWindow.getActivePage();</TD></TR><TR CLASS="z"><TD CLASS="l">36</TD><TD>                                if (activePage != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">37</TD><TD>                                        IWorkbenchPart activePart = activePage.getActivePart();</TD></TR><TR CLASS="z"><TD CLASS="l">38</TD><TD>                                        if (activePart != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">39</TD><TD>                                                service = (IWorkbenchSiteProgressService) activePart.getSite().getAdapter(IWorkbenchSiteProgressService.class);</TD></TR><TR><TD CLASS="l">40</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">41</TD><TD>                                }</TD></TR><TR><TD CLASS="l">42</TD><TD>                        }</TD></TR><TR><TD CLASS="l">43</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>                return service;</TD></TR><TR><TD CLASS="l">45</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="3">46</A></TD><TD> </TD></TR><TR><TD CLASS="l">47</TD><TD>        protected Job getJob() {</TD></TR><TR><TD CLASS="l">48</TD><TD>                // ResourceActionDelegate does not create background job</TD></TR><TR><TD CLASS="l">49</TD><TD>                // subclass creates the background job for the action</TD></TR><TR CLASS="z"><TD CLASS="l">50</TD><TD>                return null;</TD></TR><TR><TD CLASS="l">51</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="4">52</A></TD><TD> </TD></TR><TR><TD CLASS="l">53</TD><TD>        protected boolean processorAvailable(IResource resource) {</TD></TR><TR><TD CLASS="l">54</TD><TD>                // ResourceActionDelegate returns false by default</TD></TR><TR><TD CLASS="l">55</TD><TD>                // subclass returns true if processor is available; false otherwise</TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>                return false;</TD></TR><TR><TD CLASS="l">57</TD><TD>        }</TD></TR><TR><TD CLASS="l">58</TD><TD> </TD></TR><TR><TD CLASS="l">59</TD><TD>        /*</TD></TR><TR><TD CLASS="l">60</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="5">61</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">62</TD><TD>         * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)</TD></TR><TR><TD CLASS="l">63</TD><TD>         */</TD></TR><TR><TD CLASS="l">64</TD><TD>        public void run(IAction action) {</TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>                if (fSelection != null &amp;&amp; !fSelection.isEmpty()) {</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                        Job job = getJob();</TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>                        if (job != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>                                IWorkbenchSiteProgressService progressService = getActiveProgressService();</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                                if (progressService != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">70</TD><TD>                                        progressService.schedule(job);</TD></TR><TR><TD CLASS="l">71</TD><TD>                                }</TD></TR><TR><TD CLASS="l">72</TD><TD>                                else {</TD></TR><TR CLASS="z"><TD CLASS="l">73</TD><TD>                                        job.schedule();</TD></TR><TR><TD CLASS="l">74</TD><TD>                                }</TD></TR><TR><TD CLASS="l">75</TD><TD>                        }</TD></TR><TR><TD CLASS="l">76</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>        }</TD></TR><TR><TD CLASS="l">78</TD><TD> </TD></TR><TR><TD CLASS="l">79</TD><TD>        /*</TD></TR><TR><TD CLASS="l">80</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l">81</TD><TD>         * </TD></TR><TR><TD CLASS="l"><A NAME="6">82</A></TD><TD>         * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction,</TD></TR><TR><TD CLASS="l">83</TD><TD>         *      org.eclipse.jface.viewers.ISelection)</TD></TR><TR><TD CLASS="l">84</TD><TD>         */</TD></TR><TR><TD CLASS="l">85</TD><TD>        public void selectionChanged(IAction action, ISelection selection) {</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                if (selection instanceof IStructuredSelection) {</TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>                        fSelection = (IStructuredSelection) selection;</TD></TR><TR CLASS="z"><TD CLASS="l">88</TD><TD>                        boolean available = false;</TD></TR><TR><TD CLASS="l">89</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">90</TD><TD>                        Object[] elements = fSelection.toArray();</TD></TR><TR CLASS="z"><TD CLASS="l">91</TD><TD>                        for (int i = 0; i &lt; elements.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">92</TD><TD>                                if (elements[i] instanceof IResource) {</TD></TR><TR CLASS="z"><TD CLASS="l">93</TD><TD>                                        available = processorAvailable((IResource) elements[i]);</TD></TR><TR><TD CLASS="l">94</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">95</TD><TD>                                        if (available)</TD></TR><TR CLASS="z"><TD CLASS="l">96</TD><TD>                                                break;</TD></TR><TR><TD CLASS="l">97</TD><TD>                                }</TD></TR><TR><TD CLASS="l">98</TD><TD>                        }</TD></TR><TR><TD CLASS="l">99</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">100</TD><TD>                        action.setEnabled(available);</TD></TR><TR><TD CLASS="l">101</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">102</TD><TD>        }</TD></TR><TR><TD CLASS="l">103</TD><TD> </TD></TR><TR><TD CLASS="l">104</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="a.html">org.eclipse.wst.sse.ui.internal.actions</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/108.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/108.html
deleted file mode 100644
index db0190c..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/108.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="b.html">org.eclipse.wst.sse.ui.internal.contentoutline</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">ConfigurableContentOutlinePage.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>ConfigurableContentOutlinePage.java</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/60)</TD><TD CLASS="h">0%   (0/1517)</TD><TD CLASS="h">0%   (0/311)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">ConfigurableContentOutlinePage</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/19)</TD><TD CLASS="h">0%   (0/978)</TD><TD CLASS="h">0%   (0/208)</TD></TR><TR><TD CLASS="f"><A HREF="#0">&lt;static initializer&gt;</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">ConfigurableContentOutlinePage (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/37)</TD><TD CLASS="h">0%   (0/11)</TD></TR><TR><TD CLASS="f"><A HREF="#3">addDoubleClickListener (IDoubleClickListener): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/14)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">computeContextMenuID (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/17)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#5">createControl (Composite): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/79)</TD><TD CLASS="h">0%   (0/17)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">dispose (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/57)</TD><TD CLASS="h">0%   (0/17)</TD></TR><TR><TD CLASS="f"><A HREF="#7">getAdapter (Class): Object</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/82)</TD><TD CLASS="h">0%   (0/9)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">getConfiguration (): ContentOutlineConfiguration</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#9">getSelection (): ISelection</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">getSelectionServiceListener (): ISelectionListener</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#b">init (IPageSite): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#c">removeDoubleClickListener (IDoubleClickListener): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#d">selectionChanged (SelectionChangedEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#e">setConfiguration (ContentOutlineConfiguration): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/434)</TD><TD CLASS="h">0%   (0/78)</TD></TR><TR><TD CLASS="f"><A HREF="#f">setEditorPart (IEditorPart): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#10">setInput (Object): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/18)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#11">setInputContentTypeIdentifier (String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#12">updateContextMenuId (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/131)</TD><TD CLASS="h">0%   (0/29)</TD></TR><TR><TD CLASS="f"><A HREF="#13">updateStatusLine (IStatusLineManager, ISelection): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/41)</TD><TD CLASS="h">0%   (0/11)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">ConfigurableContentOutlinePage$1</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#0">ConfigurableContentOutlinePage$1 (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#16">getContentProvider (TreeViewer): IContentProvider</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#16">ConfigurableContentOutlinePage$2</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/16)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR><TD CLASS="f"><A HREF="#16">ConfigurableContentOutlinePage$2 (ConfigurableContentOutlinePage$1): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#19">dispose (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#1a">getChildren (Object): Object []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#1b">getElements (Object): Object []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#1c">getParent (Object): Object</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#1d">hasChildren (Object): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#1e">inputChanged (Viewer, Object, Object): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#1f">ConfigurableContentOutlinePage$3</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/18)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#1f">ConfigurableContentOutlinePage$3 (ConfigurableContentOutlinePage$DoubleClickP...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#21">run (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#22">ConfigurableContentOutlinePage$4</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/18)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#22">ConfigurableContentOutlinePage$4 (ConfigurableContentOutlinePage$SelectionPro...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#24">run (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#25">ConfigurableContentOutlinePage$5</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/21)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#25">ConfigurableContentOutlinePage$5 (ConfigurableContentOutlinePage, IEditorPart...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#27">getShowInContext (): ShowInContext</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#28">ConfigurableContentOutlinePage$AdditionGroupAdder</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/54)</TD><TD CLASS="h">0%   (0/9)</TD></TR><TR><TD CLASS="f"><A HREF="#28">ConfigurableContentOutlinePage$AdditionGroupAdder (ConfigurableContentOutline...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2a">menuAboutToShow (IMenuManager): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/48)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#2b">ConfigurableContentOutlinePage$DoubleClickProvider</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/116)</TD><TD CLASS="h">0%   (0/23)</TD></TR><TR><TD CLASS="f"><A HREF="#2b">ConfigurableContentOutlinePage$DoubleClickProvider (ConfigurableContentOutlin...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2d">addDoubleClickListener (IDoubleClickListener): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/38)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR><TD CLASS="f"><A HREF="#2e">doubleClick (DoubleClickEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2f">fireDoubleClickEvent (DoubleClickEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/23)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#30">removeDoubleClickListener (IDoubleClickListener): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/42)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#31">ConfigurableContentOutlinePage$PostSelectionServiceListener</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/99)</TD><TD CLASS="h">0%   (0/15)</TD></TR><TR><TD CLASS="f"><A HREF="#31">ConfigurableContentOutlinePage$PostSelectionServiceListener (ConfigurableCont...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#33">selectionChanged (IWorkbenchPart, ISelection): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/93)</TD><TD CLASS="h">0%   (0/14)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#34">ConfigurableContentOutlinePage$SelectionProvider</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/112)</TD><TD CLASS="h">0%   (0/30)</TD></TR><TR><TD CLASS="f"><A HREF="#34">ConfigurableContentOutlinePage$SelectionProvider (ConfigurableContentOutlineP...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/33)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#36">addPostSelectionChangedListener (ISelectionChangedListener): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#37">addSelectionChangedListener (ISelectionChangedListener): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#38">fireSelectionChanged (SelectionChangedEvent, ListenerList): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/30)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR><TD CLASS="f"><A HREF="#39">getPostSelectionChangedListener (): ISelectionChangedListener</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#3a">getSelection (): ISelection</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#3b">getSelectionChangedListener (): ISelectionChangedListener</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#3c">isFiringSelection (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#3d">removePostSelectionChangedListener (ISelectionChangedListener): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#3e">removeSelectionChangedListener (ISelectionChangedListener): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#3f">setSelection (ISelection): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#40">ConfigurableContentOutlinePage$SelectionProvider$PostSelectionChangedListener</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/35)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#40">ConfigurableContentOutlinePage$SelectionProvider$PostSelectionChangedListener...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#42">selectionChanged (SelectionChangedEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/29)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#43">ConfigurableContentOutlinePage$SelectionProvider$SelectionChangedListener</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/23)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#43">ConfigurableContentOutlinePage$SelectionProvider$SelectionChangedListener (Co...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#45">selectionChanged (SelectionChangedEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/17)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#46">ConfigurableContentOutlinePage$ShowInTarget</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/19)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#46">ConfigurableContentOutlinePage$ShowInTarget (ConfigurableContentOutlinePage):...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#48">show (ShowInContext): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/3)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR CLASS="z"><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2008 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.contentoutline;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.util.ArrayList;</TD></TR><TR><TD CLASS="l">16</TD><TD>import java.util.Arrays;</TD></TR><TR><TD CLASS="l">17</TD><TD>import java.util.List;</TD></TR><TR><TD CLASS="l">18</TD><TD> </TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.core.runtime.IAdaptable;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.core.runtime.ListenerList;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.core.runtime.Platform;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.core.runtime.SafeRunner;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.jface.action.GroupMarker;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.jface.action.IContributionItem;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.jface.action.IContributionManager;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.jface.action.IMenuListener;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.jface.action.IMenuManager;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.jface.action.IStatusLineManager;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.jface.action.MenuManager;</TD></TR><TR><TD CLASS="l">30</TD><TD>import org.eclipse.jface.util.DelegatingDragAdapter;</TD></TR><TR><TD CLASS="l">31</TD><TD>import org.eclipse.jface.util.DelegatingDropAdapter;</TD></TR><TR><TD CLASS="l">32</TD><TD>import org.eclipse.jface.util.SafeRunnable;</TD></TR><TR><TD CLASS="l">33</TD><TD>import org.eclipse.jface.util.TransferDragSourceListener;</TD></TR><TR><TD CLASS="l">34</TD><TD>import org.eclipse.jface.util.TransferDropTargetListener;</TD></TR><TR><TD CLASS="l">35</TD><TD>import org.eclipse.jface.viewers.ColumnViewerToolTipSupport;</TD></TR><TR><TD CLASS="l">36</TD><TD>import org.eclipse.jface.viewers.DoubleClickEvent;</TD></TR><TR><TD CLASS="l">37</TD><TD>import org.eclipse.jface.viewers.IContentProvider;</TD></TR><TR><TD CLASS="l">38</TD><TD>import org.eclipse.jface.viewers.IDoubleClickListener;</TD></TR><TR><TD CLASS="l">39</TD><TD>import org.eclipse.jface.viewers.ILabelProvider;</TD></TR><TR><TD CLASS="l">40</TD><TD>import org.eclipse.jface.viewers.IPostSelectionProvider;</TD></TR><TR><TD CLASS="l">41</TD><TD>import org.eclipse.jface.viewers.ISelection;</TD></TR><TR><TD CLASS="l">42</TD><TD>import org.eclipse.jface.viewers.ISelectionChangedListener;</TD></TR><TR><TD CLASS="l">43</TD><TD>import org.eclipse.jface.viewers.IStructuredSelection;</TD></TR><TR><TD CLASS="l">44</TD><TD>import org.eclipse.jface.viewers.ITreeContentProvider;</TD></TR><TR><TD CLASS="l">45</TD><TD>import org.eclipse.jface.viewers.SelectionChangedEvent;</TD></TR><TR><TD CLASS="l">46</TD><TD>import org.eclipse.jface.viewers.StructuredSelection;</TD></TR><TR><TD CLASS="l">47</TD><TD>import org.eclipse.jface.viewers.TreeViewer;</TD></TR><TR><TD CLASS="l">48</TD><TD>import org.eclipse.jface.viewers.Viewer;</TD></TR><TR><TD CLASS="l">49</TD><TD>import org.eclipse.swt.dnd.DND;</TD></TR><TR><TD CLASS="l">50</TD><TD>import org.eclipse.swt.dnd.DragSource;</TD></TR><TR><TD CLASS="l">51</TD><TD>import org.eclipse.swt.dnd.DropTarget;</TD></TR><TR><TD CLASS="l">52</TD><TD>import org.eclipse.swt.dnd.Transfer;</TD></TR><TR><TD CLASS="l">53</TD><TD>import org.eclipse.swt.events.KeyListener;</TD></TR><TR><TD CLASS="l">54</TD><TD>import org.eclipse.swt.graphics.Image;</TD></TR><TR><TD CLASS="l">55</TD><TD>import org.eclipse.swt.widgets.Composite;</TD></TR><TR><TD CLASS="l">56</TD><TD>import org.eclipse.swt.widgets.Menu;</TD></TR><TR><TD CLASS="l">57</TD><TD>import org.eclipse.ui.IEditorPart;</TD></TR><TR><TD CLASS="l">58</TD><TD>import org.eclipse.ui.ISelectionListener;</TD></TR><TR><TD CLASS="l">59</TD><TD>import org.eclipse.ui.IWorkbenchActionConstants;</TD></TR><TR><TD CLASS="l">60</TD><TD>import org.eclipse.ui.IWorkbenchPage;</TD></TR><TR><TD CLASS="l">61</TD><TD>import org.eclipse.ui.IWorkbenchPart;</TD></TR><TR><TD CLASS="l">62</TD><TD>import org.eclipse.ui.part.IPageSite;</TD></TR><TR><TD CLASS="l">63</TD><TD>import org.eclipse.ui.part.IShowInSource;</TD></TR><TR><TD CLASS="l">64</TD><TD>import org.eclipse.ui.part.IShowInTarget;</TD></TR><TR><TD CLASS="l">65</TD><TD>import org.eclipse.ui.part.IShowInTargetList;</TD></TR><TR><TD CLASS="l">66</TD><TD>import org.eclipse.ui.part.ShowInContext;</TD></TR><TR><TD CLASS="l">67</TD><TD>import org.eclipse.ui.views.contentoutline.ContentOutlinePage;</TD></TR><TR><TD CLASS="l">68</TD><TD>import org.eclipse.ui.views.contentoutline.IContentOutlinePage;</TD></TR><TR><TD CLASS="l">69</TD><TD>import org.eclipse.wst.sse.ui.views.contentoutline.ContentOutlineConfiguration;</TD></TR><TR><TD CLASS="l">70</TD><TD> </TD></TR><TR><TD CLASS="l">71</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>public class ConfigurableContentOutlinePage extends ContentOutlinePage implements IAdaptable {</TD></TR><TR><TD CLASS="l">73</TD><TD>        /*</TD></TR><TR><TD CLASS="l"><A NAME="28">74</A></TD><TD>         * Menu listener to create the additions group and add any menu items</TD></TR><TR><TD CLASS="l">75</TD><TD>         * contributed by the configuration; required since the context menu is</TD></TR><TR><TD CLASS="l"><A NAME="2a">76</A></TD><TD>         * cleared every time it is shown</TD></TR><TR><TD CLASS="l">77</TD><TD>         */</TD></TR><TR CLASS="z"><TD CLASS="l">78</TD><TD>        class AdditionGroupAdder implements IMenuListener {</TD></TR><TR><TD CLASS="l">79</TD><TD>                public void menuAboutToShow(IMenuManager manager) {</TD></TR><TR CLASS="z"><TD CLASS="l">80</TD><TD>                        IContributionItem[] items = manager.getItems();</TD></TR><TR CLASS="z"><TD CLASS="l">81</TD><TD>                        if (items.length &gt; 0 &amp;&amp; items[items.length - 1].getId() != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>                                manager.insertAfter(items[items.length - 1].getId(), new GroupMarker(IWorkbenchActionConstants.MB_ADDITIONS));</TD></TR><TR><TD CLASS="l">83</TD><TD>                        }</TD></TR><TR><TD CLASS="l">84</TD><TD>                        else {</TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>                                manager.add(new GroupMarker(IWorkbenchActionConstants.MB_ADDITIONS));</TD></TR><TR><TD CLASS="l">86</TD><TD>                        }</TD></TR><TR><TD CLASS="l">87</TD><TD> </TD></TR><TR><TD CLASS="l">88</TD><TD>                        // add configuration's menu items</TD></TR><TR CLASS="z"><TD CLASS="l">89</TD><TD>                        IMenuListener listener = getConfiguration().getMenuListener(getTreeViewer());</TD></TR><TR CLASS="z"><TD CLASS="l">90</TD><TD>                        if (listener != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">91</TD><TD>                                listener.menuAboutToShow(manager);</TD></TR><TR><TD CLASS="l">92</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">93</TD><TD>                }</TD></TR><TR><TD CLASS="l">94</TD><TD>        }</TD></TR><TR><TD CLASS="l">95</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="2b">96</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">97</TD><TD>         * Provides double-click registration so it can be done before the Control</TD></TR><TR><TD CLASS="l">98</TD><TD>         * is created.</TD></TR><TR><TD CLASS="l">99</TD><TD>         */</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2d">100</A></TD><TD>        class DoubleClickProvider implements IDoubleClickListener {</TD></TR><TR CLASS="z"><TD CLASS="l">101</TD><TD>                private IDoubleClickListener[] listeners = null;</TD></TR><TR><TD CLASS="l">102</TD><TD> </TD></TR><TR><TD CLASS="l">103</TD><TD>                void addDoubleClickListener(IDoubleClickListener newListener) {</TD></TR><TR CLASS="z"><TD CLASS="l">104</TD><TD>                        if (listeners == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">105</TD><TD>                                listeners = new IDoubleClickListener[]{newListener};</TD></TR><TR><TD CLASS="l">106</TD><TD>                        }</TD></TR><TR><TD CLASS="l">107</TD><TD>                        else {</TD></TR><TR CLASS="z"><TD CLASS="l">108</TD><TD>                                IDoubleClickListener[] newListeners = new IDoubleClickListener[listeners.length + 1];</TD></TR><TR CLASS="z"><TD CLASS="l">109</TD><TD>                                System.arraycopy(listeners, 0, newListeners, 0, listeners.length);</TD></TR><TR CLASS="z"><TD CLASS="l">110</TD><TD>                                newListeners[listeners.length] = newListener;</TD></TR><TR CLASS="z"><TD CLASS="l">111</TD><TD>                                listeners = newListeners;</TD></TR><TR><TD CLASS="l"><A NAME="2e">112</A></TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">113</TD><TD>                }</TD></TR><TR><TD CLASS="l">114</TD><TD> </TD></TR><TR><TD CLASS="l">115</TD><TD>                public void doubleClick(DoubleClickEvent event) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2f">116</A></TD><TD>                        fireDoubleClickEvent(event);</TD></TR><TR CLASS="z"><TD CLASS="l">117</TD><TD>                }</TD></TR><TR><TD CLASS="l">118</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="1f">119</A></TD><TD>                private void fireDoubleClickEvent(final DoubleClickEvent event) {</TD></TR><TR CLASS="z"><TD CLASS="l">120</TD><TD>                        IDoubleClickListener[] firingListeners = listeners;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="21">121</A></TD><TD>                        for (int i = 0; i &lt; firingListeners.length; ++i) {</TD></TR><TR CLASS="z"><TD CLASS="l">122</TD><TD>                                final IDoubleClickListener l = firingListeners[i];</TD></TR><TR CLASS="z"><TD CLASS="l">123</TD><TD>                                SafeRunner.run(new SafeRunnable() {</TD></TR><TR><TD CLASS="l">124</TD><TD>                                        public void run() {</TD></TR><TR CLASS="z"><TD CLASS="l">125</TD><TD>                                                l.doubleClick(event);</TD></TR><TR CLASS="z"><TD CLASS="l">126</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">127</TD><TD>                                });</TD></TR><TR><TD CLASS="l"><A NAME="30">128</A></TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">129</TD><TD>                }</TD></TR><TR><TD CLASS="l">130</TD><TD> </TD></TR><TR><TD CLASS="l">131</TD><TD>                void removeDoubleClickListener(IDoubleClickListener oldListener) {</TD></TR><TR CLASS="z"><TD CLASS="l">132</TD><TD>                        if (listeners != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">133</TD><TD>                                if (listeners.length == 1 &amp;&amp; listeners[0].equals(oldListener)) {</TD></TR><TR CLASS="z"><TD CLASS="l">134</TD><TD>                                        listeners = null;</TD></TR><TR><TD CLASS="l">135</TD><TD>                                }</TD></TR><TR><TD CLASS="l">136</TD><TD>                                else {</TD></TR><TR CLASS="z"><TD CLASS="l">137</TD><TD>                                        List newListeners = new ArrayList(Arrays.asList(listeners));</TD></TR><TR CLASS="z"><TD CLASS="l">138</TD><TD>                                        newListeners.remove(oldListener);</TD></TR><TR CLASS="z"><TD CLASS="l">139</TD><TD>                                        listeners = (IDoubleClickListener[]) newListeners.toArray(new IDoubleClickListener[listeners.length - 1]);</TD></TR><TR><TD CLASS="l">140</TD><TD>                                }</TD></TR><TR><TD CLASS="l">141</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">142</TD><TD>                }</TD></TR><TR><TD CLASS="l">143</TD><TD>        }</TD></TR><TR><TD CLASS="l">144</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="31">145</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">146</TD><TD>         * Listens to post selection from the selection service, applying it to</TD></TR><TR><TD CLASS="l">147</TD><TD>         * the tree viewer.</TD></TR><TR><TD CLASS="l"><A NAME="33">148</A></TD><TD>         */</TD></TR><TR CLASS="z"><TD CLASS="l">149</TD><TD>        class PostSelectionServiceListener implements ISelectionListener {</TD></TR><TR><TD CLASS="l">150</TD><TD>                public void selectionChanged(IWorkbenchPart part, ISelection selection) {</TD></TR><TR><TD CLASS="l">151</TD><TD>                        // from selection service</TD></TR><TR CLASS="z"><TD CLASS="l">152</TD><TD>                        if (_DEBUG) {</TD></TR><TR CLASS="z"><TD CLASS="l">153</TD><TD>                                _DEBUG_TIME = System.currentTimeMillis();</TD></TR><TR><TD CLASS="l">154</TD><TD>                        } /*</TD></TR><TR><TD CLASS="l">155</TD><TD>                         * Bug 136310, unless this page is that part's</TD></TR><TR><TD CLASS="l">156</TD><TD>                         * IContentOutlinePage, ignore the selection change</TD></TR><TR><TD CLASS="l">157</TD><TD>                         */</TD></TR><TR CLASS="z"><TD CLASS="l">158</TD><TD>                        if (part == null || part.getAdapter(IContentOutlinePage.class) == ConfigurableContentOutlinePage.this) {</TD></TR><TR CLASS="z"><TD CLASS="l">159</TD><TD>                                ISelection validContentSelection = getConfiguration().getSelection(getTreeViewer(), selection);</TD></TR><TR><TD CLASS="l">160</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">161</TD><TD>                                boolean isLinked = getConfiguration().isLinkedWithEditor(getTreeViewer());</TD></TR><TR CLASS="z"><TD CLASS="l">162</TD><TD>                                if (isLinked) {</TD></TR><TR><TD CLASS="l">163</TD><TD>                                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">164</TD><TD>                                                fIsReceivingSelection = true;</TD></TR><TR CLASS="z"><TD CLASS="l">165</TD><TD>                                                getTreeViewer().setSelection(validContentSelection, true);</TD></TR><TR><TD CLASS="l">166</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">167</TD><TD>                                        finally {</TD></TR><TR CLASS="z"><TD CLASS="l">168</TD><TD>                                                fIsReceivingSelection = false;</TD></TR><TR CLASS="z"><TD CLASS="l">169</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">170</TD><TD>                                }</TD></TR><TR><TD CLASS="l">171</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">172</TD><TD>                        if (_DEBUG) {</TD></TR><TR CLASS="z"><TD CLASS="l">173</TD><TD>                                System.out.println(&#34;(O:&#34; + (System.currentTimeMillis() - _DEBUG_TIME) + &#34;ms) &#34; + part + &#34; : &#34; + selection); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$</TD></TR><TR><TD CLASS="l">174</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">175</TD><TD>                }</TD></TR><TR><TD CLASS="l">176</TD><TD>        }</TD></TR><TR><TD CLASS="l">177</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="34">178</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l"><A NAME="40">179</A></TD><TD>         * Forwards post-selection from the tree viewer to the listeners while</TD></TR><TR><TD CLASS="l">180</TD><TD>         * acting as this page's selection provider.</TD></TR><TR><TD CLASS="l"><A NAME="42">181</A></TD><TD>         */</TD></TR><TR CLASS="z"><TD CLASS="l">182</TD><TD>        private class SelectionProvider implements IPostSelectionProvider {</TD></TR><TR CLASS="z"><TD CLASS="l">183</TD><TD>                private class PostSelectionChangedListener implements ISelectionChangedListener {</TD></TR><TR><TD CLASS="l">184</TD><TD>                        public void selectionChanged(SelectionChangedEvent event) {</TD></TR><TR CLASS="z"><TD CLASS="l">185</TD><TD>                                if (!isFiringSelection() &amp;&amp; !fIsReceivingSelection) {</TD></TR><TR CLASS="z"><TD CLASS="l">186</TD><TD>                                        fireSelectionChanged(event, postListeners);</TD></TR><TR CLASS="z"><TD CLASS="l">187</TD><TD>                                        updateStatusLine(getSite().getActionBars().getStatusLineManager(), event.getSelection());</TD></TR><TR><TD CLASS="l"><A NAME="43">188</A></TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">189</TD><TD>                        }</TD></TR><TR><TD CLASS="l"><A NAME="45">190</A></TD><TD>                }</TD></TR><TR><TD CLASS="l">191</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">192</TD><TD>                private class SelectionChangedListener implements ISelectionChangedListener {</TD></TR><TR><TD CLASS="l">193</TD><TD>                        public void selectionChanged(SelectionChangedEvent event) {</TD></TR><TR CLASS="z"><TD CLASS="l">194</TD><TD>                                if (!isFiringSelection() &amp;&amp; !fIsReceivingSelection) {</TD></TR><TR CLASS="z"><TD CLASS="l">195</TD><TD>                                        fireSelectionChanged(event, listeners);</TD></TR><TR><TD CLASS="l">196</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">197</TD><TD>                        }</TD></TR><TR><TD CLASS="l">198</TD><TD>                }</TD></TR><TR><TD CLASS="l">199</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">200</TD><TD>                private boolean isFiringSelection = false;</TD></TR><TR CLASS="z"><TD CLASS="l">201</TD><TD>                private ListenerList listeners = new ListenerList();</TD></TR><TR CLASS="z"><TD CLASS="l">202</TD><TD>                private ListenerList postListeners = new ListenerList();</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="36">203</A></TD><TD>                private ISelectionChangedListener postSelectionChangedListener = new PostSelectionChangedListener();</TD></TR><TR CLASS="z"><TD CLASS="l">204</TD><TD>                private ISelectionChangedListener selectionChangedListener = new SelectionChangedListener();</TD></TR><TR><TD CLASS="l">205</TD><TD> </TD></TR><TR><TD CLASS="l">206</TD><TD>                public void addPostSelectionChangedListener(ISelectionChangedListener listener) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="37">207</A></TD><TD>                        postListeners.add(listener);</TD></TR><TR CLASS="z"><TD CLASS="l">208</TD><TD>                }</TD></TR><TR><TD CLASS="l">209</TD><TD> </TD></TR><TR><TD CLASS="l">210</TD><TD>                public void addSelectionChangedListener(ISelectionChangedListener listener) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="38">211</A></TD><TD>                        listeners.add(listener);</TD></TR><TR CLASS="z"><TD CLASS="l">212</TD><TD>                }</TD></TR><TR><TD CLASS="l">213</TD><TD> </TD></TR><TR><TD CLASS="l">214</TD><TD>                public void fireSelectionChanged(final SelectionChangedEvent event, ListenerList listenerList) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="22">215</A></TD><TD>                        isFiringSelection = true;</TD></TR><TR CLASS="z"><TD CLASS="l">216</TD><TD>                        Object[] listeners = listenerList.getListeners();</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="24">217</A></TD><TD>                        for (int i = 0; i &lt; listeners.length; ++i) {</TD></TR><TR CLASS="z"><TD CLASS="l">218</TD><TD>                                final ISelectionChangedListener l = (ISelectionChangedListener) listeners[i];</TD></TR><TR CLASS="z"><TD CLASS="l">219</TD><TD>                                SafeRunner.run(new SafeRunnable() {</TD></TR><TR><TD CLASS="l">220</TD><TD>                                        public void run() {</TD></TR><TR CLASS="z"><TD CLASS="l">221</TD><TD>                                                l.selectionChanged(event);</TD></TR><TR CLASS="z"><TD CLASS="l">222</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">223</TD><TD>                                });</TD></TR><TR><TD CLASS="l">224</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="39">225</A></TD><TD>                        isFiringSelection = false;</TD></TR><TR CLASS="z"><TD CLASS="l">226</TD><TD>                }</TD></TR><TR><TD CLASS="l">227</TD><TD> </TD></TR><TR><TD CLASS="l">228</TD><TD>                public ISelectionChangedListener getPostSelectionChangedListener() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3a">229</A></TD><TD>                        return postSelectionChangedListener;</TD></TR><TR><TD CLASS="l">230</TD><TD>                }</TD></TR><TR><TD CLASS="l">231</TD><TD> </TD></TR><TR><TD CLASS="l">232</TD><TD>                public ISelection getSelection() {</TD></TR><TR CLASS="z"><TD CLASS="l">233</TD><TD>                        if (getTreeViewer() != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">234</TD><TD>                                return getTreeViewer().getSelection();</TD></TR><TR><TD CLASS="l">235</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3b">236</A></TD><TD>                        return StructuredSelection.EMPTY;</TD></TR><TR><TD CLASS="l">237</TD><TD>                }</TD></TR><TR><TD CLASS="l">238</TD><TD> </TD></TR><TR><TD CLASS="l">239</TD><TD>                public ISelectionChangedListener getSelectionChangedListener() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3c">240</A></TD><TD>                        return selectionChangedListener;</TD></TR><TR><TD CLASS="l">241</TD><TD>                }</TD></TR><TR><TD CLASS="l">242</TD><TD> </TD></TR><TR><TD CLASS="l">243</TD><TD>                public boolean isFiringSelection() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3d">244</A></TD><TD>                        return isFiringSelection;</TD></TR><TR><TD CLASS="l">245</TD><TD>                }</TD></TR><TR><TD CLASS="l">246</TD><TD> </TD></TR><TR><TD CLASS="l">247</TD><TD>                public void removePostSelectionChangedListener(ISelectionChangedListener listener) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3e">248</A></TD><TD>                        postListeners.remove(listener);</TD></TR><TR CLASS="z"><TD CLASS="l">249</TD><TD>                }</TD></TR><TR><TD CLASS="l">250</TD><TD> </TD></TR><TR><TD CLASS="l">251</TD><TD>                public void removeSelectionChangedListener(ISelectionChangedListener listener) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3f">252</A></TD><TD>                        listeners.remove(listener);</TD></TR><TR CLASS="z"><TD CLASS="l">253</TD><TD>                }</TD></TR><TR><TD CLASS="l">254</TD><TD> </TD></TR><TR><TD CLASS="l">255</TD><TD>                public void setSelection(ISelection selection) {</TD></TR><TR CLASS="z"><TD CLASS="l">256</TD><TD>                        if (!isFiringSelection) {</TD></TR><TR CLASS="z"><TD CLASS="l">257</TD><TD>                                getTreeViewer().setSelection(selection);</TD></TR><TR><TD CLASS="l"><A NAME="46">258</A></TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">259</TD><TD>                }</TD></TR><TR><TD CLASS="l">260</TD><TD>        }</TD></TR><TR><TD CLASS="l">261</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">262</TD><TD>        private class ShowInTarget implements IShowInTarget {</TD></TR><TR><TD CLASS="l">263</TD><TD>                /*</TD></TR><TR><TD CLASS="l">264</TD><TD>                 * @see org.eclipse.ui.part.IShowInTarget#show(org.eclipse.ui.part.ShowInContext)</TD></TR><TR><TD CLASS="l"><A NAME="48">265</A></TD><TD>                 */</TD></TR><TR><TD CLASS="l">266</TD><TD>                public boolean show(ShowInContext context) {</TD></TR><TR CLASS="z"><TD CLASS="l">267</TD><TD>                        setSelection(context.getSelection());</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="0">268</A></TD><TD>                        return getTreeViewer().getSelection().equals(context.getSelection());</TD></TR><TR CLASS="z"><TD CLASS="l">269</TD><TD>                }</TD></TR><TR><TD CLASS="l"><A NAME="16">270</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">271</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="19">272</A></TD><TD>        protected static final ContentOutlineConfiguration NULL_CONFIGURATION = new ContentOutlineConfiguration() {</TD></TR><TR><TD CLASS="l">273</TD><TD>                public IContentProvider getContentProvider(TreeViewer viewer) {</TD></TR><TR CLASS="z"><TD CLASS="l">274</TD><TD>                        return new ITreeContentProvider() {</TD></TR><TR><TD CLASS="l"><A NAME="1a">275</A></TD><TD>                                public void dispose() {</TD></TR><TR CLASS="z"><TD CLASS="l">276</TD><TD>                                }</TD></TR><TR><TD CLASS="l">277</TD><TD> </TD></TR><TR><TD CLASS="l">278</TD><TD>                                public Object[] getChildren(Object parentElement) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="1b">279</A></TD><TD>                                        return null;</TD></TR><TR><TD CLASS="l">280</TD><TD>                                }</TD></TR><TR><TD CLASS="l">281</TD><TD> </TD></TR><TR><TD CLASS="l">282</TD><TD>                                public Object[] getElements(Object inputElement) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="1c">283</A></TD><TD>                                        return null;</TD></TR><TR><TD CLASS="l">284</TD><TD>                                }</TD></TR><TR><TD CLASS="l">285</TD><TD> </TD></TR><TR><TD CLASS="l">286</TD><TD>                                public Object getParent(Object element) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="1d">287</A></TD><TD>                                        return null;</TD></TR><TR><TD CLASS="l">288</TD><TD>                                }</TD></TR><TR><TD CLASS="l">289</TD><TD> </TD></TR><TR><TD CLASS="l">290</TD><TD>                                public boolean hasChildren(Object element) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="1e">291</A></TD><TD>                                        return false;</TD></TR><TR><TD CLASS="l">292</TD><TD>                                }</TD></TR><TR><TD CLASS="l">293</TD><TD> </TD></TR><TR><TD CLASS="l">294</TD><TD>                                public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {</TD></TR><TR CLASS="z"><TD CLASS="l">295</TD><TD>                                }</TD></TR><TR><TD CLASS="l">296</TD><TD>                        };</TD></TR><TR><TD CLASS="l">297</TD><TD>                }</TD></TR><TR><TD CLASS="l">298</TD><TD>        };</TD></TR><TR><TD CLASS="l">299</TD><TD> </TD></TR><TR><TD CLASS="l">300</TD><TD>        private static final String OUTLINE_CONTEXT_MENU_ID = &#34;org.eclipse.wst.sse.ui.StructuredTextEditor.OutlineContext&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">301</TD><TD> </TD></TR><TR><TD CLASS="l">302</TD><TD>        private static final String OUTLINE_CONTEXT_MENU_SUFFIX = &#34;.source.OutlineContext&#34;; //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">303</TD><TD>        private static final boolean _DEBUG = &#34;true&#34;.equalsIgnoreCase(Platform.getDebugOption(&#34;org.eclipse.wst.sse.ui/contentOutline&#34;)); //$NON-NLS-1$  //$NON-NLS-2$;</TD></TR><TR><TD CLASS="l">304</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">305</TD><TD>        private long _DEBUG_TIME = 0;</TD></TR><TR><TD CLASS="l">306</TD><TD> </TD></TR><TR><TD CLASS="l">307</TD><TD>        private TransferDragSourceListener[] fActiveDragListeners;</TD></TR><TR><TD CLASS="l">308</TD><TD>        private TransferDropTargetListener[] fActiveDropListeners;</TD></TR><TR><TD CLASS="l">309</TD><TD>        private ContentOutlineConfiguration fConfiguration;</TD></TR><TR><TD CLASS="l">310</TD><TD> </TD></TR><TR><TD CLASS="l">311</TD><TD>        private Menu fContextMenu;</TD></TR><TR><TD CLASS="l">312</TD><TD>        private String fContextMenuId;</TD></TR><TR><TD CLASS="l">313</TD><TD> </TD></TR><TR><TD CLASS="l">314</TD><TD>        private MenuManager fContextMenuManager;</TD></TR><TR CLASS="z"><TD CLASS="l">315</TD><TD>        private DoubleClickProvider fDoubleClickProvider = null;</TD></TR><TR><TD CLASS="l">316</TD><TD> </TD></TR><TR><TD CLASS="l">317</TD><TD>        private DelegatingDragAdapter fDragAdapter;</TD></TR><TR><TD CLASS="l">318</TD><TD>        private DragSource fDragSource;</TD></TR><TR><TD CLASS="l">319</TD><TD>        private DelegatingDropAdapter fDropAdapter;</TD></TR><TR><TD CLASS="l">320</TD><TD>        private DropTarget fDropTarget;</TD></TR><TR><TD CLASS="l">321</TD><TD>        private IEditorPart fEditor;</TD></TR><TR CLASS="z"><TD CLASS="l">322</TD><TD>        private IMenuListener fGroupAdder = null;</TD></TR><TR CLASS="z"><TD CLASS="l">323</TD><TD>        private Object fInput = null;</TD></TR><TR><TD CLASS="l">324</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">325</TD><TD>        private String fInputContentTypeIdentifier = null;</TD></TR><TR CLASS="z"><TD CLASS="l">326</TD><TD>        private ISelectionListener fSelectionListener = null;</TD></TR><TR><TD CLASS="l">327</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">328</TD><TD>        SelectionProvider fSelectionProvider = null;</TD></TR><TR><TD CLASS="l">329</TD><TD> </TD></TR><TR><TD CLASS="l">330</TD><TD>        boolean fIsReceivingSelection;</TD></TR><TR><TD CLASS="l">331</TD><TD> </TD></TR><TR><TD CLASS="l">332</TD><TD>        /**</TD></TR><TR><TD CLASS="l"><A NAME="2">333</A></TD><TD>         * A ContentOutlinePage that abstract as much behavior as possible away</TD></TR><TR><TD CLASS="l">334</TD><TD>         * from the Controls and varies it by content type.</TD></TR><TR><TD CLASS="l">335</TD><TD>         */</TD></TR><TR><TD CLASS="l">336</TD><TD>        public ConfigurableContentOutlinePage() {</TD></TR><TR CLASS="z"><TD CLASS="l">337</TD><TD>                super();</TD></TR><TR CLASS="z"><TD CLASS="l">338</TD><TD>                fGroupAdder = new AdditionGroupAdder();</TD></TR><TR CLASS="z"><TD CLASS="l">339</TD><TD>                fSelectionProvider = new SelectionProvider();</TD></TR><TR CLASS="z"><TD CLASS="l">340</TD><TD>        }</TD></TR><TR><TD CLASS="l">341</TD><TD> </TD></TR><TR><TD CLASS="l">342</TD><TD>        /**</TD></TR><TR><TD CLASS="l">343</TD><TD>         * Adds a listener to a list of those notified when someone double-clicks</TD></TR><TR><TD CLASS="l">344</TD><TD>         * in the page.</TD></TR><TR><TD CLASS="l"><A NAME="3">345</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">346</TD><TD>         * @param newListener - the listener to add</TD></TR><TR><TD CLASS="l">347</TD><TD>         */</TD></TR><TR><TD CLASS="l">348</TD><TD>        public void addDoubleClickListener(IDoubleClickListener newListener) {</TD></TR><TR CLASS="z"><TD CLASS="l">349</TD><TD>                if (fDoubleClickProvider == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">350</TD><TD>                        fDoubleClickProvider = new DoubleClickProvider();</TD></TR><TR><TD CLASS="l">351</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">352</A></TD><TD>                fDoubleClickProvider.addDoubleClickListener(newListener);</TD></TR><TR CLASS="z"><TD CLASS="l">353</TD><TD>        }</TD></TR><TR><TD CLASS="l">354</TD><TD> </TD></TR><TR><TD CLASS="l">355</TD><TD>        private String computeContextMenuID() {</TD></TR><TR CLASS="z"><TD CLASS="l">356</TD><TD>                String id = null;</TD></TR><TR CLASS="z"><TD CLASS="l">357</TD><TD>                if (fInputContentTypeIdentifier != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">358</TD><TD>                        id = fInputContentTypeIdentifier + OUTLINE_CONTEXT_MENU_SUFFIX;</TD></TR><TR><TD CLASS="l">359</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">360</TD><TD>                return id;</TD></TR><TR><TD CLASS="l">361</TD><TD>        }</TD></TR><TR><TD CLASS="l">362</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="5">363</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">364</TD><TD>         * @see ContentOutlinePage#createControl</TD></TR><TR><TD CLASS="l">365</TD><TD>         */</TD></TR><TR><TD CLASS="l">366</TD><TD>        public void createControl(Composite parent) {</TD></TR><TR CLASS="z"><TD CLASS="l">367</TD><TD>                super.createControl(parent);</TD></TR><TR CLASS="z"><TD CLASS="l">368</TD><TD>                ColumnViewerToolTipSupport.enableFor(getTreeViewer());</TD></TR><TR><TD CLASS="l">369</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">370</TD><TD>                IWorkbenchPage page = getSite().getWorkbenchWindow().getActivePage();</TD></TR><TR CLASS="z"><TD CLASS="l">371</TD><TD>                if (page != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">372</TD><TD>                        fEditor = page.getActiveEditor();</TD></TR><TR><TD CLASS="l">373</TD><TD>                }</TD></TR><TR><TD CLASS="l">374</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">375</TD><TD>                fDragAdapter = new DelegatingDragAdapter();</TD></TR><TR CLASS="z"><TD CLASS="l">376</TD><TD>                fDragSource = new DragSource(getControl(), DND.DROP_COPY | DND.DROP_MOVE);</TD></TR><TR CLASS="z"><TD CLASS="l">377</TD><TD>                fDropAdapter = new DelegatingDropAdapter();</TD></TR><TR CLASS="z"><TD CLASS="l">378</TD><TD>                fDropTarget = new DropTarget(getControl(), DND.DROP_COPY | DND.DROP_MOVE);</TD></TR><TR><TD CLASS="l">379</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">380</TD><TD>                setConfiguration(getConfiguration());</TD></TR><TR><TD CLASS="l">381</TD><TD> </TD></TR><TR><TD CLASS="l">382</TD><TD>                /*</TD></TR><TR><TD CLASS="l">383</TD><TD>                 * ContentOutlinePage only implements ISelectionProvider while the</TD></TR><TR><TD CLASS="l">384</TD><TD>                 * tree viewer implements both ISelectionProvider and</TD></TR><TR><TD CLASS="l">385</TD><TD>                 * IPostSelectionProvider. Use an ISelectionProvider that listens to</TD></TR><TR><TD CLASS="l">386</TD><TD>                 * post selection from the tree viewer and forward only post selection</TD></TR><TR><TD CLASS="l">387</TD><TD>                 * to the selection service.</TD></TR><TR><TD CLASS="l">388</TD><TD>                 */</TD></TR><TR CLASS="z"><TD CLASS="l">389</TD><TD>                getTreeViewer().addPostSelectionChangedListener(fSelectionProvider.getPostSelectionChangedListener());</TD></TR><TR CLASS="z"><TD CLASS="l">390</TD><TD>                getTreeViewer().addSelectionChangedListener(fSelectionProvider.getSelectionChangedListener());</TD></TR><TR CLASS="z"><TD CLASS="l">391</TD><TD>                if (fDoubleClickProvider == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">392</TD><TD>                        fDoubleClickProvider = new DoubleClickProvider();</TD></TR><TR><TD CLASS="l">393</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">394</TD><TD>                getTreeViewer().addDoubleClickListener(fDoubleClickProvider);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="6">395</A></TD><TD>                getSite().setSelectionProvider(fSelectionProvider);</TD></TR><TR CLASS="z"><TD CLASS="l">396</TD><TD>        }</TD></TR><TR><TD CLASS="l">397</TD><TD> </TD></TR><TR><TD CLASS="l">398</TD><TD>        public void dispose() {</TD></TR><TR CLASS="z"><TD CLASS="l">399</TD><TD>                getSite().getWorkbenchWindow().getSelectionService().removePostSelectionListener(getSelectionServiceListener());</TD></TR><TR CLASS="z"><TD CLASS="l">400</TD><TD>                if (fDoubleClickProvider != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">401</TD><TD>                        getTreeViewer().removeDoubleClickListener(fDoubleClickProvider);</TD></TR><TR><TD CLASS="l">402</TD><TD>                }</TD></TR><TR><TD CLASS="l">403</TD><TD> </TD></TR><TR><TD CLASS="l">404</TD><TD>                // dispose menu controls</TD></TR><TR CLASS="z"><TD CLASS="l">405</TD><TD>                if (fContextMenu != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">406</TD><TD>                        fContextMenu.dispose();</TD></TR><TR><TD CLASS="l">407</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">408</TD><TD>                if (fContextMenuManager != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">409</TD><TD>                        fContextMenuManager.removeMenuListener(fGroupAdder);</TD></TR><TR CLASS="z"><TD CLASS="l">410</TD><TD>                        fContextMenuManager.removeAll();</TD></TR><TR CLASS="z"><TD CLASS="l">411</TD><TD>                        fContextMenuManager.dispose();</TD></TR><TR><TD CLASS="l">412</TD><TD>                }</TD></TR><TR><TD CLASS="l">413</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">414</TD><TD>                fDropTarget.dispose();</TD></TR><TR CLASS="z"><TD CLASS="l">415</TD><TD>                fDragSource.dispose();</TD></TR><TR><TD CLASS="l">416</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">417</TD><TD>                IStatusLineManager statusLineManager = getSite().getActionBars().getStatusLineManager();</TD></TR><TR CLASS="z"><TD CLASS="l">418</TD><TD>                if (statusLineManager != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">419</TD><TD>                        statusLineManager.setMessage(null);</TD></TR><TR><TD CLASS="l">420</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">421</TD><TD>                setConfiguration(NULL_CONFIGURATION);</TD></TR><TR CLASS="z"><TD CLASS="l">422</TD><TD>                super.dispose();</TD></TR><TR CLASS="z"><TD CLASS="l">423</TD><TD>        }</TD></TR><TR><TD CLASS="l">424</TD><TD> </TD></TR><TR><TD CLASS="l">425</TD><TD>        /*</TD></TR><TR><TD CLASS="l">426</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="7">427</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">428</TD><TD>         * @see org.eclipse.core.runtime.IAdaptable#getAdapter(java.lang.Class)</TD></TR><TR><TD CLASS="l">429</TD><TD>         */</TD></TR><TR><TD CLASS="l">430</TD><TD>        public Object getAdapter(Class key) {</TD></TR><TR CLASS="z"><TD CLASS="l">431</TD><TD>                Object adapter = null;</TD></TR><TR CLASS="z"><TD CLASS="l">432</TD><TD>                if (key.equals(IShowInTarget.class)) {</TD></TR><TR CLASS="z"><TD CLASS="l">433</TD><TD>                        adapter = new ShowInTarget();</TD></TR><TR><TD CLASS="l"><A NAME="25">434</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">435</TD><TD>                final IEditorPart editor = fEditor;</TD></TR><TR><TD CLASS="l"><A NAME="27">436</A></TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">437</TD><TD>                if (key.equals(IShowInSource.class) &amp;&amp; editor != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">438</TD><TD>                        adapter = new IShowInSource() {</TD></TR><TR><TD CLASS="l">439</TD><TD>                                public ShowInContext getShowInContext() {</TD></TR><TR CLASS="z"><TD CLASS="l">440</TD><TD>                                        return new ShowInContext(editor.getEditorInput(), editor.getEditorSite().getSelectionProvider().getSelection());</TD></TR><TR><TD CLASS="l">441</TD><TD>                                }</TD></TR><TR><TD CLASS="l">442</TD><TD>                        };</TD></TR><TR><TD CLASS="l">443</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">444</TD><TD>                else if (key.equals(IShowInTargetList.class) &amp;&amp; editor != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">445</TD><TD>                        adapter = editor.getAdapter(key);</TD></TR><TR><TD CLASS="l">446</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">447</TD><TD>                return adapter;</TD></TR><TR><TD CLASS="l">448</TD><TD>        }</TD></TR><TR><TD CLASS="l">449</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="8">450</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">451</TD><TD>         * @return the currently used ContentOutlineConfiguration</TD></TR><TR><TD CLASS="l">452</TD><TD>         */</TD></TR><TR><TD CLASS="l">453</TD><TD>        public ContentOutlineConfiguration getConfiguration() {</TD></TR><TR CLASS="z"><TD CLASS="l">454</TD><TD>                if (fConfiguration == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">455</TD><TD>                        fConfiguration = NULL_CONFIGURATION;</TD></TR><TR><TD CLASS="l">456</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">457</TD><TD>                return fConfiguration;</TD></TR><TR><TD CLASS="l">458</TD><TD>        }</TD></TR><TR><TD CLASS="l">459</TD><TD> </TD></TR><TR><TD CLASS="l">460</TD><TD>        /*</TD></TR><TR><TD CLASS="l">461</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="9">462</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">463</TD><TD>         * @see org.eclipse.jface.viewers.ISelectionProvider#getSelection()</TD></TR><TR><TD CLASS="l">464</TD><TD>         */</TD></TR><TR><TD CLASS="l">465</TD><TD>        public ISelection getSelection() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="a">466</A></TD><TD>                return fSelectionProvider.getSelection();</TD></TR><TR><TD CLASS="l">467</TD><TD>        }</TD></TR><TR><TD CLASS="l">468</TD><TD> </TD></TR><TR><TD CLASS="l">469</TD><TD>        ISelectionListener getSelectionServiceListener() {</TD></TR><TR CLASS="z"><TD CLASS="l">470</TD><TD>                if (fSelectionListener == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">471</TD><TD>                        fSelectionListener = new PostSelectionServiceListener();</TD></TR><TR><TD CLASS="l">472</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">473</TD><TD>                return fSelectionListener;</TD></TR><TR><TD CLASS="l">474</TD><TD>        }</TD></TR><TR><TD CLASS="l">475</TD><TD> </TD></TR><TR><TD CLASS="l">476</TD><TD> </TD></TR><TR><TD CLASS="l">477</TD><TD>        /*</TD></TR><TR><TD CLASS="l">478</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l">479</TD><TD>         * </TD></TR><TR><TD CLASS="l">480</TD><TD>         * @see</TD></TR><TR><TD CLASS="l"><A NAME="b">481</A></TD><TD>         * org.eclipse.ui.part.IPageBookViewPage#init(org.eclipse.ui.part.IPageSite</TD></TR><TR><TD CLASS="l">482</TD><TD>         * )</TD></TR><TR><TD CLASS="l">483</TD><TD>         */</TD></TR><TR><TD CLASS="l">484</TD><TD>        public void init(IPageSite pageSite) {</TD></TR><TR CLASS="z"><TD CLASS="l">485</TD><TD>                super.init(pageSite);</TD></TR><TR CLASS="z"><TD CLASS="l">486</TD><TD>                pageSite.getWorkbenchWindow().getSelectionService().addPostSelectionListener(getSelectionServiceListener());</TD></TR><TR CLASS="z"><TD CLASS="l">487</TD><TD>        }</TD></TR><TR><TD CLASS="l">488</TD><TD> </TD></TR><TR><TD CLASS="l">489</TD><TD>        /**</TD></TR><TR><TD CLASS="l">490</TD><TD>         * Removes a listener to a list of those notified when someone</TD></TR><TR><TD CLASS="l">491</TD><TD>         * double-clicks in the page.</TD></TR><TR><TD CLASS="l"><A NAME="c">492</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">493</TD><TD>         * @param oldListener - the listener to remove</TD></TR><TR><TD CLASS="l">494</TD><TD>         */</TD></TR><TR><TD CLASS="l">495</TD><TD>        public void removeDoubleClickListener(IDoubleClickListener oldListener) {</TD></TR><TR CLASS="z"><TD CLASS="l">496</TD><TD>                if (fDoubleClickProvider != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">497</TD><TD>                        fDoubleClickProvider.removeDoubleClickListener(oldListener);</TD></TR><TR><TD CLASS="l">498</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">499</TD><TD>        }</TD></TR><TR><TD CLASS="l">500</TD><TD> </TD></TR><TR><TD CLASS="l">501</TD><TD>        /*</TD></TR><TR><TD CLASS="l">502</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="d">503</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">504</TD><TD>         * @see org.eclipse.ui.views.contentoutline.ContentOutlinePage#selectionChanged(org.eclipse.jface.viewers.SelectionChangedEvent)</TD></TR><TR><TD CLASS="l">505</TD><TD>         */</TD></TR><TR><TD CLASS="l">506</TD><TD>        public void selectionChanged(SelectionChangedEvent event) {</TD></TR><TR CLASS="z"><TD CLASS="l">507</TD><TD>                if (!fIsReceivingSelection)</TD></TR><TR CLASS="z"><TD CLASS="l">508</TD><TD>                        super.selectionChanged(event);</TD></TR><TR CLASS="z"><TD CLASS="l">509</TD><TD>        }</TD></TR><TR><TD CLASS="l">510</TD><TD> </TD></TR><TR><TD CLASS="l">511</TD><TD>        /**</TD></TR><TR><TD CLASS="l">512</TD><TD>         * Configures (or reconfigures) the page according to the given</TD></TR><TR><TD CLASS="l">513</TD><TD>         * configuration.</TD></TR><TR><TD CLASS="l">514</TD><TD>         * </TD></TR><TR><TD CLASS="l">515</TD><TD>         * @param configuration</TD></TR><TR><TD CLASS="l"><A NAME="e">516</A></TD><TD>         */</TD></TR><TR><TD CLASS="l">517</TD><TD>        public void setConfiguration(ContentOutlineConfiguration configuration) {</TD></TR><TR><TD CLASS="l">518</TD><TD>                // intentionally do not check to see if the new configuration != old</TD></TR><TR><TD CLASS="l">519</TD><TD>                // configuration</TD></TR><TR CLASS="z"><TD CLASS="l">520</TD><TD>                if (getTreeViewer() != null) {</TD></TR><TR><TD CLASS="l">521</TD><TD>                        // remove the key listeners</TD></TR><TR CLASS="z"><TD CLASS="l">522</TD><TD>                        if (getControl() != null &amp;&amp; !getControl().isDisposed()) {</TD></TR><TR CLASS="z"><TD CLASS="l">523</TD><TD>                                KeyListener[] listeners = getConfiguration().getKeyListeners(getTreeViewer());</TD></TR><TR CLASS="z"><TD CLASS="l">524</TD><TD>                                if (listeners != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">525</TD><TD>                                        for (int i = 0; i &lt; listeners.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">526</TD><TD>                                                getControl().removeKeyListener(listeners[i]);</TD></TR><TR><TD CLASS="l">527</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">528</TD><TD>                                }</TD></TR><TR><TD CLASS="l">529</TD><TD>                        }</TD></TR><TR><TD CLASS="l">530</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">531</TD><TD>                        IContributionManager toolbar = getSite().getActionBars().getToolBarManager();</TD></TR><TR CLASS="z"><TD CLASS="l">532</TD><TD>                        if (toolbar != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">533</TD><TD>                                IContributionItem[] toolbarItems = getConfiguration().getToolbarContributions(getTreeViewer());</TD></TR><TR CLASS="z"><TD CLASS="l">534</TD><TD>                                if (toolbarItems != null &amp;&amp; toolbarItems.length &gt; 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">535</TD><TD>                                        for (int i = 0; i &lt; toolbarItems.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">536</TD><TD>                                                toolbar.remove(toolbarItems[i]);</TD></TR><TR><TD CLASS="l">537</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">538</TD><TD>                                        toolbar.update(false);</TD></TR><TR><TD CLASS="l">539</TD><TD>                                }</TD></TR><TR><TD CLASS="l">540</TD><TD>                        }</TD></TR><TR><TD CLASS="l">541</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">542</TD><TD>                        IContributionManager menubar = getSite().getActionBars().getMenuManager();</TD></TR><TR CLASS="z"><TD CLASS="l">543</TD><TD>                        if (menubar != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">544</TD><TD>                                IContributionItem[] menuItems = getConfiguration().getMenuContributions(getTreeViewer());</TD></TR><TR CLASS="z"><TD CLASS="l">545</TD><TD>                                if (menuItems != null &amp;&amp; menuItems.length &gt; 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">546</TD><TD>                                        for (int i = 0; i &lt; menuItems.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">547</TD><TD>                                                menubar.remove(menuItems[i]);</TD></TR><TR><TD CLASS="l">548</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">549</TD><TD>                                        menubar.remove(IWorkbenchActionConstants.MB_ADDITIONS);</TD></TR><TR CLASS="z"><TD CLASS="l">550</TD><TD>                                        menubar.update(false);</TD></TR><TR><TD CLASS="l">551</TD><TD>                                }</TD></TR><TR><TD CLASS="l">552</TD><TD>                        }</TD></TR><TR><TD CLASS="l">553</TD><TD>                        // clear the DnD listeners and transfer types</TD></TR><TR CLASS="z"><TD CLASS="l">554</TD><TD>                        if (fDragAdapter != null &amp;&amp; !fDragAdapter.isEmpty() &amp;&amp; fDragSource != null &amp;&amp; !fDragSource.isDisposed() &amp;&amp; fDragSource.getTransfer().length &gt; 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">555</TD><TD>                                if (fActiveDragListeners != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">556</TD><TD>                                        for (int i = 0; i &lt; fActiveDragListeners.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">557</TD><TD>                                                fDragAdapter.removeDragSourceListener(fActiveDragListeners[i]);</TD></TR><TR><TD CLASS="l">558</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">559</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">560</TD><TD>                                fActiveDragListeners = null;</TD></TR><TR CLASS="z"><TD CLASS="l">561</TD><TD>                                fDragSource.removeDragListener(fDragAdapter);</TD></TR><TR CLASS="z"><TD CLASS="l">562</TD><TD>                                fDragSource.setTransfer(new Transfer[0]);</TD></TR><TR><TD CLASS="l">563</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">564</TD><TD>                        if (fDropAdapter != null &amp;&amp; !fDropAdapter.isEmpty() &amp;&amp; fDropTarget != null &amp;&amp; !fDropTarget.isDisposed() &amp;&amp; fDropTarget.getTransfer().length &gt; 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">565</TD><TD>                                if (fActiveDropListeners != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">566</TD><TD>                                        for (int i = 0; i &lt; fActiveDropListeners.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">567</TD><TD>                                                fDropAdapter.removeDropTargetListener(fActiveDropListeners[i]);</TD></TR><TR><TD CLASS="l">568</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">569</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">570</TD><TD>                                fActiveDropListeners = null;</TD></TR><TR CLASS="z"><TD CLASS="l">571</TD><TD>                                fDropTarget.removeDropListener(fDropAdapter);</TD></TR><TR CLASS="z"><TD CLASS="l">572</TD><TD>                                fDropTarget.setTransfer(new Transfer[0]);</TD></TR><TR><TD CLASS="l">573</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">574</TD><TD>                        getConfiguration().getContentProvider(getTreeViewer()).inputChanged(getTreeViewer(), fInput, null);</TD></TR><TR><TD CLASS="l">575</TD><TD>                        // release any ties to this tree viewer</TD></TR><TR CLASS="z"><TD CLASS="l">576</TD><TD>                        getConfiguration().unconfigure(getTreeViewer());</TD></TR><TR><TD CLASS="l">577</TD><TD>                }</TD></TR><TR><TD CLASS="l">578</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">579</TD><TD>                fConfiguration = configuration;</TD></TR><TR><TD CLASS="l">580</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">581</TD><TD>                if (getTreeViewer() != null &amp;&amp; getControl() != null &amp;&amp; !getControl().isDisposed()) {</TD></TR><TR><TD CLASS="l">582</TD><TD>                        // (re)set the providers</TD></TR><TR CLASS="z"><TD CLASS="l">583</TD><TD>                        getTreeViewer().setLabelProvider(getConfiguration().getLabelProvider(getTreeViewer()));</TD></TR><TR CLASS="z"><TD CLASS="l">584</TD><TD>                        getTreeViewer().setContentProvider(getConfiguration().getContentProvider(getTreeViewer()));</TD></TR><TR><TD CLASS="l">585</TD><TD> </TD></TR><TR><TD CLASS="l">586</TD><TD>                        // view toolbar</TD></TR><TR CLASS="z"><TD CLASS="l">587</TD><TD>                        IContributionManager toolbar = getSite().getActionBars().getToolBarManager();</TD></TR><TR CLASS="z"><TD CLASS="l">588</TD><TD>                        if (toolbar != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">589</TD><TD>                                IContributionItem[] toolbarItems = getConfiguration().getToolbarContributions(getTreeViewer());</TD></TR><TR CLASS="z"><TD CLASS="l">590</TD><TD>                                if (toolbarItems != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">591</TD><TD>                                        for (int i = 0; i &lt; toolbarItems.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">592</TD><TD>                                                toolbar.add(toolbarItems[i]);</TD></TR><TR><TD CLASS="l">593</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">594</TD><TD>                                        toolbar.update(true);</TD></TR><TR><TD CLASS="l">595</TD><TD>                                }</TD></TR><TR><TD CLASS="l">596</TD><TD>                        }</TD></TR><TR><TD CLASS="l">597</TD><TD>                        // view menu</TD></TR><TR CLASS="z"><TD CLASS="l">598</TD><TD>                        IContributionManager menu = getSite().getActionBars().getMenuManager();</TD></TR><TR CLASS="z"><TD CLASS="l">599</TD><TD>                        if (menu != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">600</TD><TD>                                IContributionItem[] menuItems = getConfiguration().getMenuContributions(getTreeViewer());</TD></TR><TR CLASS="z"><TD CLASS="l">601</TD><TD>                                if (menuItems != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">602</TD><TD>                                        for (int i = 0; i &lt; menuItems.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">603</TD><TD>                                                menuItems[i].setVisible(true);</TD></TR><TR CLASS="z"><TD CLASS="l">604</TD><TD>                                                menu.add(menuItems[i]);</TD></TR><TR CLASS="z"><TD CLASS="l">605</TD><TD>                                                menuItems[i].update();</TD></TR><TR><TD CLASS="l">606</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">607</TD><TD>                                        menu.update(true);</TD></TR><TR><TD CLASS="l">608</TD><TD>                                }</TD></TR><TR><TD CLASS="l">609</TD><TD>                        }</TD></TR><TR><TD CLASS="l">610</TD><TD>                        // add the allowed DnD listeners and types</TD></TR><TR CLASS="z"><TD CLASS="l">611</TD><TD>                        TransferDragSourceListener[] dragListeners = getConfiguration().getTransferDragSourceListeners(getTreeViewer());</TD></TR><TR CLASS="z"><TD CLASS="l">612</TD><TD>                        if (fDragAdapter != null &amp;&amp; dragListeners.length &gt; 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">613</TD><TD>                                for (int i = 0; i &lt; dragListeners.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">614</TD><TD>                                        fDragAdapter.addDragSourceListener(dragListeners[i]);</TD></TR><TR><TD CLASS="l">615</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">616</TD><TD>                                fActiveDragListeners = dragListeners;</TD></TR><TR CLASS="z"><TD CLASS="l">617</TD><TD>                                fDragSource.addDragListener(fDragAdapter);</TD></TR><TR CLASS="z"><TD CLASS="l">618</TD><TD>                                fDragSource.setTransfer(fDragAdapter.getTransfers());</TD></TR><TR><TD CLASS="l">619</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">620</TD><TD>                        TransferDropTargetListener[] dropListeners = getConfiguration().getTransferDropTargetListeners(getTreeViewer());</TD></TR><TR CLASS="z"><TD CLASS="l">621</TD><TD>                        if (fDropAdapter != null &amp;&amp; dropListeners.length &gt; 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">622</TD><TD>                                for (int i = 0; i &lt; dropListeners.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">623</TD><TD>                                        fDropAdapter.addDropTargetListener(dropListeners[i]);</TD></TR><TR><TD CLASS="l">624</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">625</TD><TD>                                fActiveDropListeners = dropListeners;</TD></TR><TR CLASS="z"><TD CLASS="l">626</TD><TD>                                fDropTarget.addDropListener(fDropAdapter);</TD></TR><TR CLASS="z"><TD CLASS="l">627</TD><TD>                                fDropTarget.setTransfer(fDropAdapter.getTransfers());</TD></TR><TR><TD CLASS="l">628</TD><TD>                        }</TD></TR><TR><TD CLASS="l">629</TD><TD>                        // add the key listeners</TD></TR><TR CLASS="z"><TD CLASS="l">630</TD><TD>                        KeyListener[] listeners = getConfiguration().getKeyListeners(getTreeViewer());</TD></TR><TR CLASS="z"><TD CLASS="l">631</TD><TD>                        if (listeners != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">632</TD><TD>                                for (int i = 0; i &lt; listeners.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">633</TD><TD>                                        getControl().addKeyListener(listeners[i]);</TD></TR><TR><TD CLASS="l">634</TD><TD>                                }</TD></TR><TR><TD CLASS="l">635</TD><TD>                        }</TD></TR><TR><TD CLASS="l">636</TD><TD>                }</TD></TR><TR><TD CLASS="l">637</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">638</TD><TD>                if (fInput != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">639</TD><TD>                        setInput(fInput);</TD></TR><TR><TD CLASS="l">640</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">641</TD><TD>        }</TD></TR><TR><TD CLASS="l">642</TD><TD> </TD></TR><TR><TD CLASS="l">643</TD><TD>        /**</TD></TR><TR><TD CLASS="l">644</TD><TD>         * @param editor</TD></TR><TR><TD CLASS="l"><A NAME="f">645</A></TD><TD>         *            The IEditorPart that &#34;owns&#34; this page. Used to support the</TD></TR><TR><TD CLASS="l">646</TD><TD>         *            &#34;Show In...&#34; menu.</TD></TR><TR><TD CLASS="l">647</TD><TD>         */</TD></TR><TR><TD CLASS="l">648</TD><TD>        public void setEditorPart(IEditorPart editor) {</TD></TR><TR CLASS="z"><TD CLASS="l">649</TD><TD>                fEditor = editor;</TD></TR><TR CLASS="z"><TD CLASS="l">650</TD><TD>        }</TD></TR><TR><TD CLASS="l">651</TD><TD> </TD></TR><TR><TD CLASS="l">652</TD><TD>        /**</TD></TR><TR><TD CLASS="l">653</TD><TD>         * @param newInput</TD></TR><TR><TD CLASS="l"><A NAME="10">654</A></TD><TD>         *            The input for the page's viewer. Should only be set after a</TD></TR><TR><TD CLASS="l">655</TD><TD>         *            configuration has been applied.</TD></TR><TR><TD CLASS="l">656</TD><TD>         */</TD></TR><TR><TD CLASS="l">657</TD><TD>        public void setInput(Object newInput) {</TD></TR><TR CLASS="z"><TD CLASS="l">658</TD><TD>                fInput = newInput;</TD></TR><TR><TD CLASS="l">659</TD><TD>                /*</TD></TR><TR><TD CLASS="l">660</TD><TD>                 * Intentionally not optimized for checking new input vs. old input so</TD></TR><TR><TD CLASS="l">661</TD><TD>                 * that any existing content providers can be updated</TD></TR><TR><TD CLASS="l">662</TD><TD>                 */</TD></TR><TR CLASS="z"><TD CLASS="l">663</TD><TD>                if (getControl() != null &amp;&amp; !getControl().isDisposed()) {</TD></TR><TR CLASS="z"><TD CLASS="l">664</TD><TD>                        getTreeViewer().setInput(fInput);</TD></TR><TR CLASS="z"><TD CLASS="l">665</TD><TD>                        updateContextMenuId();</TD></TR><TR><TD CLASS="l">666</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">667</TD><TD>        }</TD></TR><TR><TD CLASS="l">668</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="11">669</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">670</TD><TD>         * @param id - the content type identifier to use for further extension</TD></TR><TR><TD CLASS="l">671</TD><TD>         */</TD></TR><TR><TD CLASS="l">672</TD><TD>        public void setInputContentTypeIdentifier(String id) {</TD></TR><TR CLASS="z"><TD CLASS="l">673</TD><TD>                fInputContentTypeIdentifier = id;</TD></TR><TR CLASS="z"><TD CLASS="l">674</TD><TD>        }</TD></TR><TR><TD CLASS="l">675</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="12">676</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">677</TD><TD>         * Updates the outline page's context menu for the current input</TD></TR><TR><TD CLASS="l">678</TD><TD>         */</TD></TR><TR><TD CLASS="l">679</TD><TD>        private void updateContextMenuId() {</TD></TR><TR CLASS="z"><TD CLASS="l">680</TD><TD>                String computedContextMenuId = null;</TD></TR><TR><TD CLASS="l">681</TD><TD>                // update outline view's context menu control and ID</TD></TR><TR><TD CLASS="l">682</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">683</TD><TD>                if (fEditor == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">684</TD><TD>                        IWorkbenchPage page = getSite().getWorkbenchWindow().getActivePage();</TD></TR><TR CLASS="z"><TD CLASS="l">685</TD><TD>                        if (page != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">686</TD><TD>                                fEditor = page.getActiveEditor();</TD></TR><TR><TD CLASS="l">687</TD><TD>                        }</TD></TR><TR><TD CLASS="l">688</TD><TD>                }</TD></TR><TR><TD CLASS="l">689</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">690</TD><TD>                computedContextMenuId = computeContextMenuID();</TD></TR><TR><TD CLASS="l">691</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">692</TD><TD>                if (computedContextMenuId == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">693</TD><TD>                        computedContextMenuId = OUTLINE_CONTEXT_MENU_ID;</TD></TR><TR><TD CLASS="l">694</TD><TD>                }</TD></TR><TR><TD CLASS="l">695</TD><TD> </TD></TR><TR><TD CLASS="l">696</TD><TD>                /*</TD></TR><TR><TD CLASS="l">697</TD><TD>                 * Update outline context menu id if updating to a new id or if</TD></TR><TR><TD CLASS="l">698</TD><TD>                 * context menu is not already set up</TD></TR><TR><TD CLASS="l">699</TD><TD>                 */</TD></TR><TR CLASS="z"><TD CLASS="l">700</TD><TD>                if (!computedContextMenuId.equals(fContextMenuId) || (fContextMenu == null)) {</TD></TR><TR CLASS="z"><TD CLASS="l">701</TD><TD>                        fContextMenuId = computedContextMenuId;</TD></TR><TR><TD CLASS="l">702</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">703</TD><TD>                        if (getControl() != null &amp;&amp; !getControl().isDisposed()) {</TD></TR><TR><TD CLASS="l">704</TD><TD>                                // dispose of previous context menu</TD></TR><TR CLASS="z"><TD CLASS="l">705</TD><TD>                                if (fContextMenu != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">706</TD><TD>                                        fContextMenu.dispose();</TD></TR><TR><TD CLASS="l">707</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">708</TD><TD>                                if (fContextMenuManager != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">709</TD><TD>                                        fContextMenuManager.removeMenuListener(fGroupAdder);</TD></TR><TR CLASS="z"><TD CLASS="l">710</TD><TD>                                        fContextMenuManager.removeAll();</TD></TR><TR CLASS="z"><TD CLASS="l">711</TD><TD>                                        fContextMenuManager.dispose();</TD></TR><TR><TD CLASS="l">712</TD><TD>                                }</TD></TR><TR><TD CLASS="l">713</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">714</TD><TD>                                fContextMenuManager = new MenuManager(fContextMenuId, fContextMenuId);</TD></TR><TR CLASS="z"><TD CLASS="l">715</TD><TD>                                fContextMenuManager.setRemoveAllWhenShown(true);</TD></TR><TR><TD CLASS="l">716</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">717</TD><TD>                                fContextMenuManager.addMenuListener(fGroupAdder);</TD></TR><TR><TD CLASS="l">718</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">719</TD><TD>                                fContextMenu = fContextMenuManager.createContextMenu(getControl());</TD></TR><TR CLASS="z"><TD CLASS="l">720</TD><TD>                                getControl().setMenu(fContextMenu);</TD></TR><TR><TD CLASS="l">721</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">722</TD><TD>                                getSite().registerContextMenu(fContextMenuId, fContextMenuManager, this);</TD></TR><TR><TD CLASS="l">723</TD><TD> </TD></TR><TR><TD CLASS="l">724</TD><TD>                                /*</TD></TR><TR><TD CLASS="l">725</TD><TD>                                 * also register this menu for source page part and structured</TD></TR><TR><TD CLASS="l">726</TD><TD>                                 * text outline view ids</TD></TR><TR><TD CLASS="l">727</TD><TD>                                 */</TD></TR><TR CLASS="z"><TD CLASS="l">728</TD><TD>                                if (fEditor != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">729</TD><TD>                                        String partId = fEditor.getSite().getId();</TD></TR><TR CLASS="z"><TD CLASS="l">730</TD><TD>                                        if (partId != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">731</TD><TD>                                                getSite().registerContextMenu(partId + OUTLINE_CONTEXT_MENU_SUFFIX, fContextMenuManager, this);</TD></TR><TR><TD CLASS="l">732</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">733</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">734</TD><TD>                                getSite().registerContextMenu(OUTLINE_CONTEXT_MENU_ID, fContextMenuManager, this);</TD></TR><TR><TD CLASS="l">735</TD><TD>                        }</TD></TR><TR><TD CLASS="l"><A NAME="13">736</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">737</TD><TD>        }</TD></TR><TR><TD CLASS="l">738</TD><TD> </TD></TR><TR><TD CLASS="l">739</TD><TD>        void updateStatusLine(IStatusLineManager mgr, ISelection selection) {</TD></TR><TR CLASS="z"><TD CLASS="l">740</TD><TD>                String text = null;</TD></TR><TR CLASS="z"><TD CLASS="l">741</TD><TD>                Image image = null;</TD></TR><TR CLASS="z"><TD CLASS="l">742</TD><TD>                ILabelProvider statusLineLabelProvider = getConfiguration().getStatusLineLabelProvider(getTreeViewer());</TD></TR><TR CLASS="z"><TD CLASS="l">743</TD><TD>                if (statusLineLabelProvider != null &amp;&amp; selection instanceof IStructuredSelection &amp;&amp; !selection.isEmpty()) {</TD></TR><TR CLASS="z"><TD CLASS="l">744</TD><TD>                        Object firstElement = ((IStructuredSelection) selection).getFirstElement();</TD></TR><TR CLASS="z"><TD CLASS="l">745</TD><TD>                        text = statusLineLabelProvider.getText(firstElement);</TD></TR><TR CLASS="z"><TD CLASS="l">746</TD><TD>                        image = statusLineLabelProvider.getImage(firstElement);</TD></TR><TR><TD CLASS="l">747</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">748</TD><TD>                if (image == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">749</TD><TD>                        mgr.setMessage(text);</TD></TR><TR><TD CLASS="l">750</TD><TD>                }</TD></TR><TR><TD CLASS="l">751</TD><TD>                else {</TD></TR><TR CLASS="z"><TD CLASS="l">752</TD><TD>                        mgr.setMessage(image, text);</TD></TR><TR><TD CLASS="l">753</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">754</TD><TD>        }</TD></TR><TR><TD CLASS="l">755</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="b.html">org.eclipse.wst.sse.ui.internal.contentoutline</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/109.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/109.html
deleted file mode 100644
index 99d427b..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/109.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="b.html">org.eclipse.wst.sse.ui.internal.contentoutline</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">PropertyChangeUpdateAction.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>PropertyChangeUpdateAction.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/67)</TD><TD CLASS="h">0%   (0/20)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">PropertyChangeUpdateAction</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/67)</TD><TD CLASS="h">0%   (0/20)</TD></TR><TR><TD CLASS="f"><A HREF="#0">PropertyChangeUpdateAction (String, IPreferenceStore, String, boolean): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/31)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">getPreferenceKey (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#3">getPreferenceStore (): IPreferenceStore</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">isUpdateFromPropertyChange (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#5">run (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">setUpdateFromPropertyChange (boolean): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#7">update (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/2)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2005 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.contentoutline;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.jface.action.Action;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.jface.action.IAction;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.jface.preference.IPreferenceStore;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.ui.texteditor.IUpdate;</TD></TR><TR><TD CLASS="l">19</TD><TD> </TD></TR><TR><TD CLASS="l">20</TD><TD>/**</TD></TR><TR><TD CLASS="l">21</TD><TD> * An IAction.AS_CHECK_BOX action that sets and gets its checked state along</TD></TR><TR><TD CLASS="l">22</TD><TD> * with a value from a preference store. Should be used with</TD></TR><TR><TD CLASS="l">23</TD><TD> * PropertyChangeUpdateActionContributionItem to listen to changes in the</TD></TR><TR><TD CLASS="l">24</TD><TD> * store and update the checked state from PropertyChangeEvents.</TD></TR><TR><TD CLASS="l">25</TD><TD> */</TD></TR><TR><TD CLASS="l">26</TD><TD>public class PropertyChangeUpdateAction extends Action implements IUpdate {</TD></TR><TR><TD CLASS="l">27</TD><TD>        private String fPreferenceKey;</TD></TR><TR><TD CLASS="l"><A NAME="0">28</A></TD><TD>        private IPreferenceStore fStore;</TD></TR><TR CLASS="z"><TD CLASS="l">29</TD><TD>        private boolean fUpdateFromPropertyChange = true;</TD></TR><TR><TD CLASS="l">30</TD><TD> </TD></TR><TR><TD CLASS="l">31</TD><TD>        public PropertyChangeUpdateAction(String text, IPreferenceStore store, String preferenceKey, boolean defaultValue) {</TD></TR><TR CLASS="z"><TD CLASS="l">32</TD><TD>                super(text, IAction.AS_CHECK_BOX);</TD></TR><TR CLASS="z"><TD CLASS="l">33</TD><TD>                fPreferenceKey = preferenceKey;</TD></TR><TR CLASS="z"><TD CLASS="l">34</TD><TD>                fStore = store;</TD></TR><TR CLASS="z"><TD CLASS="l">35</TD><TD>                fStore.setDefault(getPreferenceKey(), defaultValue);</TD></TR><TR CLASS="z"><TD CLASS="l">36</TD><TD>                setId(getPreferenceKey());</TD></TR><TR CLASS="z"><TD CLASS="l">37</TD><TD>                setChecked(getPreferenceStore().getBoolean(getPreferenceKey()));</TD></TR><TR CLASS="z"><TD CLASS="l">38</TD><TD>        }</TD></TR><TR><TD CLASS="l">39</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="2">40</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">41</TD><TD>         * @return Returns the orderPreferenceKey.</TD></TR><TR><TD CLASS="l">42</TD><TD>         */</TD></TR><TR><TD CLASS="l">43</TD><TD>        public String getPreferenceKey() {</TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>                return fPreferenceKey;</TD></TR><TR><TD CLASS="l">45</TD><TD>        }</TD></TR><TR><TD CLASS="l">46</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="3">47</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">48</TD><TD>         * @return Returns the store.</TD></TR><TR><TD CLASS="l">49</TD><TD>         */</TD></TR><TR><TD CLASS="l">50</TD><TD>        public IPreferenceStore getPreferenceStore() {</TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>                return fStore;</TD></TR><TR><TD CLASS="l">52</TD><TD>        }</TD></TR><TR><TD CLASS="l">53</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="4">54</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">55</TD><TD>         * @return Returns the updateFromPropertyChange.</TD></TR><TR><TD CLASS="l">56</TD><TD>         */</TD></TR><TR><TD CLASS="l">57</TD><TD>        public boolean isUpdateFromPropertyChange() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="5">58</A></TD><TD>                return fUpdateFromPropertyChange;</TD></TR><TR><TD CLASS="l">59</TD><TD>        }</TD></TR><TR><TD CLASS="l">60</TD><TD> </TD></TR><TR><TD CLASS="l">61</TD><TD>        public final void run() {</TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>                super.run();</TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>                fStore.setValue(getPreferenceKey(), isChecked());</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                if (!isUpdateFromPropertyChange())</TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>                        update();</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>        }</TD></TR><TR><TD CLASS="l">67</TD><TD> </TD></TR><TR><TD CLASS="l">68</TD><TD>        /**</TD></TR><TR><TD CLASS="l"><A NAME="6">69</A></TD><TD>         * @param updateFromPropertyChange</TD></TR><TR><TD CLASS="l">70</TD><TD>         *            The updateFromPropertyChange to set.</TD></TR><TR><TD CLASS="l">71</TD><TD>         */</TD></TR><TR><TD CLASS="l">72</TD><TD>        public void setUpdateFromPropertyChange(boolean updateFromPropertyChange) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="7">73</A></TD><TD>                fUpdateFromPropertyChange = updateFromPropertyChange;</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>        }</TD></TR><TR><TD CLASS="l">75</TD><TD> </TD></TR><TR><TD CLASS="l">76</TD><TD>        public void update() {</TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>                setChecked(fStore.getBoolean(getPreferenceKey()));</TD></TR><TR CLASS="z"><TD CLASS="l">78</TD><TD>        }</TD></TR><TR><TD CLASS="l">79</TD><TD> </TD></TR><TR><TD CLASS="l">80</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="b.html">org.eclipse.wst.sse.ui.internal.contentoutline</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/10a.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/10a.html
deleted file mode 100644
index dcd80da..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/10a.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="b.html">org.eclipse.wst.sse.ui.internal.contentoutline</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">PropertyChangeUpdateActionContributionItem.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>PropertyChangeUpdateActionContributionItem.java</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/147)</TD><TD CLASS="h">0%   (0/34)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">PropertyChangeUpdateActionContributionItem</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/110)</TD><TD CLASS="h">0%   (0/28)</TD></TR><TR><TD CLASS="f"><A HREF="#0">&lt;static initializer&gt;</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">PropertyChangeUpdateActionContributionItem (PropertyChangeUpdateAction): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/27)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR><TD CLASS="f"><A HREF="#3">connect (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/21)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">disconnect (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/21)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#5">dispose (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">toString (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/24)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#7">PropertyChangeUpdateActionContributionItem$PreferenceUpdateListener</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/37)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#7">PropertyChangeUpdateActionContributionItem$PreferenceUpdateListener (Property...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#9">propertyChange (PropertyChangeEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/31)</TD><TD CLASS="h">0%   (0/5)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2005 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.contentoutline;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.core.runtime.Platform;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.jface.action.ActionContributionItem;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.jface.preference.IPreferenceStore;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.jface.util.IPropertyChangeListener;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.jface.util.PropertyChangeEvent;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.ui.texteditor.IUpdate;</TD></TR><TR><TD CLASS="l">21</TD><TD> </TD></TR><TR><TD CLASS="l">22</TD><TD>/**</TD></TR><TR><TD CLASS="l">23</TD><TD> * A listener on the given action's PreferenceStore. It calls .update() on the</TD></TR><TR><TD CLASS="l"><A NAME="7">24</A></TD><TD> * action when the given key changes value.</TD></TR><TR><TD CLASS="l">25</TD><TD> */</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="9">26</A></TD><TD>public class PropertyChangeUpdateActionContributionItem extends ActionContributionItem {</TD></TR><TR><TD CLASS="l">27</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">28</TD><TD>        private class PreferenceUpdateListener implements IPropertyChangeListener {</TD></TR><TR><TD CLASS="l">29</TD><TD>                public void propertyChange(PropertyChangeEvent event) {</TD></TR><TR CLASS="z"><TD CLASS="l">30</TD><TD>                        if (event.getProperty().equals(fProperty)) {</TD></TR><TR CLASS="z"><TD CLASS="l">31</TD><TD>                                if (debug) {</TD></TR><TR CLASS="z"><TD CLASS="l">32</TD><TD>                                        System.out.println(fProperty + &#34; preference changed, updating &#34; + getAction()); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">33</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">34</TD><TD>                                ((IUpdate) getAction()).update();</TD></TR><TR><TD CLASS="l"><A NAME="0">35</A></TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">36</TD><TD>                }</TD></TR><TR><TD CLASS="l">37</TD><TD>        }</TD></TR><TR><TD CLASS="l">38</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">39</TD><TD>        static final boolean debug = &#34;true&#34;.equalsIgnoreCase(Platform.getDebugOption(&#34;org.eclipse.wst.sse.ui/propertyChangeUpdateActionContributionItem&#34;)); //$NON-NLS-1$  //$NON-NLS-2$;</TD></TR><TR><TD CLASS="l">40</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>        private IPropertyChangeListener fListener = null;</TD></TR><TR><TD CLASS="l">42</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">43</A></TD><TD>        protected String fProperty = null;</TD></TR><TR><TD CLASS="l">44</TD><TD>        private IPreferenceStore fStore;</TD></TR><TR><TD CLASS="l">45</TD><TD> </TD></TR><TR><TD CLASS="l">46</TD><TD>        public PropertyChangeUpdateActionContributionItem(PropertyChangeUpdateAction action) {</TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>                super(action);</TD></TR><TR CLASS="z"><TD CLASS="l">48</TD><TD>                fProperty = action.getPreferenceKey();</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>                fStore = action.getPreferenceStore();</TD></TR><TR CLASS="z"><TD CLASS="l">50</TD><TD>                fListener = new PreferenceUpdateListener();</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">51</A></TD><TD>                connect();</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>        }</TD></TR><TR><TD CLASS="l">53</TD><TD> </TD></TR><TR><TD CLASS="l">54</TD><TD>        public void connect() {</TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                if (debug) {</TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>                        System.out.println(&#34;PropertyChangeUpdateActionContributionItem started listening for &#34; + fProperty); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">57</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>                if (fStore != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>                        fStore.addPropertyChangeListener(fListener);</TD></TR><TR><TD CLASS="l"><A NAME="4">60</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>        }</TD></TR><TR><TD CLASS="l">62</TD><TD> </TD></TR><TR><TD CLASS="l">63</TD><TD>        public void disconnect() {</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                if (debug) {</TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>                        System.out.println(&#34;PropertyChangeUpdateActionContributionItem stopped listening for &#34; + fProperty); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">66</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>                if (fStore != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>                        fStore.removePropertyChangeListener(fListener);</TD></TR><TR><TD CLASS="l"><A NAME="5">69</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">70</TD><TD>        }</TD></TR><TR><TD CLASS="l">71</TD><TD> </TD></TR><TR><TD CLASS="l">72</TD><TD>        public void dispose() {</TD></TR><TR CLASS="z"><TD CLASS="l">73</TD><TD>                super.dispose();</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>                disconnect();</TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>                fProperty = null;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="6">76</A></TD><TD>                fStore = null;</TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>        }</TD></TR><TR><TD CLASS="l">78</TD><TD> </TD></TR><TR><TD CLASS="l">79</TD><TD>        public String toString() {</TD></TR><TR CLASS="z"><TD CLASS="l">80</TD><TD>                if (getAction().getId() != null)</TD></TR><TR CLASS="z"><TD CLASS="l">81</TD><TD>                        return super.toString();</TD></TR><TR><TD CLASS="l">82</TD><TD>                else</TD></TR><TR CLASS="z"><TD CLASS="l">83</TD><TD>                        return getClass().getName() + &#34;(text=&#34; + getAction().getText() + &#34;)&#34;; //$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR><TD CLASS="l">84</TD><TD>        }</TD></TR><TR><TD CLASS="l">85</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="b.html">org.eclipse.wst.sse.ui.internal.contentoutline</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/10b.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/10b.html
deleted file mode 100644
index cf569a4..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/10b.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="c.html">org.eclipse.wst.sse.ui.internal.contentproperties.ui</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">ComboList.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>ComboList.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/40)</TD><TD CLASS="h">0%   (0/484)</TD><TD CLASS="h">0%   (0/131)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">ComboList</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/40)</TD><TD CLASS="h">0%   (0/484)</TD><TD CLASS="h">0%   (0/131)</TD></TR><TR><TD CLASS="f"><A HREF="#0">ComboList (Composite, int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">add (String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#3">add (String, String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">add (String, String, int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#5">add (String, int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">addFocusListener (FocusListener): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#7">addModifyListener (ModifyListener): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">addSelectionListener (SelectionListener): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#9">checkError (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/23)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">computeSize (int, int): Point</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#b">createHashtable (): Map</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/28)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#c">deselect (int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#d">deselectAll (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#e">equals (Object): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#f">exchangePosition (int, int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/37)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#10">existsAsKey (String): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#11">existsAsValue (String): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#12">getEnabled (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#13">getItem (int): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#14">getItemCount (): int</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#15">getKey (String): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/38)</TD><TD CLASS="h">0%   (0/12)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#16">getLayoutData (): Object</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#17">getSelectedValue (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#18">getSelectionIndex (): int</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#19">getText (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#1a">getValue (String): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/39)</TD><TD CLASS="h">0%   (0/12)</TD></TR><TR><TD CLASS="f"><A HREF="#1b">indexOf (String): int</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#1c">isConsistency (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#1d">remove (String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#1e">remove (int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#1f">select (int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#20">setEnabled (boolean): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#21">setFocus (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#22">setItem (String []): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/22)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#23">setItem (int, String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/18)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#24">setLayout (Layout): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#25">setLayoutData (Object): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#26">setSelection (Point): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#27">setText (String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#28">sortByKey (int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/47)</TD><TD CLASS="h">0%   (0/8)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.contentproperties.ui;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD> </TD></TR><TR><TD CLASS="l">16</TD><TD> </TD></TR><TR><TD CLASS="l">17</TD><TD>import java.util.ArrayList;</TD></TR><TR><TD CLASS="l">18</TD><TD>import java.util.Hashtable;</TD></TR><TR><TD CLASS="l">19</TD><TD>import java.util.List;</TD></TR><TR><TD CLASS="l">20</TD><TD>import java.util.Map;</TD></TR><TR><TD CLASS="l">21</TD><TD> </TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.swt.events.FocusListener;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.swt.graphics.Point;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.swt.widgets.Combo;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.swt.widgets.Composite;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.wst.sse.ui.internal.Logger;</TD></TR><TR><TD CLASS="l">27</TD><TD> </TD></TR><TR><TD CLASS="l">28</TD><TD> </TD></TR><TR><TD CLASS="l">29</TD><TD>/**</TD></TR><TR><TD CLASS="l">30</TD><TD> * @deprecated People should manage their own combo/list</TD></TR><TR><TD CLASS="l">31</TD><TD> */</TD></TR><TR><TD CLASS="l">32</TD><TD>public class ComboList {</TD></TR><TR><TD CLASS="l">33</TD><TD>        private Combo combo;</TD></TR><TR><TD CLASS="l"><A NAME="0">34</A></TD><TD> </TD></TR><TR><TD CLASS="l">35</TD><TD> </TD></TR><TR><TD CLASS="l">36</TD><TD>        private List list;</TD></TR><TR><TD CLASS="l">37</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">38</TD><TD>        public ComboList(Composite parent, int style) {</TD></TR><TR CLASS="z"><TD CLASS="l">39</TD><TD>                combo = new Combo(parent, style);</TD></TR><TR CLASS="z"><TD CLASS="l">40</TD><TD>                list = new ArrayList();</TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>        }</TD></TR><TR><TD CLASS="l">42</TD><TD> </TD></TR><TR><TD CLASS="l">43</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="2">44</A></TD><TD>        /*</TD></TR><TR><TD CLASS="l">45</TD><TD>         * following methods is original method of Combo class.</TD></TR><TR><TD CLASS="l">46</TD><TD>         */</TD></TR><TR><TD CLASS="l">47</TD><TD>        public void add(String key) {</TD></TR><TR CLASS="z"><TD CLASS="l">48</TD><TD>                checkError();</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>                combo.add(key);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="5">50</A></TD><TD>                list.add(key);</TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>        }</TD></TR><TR><TD CLASS="l">52</TD><TD> </TD></TR><TR><TD CLASS="l">53</TD><TD>        public void add(String key, int index) {</TD></TR><TR CLASS="z"><TD CLASS="l">54</TD><TD>                checkError();</TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                combo.add(key, index);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">56</A></TD><TD>                list.add(index, key);</TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>        }</TD></TR><TR><TD CLASS="l">58</TD><TD> </TD></TR><TR><TD CLASS="l">59</TD><TD>        public void add(String key, String value) {</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                checkError();</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                combo.add(key);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">62</A></TD><TD>                list.add(value);</TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>        }</TD></TR><TR><TD CLASS="l">64</TD><TD> </TD></TR><TR><TD CLASS="l">65</TD><TD>        public void add(String key, String value, int index) {</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                checkError();</TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>                combo.add(key, index);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="6">68</A></TD><TD>                list.add(index, value);</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>        }</TD></TR><TR><TD CLASS="l">70</TD><TD> </TD></TR><TR><TD CLASS="l">71</TD><TD>        public void addFocusListener(FocusListener listener) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="7">72</A></TD><TD>                combo.addFocusListener(listener);</TD></TR><TR CLASS="z"><TD CLASS="l">73</TD><TD>        }</TD></TR><TR><TD CLASS="l">74</TD><TD> </TD></TR><TR><TD CLASS="l">75</TD><TD>        public void addModifyListener(org.eclipse.swt.events.ModifyListener listener) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="8">76</A></TD><TD>                combo.addModifyListener(listener);</TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>        }</TD></TR><TR><TD CLASS="l">78</TD><TD> </TD></TR><TR><TD CLASS="l">79</TD><TD>        public void addSelectionListener(org.eclipse.swt.events.SelectionListener listener) {</TD></TR><TR CLASS="z"><TD CLASS="l">80</TD><TD>                combo.addSelectionListener(listener);</TD></TR><TR><TD CLASS="l"><A NAME="9">81</A></TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>        }</TD></TR><TR><TD CLASS="l">83</TD><TD> </TD></TR><TR><TD CLASS="l">84</TD><TD>        private void checkError() {</TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>                if (!isConsistency()) {</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                        Logger.log(Logger.WARNING, &#34;Difference between the number of keys[&#34; + combo.getItemCount() + &#34;] and the number of values[&#34; + list.size() + &#34;] in ComboList&#34;); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$</TD></TR><TR><TD CLASS="l"><A NAME="a">87</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">88</TD><TD>        }</TD></TR><TR><TD CLASS="l">89</TD><TD> </TD></TR><TR><TD CLASS="l">90</TD><TD>        public org.eclipse.swt.graphics.Point computeSize(int wHint, int hHint) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="b">91</A></TD><TD>                return combo.computeSize(wHint, hHint);</TD></TR><TR><TD CLASS="l">92</TD><TD>        }</TD></TR><TR><TD CLASS="l">93</TD><TD> </TD></TR><TR><TD CLASS="l">94</TD><TD>        public Map createHashtable() {</TD></TR><TR CLASS="z"><TD CLASS="l">95</TD><TD>                checkError();</TD></TR><TR CLASS="z"><TD CLASS="l">96</TD><TD>                Map m = new Hashtable();</TD></TR><TR CLASS="z"><TD CLASS="l">97</TD><TD>                for (int i = 0; i &lt; list.size(); i++)</TD></TR><TR CLASS="z"><TD CLASS="l">98</TD><TD>                        m.put(combo.getItem(i), list.get(i));</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="c">99</A></TD><TD>                return m;</TD></TR><TR><TD CLASS="l">100</TD><TD>        }</TD></TR><TR><TD CLASS="l">101</TD><TD> </TD></TR><TR><TD CLASS="l">102</TD><TD>        public void deselect(int i) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="d">103</A></TD><TD>                combo.deselect(i);</TD></TR><TR CLASS="z"><TD CLASS="l">104</TD><TD>        }</TD></TR><TR><TD CLASS="l">105</TD><TD> </TD></TR><TR><TD CLASS="l">106</TD><TD>        public void deselectAll() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="e">107</A></TD><TD>                combo.deselectAll();</TD></TR><TR CLASS="z"><TD CLASS="l">108</TD><TD>        }</TD></TR><TR><TD CLASS="l">109</TD><TD> </TD></TR><TR><TD CLASS="l">110</TD><TD>        public boolean equals(Object obj) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="f">111</A></TD><TD>                return combo.equals(obj);</TD></TR><TR><TD CLASS="l">112</TD><TD>        }</TD></TR><TR><TD CLASS="l">113</TD><TD> </TD></TR><TR><TD CLASS="l">114</TD><TD>        private void exchangePosition(int i, int j) {</TD></TR><TR CLASS="z"><TD CLASS="l">115</TD><TD>                String tmpKey = getItem(i);</TD></TR><TR CLASS="z"><TD CLASS="l">116</TD><TD>                Object tmpValue = list.remove(i);</TD></TR><TR><TD CLASS="l">117</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">118</TD><TD>                combo.setItem(i, getItem(j));</TD></TR><TR CLASS="z"><TD CLASS="l">119</TD><TD>                list.add(i, list.remove(j - 1));</TD></TR><TR><TD CLASS="l">120</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">121</TD><TD>                combo.setItem(j, tmpKey);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="10">122</A></TD><TD>                list.add(j, tmpValue);</TD></TR><TR CLASS="z"><TD CLASS="l">123</TD><TD>        }</TD></TR><TR><TD CLASS="l">124</TD><TD> </TD></TR><TR><TD CLASS="l">125</TD><TD>        public boolean existsAsKey(String str) {</TD></TR><TR CLASS="z"><TD CLASS="l">126</TD><TD>                if (combo.indexOf(str) &gt;= 0)</TD></TR><TR CLASS="z"><TD CLASS="l">127</TD><TD>                        return true;</TD></TR><TR><TD CLASS="l">128</TD><TD>                else</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="11">129</A></TD><TD>                        return false;</TD></TR><TR><TD CLASS="l">130</TD><TD>        }</TD></TR><TR><TD CLASS="l">131</TD><TD> </TD></TR><TR><TD CLASS="l">132</TD><TD>        public boolean existsAsValue(String str) {</TD></TR><TR CLASS="z"><TD CLASS="l">133</TD><TD>                if (list.indexOf(str) &gt;= 0)</TD></TR><TR CLASS="z"><TD CLASS="l">134</TD><TD>                        return true;</TD></TR><TR><TD CLASS="l">135</TD><TD>                else</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="12">136</A></TD><TD>                        return false;</TD></TR><TR><TD CLASS="l">137</TD><TD>        }</TD></TR><TR><TD CLASS="l">138</TD><TD> </TD></TR><TR><TD CLASS="l">139</TD><TD>        public boolean getEnabled() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="13">140</A></TD><TD>                return combo.getEnabled();</TD></TR><TR><TD CLASS="l">141</TD><TD>        }</TD></TR><TR><TD CLASS="l">142</TD><TD> </TD></TR><TR><TD CLASS="l">143</TD><TD>        public String getItem(int index) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="14">144</A></TD><TD>                return combo.getItem(index);</TD></TR><TR><TD CLASS="l">145</TD><TD>        }</TD></TR><TR><TD CLASS="l">146</TD><TD> </TD></TR><TR><TD CLASS="l">147</TD><TD>        public int getItemCount() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="15">148</A></TD><TD>                return combo.getItemCount();</TD></TR><TR><TD CLASS="l">149</TD><TD>        }</TD></TR><TR><TD CLASS="l">150</TD><TD> </TD></TR><TR><TD CLASS="l">151</TD><TD>        public String getKey(String value) {</TD></TR><TR CLASS="z"><TD CLASS="l">152</TD><TD>                if (value == null)</TD></TR><TR CLASS="z"><TD CLASS="l">153</TD><TD>                        return null;</TD></TR><TR CLASS="z"><TD CLASS="l">154</TD><TD>                int index = -1;</TD></TR><TR CLASS="z"><TD CLASS="l">155</TD><TD>                checkError();</TD></TR><TR CLASS="z"><TD CLASS="l">156</TD><TD>                for (int i = 0; i &lt; list.size(); i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">157</TD><TD>                        if (!list.get(i).equals(value))</TD></TR><TR CLASS="z"><TD CLASS="l">158</TD><TD>                                continue;</TD></TR><TR CLASS="z"><TD CLASS="l">159</TD><TD>                        index = i;</TD></TR><TR CLASS="z"><TD CLASS="l">160</TD><TD>                        break;</TD></TR><TR><TD CLASS="l">161</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">162</TD><TD>                if (index != -1)</TD></TR><TR CLASS="z"><TD CLASS="l">163</TD><TD>                        return combo.getItem(index);</TD></TR><TR><TD CLASS="l">164</TD><TD>                else</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="16">165</A></TD><TD>                        return null;</TD></TR><TR><TD CLASS="l">166</TD><TD>        }</TD></TR><TR><TD CLASS="l">167</TD><TD> </TD></TR><TR><TD CLASS="l">168</TD><TD>        public Object getLayoutData() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="17">169</A></TD><TD>                return combo.getLayoutData();</TD></TR><TR><TD CLASS="l">170</TD><TD>        }</TD></TR><TR><TD CLASS="l">171</TD><TD> </TD></TR><TR><TD CLASS="l">172</TD><TD>        public String getSelectedValue() {</TD></TR><TR CLASS="z"><TD CLASS="l">173</TD><TD>                checkError();</TD></TR><TR CLASS="z"><TD CLASS="l">174</TD><TD>                int index = getSelectionIndex();</TD></TR><TR CLASS="z"><TD CLASS="l">175</TD><TD>                if (index &lt; 0)</TD></TR><TR CLASS="z"><TD CLASS="l">176</TD><TD>                        return null;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="18">177</A></TD><TD>                return getValue(getItem(index));</TD></TR><TR><TD CLASS="l">178</TD><TD>        }</TD></TR><TR><TD CLASS="l">179</TD><TD> </TD></TR><TR><TD CLASS="l">180</TD><TD>        public int getSelectionIndex() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="19">181</A></TD><TD>                return combo.getSelectionIndex();</TD></TR><TR><TD CLASS="l">182</TD><TD>        }</TD></TR><TR><TD CLASS="l">183</TD><TD> </TD></TR><TR><TD CLASS="l">184</TD><TD>        public String getText() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="1a">185</A></TD><TD>                return combo.getText();</TD></TR><TR><TD CLASS="l">186</TD><TD>        }</TD></TR><TR><TD CLASS="l">187</TD><TD> </TD></TR><TR><TD CLASS="l">188</TD><TD>        public String getValue(String key) {</TD></TR><TR CLASS="z"><TD CLASS="l">189</TD><TD>                if (key == null)</TD></TR><TR CLASS="z"><TD CLASS="l">190</TD><TD>                        return null;</TD></TR><TR CLASS="z"><TD CLASS="l">191</TD><TD>                int index = -1;</TD></TR><TR CLASS="z"><TD CLASS="l">192</TD><TD>                checkError();</TD></TR><TR CLASS="z"><TD CLASS="l">193</TD><TD>                for (int i = 0; i &lt; combo.getItemCount(); i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">194</TD><TD>                        if (!combo.getItem(i).equals(key))</TD></TR><TR CLASS="z"><TD CLASS="l">195</TD><TD>                                continue;</TD></TR><TR CLASS="z"><TD CLASS="l">196</TD><TD>                        index = i;</TD></TR><TR CLASS="z"><TD CLASS="l">197</TD><TD>                        break;</TD></TR><TR><TD CLASS="l">198</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">199</TD><TD>                if (index != -1)</TD></TR><TR CLASS="z"><TD CLASS="l">200</TD><TD>                        return (String) list.get(index);</TD></TR><TR><TD CLASS="l">201</TD><TD>                else</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="1b">202</A></TD><TD>                        return null;</TD></TR><TR><TD CLASS="l">203</TD><TD>        }</TD></TR><TR><TD CLASS="l">204</TD><TD> </TD></TR><TR><TD CLASS="l">205</TD><TD>        public int indexOf(String str) {</TD></TR><TR CLASS="z"><TD CLASS="l">206</TD><TD>                return combo.indexOf(str);</TD></TR><TR><TD CLASS="l">207</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="1c">208</A></TD><TD> </TD></TR><TR><TD CLASS="l">209</TD><TD> </TD></TR><TR><TD CLASS="l">210</TD><TD>        public boolean isConsistency() {</TD></TR><TR><TD CLASS="l">211</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">212</TD><TD>                if (list.size() == combo.getItemCount())</TD></TR><TR CLASS="z"><TD CLASS="l">213</TD><TD>                        return true;</TD></TR><TR><TD CLASS="l">214</TD><TD>                else</TD></TR><TR CLASS="z"><TD CLASS="l">215</TD><TD>                        return false;</TD></TR><TR><TD CLASS="l"><A NAME="1e">216</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">217</TD><TD> </TD></TR><TR><TD CLASS="l">218</TD><TD> </TD></TR><TR><TD CLASS="l">219</TD><TD>        public void remove(int index) {</TD></TR><TR CLASS="z"><TD CLASS="l">220</TD><TD>                checkError();</TD></TR><TR CLASS="z"><TD CLASS="l">221</TD><TD>                combo.remove(index);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="1d">222</A></TD><TD>                list.remove(index);</TD></TR><TR CLASS="z"><TD CLASS="l">223</TD><TD>        }</TD></TR><TR><TD CLASS="l">224</TD><TD> </TD></TR><TR><TD CLASS="l">225</TD><TD>        public void remove(String str) {</TD></TR><TR CLASS="z"><TD CLASS="l">226</TD><TD>                checkError();</TD></TR><TR CLASS="z"><TD CLASS="l">227</TD><TD>                combo.remove(str);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="1f">228</A></TD><TD>                list.remove(str);</TD></TR><TR CLASS="z"><TD CLASS="l">229</TD><TD>        }</TD></TR><TR><TD CLASS="l">230</TD><TD> </TD></TR><TR><TD CLASS="l">231</TD><TD>        public void select(int index) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="20">232</A></TD><TD>                combo.select(index);</TD></TR><TR CLASS="z"><TD CLASS="l">233</TD><TD>        }</TD></TR><TR><TD CLASS="l">234</TD><TD> </TD></TR><TR><TD CLASS="l">235</TD><TD>        public void setEnabled(boolean enabled) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="21">236</A></TD><TD>                combo.setEnabled(enabled);</TD></TR><TR CLASS="z"><TD CLASS="l">237</TD><TD>        }</TD></TR><TR><TD CLASS="l">238</TD><TD> </TD></TR><TR><TD CLASS="l">239</TD><TD>        public boolean setFocus() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="23">240</A></TD><TD>                return combo.setFocus();</TD></TR><TR><TD CLASS="l">241</TD><TD>        }</TD></TR><TR><TD CLASS="l">242</TD><TD> </TD></TR><TR><TD CLASS="l">243</TD><TD>        public void setItem(int index, String str) {</TD></TR><TR CLASS="z"><TD CLASS="l">244</TD><TD>                checkError();</TD></TR><TR CLASS="z"><TD CLASS="l">245</TD><TD>                combo.setItem(index, str);</TD></TR><TR CLASS="z"><TD CLASS="l">246</TD><TD>                list.remove(index);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="22">247</A></TD><TD>                list.add(index, str);</TD></TR><TR CLASS="z"><TD CLASS="l">248</TD><TD>        }</TD></TR><TR><TD CLASS="l">249</TD><TD> </TD></TR><TR><TD CLASS="l">250</TD><TD>        public void setItem(String[] strArray) {</TD></TR><TR CLASS="z"><TD CLASS="l">251</TD><TD>                checkError();</TD></TR><TR CLASS="z"><TD CLASS="l">252</TD><TD>                combo.setItems(strArray);</TD></TR><TR CLASS="z"><TD CLASS="l">253</TD><TD>                for (int i = 0; i &lt; strArray.length; i++)</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="24">254</A></TD><TD>                        list.add(strArray[i]);</TD></TR><TR CLASS="z"><TD CLASS="l">255</TD><TD>        }</TD></TR><TR><TD CLASS="l">256</TD><TD> </TD></TR><TR><TD CLASS="l">257</TD><TD>        public void setLayout(org.eclipse.swt.widgets.Layout lo) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="25">258</A></TD><TD>                combo.setLayout(lo);</TD></TR><TR CLASS="z"><TD CLASS="l">259</TD><TD>        }</TD></TR><TR><TD CLASS="l">260</TD><TD> </TD></TR><TR><TD CLASS="l">261</TD><TD>        public void setLayoutData(Object layoutData) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="26">262</A></TD><TD>                combo.setLayoutData(layoutData);</TD></TR><TR CLASS="z"><TD CLASS="l">263</TD><TD>        }</TD></TR><TR><TD CLASS="l">264</TD><TD> </TD></TR><TR><TD CLASS="l">265</TD><TD>        public void setSelection(Point point) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="27">266</A></TD><TD>                combo.setSelection(point);</TD></TR><TR CLASS="z"><TD CLASS="l">267</TD><TD>        }</TD></TR><TR><TD CLASS="l">268</TD><TD> </TD></TR><TR><TD CLASS="l">269</TD><TD>        public void setText(String str) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="28">270</A></TD><TD>                combo.setText(str);</TD></TR><TR CLASS="z"><TD CLASS="l">271</TD><TD>        }</TD></TR><TR><TD CLASS="l">272</TD><TD> </TD></TR><TR><TD CLASS="l">273</TD><TD>        public void sortByKey(int offset) {</TD></TR><TR CLASS="z"><TD CLASS="l">274</TD><TD>                if (offset &lt; 0 || offset &gt; this.combo.getItemCount() - 1)</TD></TR><TR CLASS="z"><TD CLASS="l">275</TD><TD>                        return;</TD></TR><TR CLASS="z"><TD CLASS="l">276</TD><TD>                checkError();</TD></TR><TR><TD CLASS="l">277</TD><TD>                //</TD></TR><TR CLASS="z"><TD CLASS="l">278</TD><TD>                for (int i = offset; i &lt; combo.getItemCount() - 1; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">279</TD><TD>                        for (int j = i + 1; j &lt; combo.getItemCount(); j++) {</TD></TR><TR CLASS="z"><TD CLASS="l">280</TD><TD>                                if (getItem(i).compareTo(getItem(j)) &gt; 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">281</TD><TD>                                        exchangePosition(i, j);</TD></TR><TR><TD CLASS="l">282</TD><TD>                                }</TD></TR><TR><TD CLASS="l">283</TD><TD>                        }</TD></TR><TR><TD CLASS="l">284</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">285</TD><TD>        }</TD></TR><TR><TD CLASS="l">286</TD><TD> </TD></TR><TR><TD CLASS="l">287</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="c.html">org.eclipse.wst.sse.ui.internal.contentproperties.ui</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/10c.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/10c.html
deleted file mode 100644
index f0c3b40..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/10c.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="c.html">org.eclipse.wst.sse.ui.internal.contentproperties.ui</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">ComboListOnPropertyPage.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>ComboListOnPropertyPage.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/5)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">ComboListOnPropertyPage</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#0">ComboListOnPropertyPage (Composite, int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">getApplyValue (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#3">setApplyValue (String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.contentproperties.ui;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD> </TD></TR><TR><TD CLASS="l">16</TD><TD> </TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.swt.widgets.Composite;</TD></TR><TR><TD CLASS="l">18</TD><TD> </TD></TR><TR><TD CLASS="l">19</TD><TD>/**</TD></TR><TR><TD CLASS="l">20</TD><TD> * @deprecated People should manage their own combo/list</TD></TR><TR><TD CLASS="l">21</TD><TD> */</TD></TR><TR><TD CLASS="l">22</TD><TD>public final class ComboListOnPropertyPage extends ComboList {</TD></TR><TR><TD CLASS="l">23</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="0">24</A></TD><TD> </TD></TR><TR><TD CLASS="l">25</TD><TD>        private String currentApplyValue;</TD></TR><TR><TD CLASS="l">26</TD><TD> </TD></TR><TR><TD CLASS="l">27</TD><TD>        public ComboListOnPropertyPage(Composite parent, int style) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">28</A></TD><TD>                super(parent, style);</TD></TR><TR CLASS="z"><TD CLASS="l">29</TD><TD>        }</TD></TR><TR><TD CLASS="l">30</TD><TD> </TD></TR><TR><TD CLASS="l">31</TD><TD>        public final String getApplyValue() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">32</A></TD><TD>                return currentApplyValue;</TD></TR><TR><TD CLASS="l">33</TD><TD>        }</TD></TR><TR><TD CLASS="l">34</TD><TD> </TD></TR><TR><TD CLASS="l">35</TD><TD>        public final void setApplyValue(String currentApplyValue) {</TD></TR><TR CLASS="z"><TD CLASS="l">36</TD><TD>                this.currentApplyValue = currentApplyValue;</TD></TR><TR CLASS="z"><TD CLASS="l">37</TD><TD>        }</TD></TR><TR><TD CLASS="l">38</TD><TD> </TD></TR><TR><TD CLASS="l">39</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="c.html">org.eclipse.wst.sse.ui.internal.contentproperties.ui</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/10d.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/10d.html
deleted file mode 100644
index bba4b65..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/10d.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="c.html">org.eclipse.wst.sse.ui.internal.contentproperties.ui</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">ContentSettingsPropertyPage.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>ContentSettingsPropertyPage.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/425)</TD><TD CLASS="h">0%   (0/112)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">ContentSettingsPropertyPage</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/425)</TD><TD CLASS="h">0%   (0/112)</TD></TR><TR><TD CLASS="f"><A HREF="#0">&lt;static initializer&gt;</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/19)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">ContentSettingsPropertyPage (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/18)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR><TD CLASS="f"><A HREF="#3">cleanUp (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">createComboBoxOf (String): ComboListOnPropertyPage</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/48)</TD><TD CLASS="h">0%   (0/12)</TD></TR><TR><TD CLASS="f"><A HREF="#5">createComposite (Composite, int, int): Composite</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/34)</TD><TD CLASS="h">0%   (0/10)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">createContents (Composite): Control</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/17)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#7">isInitValueChanged (String, String): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/16)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">performDefaults (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/17)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#9">performOk (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/91)</TD><TD CLASS="h">0%   (0/22)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">setSelectionItem (ComboListOnPropertyPage, String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/23)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR><TD CLASS="f"><A HREF="#b">validateEdit (IFile, Shell): IStatus</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/106)</TD><TD CLASS="h">0%   (0/27)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#c">validateState (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/35)</TD><TD CLASS="h">0%   (0/9)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.contentproperties.ui;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.util.Hashtable;</TD></TR><TR><TD CLASS="l">16</TD><TD>import java.util.Map;</TD></TR><TR><TD CLASS="l">17</TD><TD> </TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.core.resources.IFile;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.core.resources.IProject;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.core.resources.IResource;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.core.resources.ResourcesPlugin;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.core.runtime.CoreException;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.core.runtime.IPath;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.core.runtime.IStatus;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.core.runtime.Status;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.swt.SWT;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.swt.layout.GridData;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.swt.layout.GridLayout;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.swt.widgets.Composite;</TD></TR><TR><TD CLASS="l">30</TD><TD>import org.eclipse.swt.widgets.Control;</TD></TR><TR><TD CLASS="l">31</TD><TD>import org.eclipse.swt.widgets.Label;</TD></TR><TR><TD CLASS="l">32</TD><TD>import org.eclipse.swt.widgets.Shell;</TD></TR><TR><TD CLASS="l">33</TD><TD>import org.eclipse.ui.dialogs.PropertyPage;</TD></TR><TR><TD CLASS="l">34</TD><TD>import org.eclipse.wst.sse.core.StructuredModelManager;</TD></TR><TR><TD CLASS="l">35</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.IModelManager;</TD></TR><TR><TD CLASS="l">36</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;</TD></TR><TR><TD CLASS="l">37</TD><TD>import org.eclipse.wst.sse.internal.contentproperties.ContentSettings;</TD></TR><TR><TD CLASS="l">38</TD><TD>import org.eclipse.wst.sse.internal.contentproperties.ContentSettingsCreator;</TD></TR><TR><TD CLASS="l">39</TD><TD>import org.eclipse.wst.sse.internal.contentproperties.IContentSettings;</TD></TR><TR><TD CLASS="l">40</TD><TD>import org.eclipse.wst.sse.ui.internal.SSEUIMessages;</TD></TR><TR><TD CLASS="l">41</TD><TD>import org.eclipse.wst.sse.ui.internal.SSEUIPlugin;</TD></TR><TR><TD CLASS="l">42</TD><TD> </TD></TR><TR><TD CLASS="l">43</TD><TD>/**</TD></TR><TR><TD CLASS="l">44</TD><TD> * @deprecated Please use</TD></TR><TR><TD CLASS="l">45</TD><TD> *             org.eclipse.wst.html.ui.internal.contentproperties.ui.WebContentSettingsPropertyPage</TD></TR><TR><TD CLASS="l">46</TD><TD> *             or</TD></TR><TR><TD CLASS="l"><A NAME="0">47</A></TD><TD> *             eclipse.wst.css.ui.internal.contentproperties.ui.CSSWebContentSettingsPropertyPage</TD></TR><TR><TD CLASS="l">48</TD><TD> *             instead</TD></TR><TR><TD CLASS="l">49</TD><TD> */</TD></TR><TR CLASS="z"><TD CLASS="l">50</TD><TD>public abstract class ContentSettingsPropertyPage extends PropertyPage {</TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>        private static final IStatus STATUS_ERROR = new Status(IStatus.ERROR, SSEUIPlugin.ID, IStatus.INFO, &#34;ERROR&#34;, null); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">52</TD><TD> </TD></TR><TR><TD CLASS="l">53</TD><TD>        // for validateEdit()</TD></TR><TR CLASS="z"><TD CLASS="l">54</TD><TD>        private static final IStatus STATUS_OK = new Status(IStatus.OK, SSEUIPlugin.ID, IStatus.OK, &#34;OK&#34;, null); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">55</TD><TD> </TD></TR><TR><TD CLASS="l">56</TD><TD>        /**</TD></TR><TR><TD CLASS="l">57</TD><TD>         * Method validateEdit.</TD></TR><TR><TD CLASS="l">58</TD><TD>         * </TD></TR><TR><TD CLASS="l">59</TD><TD>         * @param file</TD></TR><TR><TD CLASS="l">60</TD><TD>         *            org.eclipse.core.resources.IFile</TD></TR><TR><TD CLASS="l">61</TD><TD>         * @param context</TD></TR><TR><TD CLASS="l"><A NAME="b">62</A></TD><TD>         *            org.eclipse.swt.widgets.Shell</TD></TR><TR><TD CLASS="l">63</TD><TD>         * @return IStatus</TD></TR><TR><TD CLASS="l">64</TD><TD>         */</TD></TR><TR><TD CLASS="l">65</TD><TD>        private static IStatus validateEdit(IFile file, Shell context) {</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                if (file == null || !file.exists())</TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>                        return STATUS_ERROR;</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>                if (!(file.isReadOnly()))</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                        return STATUS_OK;</TD></TR><TR><TD CLASS="l">70</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>                IPath location = file.getLocation();</TD></TR><TR><TD CLASS="l">72</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">73</TD><TD>                final long beforeModifiedFromJavaIO = (location != null) ? location.toFile().lastModified() : IResource.NULL_STAMP;</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>                final long beforeModifiedFromIFile = file.getModificationStamp();</TD></TR><TR><TD CLASS="l">75</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>                IStatus status = ResourcesPlugin.getWorkspace().validateEdit(new IFile[]{file}, context);</TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>                if (!status.isOK())</TD></TR><TR CLASS="z"><TD CLASS="l">78</TD><TD>                        return status;</TD></TR><TR><TD CLASS="l">79</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">80</TD><TD>                final long afterModifiedFromJavaIO = (location != null) ? location.toFile().lastModified() : IResource.NULL_STAMP;</TD></TR><TR CLASS="z"><TD CLASS="l">81</TD><TD>                final long afterModifiedFromIFile = file.getModificationStamp();</TD></TR><TR><TD CLASS="l">82</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">83</TD><TD>                if (beforeModifiedFromJavaIO != afterModifiedFromJavaIO || beforeModifiedFromIFile != afterModifiedFromIFile) {</TD></TR><TR CLASS="z"><TD CLASS="l">84</TD><TD>                        IModelManager manager = StructuredModelManager.getModelManager();</TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>                        IStructuredModel model = manager.getExistingModelForRead(file);</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                        if (model != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>                                if (!model.isDirty()) {</TD></TR><TR><TD CLASS="l">88</TD><TD>                                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">89</TD><TD>                                                file.refreshLocal(IResource.DEPTH_ONE, null);</TD></TR><TR><TD CLASS="l">90</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">91</TD><TD>                                        catch (CoreException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">92</TD><TD>                                                return STATUS_ERROR;</TD></TR><TR><TD CLASS="l">93</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">94</TD><TD>                                        finally {</TD></TR><TR CLASS="z"><TD CLASS="l">95</TD><TD>                                                model.releaseFromRead();</TD></TR><TR CLASS="z"><TD CLASS="l">96</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">97</TD><TD>                                }</TD></TR><TR><TD CLASS="l">98</TD><TD>                                else {</TD></TR><TR CLASS="z"><TD CLASS="l">99</TD><TD>                                        model.releaseFromRead();</TD></TR><TR><TD CLASS="l">100</TD><TD>                                }</TD></TR><TR><TD CLASS="l">101</TD><TD>                        }</TD></TR><TR><TD CLASS="l">102</TD><TD>                }</TD></TR><TR><TD CLASS="l">103</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">104</TD><TD>                if ((beforeModifiedFromJavaIO != afterModifiedFromJavaIO) || (beforeModifiedFromIFile != afterModifiedFromIFile)) {</TD></TR><TR><TD CLASS="l">105</TD><TD>                        // the file is replaced. Modification cannot be</TD></TR><TR><TD CLASS="l">106</TD><TD>                        // applied.</TD></TR><TR CLASS="z"><TD CLASS="l">107</TD><TD>                        return STATUS_ERROR;</TD></TR><TR><TD CLASS="l">108</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">109</TD><TD>                return STATUS_OK;</TD></TR><TR><TD CLASS="l">110</TD><TD>        }</TD></TR><TR><TD CLASS="l">111</TD><TD> </TD></TR><TR><TD CLASS="l">112</TD><TD>        protected ComboListOnPropertyPage[] combo;</TD></TR><TR><TD CLASS="l">113</TD><TD>        protected Composite composite;</TD></TR><TR><TD CLASS="l">114</TD><TD> </TD></TR><TR><TD CLASS="l">115</TD><TD>        protected IContentSettings contentSettings;</TD></TR><TR CLASS="z"><TD CLASS="l">116</TD><TD>        protected final String CSS_LABEL = SSEUIMessages.UI_CSS_profile___2; //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">117</TD><TD>        protected final String DEVICE_LABEL = SSEUIMessages.UI_Target_Device___3; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">118</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">119</TD><TD>        protected final String DOCUMENT_LABEL = SSEUIMessages.UI_Default_HTML_DOCTYPE_ID___1; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">120</TD><TD>        protected int numberOfCombo;</TD></TR><TR CLASS="z"><TD CLASS="l">121</TD><TD>        protected int numCols = 1;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">122</A></TD><TD>        protected int numRows = 1;</TD></TR><TR><TD CLASS="l">123</TD><TD>        protected Composite propertyPage;</TD></TR><TR><TD CLASS="l">124</TD><TD> </TD></TR><TR><TD CLASS="l">125</TD><TD>        public ContentSettingsPropertyPage() {</TD></TR><TR CLASS="z"><TD CLASS="l">126</TD><TD>                super();</TD></TR><TR CLASS="z"><TD CLASS="l">127</TD><TD>        }</TD></TR><TR><TD CLASS="l">128</TD><TD> </TD></TR><TR><TD CLASS="l">129</TD><TD>        private void cleanUp() {</TD></TR><TR><TD CLASS="l"><A NAME="3">130</A></TD><TD>                // Are There any way to guarantee to call cleanUp() to re-load</TD></TR><TR><TD CLASS="l">131</TD><TD>                // downloaded .contentsettings file</TD></TR><TR><TD CLASS="l">132</TD><TD>                // after ContentSettings.releaseCache() in ContentSettingSelfHandler</TD></TR><TR><TD CLASS="l">133</TD><TD>                // class, which is called by resourceChangeEvent</TD></TR><TR CLASS="z"><TD CLASS="l">134</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="4">135</A></TD><TD> </TD></TR><TR><TD CLASS="l">136</TD><TD> </TD></TR><TR><TD CLASS="l">137</TD><TD>        protected ComboListOnPropertyPage createComboBoxOf(String title) {</TD></TR><TR><TD CLASS="l">138</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">139</TD><TD>                Label label = new Label(propertyPage, SWT.LEFT);</TD></TR><TR CLASS="z"><TD CLASS="l">140</TD><TD>                label.setText(title);</TD></TR><TR CLASS="z"><TD CLASS="l">141</TD><TD>                if (title != null &amp;&amp; title.startsWith(SSEUIMessages.UI_Default_HTML_DOCTYPE_ID___1)) { //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">142</TD><TD>                        GridData data = new GridData();</TD></TR><TR CLASS="z"><TD CLASS="l">143</TD><TD>                        data.horizontalIndent = 10;</TD></TR><TR CLASS="z"><TD CLASS="l">144</TD><TD>                        label.setLayoutData(data);</TD></TR><TR><TD CLASS="l">145</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">146</TD><TD>                ComboListOnPropertyPage combo = new ComboListOnPropertyPage(propertyPage, SWT.READ_ONLY);</TD></TR><TR CLASS="z"><TD CLASS="l">147</TD><TD>                GridData data = new GridData();</TD></TR><TR CLASS="z"><TD CLASS="l">148</TD><TD>                data.verticalAlignment = GridData.FILL;</TD></TR><TR><TD CLASS="l">149</TD><TD>                // data.horizontalAlignment= GridData.FILL;</TD></TR><TR CLASS="z"><TD CLASS="l">150</TD><TD>                data.grabExcessHorizontalSpace = true;</TD></TR><TR CLASS="z"><TD CLASS="l">151</TD><TD>                combo.setLayoutData(data);</TD></TR><TR CLASS="z"><TD CLASS="l">152</TD><TD>                return combo;</TD></TR><TR><TD CLASS="l">153</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="5">154</A></TD><TD> </TD></TR><TR><TD CLASS="l">155</TD><TD> </TD></TR><TR><TD CLASS="l">156</TD><TD> </TD></TR><TR><TD CLASS="l">157</TD><TD>        protected Composite createComposite(Composite parent, int numColumns, int numRows) {</TD></TR><TR CLASS="z"><TD CLASS="l">158</TD><TD>                Composite composite = new Composite(parent, SWT.NONE);</TD></TR><TR><TD CLASS="l">159</TD><TD> </TD></TR><TR><TD CLASS="l">160</TD><TD>                // GridLayout</TD></TR><TR CLASS="z"><TD CLASS="l">161</TD><TD>                GridLayout layout = new GridLayout();</TD></TR><TR CLASS="z"><TD CLASS="l">162</TD><TD>                layout.numColumns = numColumns;</TD></TR><TR CLASS="z"><TD CLASS="l">163</TD><TD>                composite.setLayout(layout);</TD></TR><TR><TD CLASS="l">164</TD><TD> </TD></TR><TR><TD CLASS="l">165</TD><TD>                // GridData</TD></TR><TR CLASS="z"><TD CLASS="l">166</TD><TD>                GridData data = new GridData();</TD></TR><TR CLASS="z"><TD CLASS="l">167</TD><TD>                data.verticalAlignment = GridData.FILL;</TD></TR><TR CLASS="z"><TD CLASS="l">168</TD><TD>                data.horizontalAlignment = GridData.FILL;</TD></TR><TR CLASS="z"><TD CLASS="l">169</TD><TD>                data.grabExcessHorizontalSpace = true;</TD></TR><TR><TD CLASS="l">170</TD><TD>                // data.horizontalSpan=numColumns;</TD></TR><TR><TD CLASS="l">171</TD><TD>                // data.verticalSpan=numRows;</TD></TR><TR><TD CLASS="l">172</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">173</TD><TD>                composite.setLayoutData(data);</TD></TR><TR CLASS="z"><TD CLASS="l">174</TD><TD>                return composite;</TD></TR><TR><TD CLASS="l">175</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="6">176</A></TD><TD> </TD></TR><TR><TD CLASS="l">177</TD><TD> </TD></TR><TR><TD CLASS="l">178</TD><TD>        protected Control createContents(Composite parent) {</TD></TR><TR><TD CLASS="l">179</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">180</TD><TD>                contentSettings = ContentSettingsCreator.create();</TD></TR><TR><TD CLASS="l">181</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">182</TD><TD>                propertyPage = createComposite(parent, numCols, numRows);</TD></TR><TR><TD CLASS="l">183</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">184</TD><TD>                createSettingsPageGUI();</TD></TR><TR><TD CLASS="l">185</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">186</TD><TD>                return propertyPage;</TD></TR><TR><TD CLASS="l">187</TD><TD> </TD></TR><TR><TD CLASS="l">188</TD><TD> </TD></TR><TR><TD CLASS="l">189</TD><TD>        }</TD></TR><TR><TD CLASS="l">190</TD><TD> </TD></TR><TR><TD CLASS="l">191</TD><TD>        protected abstract void createSettingsPageGUI();</TD></TR><TR><TD CLASS="l">192</TD><TD> </TD></TR><TR><TD CLASS="l">193</TD><TD>        // protected abstract void applySelectedPropertyValue(String str,int</TD></TR><TR><TD CLASS="l">194</TD><TD>        // index);</TD></TR><TR><TD CLASS="l">195</TD><TD>        protected abstract void deleteNoneProperty(int index);</TD></TR><TR><TD CLASS="l"><A NAME="7">196</A></TD><TD> </TD></TR><TR><TD CLASS="l">197</TD><TD> </TD></TR><TR><TD CLASS="l">198</TD><TD> </TD></TR><TR><TD CLASS="l">199</TD><TD>        protected boolean isInitValueChanged(String before, String after) {</TD></TR><TR CLASS="z"><TD CLASS="l">200</TD><TD>                if (before == null &amp;&amp; after == null)</TD></TR><TR CLASS="z"><TD CLASS="l">201</TD><TD>                        return false;</TD></TR><TR CLASS="z"><TD CLASS="l">202</TD><TD>                if (before != null &amp;&amp; before.equals(after))</TD></TR><TR CLASS="z"><TD CLASS="l">203</TD><TD>                        return false;</TD></TR><TR CLASS="z"><TD CLASS="l">204</TD><TD>                return true;</TD></TR><TR><TD CLASS="l">205</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="8">206</A></TD><TD> </TD></TR><TR><TD CLASS="l">207</TD><TD> </TD></TR><TR><TD CLASS="l">208</TD><TD> </TD></TR><TR><TD CLASS="l">209</TD><TD>        protected void performDefaults() {</TD></TR><TR CLASS="z"><TD CLASS="l">210</TD><TD>                super.performDefaults();</TD></TR><TR><TD CLASS="l">211</TD><TD>                // selected(applied) item is restored.</TD></TR><TR CLASS="z"><TD CLASS="l">212</TD><TD>                for (int i = 0; i &lt; numberOfCombo; i++) {</TD></TR><TR><TD CLASS="l">213</TD><TD>                        // String appliedValue = combo[i].getApplyValue();</TD></TR><TR><TD CLASS="l">214</TD><TD>                        // setSelectionItem(combo[i],appliedValue);</TD></TR><TR CLASS="z"><TD CLASS="l">215</TD><TD>                        combo[i].select(0); // select none.</TD></TR><TR><TD CLASS="l">216</TD><TD> </TD></TR><TR><TD CLASS="l">217</TD><TD>                }</TD></TR><TR><TD CLASS="l"><A NAME="9">218</A></TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">219</TD><TD>        }</TD></TR><TR><TD CLASS="l">220</TD><TD> </TD></TR><TR><TD CLASS="l">221</TD><TD>        public boolean performOk() {</TD></TR><TR CLASS="z"><TD CLASS="l">222</TD><TD>                Map properties = new Hashtable();</TD></TR><TR CLASS="z"><TD CLASS="l">223</TD><TD>                if (validateState() == false) {</TD></TR><TR CLASS="z"><TD CLASS="l">224</TD><TD>                        cleanUp();</TD></TR><TR CLASS="z"><TD CLASS="l">225</TD><TD>                        return true;</TD></TR><TR><TD CLASS="l">226</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">227</TD><TD>                for (int i = 0; i &lt; numberOfCombo; i++) {</TD></TR><TR><TD CLASS="l">228</TD><TD>                        // get selected item in Combo box.</TD></TR><TR CLASS="z"><TD CLASS="l">229</TD><TD>                        String str = combo[i].getSelectedValue();</TD></TR><TR CLASS="z"><TD CLASS="l">230</TD><TD>                        if (str == null)</TD></TR><TR CLASS="z"><TD CLASS="l">231</TD><TD>                                continue;</TD></TR><TR><TD CLASS="l">232</TD><TD>                        // if no change, skip setProperty</TD></TR><TR CLASS="z"><TD CLASS="l">233</TD><TD>                        if (!isInitValueChanged(combo[i].getApplyValue(), str))</TD></TR><TR CLASS="z"><TD CLASS="l">234</TD><TD>                                continue;</TD></TR><TR><TD CLASS="l">235</TD><TD>                        // if NONE is selected, delete attr instance (and write</TD></TR><TR><TD CLASS="l">236</TD><TD>                        // .contentsettings.)</TD></TR><TR CLASS="z"><TD CLASS="l">237</TD><TD>                        if (str != null &amp;&amp; str.length() == 0)</TD></TR><TR CLASS="z"><TD CLASS="l">238</TD><TD>                                deleteNoneProperty(i);</TD></TR><TR><TD CLASS="l">239</TD><TD>                        else</TD></TR><TR CLASS="z"><TD CLASS="l">240</TD><TD>                                putSelectedPropertyInto(properties, str, i);</TD></TR><TR><TD CLASS="l">241</TD><TD>                        // applySelectedPropertyValue(str,i);</TD></TR><TR><TD CLASS="l">242</TD><TD> </TD></TR><TR><TD CLASS="l">243</TD><TD>                        // set apply value in ComboListOnPropertyPage.</TD></TR><TR CLASS="z"><TD CLASS="l">244</TD><TD>                        combo[i].setApplyValue(str);</TD></TR><TR><TD CLASS="l">245</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">246</TD><TD>                if (properties != null &amp;&amp; !properties.isEmpty())</TD></TR><TR CLASS="z"><TD CLASS="l">247</TD><TD>                        contentSettings.setProperties((IResource) super.getElement(), properties);</TD></TR><TR CLASS="z"><TD CLASS="l">248</TD><TD>                if (properties != null)</TD></TR><TR CLASS="z"><TD CLASS="l">249</TD><TD>                        properties.clear();</TD></TR><TR CLASS="z"><TD CLASS="l">250</TD><TD>                properties = null;</TD></TR><TR CLASS="z"><TD CLASS="l">251</TD><TD>                if (!contentSettings.existsProperties((IResource) super.getElement()))</TD></TR><TR CLASS="z"><TD CLASS="l">252</TD><TD>                        contentSettings.deleteAllProperties((IResource) super.getElement());</TD></TR><TR CLASS="z"><TD CLASS="l">253</TD><TD>                return true;</TD></TR><TR><TD CLASS="l">254</TD><TD>        }</TD></TR><TR><TD CLASS="l">255</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="a">256</A></TD><TD>        protected abstract void putSelectedPropertyInto(Map properties, String str, int i);</TD></TR><TR><TD CLASS="l">257</TD><TD> </TD></TR><TR><TD CLASS="l">258</TD><TD> </TD></TR><TR><TD CLASS="l">259</TD><TD>        protected void setSelectionItem(ComboListOnPropertyPage combo, String value) {</TD></TR><TR CLASS="z"><TD CLASS="l">260</TD><TD>                if (combo.getItemCount() &lt;= 0)</TD></TR><TR CLASS="z"><TD CLASS="l">261</TD><TD>                        return;</TD></TR><TR CLASS="z"><TD CLASS="l">262</TD><TD>                combo.setApplyValue(value);</TD></TR><TR CLASS="z"><TD CLASS="l">263</TD><TD>                String item = combo.getKey(value);</TD></TR><TR CLASS="z"><TD CLASS="l">264</TD><TD>                if (item != null)</TD></TR><TR CLASS="z"><TD CLASS="l">265</TD><TD>                        combo.select(combo.indexOf(item));</TD></TR><TR><TD CLASS="l">266</TD><TD>                else</TD></TR><TR CLASS="z"><TD CLASS="l">267</TD><TD>                        combo.select(0);</TD></TR><TR><TD CLASS="l">268</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">269</TD><TD>        }</TD></TR><TR><TD CLASS="l">270</TD><TD> </TD></TR><TR><TD CLASS="l">271</TD><TD>        /*</TD></TR><TR><TD CLASS="l">272</TD><TD>         * Validate Edit. Similar function will be in HTMLCommand.java</TD></TR><TR><TD CLASS="l">273</TD><TD>         * ContentSettingsPropertyPage.java CSSActionManager.java</TD></TR><TR><TD CLASS="l">274</TD><TD>         * DesignRedoAction.java DesignUndoAction.java</TD></TR><TR><TD CLASS="l">275</TD><TD>         * HTMLConversionProcessor.java</TD></TR><TR><TD CLASS="l"><A NAME="c">276</A></TD><TD>         */</TD></TR><TR><TD CLASS="l">277</TD><TD>        private boolean validateState() {</TD></TR><TR><TD CLASS="l">278</TD><TD> </TD></TR><TR><TD CLASS="l">279</TD><TD>                // get IFile of .contentsettings</TD></TR><TR CLASS="z"><TD CLASS="l">280</TD><TD>                final String name = ContentSettings.getContentSettingsName();</TD></TR><TR CLASS="z"><TD CLASS="l">281</TD><TD>                final IResource resource = (IResource) super.getElement();</TD></TR><TR CLASS="z"><TD CLASS="l">282</TD><TD>                final IProject project = resource.getProject();</TD></TR><TR CLASS="z"><TD CLASS="l">283</TD><TD>                IFile file = project.getFile(name);</TD></TR><TR><TD CLASS="l">284</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">285</TD><TD>                if (file != null &amp;&amp; !file.exists())</TD></TR><TR CLASS="z"><TD CLASS="l">286</TD><TD>                        return true; // Is this really OK?</TD></TR><TR><TD CLASS="l">287</TD><TD>                // If false should be returned,</TD></TR><TR><TD CLASS="l">288</TD><TD>                // This statemant can be removed,</TD></TR><TR><TD CLASS="l">289</TD><TD>                // since ModelManagerUtil.validateEdit()</TD></TR><TR><TD CLASS="l">290</TD><TD>                // returns error to this case.</TD></TR><TR><TD CLASS="l">291</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">292</TD><TD>                Shell shell = getControl().getShell();</TD></TR><TR CLASS="z"><TD CLASS="l">293</TD><TD>                IStatus status = validateEdit(file, shell);</TD></TR><TR CLASS="z"><TD CLASS="l">294</TD><TD>                return status.isOK() ? true : false;</TD></TR><TR><TD CLASS="l">295</TD><TD>        }</TD></TR><TR><TD CLASS="l">296</TD><TD> </TD></TR><TR><TD CLASS="l">297</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="c.html">org.eclipse.wst.sse.ui.internal.contentproperties.ui</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/10e.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/10e.html
deleted file mode 100644
index 8d40f69..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/10e.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="d.html">org.eclipse.wst.sse.ui.internal.debug</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">BreakpointRulerAction.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>BreakpointRulerAction.java</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/18)</TD><TD CLASS="h">0%   (0/498)</TD><TD CLASS="h">0%   (0/126)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">BreakpointRulerAction</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/476)</TD><TD CLASS="h">0%   (0/118)</TD></TR><TR><TD CLASS="f"><A HREF="#1">BreakpointRulerAction (ITextEditor, IVerticalRulerInfo): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/47)</TD><TD CLASS="h">0%   (0/14)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">getAnnotationModel (): AbstractMarkerAnnotationModel</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/18)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#3">getBreakpoints (IMarker []): IBreakpoint []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/35)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">getDocument (): IDocument</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#0">getFileExtension (IEditorInput): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/45)</TD><TD CLASS="h">0%   (0/14)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">getMarkers (): IMarker []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/59)</TD><TD CLASS="h">0%   (0/12)</TD></TR><TR><TD CLASS="f"><A HREF="#7">getResource (): IResource</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">getResource (IEditorInput): IResource</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/178)</TD><TD CLASS="h">0%   (0/41)</TD></TR><TR><TD CLASS="f"><A HREF="#9">getRulerInfo (): IVerticalRulerInfo</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">getTextEditor (): ITextEditor</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#b">hasMarkers (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/47)</TD><TD CLASS="h">0%   (0/11)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#c">includesRulerLine (Position, IDocument): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/22)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#d">BreakpointRulerAction$1</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#d">BreakpointRulerAction$1 (BreakpointRulerAction): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#f">menuAboutToShow (IMenuManager): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#10">BreakpointRulerAction$MouseUpdater</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#10">BreakpointRulerAction$MouseUpdater (BreakpointRulerAction): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#12">mouseDoubleClick (MouseEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#13">mouseDown (MouseEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#14">mouseUp (MouseEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR CLASS="z"><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     Pete Carapetyan/Genuitec - 244835 - Enable/Disable breakpoint action does not refresh its label</TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.debug;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.util.ArrayList;</TD></TR><TR><TD CLASS="l">16</TD><TD>import java.util.List;</TD></TR><TR><TD CLASS="l">17</TD><TD> </TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.core.resources.IFile;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.core.resources.IMarker;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.core.resources.IResource;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.core.runtime.CoreException;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.core.runtime.IPath;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.debug.core.DebugPlugin;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.debug.core.IBreakpointManager;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.debug.core.model.IBreakpoint;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.jface.action.Action;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.jface.action.IMenuListener;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.jface.action.IMenuManager;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.jface.text.BadLocationException;</TD></TR><TR><TD CLASS="l">30</TD><TD>import org.eclipse.jface.text.IDocument;</TD></TR><TR><TD CLASS="l">31</TD><TD>import org.eclipse.jface.text.Position;</TD></TR><TR><TD CLASS="l">32</TD><TD>import org.eclipse.jface.text.source.IAnnotationModel;</TD></TR><TR><TD CLASS="l">33</TD><TD>import org.eclipse.jface.text.source.IVerticalRulerInfo;</TD></TR><TR><TD CLASS="l">34</TD><TD>import org.eclipse.swt.events.MouseEvent;</TD></TR><TR><TD CLASS="l">35</TD><TD>import org.eclipse.swt.events.MouseListener;</TD></TR><TR><TD CLASS="l">36</TD><TD>import org.eclipse.ui.IEditorInput;</TD></TR><TR><TD CLASS="l">37</TD><TD>import org.eclipse.ui.IEditorPart;</TD></TR><TR><TD CLASS="l">38</TD><TD>import org.eclipse.ui.IFileEditorInput;</TD></TR><TR><TD CLASS="l">39</TD><TD>import org.eclipse.ui.IPartService;</TD></TR><TR><TD CLASS="l">40</TD><TD>import org.eclipse.ui.IStorageEditorInput;</TD></TR><TR><TD CLASS="l">41</TD><TD>import org.eclipse.ui.IWorkbench;</TD></TR><TR><TD CLASS="l">42</TD><TD>import org.eclipse.ui.IWorkbenchWindow;</TD></TR><TR><TD CLASS="l">43</TD><TD>import org.eclipse.ui.texteditor.AbstractMarkerAnnotationModel;</TD></TR><TR><TD CLASS="l">44</TD><TD>import org.eclipse.ui.texteditor.IDocumentProvider;</TD></TR><TR><TD CLASS="l">45</TD><TD>import org.eclipse.ui.texteditor.ITextEditor;</TD></TR><TR><TD CLASS="l">46</TD><TD>import org.eclipse.ui.texteditor.ITextEditorExtension;</TD></TR><TR><TD CLASS="l">47</TD><TD>import org.eclipse.ui.texteditor.IUpdate;</TD></TR><TR><TD CLASS="l">48</TD><TD>import org.eclipse.wst.sse.core.StructuredModelManager;</TD></TR><TR><TD CLASS="l">49</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;</TD></TR><TR><TD CLASS="l">50</TD><TD>import org.eclipse.wst.sse.ui.internal.Logger;</TD></TR><TR><TD CLASS="l">51</TD><TD>import org.eclipse.wst.sse.ui.internal.SSEUIPlugin;</TD></TR><TR><TD CLASS="l">52</TD><TD>import org.eclipse.wst.sse.ui.internal.extension.BreakpointProviderBuilder;</TD></TR><TR><TD CLASS="l">53</TD><TD>import org.eclipse.wst.sse.ui.internal.provisional.extensions.breakpoint.IBreakpointProvider;</TD></TR><TR><TD CLASS="l"><A NAME="10">54</A></TD><TD> </TD></TR><TR><TD CLASS="l">55</TD><TD> </TD></TR><TR><TD CLASS="l">56</TD><TD>public abstract class BreakpointRulerAction extends Action implements IUpdate {</TD></TR><TR><TD CLASS="l"><A NAME="12">57</A></TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>        protected class MouseUpdater implements MouseListener {</TD></TR><TR><TD CLASS="l">59</TD><TD>                public void mouseDoubleClick(MouseEvent e) {</TD></TR><TR><TD CLASS="l">60</TD><TD>                        // do nothing (here)</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="13">61</A></TD><TD>                }</TD></TR><TR><TD CLASS="l">62</TD><TD> </TD></TR><TR><TD CLASS="l">63</TD><TD>                public void mouseDown(MouseEvent e) {</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                        update();</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="14">65</A></TD><TD>                }</TD></TR><TR><TD CLASS="l">66</TD><TD> </TD></TR><TR><TD CLASS="l">67</TD><TD>                public void mouseUp(MouseEvent e) {</TD></TR><TR><TD CLASS="l">68</TD><TD>                        // do nothing</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="0">69</A></TD><TD>                }</TD></TR><TR><TD CLASS="l">70</TD><TD>        }</TD></TR><TR><TD CLASS="l">71</TD><TD> </TD></TR><TR><TD CLASS="l">72</TD><TD>        public static final String getFileExtension(IEditorInput input) {</TD></TR><TR CLASS="z"><TD CLASS="l">73</TD><TD>                IPath path = null;</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>                if (input instanceof IStorageEditorInput) {</TD></TR><TR><TD CLASS="l">75</TD><TD>                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>                                path = ((IStorageEditorInput) input).getStorage().getFullPath();</TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>                        } catch (CoreException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">78</TD><TD>                                Logger.logException(e);</TD></TR><TR><TD CLASS="l">79</TD><TD>                        }</TD></TR><TR><TD CLASS="l">80</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">81</TD><TD>                if (path != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>                        return path.getFileExtension();</TD></TR><TR><TD CLASS="l">83</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">84</TD><TD>                String name = input.getName();</TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>                int index = name.lastIndexOf('.');</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                if (index == -1)</TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>                        return null;</TD></TR><TR CLASS="z"><TD CLASS="l">88</TD><TD>                if (index == (name.length() - 1))</TD></TR><TR CLASS="z"><TD CLASS="l">89</TD><TD>                        return &#34;&#34;; //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="8">90</A></TD><TD>                return name.substring(index + 1);</TD></TR><TR><TD CLASS="l">91</TD><TD>        }</TD></TR><TR><TD CLASS="l">92</TD><TD> </TD></TR><TR><TD CLASS="l">93</TD><TD>        public static final IResource getResource(IEditorInput input) {</TD></TR><TR CLASS="z"><TD CLASS="l">94</TD><TD>                IResource resource = null;</TD></TR><TR><TD CLASS="l">95</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">96</TD><TD>                if (input instanceof IFileEditorInput)</TD></TR><TR CLASS="z"><TD CLASS="l">97</TD><TD>                        resource = ((IFileEditorInput) input).getFile();</TD></TR><TR CLASS="z"><TD CLASS="l">98</TD><TD>                if (resource == null)</TD></TR><TR CLASS="z"><TD CLASS="l">99</TD><TD>                        resource = (IResource) input.getAdapter(IFile.class);</TD></TR><TR CLASS="z"><TD CLASS="l">100</TD><TD>                if (resource == null)</TD></TR><TR CLASS="z"><TD CLASS="l">101</TD><TD>                        resource = (IResource) input.getAdapter(IResource.class);</TD></TR><TR><TD CLASS="l">102</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">103</TD><TD>                IEditorPart editorPart = null;</TD></TR><TR CLASS="z"><TD CLASS="l">104</TD><TD>                if (resource == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">105</TD><TD>                        IWorkbench workbench = SSEUIPlugin.getDefault().getWorkbench();</TD></TR><TR CLASS="z"><TD CLASS="l">106</TD><TD>                        if (workbench != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">107</TD><TD>                                IWorkbenchWindow window = workbench.getActiveWorkbenchWindow();</TD></TR><TR CLASS="z"><TD CLASS="l">108</TD><TD>                                if (window != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">109</TD><TD>                                        IPartService service = window.getPartService();</TD></TR><TR CLASS="z"><TD CLASS="l">110</TD><TD>                                        if (service != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">111</TD><TD>                                                Object part = service.getActivePart();</TD></TR><TR CLASS="z"><TD CLASS="l">112</TD><TD>                                                if (part != null &amp;&amp; part instanceof IEditorPart) {</TD></TR><TR CLASS="z"><TD CLASS="l">113</TD><TD>                                                        editorPart = (IEditorPart) part;</TD></TR><TR CLASS="z"><TD CLASS="l">114</TD><TD>                                                        if (editorPart != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">115</TD><TD>                                                                IStructuredModel model = null;</TD></TR><TR CLASS="z"><TD CLASS="l">116</TD><TD>                                                                ITextEditor textEditor = null;</TD></TR><TR><TD CLASS="l">117</TD><TD>                                                                try {</TD></TR><TR CLASS="z"><TD CLASS="l">118</TD><TD>                                                                        if (editorPart instanceof ITextEditor) {</TD></TR><TR CLASS="z"><TD CLASS="l">119</TD><TD>                                                                                textEditor = (ITextEditor) editorPart;</TD></TR><TR><TD CLASS="l">120</TD><TD>                                                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">121</TD><TD>                                                                        if (textEditor == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">122</TD><TD>                                                                                textEditor = (ITextEditor) editorPart.getAdapter(ITextEditor.class);</TD></TR><TR><TD CLASS="l">123</TD><TD>                                                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">124</TD><TD>                                                                        if (textEditor != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">125</TD><TD>                                                                                IDocument textDocument = textEditor.getDocumentProvider().getDocument(input);</TD></TR><TR CLASS="z"><TD CLASS="l">126</TD><TD>                                                                                model = StructuredModelManager.getModelManager().getExistingModelForRead(textDocument);</TD></TR><TR CLASS="z"><TD CLASS="l">127</TD><TD>                                                                                if (model != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">128</TD><TD>                                                                                        resource = BreakpointProviderBuilder.getInstance().getResource(input, model.getContentTypeIdentifier(), getFileExtension(input));</TD></TR><TR><TD CLASS="l">129</TD><TD>                                                                                }</TD></TR><TR><TD CLASS="l">130</TD><TD>                                                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">131</TD><TD>                                                                        if (resource == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">132</TD><TD>                                                                                IBreakpointProvider[] providers = BreakpointProviderBuilder.getInstance().getBreakpointProviders(editorPart, null, getFileExtension(input));</TD></TR><TR CLASS="z"><TD CLASS="l">133</TD><TD>                                                                                for (int i = 0; i &lt; providers.length &amp;&amp; resource == null; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">134</TD><TD>                                                                                        resource = providers[i].getResource(input);</TD></TR><TR><TD CLASS="l">135</TD><TD>                                                                                }</TD></TR><TR><TD CLASS="l">136</TD><TD>                                                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">137</TD><TD>                                                                } catch (Exception e) {</TD></TR><TR CLASS="z"><TD CLASS="l">138</TD><TD>                                                                        Logger.logException(e);</TD></TR><TR CLASS="z"><TD CLASS="l">139</TD><TD>                                                                } finally {</TD></TR><TR CLASS="z"><TD CLASS="l">140</TD><TD>                                                                        if (model != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">141</TD><TD>                                                                                model.releaseFromRead();</TD></TR><TR><TD CLASS="l">142</TD><TD>                                                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">143</TD><TD>                                                                }</TD></TR><TR><TD CLASS="l">144</TD><TD>                                                        }</TD></TR><TR><TD CLASS="l">145</TD><TD> </TD></TR><TR><TD CLASS="l">146</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">147</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">148</TD><TD>                                }</TD></TR><TR><TD CLASS="l">149</TD><TD> </TD></TR><TR><TD CLASS="l">150</TD><TD>                        }</TD></TR><TR><TD CLASS="l">151</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">152</TD><TD>                return resource;</TD></TR><TR><TD CLASS="l">153</TD><TD>        }</TD></TR><TR><TD CLASS="l">154</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">155</TD><TD>        protected MouseListener fMouseListener = null;</TD></TR><TR><TD CLASS="l">156</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">157</TD><TD>        protected IVerticalRulerInfo fRulerInfo = null;</TD></TR><TR CLASS="z"><TD CLASS="l">158</TD><TD>        protected ITextEditor fTextEditor = null;</TD></TR><TR><TD CLASS="l"><A NAME="1">159</A></TD><TD> </TD></TR><TR><TD CLASS="l">160</TD><TD>        private IMenuListener menuListener;</TD></TR><TR><TD CLASS="l">161</TD><TD> </TD></TR><TR><TD CLASS="l">162</TD><TD>        public BreakpointRulerAction(ITextEditor editor, IVerticalRulerInfo rulerInfo) {</TD></TR><TR CLASS="z"><TD CLASS="l">163</TD><TD>                super();</TD></TR><TR CLASS="z"><TD CLASS="l">164</TD><TD>                fTextEditor = editor;</TD></TR><TR CLASS="z"><TD CLASS="l">165</TD><TD>                if (rulerInfo != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">166</TD><TD>                        fRulerInfo = rulerInfo;</TD></TR><TR CLASS="z"><TD CLASS="l">167</TD><TD>                        fMouseListener = new MouseUpdater();</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="d">168</A></TD><TD>                        rulerInfo.getControl().addMouseListener(fMouseListener);</TD></TR><TR><TD CLASS="l">169</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">170</TD><TD>                if (editor instanceof ITextEditorExtension) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="f">171</A></TD><TD>                        ITextEditorExtension extension = (ITextEditorExtension) editor;</TD></TR><TR CLASS="z"><TD CLASS="l">172</TD><TD>                        menuListener = new IMenuListener() {</TD></TR><TR><TD CLASS="l">173</TD><TD>                                public void menuAboutToShow(IMenuManager manager) {</TD></TR><TR CLASS="z"><TD CLASS="l">174</TD><TD>                                        update();</TD></TR><TR CLASS="z"><TD CLASS="l">175</TD><TD>                                }</TD></TR><TR><TD CLASS="l">176</TD><TD>                        };</TD></TR><TR CLASS="z"><TD CLASS="l">177</TD><TD>                        extension.addRulerContextMenuListener(menuListener);</TD></TR><TR><TD CLASS="l">178</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">179</TD><TD>        }</TD></TR><TR><TD CLASS="l">180</TD><TD> </TD></TR><TR><TD CLASS="l">181</TD><TD>        /**</TD></TR><TR><TD CLASS="l">182</TD><TD>         * Returns the &lt;code&gt;AbstractMarkerAnnotationModel&lt;/code&gt; of the</TD></TR><TR><TD CLASS="l">183</TD><TD>         * editor's input.</TD></TR><TR><TD CLASS="l"><A NAME="2">184</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">185</TD><TD>         * @return the marker annotation model</TD></TR><TR><TD CLASS="l">186</TD><TD>         */</TD></TR><TR><TD CLASS="l">187</TD><TD>        protected AbstractMarkerAnnotationModel getAnnotationModel() {</TD></TR><TR CLASS="z"><TD CLASS="l">188</TD><TD>                IDocumentProvider provider = fTextEditor.getDocumentProvider();</TD></TR><TR CLASS="z"><TD CLASS="l">189</TD><TD>                IAnnotationModel model = provider.getAnnotationModel(fTextEditor.getEditorInput());</TD></TR><TR CLASS="z"><TD CLASS="l">190</TD><TD>                if (model instanceof AbstractMarkerAnnotationModel)</TD></TR><TR CLASS="z"><TD CLASS="l">191</TD><TD>                        return (AbstractMarkerAnnotationModel) model;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">192</A></TD><TD>                return null;</TD></TR><TR><TD CLASS="l">193</TD><TD>        }</TD></TR><TR><TD CLASS="l">194</TD><TD> </TD></TR><TR><TD CLASS="l">195</TD><TD>        protected IBreakpoint[] getBreakpoints(IMarker[] markers) {</TD></TR><TR CLASS="z"><TD CLASS="l">196</TD><TD>                IBreakpointManager manager = DebugPlugin.getDefault().getBreakpointManager();</TD></TR><TR CLASS="z"><TD CLASS="l">197</TD><TD>                List breakpoints = new ArrayList(markers.length);</TD></TR><TR CLASS="z"><TD CLASS="l">198</TD><TD>                for (int i = 0; i &lt; markers.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">199</TD><TD>                        IBreakpoint breakpoint = manager.getBreakpoint(markers[i]);</TD></TR><TR CLASS="z"><TD CLASS="l">200</TD><TD>                        if (breakpoint != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">201</TD><TD>                                breakpoints.add(breakpoint);</TD></TR><TR><TD CLASS="l">202</TD><TD>                        }</TD></TR><TR><TD CLASS="l">203</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">204</TD><TD>                return (IBreakpoint[]) breakpoints.toArray(new IBreakpoint[0]);</TD></TR><TR><TD CLASS="l">205</TD><TD>        }</TD></TR><TR><TD CLASS="l">206</TD><TD> </TD></TR><TR><TD CLASS="l">207</TD><TD>        /**</TD></TR><TR><TD CLASS="l">208</TD><TD>         * Returns the &lt;code&gt;IDocument&lt;/code&gt; of the editor's input.</TD></TR><TR><TD CLASS="l"><A NAME="4">209</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">210</TD><TD>         * @return the document of the editor's input</TD></TR><TR><TD CLASS="l">211</TD><TD>         */</TD></TR><TR><TD CLASS="l">212</TD><TD>        protected IDocument getDocument() {</TD></TR><TR CLASS="z"><TD CLASS="l">213</TD><TD>                IDocumentProvider provider = fTextEditor.getDocumentProvider();</TD></TR><TR CLASS="z"><TD CLASS="l">214</TD><TD>                return provider.getDocument(fTextEditor.getEditorInput());</TD></TR><TR><TD CLASS="l">215</TD><TD>        }</TD></TR><TR><TD CLASS="l">216</TD><TD> </TD></TR><TR><TD CLASS="l">217</TD><TD>        /**</TD></TR><TR><TD CLASS="l">218</TD><TD>         * Returns all markers which include the ruler's line of activity.</TD></TR><TR><TD CLASS="l"><A NAME="6">219</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">220</TD><TD>         * @return an array of markers which include the ruler's line of activity</TD></TR><TR><TD CLASS="l">221</TD><TD>         */</TD></TR><TR><TD CLASS="l">222</TD><TD>        protected IMarker[] getMarkers() {</TD></TR><TR CLASS="z"><TD CLASS="l">223</TD><TD>                List markers = new ArrayList();</TD></TR><TR><TD CLASS="l">224</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">225</TD><TD>                IResource resource = getResource();</TD></TR><TR CLASS="z"><TD CLASS="l">226</TD><TD>                IDocument document = getDocument();</TD></TR><TR CLASS="z"><TD CLASS="l">227</TD><TD>                AbstractMarkerAnnotationModel annotationModel = getAnnotationModel();</TD></TR><TR><TD CLASS="l">228</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">229</TD><TD>                if (resource != null &amp;&amp; annotationModel != null &amp;&amp; resource.exists()) {</TD></TR><TR><TD CLASS="l">230</TD><TD>                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">231</TD><TD>                                IMarker[] allMarkers = resource.findMarkers(IBreakpoint.BREAKPOINT_MARKER, true, IResource.DEPTH_ZERO);</TD></TR><TR CLASS="z"><TD CLASS="l">232</TD><TD>                                if (allMarkers != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">233</TD><TD>                                        for (int i = 0; i &lt; allMarkers.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">234</TD><TD>                                                if (includesRulerLine(annotationModel.getMarkerPosition(allMarkers[i]), document)) {</TD></TR><TR CLASS="z"><TD CLASS="l">235</TD><TD>                                                        markers.add(allMarkers[i]);</TD></TR><TR><TD CLASS="l">236</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">237</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">238</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">239</TD><TD>                        } catch (CoreException x) {</TD></TR><TR><TD CLASS="l">240</TD><TD>                                //</TD></TR><TR><TD CLASS="l">241</TD><TD>                        }</TD></TR><TR><TD CLASS="l">242</TD><TD>                }</TD></TR><TR><TD CLASS="l">243</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="7">244</A></TD><TD>                return (IMarker[]) markers.toArray(new IMarker[0]);</TD></TR><TR><TD CLASS="l">245</TD><TD>        }</TD></TR><TR><TD CLASS="l">246</TD><TD> </TD></TR><TR><TD CLASS="l">247</TD><TD>        protected IResource getResource() {</TD></TR><TR CLASS="z"><TD CLASS="l">248</TD><TD>                IEditorInput input = getTextEditor().getEditorInput();</TD></TR><TR CLASS="z"><TD CLASS="l">249</TD><TD>                IResource resource = getResource(input);</TD></TR><TR CLASS="z"><TD CLASS="l">250</TD><TD>                return resource;</TD></TR><TR><TD CLASS="l">251</TD><TD>        }</TD></TR><TR><TD CLASS="l">252</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="9">253</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">254</TD><TD>         * @return Returns the rulerInfo.</TD></TR><TR><TD CLASS="l">255</TD><TD>         */</TD></TR><TR><TD CLASS="l">256</TD><TD>        public IVerticalRulerInfo getRulerInfo() {</TD></TR><TR CLASS="z"><TD CLASS="l">257</TD><TD>                return fRulerInfo;</TD></TR><TR><TD CLASS="l">258</TD><TD>        }</TD></TR><TR><TD CLASS="l">259</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="a">260</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">261</TD><TD>         * @return Returns the textEditor.</TD></TR><TR><TD CLASS="l">262</TD><TD>         */</TD></TR><TR><TD CLASS="l">263</TD><TD>        public ITextEditor getTextEditor() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="b">264</A></TD><TD>                return fTextEditor;</TD></TR><TR><TD CLASS="l">265</TD><TD>        }</TD></TR><TR><TD CLASS="l">266</TD><TD> </TD></TR><TR><TD CLASS="l">267</TD><TD>        protected boolean hasMarkers() {</TD></TR><TR CLASS="z"><TD CLASS="l">268</TD><TD>                IResource resource = getResource();</TD></TR><TR CLASS="z"><TD CLASS="l">269</TD><TD>                IDocument document = getDocument();</TD></TR><TR CLASS="z"><TD CLASS="l">270</TD><TD>                AbstractMarkerAnnotationModel model = getAnnotationModel();</TD></TR><TR><TD CLASS="l">271</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">272</TD><TD>                if (resource != null &amp;&amp; model != null &amp;&amp; resource.exists()) {</TD></TR><TR><TD CLASS="l">273</TD><TD>                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">274</TD><TD>                                IMarker[] allMarkers = resource.findMarkers(IBreakpoint.LINE_BREAKPOINT_MARKER, true, IResource.DEPTH_ZERO);</TD></TR><TR CLASS="z"><TD CLASS="l">275</TD><TD>                                if (allMarkers != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">276</TD><TD>                                        for (int i = 0; i &lt; allMarkers.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">277</TD><TD>                                                if (includesRulerLine(model.getMarkerPosition(allMarkers[i]), document)) {</TD></TR><TR CLASS="z"><TD CLASS="l">278</TD><TD>                                                        return true;</TD></TR><TR><TD CLASS="l">279</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">280</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">281</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">282</TD><TD>                        } catch (CoreException x) {</TD></TR><TR><TD CLASS="l">283</TD><TD>                                //</TD></TR><TR><TD CLASS="l">284</TD><TD>                        }</TD></TR><TR><TD CLASS="l">285</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">286</TD><TD>                return false;</TD></TR><TR><TD CLASS="l">287</TD><TD>        }</TD></TR><TR><TD CLASS="l">288</TD><TD> </TD></TR><TR><TD CLASS="l">289</TD><TD>        /**</TD></TR><TR><TD CLASS="l">290</TD><TD>         * Checks whether a position includes the ruler's line of activity.</TD></TR><TR><TD CLASS="l">291</TD><TD>         * </TD></TR><TR><TD CLASS="l">292</TD><TD>         * @param position</TD></TR><TR><TD CLASS="l">293</TD><TD>         *            the position to be checked</TD></TR><TR><TD CLASS="l">294</TD><TD>         * @param document</TD></TR><TR><TD CLASS="l">295</TD><TD>         *            the document the position refers to</TD></TR><TR><TD CLASS="l"><A NAME="c">296</A></TD><TD>         * @return &lt;code&gt;true&lt;/code&gt; if the line is included by the given</TD></TR><TR><TD CLASS="l">297</TD><TD>         *         position</TD></TR><TR><TD CLASS="l">298</TD><TD>         */</TD></TR><TR><TD CLASS="l">299</TD><TD>        protected boolean includesRulerLine(Position position, IDocument document) {</TD></TR><TR CLASS="z"><TD CLASS="l">300</TD><TD>                if (position != null &amp;&amp; fRulerInfo != null) {</TD></TR><TR><TD CLASS="l">301</TD><TD>                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">302</TD><TD>                                int markerLine = document.getLineOfOffset(position.getOffset());</TD></TR><TR CLASS="z"><TD CLASS="l">303</TD><TD>                                int line = getRulerInfo().getLineOfLastMouseButtonActivity();</TD></TR><TR CLASS="z"><TD CLASS="l">304</TD><TD>                                if (line == markerLine)</TD></TR><TR CLASS="z"><TD CLASS="l">305</TD><TD>                                        return true;</TD></TR><TR><TD CLASS="l">306</TD><TD>                                // commented because of &#34;1GEUOZ9: ITPJUI:ALL - Confusing UI</TD></TR><TR><TD CLASS="l">307</TD><TD>                                // for</TD></TR><TR><TD CLASS="l">308</TD><TD>                                // multiline Bookmarks and Tasks&#34;</TD></TR><TR><TD CLASS="l">309</TD><TD>                                // return (markerLine &lt;= line &amp;&amp; line &lt;=</TD></TR><TR><TD CLASS="l">310</TD><TD>                                // document.getLineOfOffset(position.getOffset() +</TD></TR><TR><TD CLASS="l">311</TD><TD>                                // position.getLength()));</TD></TR><TR CLASS="z"><TD CLASS="l">312</TD><TD>                        } catch (BadLocationException x) {</TD></TR><TR><TD CLASS="l">313</TD><TD>                                //</TD></TR><TR><TD CLASS="l">314</TD><TD>                        }</TD></TR><TR><TD CLASS="l">315</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">316</TD><TD>                return false;</TD></TR><TR><TD CLASS="l">317</TD><TD>        }</TD></TR><TR><TD CLASS="l">318</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="d.html">org.eclipse.wst.sse.ui.internal.debug</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/10f.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/10f.html
deleted file mode 100644
index 801c34b..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/10f.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="d.html">org.eclipse.wst.sse.ui.internal.debug</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">DebugTextEditor.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>DebugTextEditor.java</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/27)</TD><TD CLASS="h">0%   (0/764)</TD><TD CLASS="h">0%   (0/163)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">DebugTextEditor</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/561)</TD><TD CLASS="h">0%   (0/115)</TD></TR><TR><TD CLASS="f"><A HREF="#0">DebugTextEditor (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/21)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">createActions (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/37)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR><TD CLASS="f"><A HREF="#3">createShowInTargetIds (): String []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/80)</TD><TD CLASS="h">0%   (0/16)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">detectContentType (IPath): IContentType</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/86)</TD><TD CLASS="h">0%   (0/28)</TD></TR><TR><TD CLASS="f"><A HREF="#5">editorContextMenuAboutToShow (IMenuManager): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/33)</TD><TD CLASS="h">0%   (0/10)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">getAdapter (Class): Object</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/25)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#7">getConfigurationPoints (): String []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/23)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">getEditorInputContentTypes (IEditorInput): IContentType []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/114)</TD><TD CLASS="h">0%   (0/15)</TD></TR><TR><TD CLASS="f"><A HREF="#9">getInputContentType (IEditorInput): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">isDebuggingAvailable (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/35)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#b">rulerContextMenuAboutToShow (IMenuManager): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/40)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#c">setDocumentProvider (IEditorInput): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/24)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#d">updateContentDependentActions (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/30)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#e">DebugTextEditor$1</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/62)</TD><TD CLASS="h">0%   (0/10)</TD></TR><TR><TD CLASS="f"><A HREF="#e">DebugTextEditor$1 (DebugTextEditor, ITextEditor, IVerticalRulerInfo): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#10">getContentType (IDocument): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/54)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#11">DebugTextEditor$ShowInTargetLister</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#11">DebugTextEditor$ShowInTargetLister (DebugTextEditor): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#13">getShowInTargetIds (): String []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#14">DebugTextEditor$StorageInputDocumentProvider</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/131)</TD><TD CLASS="h">0%   (0/37)</TD></TR><TR><TD CLASS="f"><A HREF="#14">DebugTextEditor$StorageInputDocumentProvider (DebugTextEditor): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#16">createAnnotationModel (Object): IAnnotationModel</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/71)</TD><TD CLASS="h">0%   (0/17)</TD></TR><TR><TD CLASS="f"><A HREF="#17">createElementInfo (Object): AbstractDocumentProvider$ElementInfo</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#18">disposeElementInfo (Object, AbstractDocumentProvider$ElementInfo): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#19">doSaveDocument (IProgressMonitor, Object, IDocument, boolean): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#1a">elementContentAboutToBeReplaced (Object): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#1b">elementContentReplaced (Object): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#1c">elementDeleted (Object): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#1d">elementDirtyStateChanged (Object, boolean): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#1e">elementMoved (Object, Object): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/2)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR CLASS="z"><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.debug;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.io.File;</TD></TR><TR><TD CLASS="l">16</TD><TD>import java.io.FileInputStream;</TD></TR><TR><TD CLASS="l">17</TD><TD>import java.io.FileNotFoundException;</TD></TR><TR><TD CLASS="l">18</TD><TD>import java.io.IOException;</TD></TR><TR><TD CLASS="l">19</TD><TD>import java.io.InputStream;</TD></TR><TR><TD CLASS="l">20</TD><TD>import java.util.ArrayList;</TD></TR><TR><TD CLASS="l">21</TD><TD>import java.util.List;</TD></TR><TR><TD CLASS="l">22</TD><TD> </TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.core.filebuffers.FileBuffers;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.core.resources.IFile;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.core.resources.IMarker;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.core.resources.IResource;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.core.resources.ResourcesPlugin;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.core.runtime.CoreException;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.core.runtime.IPath;</TD></TR><TR><TD CLASS="l">30</TD><TD>import org.eclipse.core.runtime.IProgressMonitor;</TD></TR><TR><TD CLASS="l">31</TD><TD>import org.eclipse.core.runtime.Platform;</TD></TR><TR><TD CLASS="l">32</TD><TD>import org.eclipse.core.runtime.content.IContentDescription;</TD></TR><TR><TD CLASS="l">33</TD><TD>import org.eclipse.core.runtime.content.IContentType;</TD></TR><TR><TD CLASS="l">34</TD><TD>import org.eclipse.core.runtime.content.IContentTypeManager;</TD></TR><TR><TD CLASS="l">35</TD><TD>import org.eclipse.jface.action.IAction;</TD></TR><TR><TD CLASS="l">36</TD><TD>import org.eclipse.jface.action.IMenuManager;</TD></TR><TR><TD CLASS="l">37</TD><TD>import org.eclipse.jface.action.Separator;</TD></TR><TR><TD CLASS="l">38</TD><TD>import org.eclipse.jface.text.IDocument;</TD></TR><TR><TD CLASS="l">39</TD><TD>import org.eclipse.jface.text.source.IAnnotationModel;</TD></TR><TR><TD CLASS="l">40</TD><TD>import org.eclipse.ui.IEditorActionBarContributor;</TD></TR><TR><TD CLASS="l">41</TD><TD>import org.eclipse.ui.IEditorInput;</TD></TR><TR><TD CLASS="l">42</TD><TD>import org.eclipse.ui.IFileEditorInput;</TD></TR><TR><TD CLASS="l">43</TD><TD>import org.eclipse.ui.IPageLayout;</TD></TR><TR><TD CLASS="l">44</TD><TD>import org.eclipse.ui.IPathEditorInput;</TD></TR><TR><TD CLASS="l">45</TD><TD>import org.eclipse.ui.IStorageEditorInput;</TD></TR><TR><TD CLASS="l">46</TD><TD>import org.eclipse.ui.editors.text.FileDocumentProvider;</TD></TR><TR><TD CLASS="l">47</TD><TD>import org.eclipse.ui.editors.text.ILocationProvider;</TD></TR><TR><TD CLASS="l">48</TD><TD>import org.eclipse.ui.editors.text.StorageDocumentProvider;</TD></TR><TR><TD CLASS="l">49</TD><TD>import org.eclipse.ui.editors.text.TextEditor;</TD></TR><TR><TD CLASS="l">50</TD><TD>import org.eclipse.ui.part.IShowInTargetList;</TD></TR><TR><TD CLASS="l">51</TD><TD>import org.eclipse.ui.texteditor.AbstractDocumentProvider;</TD></TR><TR><TD CLASS="l">52</TD><TD>import org.eclipse.ui.texteditor.IDocumentProvider;</TD></TR><TR><TD CLASS="l">53</TD><TD>import org.eclipse.ui.texteditor.IElementStateListener;</TD></TR><TR><TD CLASS="l">54</TD><TD>import org.eclipse.ui.texteditor.ITextEditorActionConstants;</TD></TR><TR><TD CLASS="l">55</TD><TD>import org.eclipse.ui.texteditor.MarkerRulerAction;</TD></TR><TR><TD CLASS="l">56</TD><TD>import org.eclipse.wst.sse.core.utils.StringUtils;</TD></TR><TR><TD CLASS="l">57</TD><TD>import org.eclipse.wst.sse.ui.internal.ExtendedConfigurationBuilder;</TD></TR><TR><TD CLASS="l">58</TD><TD>import org.eclipse.wst.sse.ui.internal.ExtendedEditorActionBuilder;</TD></TR><TR><TD CLASS="l">59</TD><TD>import org.eclipse.wst.sse.ui.internal.IExtendedContributor;</TD></TR><TR><TD CLASS="l">60</TD><TD>import org.eclipse.wst.sse.ui.internal.IPopupMenuContributor;</TD></TR><TR><TD CLASS="l">61</TD><TD>import org.eclipse.wst.sse.ui.internal.Logger;</TD></TR><TR><TD CLASS="l">62</TD><TD>import org.eclipse.wst.sse.ui.internal.SSEUIMessages;</TD></TR><TR><TD CLASS="l">63</TD><TD>import org.eclipse.wst.sse.ui.internal.StructuredResourceMarkerAnnotationModel;</TD></TR><TR><TD CLASS="l">64</TD><TD>import org.eclipse.wst.sse.ui.internal.actions.ActionDefinitionIds;</TD></TR><TR><TD CLASS="l">65</TD><TD>import org.eclipse.wst.sse.ui.internal.extension.BreakpointProviderBuilder;</TD></TR><TR><TD CLASS="l">66</TD><TD>import org.eclipse.wst.sse.ui.internal.provisional.extensions.ConfigurationPointCalculator;</TD></TR><TR><TD CLASS="l">67</TD><TD>import org.eclipse.wst.sse.ui.internal.provisional.extensions.breakpoint.IExtendedStorageEditorInput;</TD></TR><TR><TD CLASS="l">68</TD><TD> </TD></TR><TR><TD CLASS="l">69</TD><TD> </TD></TR><TR><TD CLASS="l">70</TD><TD>/**</TD></TR><TR><TD CLASS="l">71</TD><TD> * @author nitin</TD></TR><TR><TD CLASS="l">72</TD><TD> * </TD></TR><TR><TD CLASS="l">73</TD><TD> * A text editor capable of using the IBreakpointProvider framework.</TD></TR><TR><TD CLASS="l">74</TD><TD> * </TD></TR><TR><TD CLASS="l">75</TD><TD> * This class is intended to be used by clients who wish to use the</TD></TR><TR><TD CLASS="l">76</TD><TD> * IBreakpointProvider framework but not the StructuredTextEditor, e.g. VBS</TD></TR><TR><TD CLASS="l">77</TD><TD> * source editors. It is provided AS-IS and marked internal as it is</TD></TR><TR><TD CLASS="l"><A NAME="11">78</A></TD><TD> * unsupported and subject to change at any time.</TD></TR><TR><TD CLASS="l">79</TD><TD> */</TD></TR><TR><TD CLASS="l"><A NAME="13">80</A></TD><TD>public class DebugTextEditor extends TextEditor {</TD></TR><TR><TD CLASS="l">81</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>        private class ShowInTargetLister implements IShowInTargetList {</TD></TR><TR><TD CLASS="l">83</TD><TD>                public String[] getShowInTargetIds() {</TD></TR><TR CLASS="z"><TD CLASS="l">84</TD><TD>                        return fShowInTargetIds;</TD></TR><TR><TD CLASS="l">85</TD><TD>                }</TD></TR><TR><TD CLASS="l">86</TD><TD>        }</TD></TR><TR><TD CLASS="l">87</TD><TD> </TD></TR><TR><TD CLASS="l">88</TD><TD>        /**</TD></TR><TR><TD CLASS="l"><A NAME="14">89</A></TD><TD>         * DocumentProvider for IStorageEditorInputs - supports</TD></TR><TR><TD CLASS="l">90</TD><TD>         * IExtendedStorageEditorInput notifications and assigning breakpoint</TD></TR><TR><TD CLASS="l"><A NAME="16">91</A></TD><TD>         * markers.</TD></TR><TR><TD CLASS="l">92</TD><TD>         */</TD></TR><TR CLASS="z"><TD CLASS="l">93</TD><TD>        class StorageInputDocumentProvider extends StorageDocumentProvider implements IElementStateListener {</TD></TR><TR><TD CLASS="l">94</TD><TD>                protected IAnnotationModel createAnnotationModel(Object element) throws CoreException {</TD></TR><TR CLASS="z"><TD CLASS="l">95</TD><TD>                        IAnnotationModel model = null;</TD></TR><TR CLASS="z"><TD CLASS="l">96</TD><TD>                        IStorageEditorInput storageInput = (IStorageEditorInput) element;</TD></TR><TR CLASS="z"><TD CLASS="l">97</TD><TD>                        String ext = BreakpointRulerAction.getFileExtension(storageInput);</TD></TR><TR CLASS="z"><TD CLASS="l">98</TD><TD>                        IContentType[] types = getEditorInputContentTypes(storageInput);</TD></TR><TR CLASS="z"><TD CLASS="l">99</TD><TD>                        IResource res = null;</TD></TR><TR CLASS="z"><TD CLASS="l">100</TD><TD>                        for (int i = 0; res == null &amp;&amp; i &lt; types.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">101</TD><TD>                                res = BreakpointProviderBuilder.getInstance().getResource(storageInput, types[i].getId(), ext);</TD></TR><TR><TD CLASS="l">102</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">103</TD><TD>                        String id = storageInput.getName();</TD></TR><TR CLASS="z"><TD CLASS="l">104</TD><TD>                        if (storageInput.getStorage() != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">105</TD><TD>                                IPath fullPath = storageInput.getStorage().getFullPath();</TD></TR><TR CLASS="z"><TD CLASS="l">106</TD><TD>                                if (fullPath != null)</TD></TR><TR CLASS="z"><TD CLASS="l">107</TD><TD>                                        id = fullPath.toString();</TD></TR><TR><TD CLASS="l">108</TD><TD>                                else</TD></TR><TR CLASS="z"><TD CLASS="l">109</TD><TD>                                        id = storageInput.getName();</TD></TR><TR><TD CLASS="l">110</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">111</TD><TD>                        if (res != null)</TD></TR><TR CLASS="z"><TD CLASS="l">112</TD><TD>                                model = new StructuredResourceMarkerAnnotationModel(res, id);</TD></TR><TR><TD CLASS="l">113</TD><TD>                        else</TD></TR><TR CLASS="z"><TD CLASS="l">114</TD><TD>                                model = new StructuredResourceMarkerAnnotationModel(ResourcesPlugin.getWorkspace().getRoot(), id);</TD></TR><TR><TD CLASS="l">115</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="17">116</A></TD><TD>                        return model;</TD></TR><TR><TD CLASS="l">117</TD><TD>                }</TD></TR><TR><TD CLASS="l">118</TD><TD> </TD></TR><TR><TD CLASS="l">119</TD><TD>                protected AbstractDocumentProvider.ElementInfo createElementInfo(Object element) throws CoreException {</TD></TR><TR CLASS="z"><TD CLASS="l">120</TD><TD>                        if (element instanceof IExtendedStorageEditorInput) {</TD></TR><TR CLASS="z"><TD CLASS="l">121</TD><TD>                                ((IExtendedStorageEditorInput) element).addElementStateListener(this);</TD></TR><TR><TD CLASS="l">122</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="18">123</A></TD><TD>                        return super.createElementInfo(element);</TD></TR><TR><TD CLASS="l">124</TD><TD>                }</TD></TR><TR><TD CLASS="l">125</TD><TD> </TD></TR><TR><TD CLASS="l">126</TD><TD>                protected void disposeElementInfo(Object element, ElementInfo info) {</TD></TR><TR CLASS="z"><TD CLASS="l">127</TD><TD>                        if (element instanceof IExtendedStorageEditorInput) {</TD></TR><TR CLASS="z"><TD CLASS="l">128</TD><TD>                                ((IExtendedStorageEditorInput) element).removeElementStateListener(this);</TD></TR><TR><TD CLASS="l">129</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">130</TD><TD>                        super.disposeElementInfo(element, info);</TD></TR><TR CLASS="z"><TD CLASS="l">131</TD><TD>                }</TD></TR><TR><TD CLASS="l">132</TD><TD> </TD></TR><TR><TD CLASS="l">133</TD><TD>                /*</TD></TR><TR><TD CLASS="l">134</TD><TD>                 * (non-Javadoc)</TD></TR><TR><TD CLASS="l">135</TD><TD>                 * </TD></TR><TR><TD CLASS="l">136</TD><TD>                 * @see org.eclipse.ui.editors.text.StorageDocumentProvider#doSaveDocument(org.eclipse.core.runtime.IProgressMonitor,</TD></TR><TR><TD CLASS="l"><A NAME="19">137</A></TD><TD>                 *      java.lang.Object, org.eclipse.jface.text.IDocument, boolean)</TD></TR><TR><TD CLASS="l">138</TD><TD>                 */</TD></TR><TR><TD CLASS="l">139</TD><TD>                protected void doSaveDocument(IProgressMonitor monitor, Object element, IDocument document, boolean overwrite) throws CoreException {</TD></TR><TR><TD CLASS="l">140</TD><TD>                        // untested</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="1a">141</A></TD><TD>                        new FileDocumentProvider().saveDocument(monitor, element, document, overwrite);</TD></TR><TR CLASS="z"><TD CLASS="l">142</TD><TD>                }</TD></TR><TR><TD CLASS="l">143</TD><TD> </TD></TR><TR><TD CLASS="l">144</TD><TD>                public void elementContentAboutToBeReplaced(Object element) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="1b">145</A></TD><TD>                        fireElementContentAboutToBeReplaced(element);</TD></TR><TR CLASS="z"><TD CLASS="l">146</TD><TD>                }</TD></TR><TR><TD CLASS="l">147</TD><TD> </TD></TR><TR><TD CLASS="l">148</TD><TD>                public void elementContentReplaced(Object element) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="1c">149</A></TD><TD>                        fireElementContentReplaced(element);</TD></TR><TR CLASS="z"><TD CLASS="l">150</TD><TD>                }</TD></TR><TR><TD CLASS="l">151</TD><TD> </TD></TR><TR><TD CLASS="l">152</TD><TD>                public void elementDeleted(Object element) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="1d">153</A></TD><TD>                        fireElementDeleted(element);</TD></TR><TR CLASS="z"><TD CLASS="l">154</TD><TD>                }</TD></TR><TR><TD CLASS="l">155</TD><TD> </TD></TR><TR><TD CLASS="l">156</TD><TD>                public void elementDirtyStateChanged(Object element, boolean isDirty) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="1e">157</A></TD><TD>                        fireElementDirtyStateChanged(element, isDirty);</TD></TR><TR CLASS="z"><TD CLASS="l">158</TD><TD>                }</TD></TR><TR><TD CLASS="l">159</TD><TD> </TD></TR><TR><TD CLASS="l">160</TD><TD>                public void elementMoved(Object originalElement, Object movedElement) {</TD></TR><TR CLASS="z"><TD CLASS="l">161</TD><TD>                        fireElementMoved(originalElement, movedElement);</TD></TR><TR CLASS="z"><TD CLASS="l">162</TD><TD>                }</TD></TR><TR><TD CLASS="l">163</TD><TD>        }</TD></TR><TR><TD CLASS="l">164</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">165</TD><TD>        String[] fShowInTargetIds = new String[]{IPageLayout.ID_RES_NAV};</TD></TR><TR CLASS="z"><TD CLASS="l">166</TD><TD>        private IShowInTargetList fShowInTargetListAdapter = new ShowInTargetLister();</TD></TR><TR><TD CLASS="l"><A NAME="0">167</A></TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">168</TD><TD>        IDocumentProvider fStorageInputDocumentProvider = null;</TD></TR><TR><TD CLASS="l">169</TD><TD> </TD></TR><TR><TD CLASS="l">170</TD><TD>        public DebugTextEditor() {</TD></TR><TR CLASS="z"><TD CLASS="l">171</TD><TD>                super();</TD></TR><TR CLASS="z"><TD CLASS="l">172</TD><TD>        }</TD></TR><TR><TD CLASS="l">173</TD><TD> </TD></TR><TR><TD CLASS="l">174</TD><TD>        /*</TD></TR><TR><TD CLASS="l">175</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="2">176</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">177</TD><TD>         * @see org.eclipse.ui.editors.text.TextEditor#createActions()</TD></TR><TR><TD CLASS="l">178</TD><TD>         */</TD></TR><TR><TD CLASS="l"><A NAME="e">179</A></TD><TD>        protected void createActions() {</TD></TR><TR CLASS="z"><TD CLASS="l">180</TD><TD>                super.createActions();</TD></TR><TR><TD CLASS="l"><A NAME="10">181</A></TD><TD> </TD></TR><TR><TD CLASS="l">182</TD><TD>                // StructuredTextEditor Action - toggle breakpoints</TD></TR><TR CLASS="z"><TD CLASS="l">183</TD><TD>                IAction action = new ToggleBreakpointAction(this, getVerticalRuler()) {</TD></TR><TR><TD CLASS="l">184</TD><TD>                        protected String getContentType(IDocument document) {</TD></TR><TR CLASS="z"><TD CLASS="l">185</TD><TD>                                ILocationProvider provider = (ILocationProvider) getEditorInput().getAdapter(ILocationProvider.class);</TD></TR><TR CLASS="z"><TD CLASS="l">186</TD><TD>                                if (provider != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">187</TD><TD>                                        IPath location = provider.getPath(getEditorInput());</TD></TR><TR CLASS="z"><TD CLASS="l">188</TD><TD>                                        return detectContentType(location).getId();</TD></TR><TR><TD CLASS="l">189</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">190</TD><TD>                                else if (getEditorInput() instanceof IPathEditorInput) {</TD></TR><TR CLASS="z"><TD CLASS="l">191</TD><TD>                                        IPath location = ((IPathEditorInput) getEditorInput()).getPath();</TD></TR><TR CLASS="z"><TD CLASS="l">192</TD><TD>                                        return detectContentType(location).getId();</TD></TR><TR><TD CLASS="l">193</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">194</TD><TD>                                return IContentTypeManager.CT_TEXT;</TD></TR><TR><TD CLASS="l">195</TD><TD>                        }</TD></TR><TR><TD CLASS="l">196</TD><TD>                };</TD></TR><TR CLASS="z"><TD CLASS="l">197</TD><TD>                setAction(ActionDefinitionIds.TOGGLE_BREAKPOINTS, action);</TD></TR><TR><TD CLASS="l">198</TD><TD>                // StructuredTextEditor Action - manage breakpoints</TD></TR><TR CLASS="z"><TD CLASS="l">199</TD><TD>                action = new ManageBreakpointAction(this, getVerticalRuler());</TD></TR><TR CLASS="z"><TD CLASS="l">200</TD><TD>                setAction(ActionDefinitionIds.MANAGE_BREAKPOINTS, action);</TD></TR><TR><TD CLASS="l">201</TD><TD>                // StructuredTextEditor Action - edit breakpoints</TD></TR><TR CLASS="z"><TD CLASS="l">202</TD><TD>                action = new EditBreakpointAction(this, getVerticalRuler());</TD></TR><TR CLASS="z"><TD CLASS="l">203</TD><TD>                setAction(ActionDefinitionIds.EDIT_BREAKPOINTS, action);</TD></TR><TR CLASS="z"><TD CLASS="l">204</TD><TD>        }</TD></TR><TR><TD CLASS="l">205</TD><TD> </TD></TR><TR><TD CLASS="l">206</TD><TD>        /**</TD></TR><TR><TD CLASS="l">207</TD><TD>         * Loads the Show In Target IDs from the Extended Configuration extension</TD></TR><TR><TD CLASS="l">208</TD><TD>         * point.</TD></TR><TR><TD CLASS="l"><A NAME="3">209</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">210</TD><TD>         * @return</TD></TR><TR><TD CLASS="l">211</TD><TD>         */</TD></TR><TR><TD CLASS="l">212</TD><TD>        protected String[] createShowInTargetIds() {</TD></TR><TR CLASS="z"><TD CLASS="l">213</TD><TD>                List allIds = new ArrayList(0);</TD></TR><TR CLASS="z"><TD CLASS="l">214</TD><TD>                ExtendedConfigurationBuilder builder = ExtendedConfigurationBuilder.getInstance();</TD></TR><TR CLASS="z"><TD CLASS="l">215</TD><TD>                String[] configurationIds = getConfigurationPoints();</TD></TR><TR CLASS="z"><TD CLASS="l">216</TD><TD>                for (int i = 0; i &lt; configurationIds.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">217</TD><TD>                        String[] definitions = builder.getDefinitions(&#34;showintarget&#34;, configurationIds[i]); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">218</TD><TD>                        for (int j = 0; j &lt; definitions.length; j++) {</TD></TR><TR CLASS="z"><TD CLASS="l">219</TD><TD>                                String someIds = definitions[j];</TD></TR><TR CLASS="z"><TD CLASS="l">220</TD><TD>                                if (someIds != null &amp;&amp; someIds.length() &gt; 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">221</TD><TD>                                        String[] ids = StringUtils.unpack(someIds);</TD></TR><TR CLASS="z"><TD CLASS="l">222</TD><TD>                                        for (int k = 0; k &lt; ids.length; k++) {</TD></TR><TR><TD CLASS="l">223</TD><TD>                                                // trim, just to keep things clean</TD></TR><TR CLASS="z"><TD CLASS="l">224</TD><TD>                                                String id = ids[k].trim();</TD></TR><TR CLASS="z"><TD CLASS="l">225</TD><TD>                                                if (!allIds.contains(id)) {</TD></TR><TR CLASS="z"><TD CLASS="l">226</TD><TD>                                                        allIds.add(id);</TD></TR><TR><TD CLASS="l">227</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">228</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">229</TD><TD>                                }</TD></TR><TR><TD CLASS="l">230</TD><TD>                        }</TD></TR><TR><TD CLASS="l">231</TD><TD>                }</TD></TR><TR><TD CLASS="l">232</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">233</TD><TD>                if (!allIds.contains(IPageLayout.ID_RES_NAV)) {</TD></TR><TR CLASS="z"><TD CLASS="l">234</TD><TD>                        allIds.add(IPageLayout.ID_RES_NAV);</TD></TR><TR><TD CLASS="l">235</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">236</A></TD><TD>                return (String[]) allIds.toArray(new String[0]);</TD></TR><TR><TD CLASS="l">237</TD><TD>        }</TD></TR><TR><TD CLASS="l">238</TD><TD> </TD></TR><TR><TD CLASS="l">239</TD><TD>        IContentType detectContentType(IPath location) {</TD></TR><TR CLASS="z"><TD CLASS="l">240</TD><TD>                IContentType type = null;</TD></TR><TR><TD CLASS="l">241</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">242</TD><TD>                IResource resource = FileBuffers.getWorkspaceFileAtLocation(location);</TD></TR><TR CLASS="z"><TD CLASS="l">243</TD><TD>                if (resource != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">244</TD><TD>                        if (resource.getType() == IResource.FILE &amp;&amp; resource.isAccessible()) {</TD></TR><TR CLASS="z"><TD CLASS="l">245</TD><TD>                                IContentDescription d = null;</TD></TR><TR><TD CLASS="l">246</TD><TD>                                try {</TD></TR><TR><TD CLASS="l">247</TD><TD>                                        // Optimized description lookup, might not succeed</TD></TR><TR CLASS="z"><TD CLASS="l">248</TD><TD>                                        d = ((IFile) resource).getContentDescription();</TD></TR><TR CLASS="z"><TD CLASS="l">249</TD><TD>                                        if (d != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">250</TD><TD>                                                type = d.getContentType();</TD></TR><TR><TD CLASS="l">251</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">252</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">253</TD><TD>                                catch (CoreException e) {</TD></TR><TR><TD CLASS="l">254</TD><TD>                                        // Should not be possible given the accessible and file</TD></TR><TR><TD CLASS="l">255</TD><TD>                                        // type check above</TD></TR><TR><TD CLASS="l">256</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">257</TD><TD>                                if (type == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">258</TD><TD>                                        type = Platform.getContentTypeManager().findContentTypeFor(resource.getName());</TD></TR><TR><TD CLASS="l">259</TD><TD>                                }</TD></TR><TR><TD CLASS="l">260</TD><TD>                        }</TD></TR><TR><TD CLASS="l">261</TD><TD>                }</TD></TR><TR><TD CLASS="l">262</TD><TD>                else {</TD></TR><TR CLASS="z"><TD CLASS="l">263</TD><TD>                        File file = FileBuffers.getSystemFileAtLocation(location);</TD></TR><TR CLASS="z"><TD CLASS="l">264</TD><TD>                        if (file != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">265</TD><TD>                                InputStream input = null;</TD></TR><TR><TD CLASS="l">266</TD><TD>                                try {</TD></TR><TR CLASS="z"><TD CLASS="l">267</TD><TD>                                        input = new FileInputStream(file);</TD></TR><TR CLASS="z"><TD CLASS="l">268</TD><TD>                                        type = Platform.getContentTypeManager().findContentTypeFor(input, location.toOSString());</TD></TR><TR><TD CLASS="l">269</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">270</TD><TD>                                catch (FileNotFoundException e) {</TD></TR><TR><TD CLASS="l">271</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">272</TD><TD>                                catch (IOException e) {</TD></TR><TR><TD CLASS="l">273</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">274</TD><TD>                                finally {</TD></TR><TR CLASS="z"><TD CLASS="l">275</TD><TD>                                        if (input != null) {</TD></TR><TR><TD CLASS="l">276</TD><TD>                                                try {</TD></TR><TR CLASS="z"><TD CLASS="l">277</TD><TD>                                                        input.close();</TD></TR><TR><TD CLASS="l">278</TD><TD>                                                }</TD></TR><TR CLASS="z"><TD CLASS="l">279</TD><TD>                                                catch (IOException e1) {</TD></TR><TR><TD CLASS="l">280</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">281</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">282</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">283</TD><TD>                                if (type == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">284</TD><TD>                                        type = Platform.getContentTypeManager().findContentTypeFor(file.getName());</TD></TR><TR><TD CLASS="l">285</TD><TD>                                }</TD></TR><TR><TD CLASS="l">286</TD><TD>                        }</TD></TR><TR><TD CLASS="l">287</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">288</TD><TD>                if (type == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">289</TD><TD>                        type = Platform.getContentTypeManager().getContentType(IContentTypeManager.CT_TEXT);</TD></TR><TR><TD CLASS="l">290</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">291</TD><TD>                return type;</TD></TR><TR><TD CLASS="l">292</TD><TD>        }</TD></TR><TR><TD CLASS="l">293</TD><TD> </TD></TR><TR><TD CLASS="l">294</TD><TD>        /*</TD></TR><TR><TD CLASS="l">295</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="5">296</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">297</TD><TD>         * @see org.eclipse.ui.texteditor.AbstractTextEditor#editorContextMenuAboutToShow(org.eclipse.jface.action.IMenuManager)</TD></TR><TR><TD CLASS="l">298</TD><TD>         */</TD></TR><TR><TD CLASS="l">299</TD><TD>        protected void editorContextMenuAboutToShow(IMenuManager menu) {</TD></TR><TR CLASS="z"><TD CLASS="l">300</TD><TD>                super.editorContextMenuAboutToShow(menu);</TD></TR><TR><TD CLASS="l">301</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">302</TD><TD>                IEditorActionBarContributor c = getEditorSite().getActionBarContributor();</TD></TR><TR CLASS="z"><TD CLASS="l">303</TD><TD>                if (c instanceof IPopupMenuContributor) {</TD></TR><TR CLASS="z"><TD CLASS="l">304</TD><TD>                        ((IPopupMenuContributor) c).contributeToPopupMenu(menu);</TD></TR><TR><TD CLASS="l">305</TD><TD>                }</TD></TR><TR><TD CLASS="l">306</TD><TD>                else {</TD></TR><TR CLASS="z"><TD CLASS="l">307</TD><TD>                        ExtendedEditorActionBuilder builder = new ExtendedEditorActionBuilder();</TD></TR><TR CLASS="z"><TD CLASS="l">308</TD><TD>                        IExtendedContributor pmc = builder.readActionExtensions(getConfigurationPoints());</TD></TR><TR CLASS="z"><TD CLASS="l">309</TD><TD>                        if (pmc != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">310</TD><TD>                                pmc.setActiveEditor(this);</TD></TR><TR CLASS="z"><TD CLASS="l">311</TD><TD>                                pmc.contributeToPopupMenu(menu);</TD></TR><TR><TD CLASS="l">312</TD><TD>                        }</TD></TR><TR><TD CLASS="l">313</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">314</TD><TD>        }</TD></TR><TR><TD CLASS="l">315</TD><TD> </TD></TR><TR><TD CLASS="l">316</TD><TD>        /**</TD></TR><TR><TD CLASS="l"><A NAME="6">317</A></TD><TD>         * @see org.eclipse.core.runtime.IAdaptable#getAdapter(java.lang.Class)</TD></TR><TR><TD CLASS="l">318</TD><TD>         */</TD></TR><TR><TD CLASS="l">319</TD><TD>        public Object getAdapter(Class required) {</TD></TR><TR><TD CLASS="l">320</TD><TD>                // Navigate action set menu</TD></TR><TR CLASS="z"><TD CLASS="l">321</TD><TD>                if (IShowInTargetList.class.equals(required))</TD></TR><TR CLASS="z"><TD CLASS="l">322</TD><TD>                        return fShowInTargetListAdapter;</TD></TR><TR CLASS="z"><TD CLASS="l">323</TD><TD>                return super.getAdapter(required);</TD></TR><TR><TD CLASS="l"><A NAME="7">324</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">325</TD><TD> </TD></TR><TR><TD CLASS="l">326</TD><TD> </TD></TR><TR><TD CLASS="l">327</TD><TD>        protected String[] getConfigurationPoints() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="8">328</A></TD><TD>                return ConfigurationPointCalculator.getConfigurationPoints(this, getInputContentType(getEditorInput()), ConfigurationPointCalculator.SOURCE, DebugTextEditor.class);</TD></TR><TR><TD CLASS="l">329</TD><TD>        }</TD></TR><TR><TD CLASS="l">330</TD><TD> </TD></TR><TR><TD CLASS="l">331</TD><TD>        IContentType[] getEditorInputContentTypes(IEditorInput input) {</TD></TR><TR CLASS="z"><TD CLASS="l">332</TD><TD>                IContentType[] types = null;</TD></TR><TR CLASS="z"><TD CLASS="l">333</TD><TD>                IResource resource = null;</TD></TR><TR><TD CLASS="l">334</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">335</TD><TD>                if (input.getAdapter(IFile.class) != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">336</TD><TD>                        resource = (IFile) input.getAdapter(IFile.class);</TD></TR><TR><TD CLASS="l">337</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">338</TD><TD>                else if (input.getAdapter(IFile.class) != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">339</TD><TD>                        resource = (IResource) input.getAdapter(IResource.class);</TD></TR><TR><TD CLASS="l">340</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">341</TD><TD>                if (resource.getType() == IResource.FILE &amp;&amp; resource.isAccessible()) {</TD></TR><TR CLASS="z"><TD CLASS="l">342</TD><TD>                        IContentDescription d = null;</TD></TR><TR><TD CLASS="l">343</TD><TD>                        try {</TD></TR><TR><TD CLASS="l">344</TD><TD>                                // optimized description lookup, might not succeed</TD></TR><TR CLASS="z"><TD CLASS="l">345</TD><TD>                                d = ((IFile) resource).getContentDescription();</TD></TR><TR CLASS="z"><TD CLASS="l">346</TD><TD>                                if (d != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">347</TD><TD>                                        types = new IContentType[]{d.getContentType()};</TD></TR><TR><TD CLASS="l">348</TD><TD>                                }</TD></TR><TR><TD CLASS="l">349</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">350</TD><TD>                        catch (CoreException e) {</TD></TR><TR><TD CLASS="l">351</TD><TD>                                // should not be possible given the accessible and file type</TD></TR><TR><TD CLASS="l">352</TD><TD>                                // check above</TD></TR><TR><TD CLASS="l">353</TD><TD>                        }</TD></TR><TR><TD CLASS="l">354</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">355</TD><TD>                if (types == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">356</TD><TD>                        types = Platform.getContentTypeManager().findContentTypesFor(input.getName());</TD></TR><TR><TD CLASS="l">357</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">358</TD><TD>                return types;</TD></TR><TR><TD CLASS="l">359</TD><TD>        }</TD></TR><TR><TD CLASS="l">360</TD><TD> </TD></TR><TR><TD CLASS="l">361</TD><TD>        /**</TD></TR><TR><TD CLASS="l"><A NAME="9">362</A></TD><TD>         * @param editorInput</TD></TR><TR><TD CLASS="l">363</TD><TD>         * @return</TD></TR><TR><TD CLASS="l">364</TD><TD>         */</TD></TR><TR><TD CLASS="l">365</TD><TD>        private String getInputContentType(IEditorInput editorInput) {</TD></TR><TR CLASS="z"><TD CLASS="l">366</TD><TD>                IContentType[] types = getEditorInputContentTypes(editorInput);</TD></TR><TR CLASS="z"><TD CLASS="l">367</TD><TD>                if (types != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">368</TD><TD>                        return types[0].getId();</TD></TR><TR><TD CLASS="l">369</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">370</TD><TD>                return null;</TD></TR><TR><TD CLASS="l">371</TD><TD>        }</TD></TR><TR><TD CLASS="l">372</TD><TD> </TD></TR><TR><TD CLASS="l">373</TD><TD>        /**</TD></TR><TR><TD CLASS="l"><A NAME="a">374</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">375</TD><TD>         * @return</TD></TR><TR><TD CLASS="l">376</TD><TD>         */</TD></TR><TR><TD CLASS="l">377</TD><TD>        private boolean isDebuggingAvailable() {</TD></TR><TR CLASS="z"><TD CLASS="l">378</TD><TD>                boolean debuggingAvailable = false;</TD></TR><TR CLASS="z"><TD CLASS="l">379</TD><TD>                IContentType[] types = getEditorInputContentTypes(getEditorInput());</TD></TR><TR CLASS="z"><TD CLASS="l">380</TD><TD>                for (int i = 0; !debuggingAvailable &amp;&amp; i &lt; types.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">381</TD><TD>                        debuggingAvailable = debuggingAvailable || BreakpointProviderBuilder.getInstance().isAvailable(types[i].getId(), BreakpointRulerAction.getFileExtension(getEditorInput()));</TD></TR><TR><TD CLASS="l">382</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="b">383</A></TD><TD>                return debuggingAvailable;</TD></TR><TR><TD CLASS="l">384</TD><TD>        }</TD></TR><TR><TD CLASS="l">385</TD><TD> </TD></TR><TR><TD CLASS="l">386</TD><TD>        protected void rulerContextMenuAboutToShow(IMenuManager menu) {</TD></TR><TR CLASS="z"><TD CLASS="l">387</TD><TD>                if (isDebuggingAvailable()) {</TD></TR><TR CLASS="z"><TD CLASS="l">388</TD><TD>                        menu.add(getAction(ActionDefinitionIds.TOGGLE_BREAKPOINTS));</TD></TR><TR CLASS="z"><TD CLASS="l">389</TD><TD>                        menu.add(getAction(ActionDefinitionIds.MANAGE_BREAKPOINTS));</TD></TR><TR CLASS="z"><TD CLASS="l">390</TD><TD>                        menu.add(getAction(ActionDefinitionIds.EDIT_BREAKPOINTS));</TD></TR><TR CLASS="z"><TD CLASS="l">391</TD><TD>                        menu.add(new Separator());</TD></TR><TR><TD CLASS="l">392</TD><TD>                }</TD></TR><TR><TD CLASS="l">393</TD><TD>                else {</TD></TR><TR CLASS="z"><TD CLASS="l">394</TD><TD>                        Logger.log(Logger.INFO, getClass().getName() + &#34; could not enable debugging actions&#34;); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">395</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">396</TD><TD>                super.rulerContextMenuAboutToShow(menu);</TD></TR><TR CLASS="z"><TD CLASS="l">397</TD><TD>        }</TD></TR><TR><TD CLASS="l">398</TD><TD> </TD></TR><TR><TD CLASS="l">399</TD><TD>        /**</TD></TR><TR><TD CLASS="l">400</TD><TD>         * Ensure that the correct IDocumentProvider is used. For IFile and Files,</TD></TR><TR><TD CLASS="l">401</TD><TD>         * the default provider with a specified AnnotationModelFactory is used.</TD></TR><TR><TD CLASS="l">402</TD><TD>         * For StorageEditorInputs, use a custom provider that creates a usable</TD></TR><TR><TD CLASS="l">403</TD><TD>         * ResourceAnnotationModel</TD></TR><TR><TD CLASS="l"><A NAME="c">404</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">405</TD><TD>         * @see org.eclipse.ui.texteditor.AbstractDecoratedTextEditor#setDocumentProvider(org.eclipse.ui.IEditorInput)</TD></TR><TR><TD CLASS="l">406</TD><TD>         */</TD></TR><TR><TD CLASS="l">407</TD><TD>        protected void setDocumentProvider(IEditorInput input) {</TD></TR><TR CLASS="z"><TD CLASS="l">408</TD><TD>                if (input instanceof IStorageEditorInput &amp;&amp; !(input instanceof IFileEditorInput)) {</TD></TR><TR CLASS="z"><TD CLASS="l">409</TD><TD>                        if (fStorageInputDocumentProvider == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">410</TD><TD>                                fStorageInputDocumentProvider = new StorageInputDocumentProvider();</TD></TR><TR><TD CLASS="l">411</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">412</TD><TD>                        setDocumentProvider(fStorageInputDocumentProvider);</TD></TR><TR><TD CLASS="l">413</TD><TD>                }</TD></TR><TR><TD CLASS="l">414</TD><TD>                else {</TD></TR><TR CLASS="z"><TD CLASS="l">415</TD><TD>                        super.setDocumentProvider(input);</TD></TR><TR><TD CLASS="l">416</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">417</TD><TD>        }</TD></TR><TR><TD CLASS="l">418</TD><TD> </TD></TR><TR><TD CLASS="l">419</TD><TD>        /*</TD></TR><TR><TD CLASS="l">420</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="d">421</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">422</TD><TD>         * @see org.eclipse.ui.texteditor.AbstractTextEditor#updateContentDependentActions()</TD></TR><TR><TD CLASS="l">423</TD><TD>         */</TD></TR><TR><TD CLASS="l">424</TD><TD>        protected void updateContentDependentActions() {</TD></TR><TR CLASS="z"><TD CLASS="l">425</TD><TD>                super.updateContentDependentActions();</TD></TR><TR CLASS="z"><TD CLASS="l">426</TD><TD>                if (isDebuggingAvailable()) {</TD></TR><TR CLASS="z"><TD CLASS="l">427</TD><TD>                        setAction(ITextEditorActionConstants.RULER_DOUBLE_CLICK, getAction(ActionDefinitionIds.TOGGLE_BREAKPOINTS));</TD></TR><TR><TD CLASS="l">428</TD><TD>                }</TD></TR><TR><TD CLASS="l">429</TD><TD>                else {</TD></TR><TR><TD CLASS="l">430</TD><TD>                        // The Default Text Editor uses editorContribution to perform this</TD></TR><TR><TD CLASS="l">431</TD><TD>                        // mapping, but since it relies on the IEditorSite ID, it can't be</TD></TR><TR><TD CLASS="l">432</TD><TD>                        // relied on for MultiPageEditorParts. Instead, force the action</TD></TR><TR><TD CLASS="l">433</TD><TD>                        // registration manually.</TD></TR><TR CLASS="z"><TD CLASS="l">434</TD><TD>                        setAction(ITextEditorActionConstants.RULER_DOUBLE_CLICK, new MarkerRulerAction(SSEUIMessages.getResourceBundle(), &#34;Editor.ManageBookmarks.&#34;, this, getVerticalRuler(), IMarker.BOOKMARK, true)); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">435</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">436</TD><TD>                fShowInTargetIds = createShowInTargetIds();</TD></TR><TR CLASS="z"><TD CLASS="l">437</TD><TD>        }</TD></TR><TR><TD CLASS="l">438</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="d.html">org.eclipse.wst.sse.ui.internal.debug</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/11.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/11.html
deleted file mode 100644
index e36e5e4..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/11.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR PACKAGE [<SPAN CLASS="in">org.eclipse.wst.sse.ui.internal.encoding.ui</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>org.eclipse.wst.sse.ui.internal.encoding.ui</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/109)</TD><TD CLASS="h">0%   (0/30)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY SOURCE FILE</H3><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR CLASS="o"><TD><A HREF="11f.html">EncodingPreferencePage.java</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/109)</TD><TD CLASS="h">0%   (0/30)</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/110.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/110.html
deleted file mode 100644
index 7d31140..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/110.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="d.html">org.eclipse.wst.sse.ui.internal.debug</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">EditBreakpointAction.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>EditBreakpointAction.java</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/54)</TD><TD CLASS="h">0%   (0/16)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">EditBreakpointAction</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/38)</TD><TD CLASS="h">0%   (0/11)</TD></TR><TR><TD CLASS="f"><A HREF="#0">EditBreakpointAction (ITextEditor, IVerticalRuler): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">run (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/14)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#3">update (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#2">EditBreakpointAction$1</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/16)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#2">EditBreakpointAction$1 (EditBreakpointAction): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">addSelectionChangedListener (ISelectionChangedListener): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#7">getSelection (): ISelection</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">removeSelectionChangedListener (ISelectionChangedListener): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#9">setSelection (ISelection): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR CLASS="z"><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2005 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.debug;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.debug.core.model.IBreakpoint;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.jface.text.source.IVerticalRuler;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.jface.viewers.ISelection;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.jface.viewers.ISelectionChangedListener;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.jface.viewers.ISelectionProvider;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.jface.viewers.StructuredSelection;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.ui.dialogs.PropertyDialogAction;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.ui.texteditor.ITextEditor;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.wst.sse.ui.internal.SSEUIMessages;</TD></TR><TR><TD CLASS="l">24</TD><TD> </TD></TR><TR><TD CLASS="l">25</TD><TD>public class EditBreakpointAction extends BreakpointRulerAction {</TD></TR><TR CLASS="z"><TD CLASS="l">26</TD><TD>        protected IBreakpoint[] breakpoints = null;</TD></TR><TR><TD CLASS="l">27</TD><TD> </TD></TR><TR><TD CLASS="l">28</TD><TD>        /**</TD></TR><TR><TD CLASS="l"><A NAME="0">29</A></TD><TD>         * @param editor</TD></TR><TR><TD CLASS="l">30</TD><TD>         * @param rulerInfo</TD></TR><TR><TD CLASS="l">31</TD><TD>         */</TD></TR><TR><TD CLASS="l">32</TD><TD>        public EditBreakpointAction(ITextEditor editor, IVerticalRuler rulerInfo) {</TD></TR><TR CLASS="z"><TD CLASS="l">33</TD><TD>                super(editor, rulerInfo);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">34</A></TD><TD>                setText(SSEUIMessages.EditBreakpointAction_0); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">35</TD><TD>        }</TD></TR><TR><TD CLASS="l">36</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="6">37</A></TD><TD>        public void run() {</TD></TR><TR CLASS="z"><TD CLASS="l">38</TD><TD>                PropertyDialogAction action = new PropertyDialogAction(getTextEditor().getEditorSite(), new ISelectionProvider() {</TD></TR><TR><TD CLASS="l">39</TD><TD>                        public void addSelectionChangedListener(ISelectionChangedListener listener) {</TD></TR><TR><TD CLASS="l"><A NAME="7">40</A></TD><TD>                                // do nothing</TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>                        }</TD></TR><TR><TD CLASS="l">42</TD><TD> </TD></TR><TR><TD CLASS="l">43</TD><TD>                        public ISelection getSelection() {</TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>                                return new StructuredSelection(breakpoints);</TD></TR><TR><TD CLASS="l"><A NAME="8">45</A></TD><TD>                        }</TD></TR><TR><TD CLASS="l">46</TD><TD> </TD></TR><TR><TD CLASS="l">47</TD><TD>                        public void removeSelectionChangedListener(ISelectionChangedListener listener) {</TD></TR><TR><TD CLASS="l">48</TD><TD>                                // do nothing</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="9">49</A></TD><TD>                        }</TD></TR><TR><TD CLASS="l">50</TD><TD> </TD></TR><TR><TD CLASS="l">51</TD><TD>                        public void setSelection(ISelection selection) {</TD></TR><TR><TD CLASS="l">52</TD><TD>                                // do nothing</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>                        }</TD></TR><TR><TD CLASS="l">54</TD><TD>                });</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">55</A></TD><TD>                action.run();</TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>        }</TD></TR><TR><TD CLASS="l">57</TD><TD> </TD></TR><TR><TD CLASS="l">58</TD><TD>        public void update() {</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>                boolean enableThisAction = hasMarkers();</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                setEnabled(enableThisAction);</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                breakpoints = getBreakpoints(getMarkers());</TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>        }</TD></TR><TR><TD CLASS="l">63</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="d.html">org.eclipse.wst.sse.ui.internal.debug</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/111.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/111.html
deleted file mode 100644
index 0876298..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/111.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="d.html">org.eclipse.wst.sse.ui.internal.debug</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">ManageBreakpointAction.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>ManageBreakpointAction.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/129)</TD><TD CLASS="h">0%   (0/32)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">ManageBreakpointAction</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/129)</TD><TD CLASS="h">0%   (0/32)</TD></TR><TR><TD CLASS="f"><A HREF="#0">ManageBreakpointAction (ITextEditor, IVerticalRuler): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/14)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">disableBreakpoints (IBreakpoint []): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/18)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#3">enableBreakpoints (IBreakpoint []): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/18)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">run (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#5">update (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/66)</TD><TD CLASS="h">0%   (0/13)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2005 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.debug;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.core.runtime.CoreException;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.debug.core.model.IBreakpoint;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.jface.text.source.IVerticalRuler;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.ui.texteditor.ITextEditor;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.wst.sse.ui.internal.Logger;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.wst.sse.ui.internal.SSEUIMessages;</TD></TR><TR><TD CLASS="l">21</TD><TD> </TD></TR><TR><TD CLASS="l">22</TD><TD>/**</TD></TR><TR><TD CLASS="l">23</TD><TD> * ManageBreakpointAction - Enables and Disables</TD></TR><TR><TD CLASS="l">24</TD><TD> */</TD></TR><TR><TD CLASS="l">25</TD><TD>public class ManageBreakpointAction extends BreakpointRulerAction {</TD></TR><TR><TD CLASS="l">26</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">27</TD><TD>        protected IBreakpoint[] breakpoints = null;</TD></TR><TR CLASS="z"><TD CLASS="l">28</TD><TD>        private boolean doEnable = true;</TD></TR><TR><TD CLASS="l">29</TD><TD> </TD></TR><TR><TD CLASS="l">30</TD><TD>        /**</TD></TR><TR><TD CLASS="l"><A NAME="0">31</A></TD><TD>         * @param editor</TD></TR><TR><TD CLASS="l">32</TD><TD>         * @param rulerInfo</TD></TR><TR><TD CLASS="l">33</TD><TD>         */</TD></TR><TR><TD CLASS="l">34</TD><TD>        public ManageBreakpointAction(ITextEditor editor, IVerticalRuler rulerInfo) {</TD></TR><TR CLASS="z"><TD CLASS="l">35</TD><TD>                super(editor, rulerInfo);</TD></TR><TR CLASS="z"><TD CLASS="l">36</TD><TD>                setEnabled(true);</TD></TR><TR CLASS="z"><TD CLASS="l">37</TD><TD>        }</TD></TR><TR><TD CLASS="l">38</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="2">39</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">40</TD><TD>         *  </TD></TR><TR><TD CLASS="l">41</TD><TD>         */</TD></TR><TR><TD CLASS="l">42</TD><TD>        protected void disableBreakpoints(IBreakpoint[] breakpoints) {</TD></TR><TR CLASS="z"><TD CLASS="l">43</TD><TD>                for (int i = 0; i &lt; breakpoints.length; i++) {</TD></TR><TR><TD CLASS="l">44</TD><TD>                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">45</TD><TD>                                breakpoints[i].setEnabled(false);</TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>                        } catch (CoreException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>                                Logger.logException(e);</TD></TR><TR><TD CLASS="l">48</TD><TD>                        }</TD></TR><TR><TD CLASS="l"><A NAME="3">49</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">50</TD><TD>        }</TD></TR><TR><TD CLASS="l">51</TD><TD> </TD></TR><TR><TD CLASS="l">52</TD><TD>        protected void enableBreakpoints(IBreakpoint[] breakpoints) {</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>                for (int i = 0; i &lt; breakpoints.length; i++) {</TD></TR><TR><TD CLASS="l">54</TD><TD>                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                                breakpoints[i].setEnabled(true);</TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>                        } catch (CoreException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>                                Logger.logException(e);</TD></TR><TR><TD CLASS="l">58</TD><TD>                        }</TD></TR><TR><TD CLASS="l"><A NAME="4">59</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>        }</TD></TR><TR><TD CLASS="l">61</TD><TD> </TD></TR><TR><TD CLASS="l">62</TD><TD>        public void run() {</TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>                if (doEnable)</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                        enableBreakpoints(breakpoints);</TD></TR><TR><TD CLASS="l">65</TD><TD>                else</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                        disableBreakpoints(breakpoints);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="5">67</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">68</TD><TD> </TD></TR><TR><TD CLASS="l">69</TD><TD>        public void update() {</TD></TR><TR><TD CLASS="l">70</TD><TD>                // doEnable means &#34;enable&#34; instead of &#34;disable&#34;</TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>                doEnable = true;</TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>                breakpoints = getBreakpoints(getMarkers());</TD></TR><TR CLASS="z"><TD CLASS="l">73</TD><TD>                for (int i = 0; doEnable &amp;&amp; i &lt; breakpoints.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>                        IBreakpoint breakpoint = breakpoints[i];</TD></TR><TR><TD CLASS="l">75</TD><TD>                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>                                if (breakpoint.isEnabled()) {</TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>                                        doEnable = false;</TD></TR><TR><TD CLASS="l">78</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">79</TD><TD>                        } catch (CoreException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">80</TD><TD>                                Logger.logException(&#34;breakpoint not responding to isEnabled: &#34; + breakpoint, e); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">81</TD><TD>                        }</TD></TR><TR><TD CLASS="l">82</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">83</TD><TD>                setEnabled(breakpoints != null &amp;&amp; breakpoints.length &gt; 0);</TD></TR><TR CLASS="z"><TD CLASS="l">84</TD><TD>                if (doEnable)</TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>                        setText(SSEUIMessages.ManageBreakpointAction_0); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">86</TD><TD>                else</TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>                        setText(SSEUIMessages.ManageBreakpointAction_1); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">88</TD><TD>        }</TD></TR><TR><TD CLASS="l">89</TD><TD> </TD></TR><TR><TD CLASS="l">90</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="d.html">org.eclipse.wst.sse.ui.internal.debug</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/112.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/112.html
deleted file mode 100644
index ee0c03c..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/112.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="d.html">org.eclipse.wst.sse.ui.internal.debug</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">ToggleBreakpointAction.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>ToggleBreakpointAction.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/315)</TD><TD CLASS="h">0%   (0/76)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">ToggleBreakpointAction</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/315)</TD><TD CLASS="h">0%   (0/76)</TD></TR><TR><TD CLASS="f"><A HREF="#0">ToggleBreakpointAction (ITextEditor, IVerticalRulerInfo): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">ToggleBreakpointAction (ITextEditor, IVerticalRulerInfo, IAction): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#3">createBreakpoints (int): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/190)</TD><TD CLASS="h">0%   (0/37)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">getContentType (IDocument): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/52)</TD><TD CLASS="h">0%   (0/18)</TD></TR><TR><TD CLASS="f"><A HREF="#5">removeBreakpoints (int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/32)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">run (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/24)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#7">update (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.debug;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.util.ArrayList;</TD></TR><TR><TD CLASS="l">16</TD><TD>import java.util.List;</TD></TR><TR><TD CLASS="l">17</TD><TD> </TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.core.runtime.CoreException;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.core.runtime.IStatus;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.core.runtime.MultiStatus;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.core.runtime.Platform;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.core.runtime.content.IContentType;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.debug.core.DebugPlugin;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.debug.core.IBreakpointManager;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.debug.core.model.IBreakpoint;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.jface.action.IAction;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.jface.dialogs.ErrorDialog;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.jface.text.IDocument;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.jface.text.source.IVerticalRulerInfo;</TD></TR><TR><TD CLASS="l">30</TD><TD>import org.eclipse.swt.widgets.Shell;</TD></TR><TR><TD CLASS="l">31</TD><TD>import org.eclipse.ui.IEditorInput;</TD></TR><TR><TD CLASS="l">32</TD><TD>import org.eclipse.ui.ISelectionListener;</TD></TR><TR><TD CLASS="l">33</TD><TD>import org.eclipse.ui.texteditor.IDocumentProvider;</TD></TR><TR><TD CLASS="l">34</TD><TD>import org.eclipse.ui.texteditor.IDocumentProviderExtension4;</TD></TR><TR><TD CLASS="l">35</TD><TD>import org.eclipse.ui.texteditor.ITextEditor;</TD></TR><TR><TD CLASS="l">36</TD><TD>import org.eclipse.wst.sse.core.StructuredModelManager;</TD></TR><TR><TD CLASS="l">37</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.IModelManager;</TD></TR><TR><TD CLASS="l">38</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;</TD></TR><TR><TD CLASS="l">39</TD><TD>import org.eclipse.wst.sse.core.internal.util.Debug;</TD></TR><TR><TD CLASS="l">40</TD><TD>import org.eclipse.wst.sse.ui.internal.Logger;</TD></TR><TR><TD CLASS="l">41</TD><TD>import org.eclipse.wst.sse.ui.internal.SSEUIMessages;</TD></TR><TR><TD CLASS="l">42</TD><TD>import org.eclipse.wst.sse.ui.internal.SSEUIPlugin;</TD></TR><TR><TD CLASS="l">43</TD><TD>import org.eclipse.wst.sse.ui.internal.extension.BreakpointProviderBuilder;</TD></TR><TR><TD CLASS="l">44</TD><TD>import org.eclipse.wst.sse.ui.internal.provisional.extensions.ISourceEditingTextTools;</TD></TR><TR><TD CLASS="l">45</TD><TD>import org.eclipse.wst.sse.ui.internal.provisional.extensions.breakpoint.IBreakpointProvider;</TD></TR><TR><TD CLASS="l">46</TD><TD> </TD></TR><TR><TD CLASS="l">47</TD><TD>/**</TD></TR><TR><TD CLASS="l">48</TD><TD> * ToggleBreakpointAction</TD></TR><TR><TD CLASS="l">49</TD><TD> */</TD></TR><TR><TD CLASS="l">50</TD><TD>public class ToggleBreakpointAction extends BreakpointRulerAction {</TD></TR><TR><TD CLASS="l">51</TD><TD>        IAction fFallbackAction;</TD></TR><TR><TD CLASS="l">52</TD><TD> </TD></TR><TR><TD CLASS="l">53</TD><TD>        /**</TD></TR><TR><TD CLASS="l"><A NAME="0">54</A></TD><TD>         * @param editor</TD></TR><TR><TD CLASS="l">55</TD><TD>         * @param rulerInfo</TD></TR><TR><TD CLASS="l">56</TD><TD>         */</TD></TR><TR><TD CLASS="l">57</TD><TD>        public ToggleBreakpointAction(ITextEditor editor, IVerticalRulerInfo rulerInfo) {</TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>                super(editor, rulerInfo);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">59</A></TD><TD>                setText(SSEUIMessages.ToggleBreakpointAction_0); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>        }</TD></TR><TR><TD CLASS="l">61</TD><TD> </TD></TR><TR><TD CLASS="l">62</TD><TD>        public ToggleBreakpointAction(ITextEditor editor, IVerticalRulerInfo rulerInfo, IAction fallbackAction) {</TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>                this(editor, rulerInfo);</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                fFallbackAction = fallbackAction;</TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>        }</TD></TR><TR><TD CLASS="l">66</TD><TD> </TD></TR><TR><TD CLASS="l">67</TD><TD>        protected boolean createBreakpoints(int lineNumber) {</TD></TR><TR><TD CLASS="l">68</TD><TD>                /*</TD></TR><TR><TD CLASS="l">69</TD><TD>                 * Note: we'll always allow processing to continue, even for a &#34;read</TD></TR><TR><TD CLASS="l">70</TD><TD>                 * only&#34; IStorageEditorInput, for the ActiveScript debugger. But this</TD></TR><TR><TD CLASS="l"><A NAME="3">71</A></TD><TD>                 * means sometimes the ActiveScript provider might get an input from</TD></TR><TR><TD CLASS="l">72</TD><TD>                 * CVS or something that is not related to debugging.</TD></TR><TR><TD CLASS="l">73</TD><TD>                 */</TD></TR><TR><TD CLASS="l">74</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>                ITextEditor editor = getTextEditor();</TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>                IEditorInput input = editor.getEditorInput();</TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>                IDocument document = editor.getDocumentProvider().getDocument(input);</TD></TR><TR CLASS="z"><TD CLASS="l">78</TD><TD>                if (document == null)</TD></TR><TR CLASS="z"><TD CLASS="l">79</TD><TD>                        return false;</TD></TR><TR><TD CLASS="l">80</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">81</TD><TD>                String contentType = getContentType(document);</TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>                IBreakpointProvider[] providers = BreakpointProviderBuilder.getInstance().getBreakpointProviders(editor, contentType, getFileExtension(input));</TD></TR><TR><TD CLASS="l">83</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">84</TD><TD>                int pos = -1;</TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>                ISourceEditingTextTools tools = (ISourceEditingTextTools) editor.getAdapter(ISourceEditingTextTools.class);</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                if (tools != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>                        pos = tools.getCaretOffset();</TD></TR><TR><TD CLASS="l">88</TD><TD>                }</TD></TR><TR><TD CLASS="l">89</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">90</TD><TD>                final int n = providers.length;</TD></TR><TR CLASS="z"><TD CLASS="l">91</TD><TD>                List errors = new ArrayList(0);</TD></TR><TR CLASS="z"><TD CLASS="l">92</TD><TD>                for (int i = 0; i &lt; n; i++) {</TD></TR><TR><TD CLASS="l">93</TD><TD>                        try {</TD></TR><TR><TD CLASS="l">94</TD><TD>                                if (Debug.debugBreakpoints)</TD></TR><TR><TD CLASS="l">95</TD><TD>                                        System.out.println(providers[i].getClass().getName() + &#34; adding breakpoint to line &#34; + lineNumber); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">96</TD><TD>                                IStatus status = providers[i].addBreakpoint(document, input, lineNumber, pos);</TD></TR><TR CLASS="z"><TD CLASS="l">97</TD><TD>                                if (status != null &amp;&amp; !status.isOK()) {</TD></TR><TR CLASS="z"><TD CLASS="l">98</TD><TD>                                        errors.add(status);</TD></TR><TR><TD CLASS="l">99</TD><TD>                                }</TD></TR><TR><TD CLASS="l">100</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">101</TD><TD>                        catch (CoreException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">102</TD><TD>                                errors.add(e.getStatus());</TD></TR><TR><TD CLASS="l">103</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">104</TD><TD>                        catch (Exception t) {</TD></TR><TR CLASS="z"><TD CLASS="l">105</TD><TD>                                Logger.logException(&#34;exception while adding breakpoint&#34;, t); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">106</TD><TD>                        }</TD></TR><TR><TD CLASS="l">107</TD><TD>                }</TD></TR><TR><TD CLASS="l">108</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">109</TD><TD>                IStatus status = null;</TD></TR><TR CLASS="z"><TD CLASS="l">110</TD><TD>                if (errors.size() &gt; 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">111</TD><TD>                        Shell shell = editor.getSite().getShell();</TD></TR><TR CLASS="z"><TD CLASS="l">112</TD><TD>                        if (errors.size() &gt; 1) {</TD></TR><TR CLASS="z"><TD CLASS="l">113</TD><TD>                                status = new MultiStatus(SSEUIPlugin.ID, IStatus.OK, (IStatus[]) errors.toArray(new IStatus[0]), SSEUIMessages.ManageBreakpoints_error_adding_message1, null); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">114</TD><TD>                        }</TD></TR><TR><TD CLASS="l">115</TD><TD>                        else {</TD></TR><TR CLASS="z"><TD CLASS="l">116</TD><TD>                                status = (IStatus) errors.get(0);</TD></TR><TR><TD CLASS="l">117</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">118</TD><TD>                        if ((status.getSeverity() &gt; IStatus.INFO) || (Platform.inDebugMode() &amp;&amp; !status.isOK())) {</TD></TR><TR CLASS="z"><TD CLASS="l">119</TD><TD>                                Platform.getLog(SSEUIPlugin.getDefault().getBundle()).log(status);</TD></TR><TR><TD CLASS="l">120</TD><TD>                        }</TD></TR><TR><TD CLASS="l">121</TD><TD>                        /*</TD></TR><TR><TD CLASS="l">122</TD><TD>                         * Show for conditions more severe than INFO or when no</TD></TR><TR><TD CLASS="l">123</TD><TD>                         * breakpoints were created</TD></TR><TR><TD CLASS="l">124</TD><TD>                         */</TD></TR><TR CLASS="z"><TD CLASS="l">125</TD><TD>                        if (status.getSeverity() &gt; IStatus.INFO || getBreakpoints(getMarkers()).length &lt; 1) {</TD></TR><TR CLASS="z"><TD CLASS="l">126</TD><TD>                                ErrorDialog.openError(shell, SSEUIMessages.ManageBreakpoints_error_adding_title1, status.getMessage(), status); //$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR CLASS="z"><TD CLASS="l">127</TD><TD>                                return false;</TD></TR><TR><TD CLASS="l">128</TD><TD>                        }</TD></TR><TR><TD CLASS="l">129</TD><TD>                }</TD></TR><TR><TD CLASS="l">130</TD><TD>                /*</TD></TR><TR><TD CLASS="l">131</TD><TD>                 * Although no errors were reported, no breakpoints exist on this line</TD></TR><TR><TD CLASS="l">132</TD><TD>                 * after having run the existing providers. Run the fallback action.</TD></TR><TR><TD CLASS="l">133</TD><TD>                 */</TD></TR><TR CLASS="z"><TD CLASS="l">134</TD><TD>                if ((status == null || status.getSeverity() &lt; IStatus.WARNING) &amp;&amp; fFallbackAction != null &amp;&amp; !hasMarkers()) {</TD></TR><TR CLASS="z"><TD CLASS="l">135</TD><TD>                        if (fFallbackAction instanceof ISelectionListener) {</TD></TR><TR CLASS="z"><TD CLASS="l">136</TD><TD>                                ((ISelectionListener) fFallbackAction).selectionChanged(null, null);</TD></TR><TR><TD CLASS="l">137</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">138</TD><TD>                        fFallbackAction.run();</TD></TR><TR><TD CLASS="l">139</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">140</A></TD><TD>                return true;</TD></TR><TR><TD CLASS="l">141</TD><TD>        }</TD></TR><TR><TD CLASS="l">142</TD><TD> </TD></TR><TR><TD CLASS="l">143</TD><TD>        protected String getContentType(IDocument document) {</TD></TR><TR CLASS="z"><TD CLASS="l">144</TD><TD>                IModelManager mgr = StructuredModelManager.getModelManager();</TD></TR><TR CLASS="z"><TD CLASS="l">145</TD><TD>                String contentType = null;</TD></TR><TR><TD CLASS="l">146</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">147</TD><TD>                IDocumentProvider provider = fTextEditor.getDocumentProvider();</TD></TR><TR CLASS="z"><TD CLASS="l">148</TD><TD>                if (provider instanceof IDocumentProviderExtension4) {</TD></TR><TR><TD CLASS="l">149</TD><TD>                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">150</TD><TD>                                IContentType type = ((IDocumentProviderExtension4) provider).getContentType(fTextEditor.getEditorInput());</TD></TR><TR CLASS="z"><TD CLASS="l">151</TD><TD>                                if (type != null)</TD></TR><TR CLASS="z"><TD CLASS="l">152</TD><TD>                                        contentType = type.getId();</TD></TR><TR><TD CLASS="l">153</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">154</TD><TD>                        catch (CoreException e) {</TD></TR><TR><TD CLASS="l">155</TD><TD>                                /*</TD></TR><TR><TD CLASS="l">156</TD><TD>                                 * A failure accessing the underlying store really isn't</TD></TR><TR><TD CLASS="l">157</TD><TD>                                 * interesting, although it can be a problem for</TD></TR><TR><TD CLASS="l">158</TD><TD>                                 * IStorageEditorInputs.</TD></TR><TR><TD CLASS="l">159</TD><TD>                                 */</TD></TR><TR><TD CLASS="l">160</TD><TD>                        }</TD></TR><TR><TD CLASS="l">161</TD><TD>                }</TD></TR><TR><TD CLASS="l">162</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">163</TD><TD>                if (contentType == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">164</TD><TD>                        IStructuredModel model = null;</TD></TR><TR><TD CLASS="l">165</TD><TD>                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">166</TD><TD>                                model = mgr.getExistingModelForRead(document);</TD></TR><TR CLASS="z"><TD CLASS="l">167</TD><TD>                                if (model != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">168</TD><TD>                                        contentType = model.getContentTypeIdentifier();</TD></TR><TR><TD CLASS="l">169</TD><TD>                                }</TD></TR><TR><TD CLASS="l">170</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">171</TD><TD>                        finally {</TD></TR><TR CLASS="z"><TD CLASS="l">172</TD><TD>                                if (model != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">173</TD><TD>                                        model.releaseFromRead();</TD></TR><TR><TD CLASS="l">174</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">175</TD><TD>                        }</TD></TR><TR><TD CLASS="l">176</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="5">177</A></TD><TD>                return contentType;</TD></TR><TR><TD CLASS="l">178</TD><TD>        }</TD></TR><TR><TD CLASS="l">179</TD><TD> </TD></TR><TR><TD CLASS="l">180</TD><TD>        protected void removeBreakpoints(int lineNumber) {</TD></TR><TR CLASS="z"><TD CLASS="l">181</TD><TD>                IBreakpointManager breakpointManager = DebugPlugin.getDefault().getBreakpointManager();</TD></TR><TR CLASS="z"><TD CLASS="l">182</TD><TD>                IBreakpoint[] breakpoints = getBreakpoints(getMarkers());</TD></TR><TR CLASS="z"><TD CLASS="l">183</TD><TD>                for (int i = 0; i &lt; breakpoints.length; i++) {</TD></TR><TR><TD CLASS="l">184</TD><TD>                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">185</TD><TD>                                breakpoints[i].getMarker().delete();</TD></TR><TR CLASS="z"><TD CLASS="l">186</TD><TD>                                breakpointManager.removeBreakpoint(breakpoints[i], true);</TD></TR><TR><TD CLASS="l">187</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">188</TD><TD>                        catch (CoreException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">189</TD><TD>                                Logger.logException(e);</TD></TR><TR><TD CLASS="l">190</TD><TD>                        }</TD></TR><TR><TD CLASS="l"><A NAME="6">191</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">192</TD><TD>        }</TD></TR><TR><TD CLASS="l">193</TD><TD> </TD></TR><TR><TD CLASS="l">194</TD><TD>        public void run() {</TD></TR><TR CLASS="z"><TD CLASS="l">195</TD><TD>                int lineNumber = fRulerInfo.getLineOfLastMouseButtonActivity() + 1;</TD></TR><TR CLASS="z"><TD CLASS="l">196</TD><TD>                boolean doAdd = !hasMarkers();</TD></TR><TR CLASS="z"><TD CLASS="l">197</TD><TD>                if (doAdd)</TD></TR><TR CLASS="z"><TD CLASS="l">198</TD><TD>                        createBreakpoints(lineNumber);</TD></TR><TR><TD CLASS="l">199</TD><TD>                else</TD></TR><TR CLASS="z"><TD CLASS="l">200</TD><TD>                        removeBreakpoints(lineNumber);</TD></TR><TR CLASS="z"><TD CLASS="l">201</TD><TD>        }</TD></TR><TR><TD CLASS="l">202</TD><TD> </TD></TR><TR><TD CLASS="l">203</TD><TD>        /*</TD></TR><TR><TD CLASS="l">204</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="7">205</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">206</TD><TD>         * @see org.eclipse.ui.texteditor.IUpdate#update()</TD></TR><TR><TD CLASS="l">207</TD><TD>         */</TD></TR><TR><TD CLASS="l">208</TD><TD>        public void update() {</TD></TR><TR CLASS="z"><TD CLASS="l">209</TD><TD>        }</TD></TR><TR><TD CLASS="l">210</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="d.html">org.eclipse.wst.sse.ui.internal.debug</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/113.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/113.html
deleted file mode 100644
index 792b475..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/113.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="d.html">org.eclipse.wst.sse.ui.internal.debug</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">ToggleBreakpointsTarget.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>ToggleBreakpointsTarget.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/265)</TD><TD CLASS="h">0%   (0/62)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">ToggleBreakpointsTarget</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/265)</TD><TD CLASS="h">0%   (0/62)</TD></TR><TR><TD CLASS="f"><A HREF="#0">&lt;static initializer&gt;</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">ToggleBreakpointsTarget (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#3">canToggleLineBreakpoints (IWorkbenchPart, ISelection): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/61)</TD><TD CLASS="h">0%   (0/13)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">canToggleMethodBreakpoints (IWorkbenchPart, ISelection): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#5">canToggleWatchpoints (IWorkbenchPart, ISelection): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">getBreakpoints (IResource, IDocument, AbstractMarkerAnnotationModel, int): IB...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/89)</TD><TD CLASS="h">0%   (0/19)</TD></TR><TR><TD CLASS="f"><A HREF="#7">getInstance (): IToggleBreakpointsTarget</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">toggleLineBreakpoints (IWorkbenchPart, ISelection): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/99)</TD><TD CLASS="h">0%   (0/21)</TD></TR><TR><TD CLASS="f"><A HREF="#9">toggleMethodBreakpoints (IWorkbenchPart, ISelection): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">toggleWatchpoints (IWorkbenchPart, ISelection): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2005 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     </TD></TR><TR><TD CLASS="l">11</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">12</TD><TD>package org.eclipse.wst.sse.ui.internal.debug;</TD></TR><TR><TD CLASS="l">13</TD><TD> </TD></TR><TR><TD CLASS="l">14</TD><TD>import java.util.ArrayList;</TD></TR><TR><TD CLASS="l">15</TD><TD>import java.util.List;</TD></TR><TR><TD CLASS="l">16</TD><TD> </TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.core.resources.IMarker;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.core.resources.IResource;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.core.runtime.CoreException;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.debug.core.DebugPlugin;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.debug.core.IBreakpointManager;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.debug.core.model.IBreakpoint;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.debug.ui.actions.IToggleBreakpointsTarget;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.jface.text.BadLocationException;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.jface.text.IDocument;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.jface.text.ITextSelection;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.jface.text.Position;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.jface.viewers.ISelection;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.ui.IWorkbenchPart;</TD></TR><TR><TD CLASS="l">30</TD><TD>import org.eclipse.ui.texteditor.AbstractMarkerAnnotationModel;</TD></TR><TR><TD CLASS="l">31</TD><TD>import org.eclipse.ui.texteditor.ITextEditor;</TD></TR><TR><TD CLASS="l">32</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="0">33</A></TD><TD>/**</TD></TR><TR><TD CLASS="l">34</TD><TD> * @author nsd</TD></TR><TR><TD CLASS="l">35</TD><TD> */</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="7">36</A></TD><TD>public class ToggleBreakpointsTarget implements IToggleBreakpointsTarget {</TD></TR><TR CLASS="z"><TD CLASS="l">37</TD><TD>        static final IToggleBreakpointsTarget instance = new ToggleBreakpointsTarget();</TD></TR><TR><TD CLASS="l">38</TD><TD> </TD></TR><TR><TD CLASS="l">39</TD><TD>        public static IToggleBreakpointsTarget getInstance() {</TD></TR><TR CLASS="z"><TD CLASS="l">40</TD><TD>                return instance;</TD></TR><TR><TD CLASS="l">41</TD><TD>        }</TD></TR><TR><TD CLASS="l">42</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="2">43</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">44</TD><TD>         * </TD></TR><TR><TD CLASS="l">45</TD><TD>         */</TD></TR><TR><TD CLASS="l">46</TD><TD>        private ToggleBreakpointsTarget() {</TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>                super();</TD></TR><TR CLASS="z"><TD CLASS="l">48</TD><TD>        }</TD></TR><TR><TD CLASS="l">49</TD><TD> </TD></TR><TR><TD CLASS="l">50</TD><TD>        /*</TD></TR><TR><TD CLASS="l">51</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l">52</TD><TD>         * </TD></TR><TR><TD CLASS="l"><A NAME="3">53</A></TD><TD>         * @see org.eclipse.debug.ui.actions.IToggleBreakpointsTarget#canToggleLineBreakpoints(org.eclipse.ui.IWorkbenchPart,</TD></TR><TR><TD CLASS="l">54</TD><TD>         *      org.eclipse.jface.viewers.ISelection)</TD></TR><TR><TD CLASS="l">55</TD><TD>         */</TD></TR><TR><TD CLASS="l">56</TD><TD>        public boolean canToggleLineBreakpoints(IWorkbenchPart part, ISelection selection) {</TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>                ITextEditor editor = (ITextEditor) part.getAdapter(ITextEditor.class);</TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>                if (selection instanceof ITextSelection) {</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>                        ITextSelection textSelection = (ITextSelection) selection;</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                        IDocument document = editor.getDocumentProvider().getDocument(editor.getEditorInput());</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                        if (document != null &amp;&amp; textSelection.getOffset() &gt; -1) {</TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>                                int lineNumber = -1;</TD></TR><TR><TD CLASS="l">63</TD><TD>                                try {</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                                        lineNumber = document.getLineOfOffset(textSelection.getOffset());</TD></TR><TR><TD CLASS="l">65</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                                catch (BadLocationException e) {</TD></TR><TR><TD CLASS="l">67</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>                                if (lineNumber &gt;= 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                                        ToggleBreakpointAction toggler = new ToggleBreakpointAction(editor, null);</TD></TR><TR CLASS="z"><TD CLASS="l">70</TD><TD>                                        toggler.update();</TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>                                        return toggler.isEnabled();</TD></TR><TR><TD CLASS="l">72</TD><TD>                                }</TD></TR><TR><TD CLASS="l">73</TD><TD>                        }</TD></TR><TR><TD CLASS="l">74</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>                return false;</TD></TR><TR><TD CLASS="l">76</TD><TD>        }</TD></TR><TR><TD CLASS="l">77</TD><TD> </TD></TR><TR><TD CLASS="l">78</TD><TD>        /*</TD></TR><TR><TD CLASS="l">79</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l">80</TD><TD>         * </TD></TR><TR><TD CLASS="l"><A NAME="4">81</A></TD><TD>         * @see org.eclipse.debug.ui.actions.IToggleBreakpointsTarget#canToggleMethodBreakpoints(org.eclipse.ui.IWorkbenchPart,</TD></TR><TR><TD CLASS="l">82</TD><TD>         *      org.eclipse.jface.viewers.ISelection)</TD></TR><TR><TD CLASS="l">83</TD><TD>         */</TD></TR><TR><TD CLASS="l">84</TD><TD>        public boolean canToggleMethodBreakpoints(IWorkbenchPart part, ISelection selection) {</TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>                return false;</TD></TR><TR><TD CLASS="l">86</TD><TD>        }</TD></TR><TR><TD CLASS="l">87</TD><TD> </TD></TR><TR><TD CLASS="l">88</TD><TD>        /*</TD></TR><TR><TD CLASS="l">89</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l">90</TD><TD>         * </TD></TR><TR><TD CLASS="l"><A NAME="5">91</A></TD><TD>         * @see org.eclipse.debug.ui.actions.IToggleBreakpointsTarget#canToggleWatchpoints(org.eclipse.ui.IWorkbenchPart,</TD></TR><TR><TD CLASS="l">92</TD><TD>         *      org.eclipse.jface.viewers.ISelection)</TD></TR><TR><TD CLASS="l">93</TD><TD>         */</TD></TR><TR><TD CLASS="l">94</TD><TD>        public boolean canToggleWatchpoints(IWorkbenchPart part, ISelection selection) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="6">95</A></TD><TD>                return false;</TD></TR><TR><TD CLASS="l">96</TD><TD>        }</TD></TR><TR><TD CLASS="l">97</TD><TD> </TD></TR><TR><TD CLASS="l">98</TD><TD>        private IBreakpoint[] getBreakpoints(IResource resource, IDocument document, AbstractMarkerAnnotationModel model, int lineNumber) {</TD></TR><TR CLASS="z"><TD CLASS="l">99</TD><TD>                List markers = new ArrayList();</TD></TR><TR CLASS="z"><TD CLASS="l">100</TD><TD>                if (resource != null &amp;&amp; model != null &amp;&amp; resource.exists()) {</TD></TR><TR><TD CLASS="l">101</TD><TD>                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">102</TD><TD>                                IMarker[] allMarkers = resource.findMarkers(IBreakpoint.LINE_BREAKPOINT_MARKER, true, IResource.DEPTH_ZERO);</TD></TR><TR CLASS="z"><TD CLASS="l">103</TD><TD>                                if (allMarkers != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">104</TD><TD>                                        for (int i = 0; i &lt; allMarkers.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">105</TD><TD>                                                Position p = model.getMarkerPosition(allMarkers[i]);</TD></TR><TR CLASS="z"><TD CLASS="l">106</TD><TD>                                                int markerLine = -1;</TD></TR><TR><TD CLASS="l">107</TD><TD>                                                try {</TD></TR><TR CLASS="z"><TD CLASS="l">108</TD><TD>                                                        markerLine = document.getLineOfOffset(p.getOffset());</TD></TR><TR><TD CLASS="l">109</TD><TD>                                                }</TD></TR><TR CLASS="z"><TD CLASS="l">110</TD><TD>                                                catch (BadLocationException e1) {</TD></TR><TR><TD CLASS="l">111</TD><TD>                                                }</TD></TR><TR CLASS="z"><TD CLASS="l">112</TD><TD>                                                if (markerLine == lineNumber) {</TD></TR><TR CLASS="z"><TD CLASS="l">113</TD><TD>                                                        markers.add(allMarkers[i]);</TD></TR><TR><TD CLASS="l">114</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">115</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">116</TD><TD>                                }</TD></TR><TR><TD CLASS="l">117</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">118</TD><TD>                        catch (CoreException x) {</TD></TR><TR><TD CLASS="l">119</TD><TD>                        }</TD></TR><TR><TD CLASS="l">120</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">121</TD><TD>                IBreakpointManager manager = DebugPlugin.getDefault().getBreakpointManager();</TD></TR><TR CLASS="z"><TD CLASS="l">122</TD><TD>                List breakpoints = new ArrayList(markers.size());</TD></TR><TR CLASS="z"><TD CLASS="l">123</TD><TD>                for (int i = 0; i &lt; markers.size(); i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">124</TD><TD>                        IBreakpoint breakpoint = manager.getBreakpoint((IMarker) markers.get(i));</TD></TR><TR CLASS="z"><TD CLASS="l">125</TD><TD>                        if (breakpoint != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">126</TD><TD>                                breakpoints.add(breakpoint);</TD></TR><TR><TD CLASS="l">127</TD><TD>                        }</TD></TR><TR><TD CLASS="l">128</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">129</TD><TD>                return (IBreakpoint[]) breakpoints.toArray(new IBreakpoint[0]);</TD></TR><TR><TD CLASS="l">130</TD><TD>        }</TD></TR><TR><TD CLASS="l">131</TD><TD> </TD></TR><TR><TD CLASS="l">132</TD><TD>        /*</TD></TR><TR><TD CLASS="l">133</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l">134</TD><TD>         * </TD></TR><TR><TD CLASS="l"><A NAME="8">135</A></TD><TD>         * @see org.eclipse.debug.ui.actions.IToggleBreakpointsTarget#toggleLineBreakpoints(org.eclipse.ui.IWorkbenchPart,</TD></TR><TR><TD CLASS="l">136</TD><TD>         *      org.eclipse.jface.viewers.ISelection)</TD></TR><TR><TD CLASS="l">137</TD><TD>         */</TD></TR><TR><TD CLASS="l">138</TD><TD>        public void toggleLineBreakpoints(IWorkbenchPart part, ISelection selection) throws CoreException {</TD></TR><TR CLASS="z"><TD CLASS="l">139</TD><TD>                ITextEditor editor = (ITextEditor) part.getAdapter(ITextEditor.class);</TD></TR><TR CLASS="z"><TD CLASS="l">140</TD><TD>                if (selection instanceof ITextSelection) {</TD></TR><TR CLASS="z"><TD CLASS="l">141</TD><TD>                        ITextSelection textSelection = (ITextSelection) selection;</TD></TR><TR CLASS="z"><TD CLASS="l">142</TD><TD>                        IDocument document = editor.getDocumentProvider().getDocument(editor.getEditorInput());</TD></TR><TR CLASS="z"><TD CLASS="l">143</TD><TD>                        int lineNumber = -1;</TD></TR><TR><TD CLASS="l">144</TD><TD>                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">145</TD><TD>                                lineNumber = document.getLineOfOffset(textSelection.getOffset());</TD></TR><TR><TD CLASS="l">146</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">147</TD><TD>                        catch (BadLocationException e) {</TD></TR><TR><TD CLASS="l">148</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">149</TD><TD>                        if (lineNumber &gt;= 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">150</TD><TD>                                ToggleBreakpointAction toggler = new ToggleBreakpointAction(editor, null);</TD></TR><TR CLASS="z"><TD CLASS="l">151</TD><TD>                                toggler.update();</TD></TR><TR CLASS="z"><TD CLASS="l">152</TD><TD>                                if (toggler.isEnabled()) {</TD></TR><TR CLASS="z"><TD CLASS="l">153</TD><TD>                                        IResource resource = toggler.getResource();</TD></TR><TR CLASS="z"><TD CLASS="l">154</TD><TD>                                        AbstractMarkerAnnotationModel model = toggler.getAnnotationModel();</TD></TR><TR CLASS="z"><TD CLASS="l">155</TD><TD>                                        IBreakpoint[] breakpoints = getBreakpoints(resource, document, model, lineNumber);</TD></TR><TR CLASS="z"><TD CLASS="l">156</TD><TD>                                        if (breakpoints.length &gt; 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">157</TD><TD>                                                IBreakpointManager breakpointManager = DebugPlugin.getDefault().getBreakpointManager();</TD></TR><TR CLASS="z"><TD CLASS="l">158</TD><TD>                                                for (int i = 0; i &lt; breakpoints.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">159</TD><TD>                                                        breakpoints[i].getMarker().delete();</TD></TR><TR CLASS="z"><TD CLASS="l">160</TD><TD>                                                        breakpointManager.removeBreakpoint(breakpoints[i], true);</TD></TR><TR><TD CLASS="l">161</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">162</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">163</TD><TD>                                        else {</TD></TR><TR CLASS="z"><TD CLASS="l">164</TD><TD>                                                toggler.createBreakpoints(lineNumber + 1);</TD></TR><TR><TD CLASS="l">165</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">166</TD><TD>                                }</TD></TR><TR><TD CLASS="l">167</TD><TD>                        }</TD></TR><TR><TD CLASS="l">168</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">169</TD><TD>        }</TD></TR><TR><TD CLASS="l">170</TD><TD> </TD></TR><TR><TD CLASS="l">171</TD><TD>        /*</TD></TR><TR><TD CLASS="l">172</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l">173</TD><TD>         * </TD></TR><TR><TD CLASS="l"><A NAME="9">174</A></TD><TD>         * @see org.eclipse.debug.ui.actions.IToggleBreakpointsTarget#toggleMethodBreakpoints(org.eclipse.ui.IWorkbenchPart,</TD></TR><TR><TD CLASS="l">175</TD><TD>         *      org.eclipse.jface.viewers.ISelection)</TD></TR><TR><TD CLASS="l">176</TD><TD>         */</TD></TR><TR><TD CLASS="l">177</TD><TD>        public void toggleMethodBreakpoints(IWorkbenchPart part, ISelection selection) throws CoreException {</TD></TR><TR CLASS="z"><TD CLASS="l">178</TD><TD>        }</TD></TR><TR><TD CLASS="l">179</TD><TD> </TD></TR><TR><TD CLASS="l">180</TD><TD>        /*</TD></TR><TR><TD CLASS="l">181</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l">182</TD><TD>         * </TD></TR><TR><TD CLASS="l"><A NAME="a">183</A></TD><TD>         * @see org.eclipse.debug.ui.actions.IToggleBreakpointsTarget#toggleWatchpoints(org.eclipse.ui.IWorkbenchPart,</TD></TR><TR><TD CLASS="l">184</TD><TD>         *      org.eclipse.jface.viewers.ISelection)</TD></TR><TR><TD CLASS="l">185</TD><TD>         */</TD></TR><TR><TD CLASS="l">186</TD><TD>        public void toggleWatchpoints(IWorkbenchPart part, ISelection selection) throws CoreException {</TD></TR><TR CLASS="z"><TD CLASS="l">187</TD><TD>        }</TD></TR><TR><TD CLASS="l">188</TD><TD> </TD></TR><TR><TD CLASS="l">189</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="d.html">org.eclipse.wst.sse.ui.internal.debug</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/114.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/114.html
deleted file mode 100644
index ae2d6d2..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/114.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="e.html">org.eclipse.wst.sse.ui.internal.derived</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">HTML2TextReader.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>HTML2TextReader.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/14)</TD><TD CLASS="h">0%   (0/591)</TD><TD CLASS="h">0%   (0/149)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">HTML2TextReader</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/14)</TD><TD CLASS="h">0%   (0/591)</TD><TD CLASS="h">0%   (0/149)</TD></TR><TR><TD CLASS="f"><A HREF="#0">&lt;static initializer&gt;</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/89)</TD><TD CLASS="h">0%   (0/21)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">HTML2TextReader (Reader, TextPresentation): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/25)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR><TD CLASS="f"><A HREF="#3">computeSubstitution (int): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/21)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">entity2Text (String): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/54)</TD><TD CLASS="h">0%   (0/10)</TD></TR><TR><TD CLASS="f"><A HREF="#5">html2Text (String): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/155)</TD><TD CLASS="h">0%   (0/45)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">processEntity (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/47)</TD><TD CLASS="h">0%   (0/11)</TD></TR><TR><TD CLASS="f"><A HREF="#7">processHTMLTag (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/106)</TD><TD CLASS="h">0%   (0/22)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">processPreformattedText (int): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/14)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#9">read (): int</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/14)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">startBold (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/14)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#b">startPreformattedText (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#c">stopBold (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/32)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#d">stopPreformattedText (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#e">unread (int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2005, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD> </TD></TR><TR><TD CLASS="l">14</TD><TD>package org.eclipse.wst.sse.ui.internal.derived;</TD></TR><TR><TD CLASS="l">15</TD><TD> </TD></TR><TR><TD CLASS="l">16</TD><TD>import java.io.IOException;</TD></TR><TR><TD CLASS="l">17</TD><TD>import java.io.PushbackReader;</TD></TR><TR><TD CLASS="l">18</TD><TD>import java.io.Reader;</TD></TR><TR><TD CLASS="l">19</TD><TD>import java.util.HashMap;</TD></TR><TR><TD CLASS="l">20</TD><TD>import java.util.HashSet;</TD></TR><TR><TD CLASS="l">21</TD><TD>import java.util.Map;</TD></TR><TR><TD CLASS="l">22</TD><TD>import java.util.Set;</TD></TR><TR><TD CLASS="l">23</TD><TD> </TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.jface.text.TextPresentation;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.swt.SWT;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.swt.custom.StyleRange;</TD></TR><TR><TD CLASS="l">27</TD><TD> </TD></TR><TR><TD CLASS="l">28</TD><TD>/*</TD></TR><TR><TD CLASS="l">29</TD><TD> * Copied from org.eclipse.jdt.internal.ui.text.HTML2TextReader Modifications</TD></TR><TR><TD CLASS="l">30</TD><TD> * were made to add br/ tag and fix warnings</TD></TR><TR><TD CLASS="l">31</TD><TD> */</TD></TR><TR><TD CLASS="l">32</TD><TD>/**</TD></TR><TR><TD CLASS="l">33</TD><TD> * Reads the text contents from a reader of HTML contents and translates the</TD></TR><TR><TD CLASS="l">34</TD><TD> * tags or cut them out.</TD></TR><TR><TD CLASS="l">35</TD><TD> */</TD></TR><TR CLASS="z"><TD CLASS="l">36</TD><TD>public class HTML2TextReader extends SubstitutionTextReader {</TD></TR><TR><TD CLASS="l">37</TD><TD> </TD></TR><TR><TD CLASS="l">38</TD><TD>        private static final String EMPTY_STRING= &#34;&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">39</TD><TD>        private static final Map fgEntityLookup;</TD></TR><TR><TD CLASS="l"><A NAME="0">40</A></TD><TD>        private static final Set fgTags;</TD></TR><TR><TD CLASS="l">41</TD><TD> </TD></TR><TR><TD CLASS="l">42</TD><TD>        static {</TD></TR><TR><TD CLASS="l">43</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>                fgTags= new HashSet();</TD></TR><TR CLASS="z"><TD CLASS="l">45</TD><TD>                fgTags.add(&#34;b&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>                fgTags.add(&#34;br&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>                fgTags.add(&#34;br/&#34;);//$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">48</TD><TD>                fgTags.add(&#34;h5&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>                fgTags.add(&#34;p&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">50</TD><TD>                fgTags.add(&#34;dl&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>                fgTags.add(&#34;dt&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                fgTags.add(&#34;dd&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>                fgTags.add(&#34;li&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">54</TD><TD>                fgTags.add(&#34;ul&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                fgTags.add(&#34;pre&#34;); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">56</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>                fgEntityLookup= new HashMap(7);</TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>                fgEntityLookup.put(&#34;lt&#34;, &#34;&lt;&#34;); //$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>                fgEntityLookup.put(&#34;gt&#34;, &#34;&gt;&#34;); //$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                fgEntityLookup.put(&#34;nbsp&#34;, &#34; &#34;); //$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                fgEntityLookup.put(&#34;amp&#34;, &#34;&amp;&#34;); //$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>                fgEntityLookup.put(&#34;circ&#34;, &#34;^&#34;); //$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>                fgEntityLookup.put(&#34;tilde&#34;, &#34;~&#34;); //$NON-NLS-2$ //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                fgEntityLookup.put(&#34;quot&#34;, &#34;\&#34;&#34;);                 //$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR><TD CLASS="l">65</TD><TD>        }</TD></TR><TR><TD CLASS="l">66</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>        private int fCounter= 0;</TD></TR><TR><TD CLASS="l">68</TD><TD>        private TextPresentation fTextPresentation;</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>        private int fBold= 0;</TD></TR><TR CLASS="z"><TD CLASS="l">70</TD><TD>        private int fStartOffset= -1;</TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>        private boolean fInParagraph= false;</TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>        private boolean fIsPreformattedText= false;</TD></TR><TR><TD CLASS="l">73</TD><TD> </TD></TR><TR><TD CLASS="l">74</TD><TD>        /**</TD></TR><TR><TD CLASS="l">75</TD><TD>         * Transforms the html text from the reader to formatted text.</TD></TR><TR><TD CLASS="l"><A NAME="2">76</A></TD><TD>         * @param presentation If not &lt;code&gt;null&lt;/code&gt;, formattings will be applied to</TD></TR><TR><TD CLASS="l">77</TD><TD>         * the presentation.</TD></TR><TR><TD CLASS="l">78</TD><TD>        */</TD></TR><TR><TD CLASS="l">79</TD><TD>        public HTML2TextReader(Reader reader, TextPresentation presentation) {</TD></TR><TR CLASS="z"><TD CLASS="l">80</TD><TD>                super(new PushbackReader(reader));</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="9">81</A></TD><TD>                fTextPresentation= presentation;</TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>        }</TD></TR><TR><TD CLASS="l">83</TD><TD> </TD></TR><TR><TD CLASS="l">84</TD><TD>        public int read() throws IOException {</TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>                int c= super.read();</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                if (c != -1)</TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>                        ++ fCounter;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="a">88</A></TD><TD>                return c;</TD></TR><TR><TD CLASS="l">89</TD><TD>        }</TD></TR><TR><TD CLASS="l">90</TD><TD> </TD></TR><TR><TD CLASS="l">91</TD><TD>        protected void startBold() {</TD></TR><TR CLASS="z"><TD CLASS="l">92</TD><TD>                if (fBold == 0)</TD></TR><TR CLASS="z"><TD CLASS="l">93</TD><TD>                        fStartOffset= fCounter;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="b">94</A></TD><TD>                ++ fBold;</TD></TR><TR CLASS="z"><TD CLASS="l">95</TD><TD>        }</TD></TR><TR><TD CLASS="l">96</TD><TD> </TD></TR><TR><TD CLASS="l">97</TD><TD>        protected void startPreformattedText() {</TD></TR><TR CLASS="z"><TD CLASS="l">98</TD><TD>                fIsPreformattedText= true;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="d">99</A></TD><TD>                setSkipWhitespace(false);</TD></TR><TR CLASS="z"><TD CLASS="l">100</TD><TD>        }</TD></TR><TR><TD CLASS="l">101</TD><TD> </TD></TR><TR><TD CLASS="l">102</TD><TD>        protected void stopPreformattedText() {</TD></TR><TR CLASS="z"><TD CLASS="l">103</TD><TD>                fIsPreformattedText= false;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="c">104</A></TD><TD>                setSkipWhitespace(true);</TD></TR><TR CLASS="z"><TD CLASS="l">105</TD><TD>        }</TD></TR><TR><TD CLASS="l">106</TD><TD> </TD></TR><TR><TD CLASS="l">107</TD><TD>        protected void stopBold() {</TD></TR><TR CLASS="z"><TD CLASS="l">108</TD><TD>                -- fBold;</TD></TR><TR CLASS="z"><TD CLASS="l">109</TD><TD>                if (fBold == 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">110</TD><TD>                        if (fTextPresentation != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">111</TD><TD>                                fTextPresentation.addStyleRange(new StyleRange(fStartOffset, fCounter - fStartOffset, null, null, SWT.BOLD));</TD></TR><TR><TD CLASS="l">112</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">113</TD><TD>                        fStartOffset= -1;</TD></TR><TR><TD CLASS="l">114</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">115</TD><TD>        }</TD></TR><TR><TD CLASS="l">116</TD><TD> </TD></TR><TR><TD CLASS="l">117</TD><TD>        /*</TD></TR><TR><TD CLASS="l"><A NAME="3">118</A></TD><TD>         * @see org.eclipse.jdt.internal.ui.text.SubstitutionTextReader#computeSubstitution(int)</TD></TR><TR><TD CLASS="l">119</TD><TD>         */</TD></TR><TR><TD CLASS="l">120</TD><TD>        protected String computeSubstitution(int c) throws IOException {</TD></TR><TR><TD CLASS="l">121</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">122</TD><TD>                if (c == '&lt;')</TD></TR><TR CLASS="z"><TD CLASS="l">123</TD><TD>                        return  processHTMLTag();</TD></TR><TR CLASS="z"><TD CLASS="l">124</TD><TD>                else if (c == '&amp;')</TD></TR><TR CLASS="z"><TD CLASS="l">125</TD><TD>                        return processEntity();</TD></TR><TR CLASS="z"><TD CLASS="l">126</TD><TD>                else if (fIsPreformattedText)</TD></TR><TR CLASS="z"><TD CLASS="l">127</TD><TD>                        return processPreformattedText(c);</TD></TR><TR><TD CLASS="l">128</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">129</TD><TD>                return null;</TD></TR><TR><TD CLASS="l"><A NAME="5">130</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">131</TD><TD> </TD></TR><TR><TD CLASS="l">132</TD><TD>        private String html2Text(String html) {</TD></TR><TR><TD CLASS="l">133</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">134</TD><TD>                if (html == null || html.length() == 0)</TD></TR><TR CLASS="z"><TD CLASS="l">135</TD><TD>                        return EMPTY_STRING;</TD></TR><TR><TD CLASS="l">136</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">137</TD><TD>                String tag= html;</TD></TR><TR CLASS="z"><TD CLASS="l">138</TD><TD>                if ('/' == tag.charAt(0))</TD></TR><TR CLASS="z"><TD CLASS="l">139</TD><TD>                        tag= tag.substring(1);</TD></TR><TR><TD CLASS="l">140</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">141</TD><TD>                if (!fgTags.contains(tag))</TD></TR><TR CLASS="z"><TD CLASS="l">142</TD><TD>                        return EMPTY_STRING;</TD></TR><TR><TD CLASS="l">143</TD><TD> </TD></TR><TR><TD CLASS="l">144</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">145</TD><TD>                if (&#34;pre&#34;.equals(html)) { //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">146</TD><TD>                        startPreformattedText();</TD></TR><TR CLASS="z"><TD CLASS="l">147</TD><TD>                        return EMPTY_STRING;</TD></TR><TR><TD CLASS="l">148</TD><TD>                }</TD></TR><TR><TD CLASS="l">149</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">150</TD><TD>                if (&#34;/pre&#34;.equals(html)) { //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">151</TD><TD>                        stopPreformattedText();</TD></TR><TR CLASS="z"><TD CLASS="l">152</TD><TD>                        return EMPTY_STRING;</TD></TR><TR><TD CLASS="l">153</TD><TD>                }</TD></TR><TR><TD CLASS="l">154</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">155</TD><TD>                if (fIsPreformattedText)</TD></TR><TR CLASS="z"><TD CLASS="l">156</TD><TD>                        return EMPTY_STRING;</TD></TR><TR><TD CLASS="l">157</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">158</TD><TD>                if (&#34;b&#34;.equals(html)) { //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">159</TD><TD>                        startBold();</TD></TR><TR CLASS="z"><TD CLASS="l">160</TD><TD>                        return EMPTY_STRING;</TD></TR><TR><TD CLASS="l">161</TD><TD>                }</TD></TR><TR><TD CLASS="l">162</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">163</TD><TD>                if (&#34;h5&#34;.equals(html) || &#34;dt&#34;.equals(html)) { //$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR CLASS="z"><TD CLASS="l">164</TD><TD>                        startBold();</TD></TR><TR CLASS="z"><TD CLASS="l">165</TD><TD>                        return EMPTY_STRING;</TD></TR><TR><TD CLASS="l">166</TD><TD>                }</TD></TR><TR><TD CLASS="l">167</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">168</TD><TD>                if (&#34;dl&#34;.equals(html)) //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">169</TD><TD>                        return LINE_DELIM;</TD></TR><TR><TD CLASS="l">170</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">171</TD><TD>                if (&#34;dd&#34;.equals(html)) //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">172</TD><TD>                        return &#34;\t&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">173</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">174</TD><TD>                if (&#34;li&#34;.equals(html)) //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">175</TD><TD>                        return LINE_DELIM + &#34;\t&#34; + &#34;- &#34;; //$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR><TD CLASS="l">176</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">177</TD><TD>                if (&#34;/b&#34;.equals(html)) { //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">178</TD><TD>                        stopBold();</TD></TR><TR CLASS="z"><TD CLASS="l">179</TD><TD>                        return EMPTY_STRING;</TD></TR><TR><TD CLASS="l">180</TD><TD>                }</TD></TR><TR><TD CLASS="l">181</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">182</TD><TD>                if (&#34;p&#34;.equals(html))  { //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">183</TD><TD>                        fInParagraph= true;</TD></TR><TR CLASS="z"><TD CLASS="l">184</TD><TD>                        return LINE_DELIM;</TD></TR><TR><TD CLASS="l">185</TD><TD>                }</TD></TR><TR><TD CLASS="l">186</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">187</TD><TD>                if (&#34;br&#34;.equals(html) || &#34;br/&#34;.equals(html)) //$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR CLASS="z"><TD CLASS="l">188</TD><TD>                        return LINE_DELIM;</TD></TR><TR><TD CLASS="l">189</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">190</TD><TD>                if (&#34;/p&#34;.equals(html))  { //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">191</TD><TD>                        boolean inParagraph= fInParagraph;</TD></TR><TR CLASS="z"><TD CLASS="l">192</TD><TD>                        fInParagraph= false;</TD></TR><TR CLASS="z"><TD CLASS="l">193</TD><TD>                        return inParagraph ? EMPTY_STRING : LINE_DELIM;</TD></TR><TR><TD CLASS="l">194</TD><TD>                }</TD></TR><TR><TD CLASS="l">195</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">196</TD><TD>                if (&#34;/h5&#34;.equals(html) || &#34;/dt&#34;.equals(html)) { //$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR CLASS="z"><TD CLASS="l">197</TD><TD>                        stopBold();</TD></TR><TR CLASS="z"><TD CLASS="l">198</TD><TD>                        return LINE_DELIM;</TD></TR><TR><TD CLASS="l">199</TD><TD>                }</TD></TR><TR><TD CLASS="l">200</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">201</TD><TD>                if (&#34;/dd&#34;.equals(html)) //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">202</TD><TD>                        return LINE_DELIM;</TD></TR><TR><TD CLASS="l">203</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">204</TD><TD>                return EMPTY_STRING;</TD></TR><TR><TD CLASS="l">205</TD><TD>        }</TD></TR><TR><TD CLASS="l">206</TD><TD> </TD></TR><TR><TD CLASS="l">207</TD><TD>        /*</TD></TR><TR><TD CLASS="l"><A NAME="7">208</A></TD><TD>         * A '&lt;' has been read. Process a html tag</TD></TR><TR><TD CLASS="l">209</TD><TD>         */</TD></TR><TR><TD CLASS="l">210</TD><TD>        private String processHTMLTag() throws IOException {</TD></TR><TR><TD CLASS="l">211</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">212</TD><TD>                StringBuffer buf= new StringBuffer();</TD></TR><TR><TD CLASS="l">213</TD><TD>                int ch;</TD></TR><TR><TD CLASS="l">214</TD><TD>                do {</TD></TR><TR><TD CLASS="l">215</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">216</TD><TD>                        ch= nextChar();</TD></TR><TR><TD CLASS="l">217</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">218</TD><TD>                        while (ch != -1 &amp;&amp; ch != '&gt;') {</TD></TR><TR CLASS="z"><TD CLASS="l">219</TD><TD>                                buf.append(Character.toLowerCase((char) ch));</TD></TR><TR CLASS="z"><TD CLASS="l">220</TD><TD>                                ch= nextChar();</TD></TR><TR CLASS="z"><TD CLASS="l">221</TD><TD>                                if (ch == '&#34;'){</TD></TR><TR CLASS="z"><TD CLASS="l">222</TD><TD>                                        buf.append(Character.toLowerCase((char) ch));</TD></TR><TR CLASS="z"><TD CLASS="l">223</TD><TD>                                        ch= nextChar();</TD></TR><TR CLASS="z"><TD CLASS="l">224</TD><TD>                                        while (ch != -1 &amp;&amp; ch != '&#34;'){</TD></TR><TR CLASS="z"><TD CLASS="l">225</TD><TD>                                                buf.append(Character.toLowerCase((char) ch));</TD></TR><TR CLASS="z"><TD CLASS="l">226</TD><TD>                                                ch= nextChar();</TD></TR><TR><TD CLASS="l">227</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">228</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">229</TD><TD>                                if (ch == '&lt;'){</TD></TR><TR CLASS="z"><TD CLASS="l">230</TD><TD>                                        unread(ch);</TD></TR><TR CLASS="z"><TD CLASS="l">231</TD><TD>                                        return '&lt;' + buf.toString();</TD></TR><TR><TD CLASS="l">232</TD><TD>                                }</TD></TR><TR><TD CLASS="l">233</TD><TD>                        }</TD></TR><TR><TD CLASS="l">234</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">235</TD><TD>                        if (ch == -1)</TD></TR><TR CLASS="z"><TD CLASS="l">236</TD><TD>                                return null;</TD></TR><TR><TD CLASS="l">237</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">238</TD><TD>                        int tagLen= buf.length();</TD></TR><TR><TD CLASS="l">239</TD><TD>                        // needs special treatment for comments</TD></TR><TR CLASS="z"><TD CLASS="l">240</TD><TD>                        if ((tagLen &gt;= 3 &amp;&amp; &#34;!--&#34;.equals(buf.substring(0, 3))) //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">241</TD><TD>                                &amp;&amp; !(tagLen &gt;= 5 &amp;&amp; &#34;--&#34;.equals(buf.substring(tagLen - 2)))) { //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">242</TD><TD>                                // unfinished comment</TD></TR><TR CLASS="z"><TD CLASS="l">243</TD><TD>                                buf.append(ch);</TD></TR><TR><TD CLASS="l">244</TD><TD>                        } else {</TD></TR><TR><TD CLASS="l">245</TD><TD>                                break;</TD></TR><TR><TD CLASS="l">246</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">247</TD><TD>                } while (true);</TD></TR><TR><TD CLASS="l">248</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="8">249</A></TD><TD>                return html2Text(buf.toString());</TD></TR><TR><TD CLASS="l">250</TD><TD>        }</TD></TR><TR><TD CLASS="l">251</TD><TD> </TD></TR><TR><TD CLASS="l">252</TD><TD>        private String processPreformattedText(int c) {</TD></TR><TR CLASS="z"><TD CLASS="l">253</TD><TD>                if  (c == '\r' || c == '\n')</TD></TR><TR CLASS="z"><TD CLASS="l">254</TD><TD>                        fCounter++;</TD></TR><TR CLASS="z"><TD CLASS="l">255</TD><TD>                return null;</TD></TR><TR><TD CLASS="l"><A NAME="e">256</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">257</TD><TD> </TD></TR><TR><TD CLASS="l">258</TD><TD> </TD></TR><TR><TD CLASS="l">259</TD><TD>        private void unread(int ch) throws IOException {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">260</A></TD><TD>                ((PushbackReader) getReader()).unread(ch);</TD></TR><TR CLASS="z"><TD CLASS="l">261</TD><TD>        }</TD></TR><TR><TD CLASS="l">262</TD><TD> </TD></TR><TR><TD CLASS="l">263</TD><TD>        protected String entity2Text(String symbol) {</TD></TR><TR CLASS="z"><TD CLASS="l">264</TD><TD>                if (symbol.length() &gt; 1 &amp;&amp; symbol.charAt(0) == '#') {</TD></TR><TR><TD CLASS="l">265</TD><TD>                        int ch;</TD></TR><TR><TD CLASS="l">266</TD><TD>                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">267</TD><TD>                                if (symbol.charAt(1) == 'x') {</TD></TR><TR CLASS="z"><TD CLASS="l">268</TD><TD>                                        ch= Integer.parseInt(symbol.substring(2), 16);</TD></TR><TR><TD CLASS="l">269</TD><TD>                                } else {</TD></TR><TR CLASS="z"><TD CLASS="l">270</TD><TD>                                        ch= Integer.parseInt(symbol.substring(1), 10);</TD></TR><TR><TD CLASS="l">271</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">272</TD><TD>                                return EMPTY_STRING + (char)ch;</TD></TR><TR CLASS="z"><TD CLASS="l">273</TD><TD>                        } catch (NumberFormatException e) {</TD></TR><TR><TD CLASS="l">274</TD><TD>                                // log problem?</TD></TR><TR><TD CLASS="l">275</TD><TD>                        }</TD></TR><TR><TD CLASS="l">276</TD><TD>                } else {</TD></TR><TR CLASS="z"><TD CLASS="l">277</TD><TD>                        String str= (String) fgEntityLookup.get(symbol);</TD></TR><TR CLASS="z"><TD CLASS="l">278</TD><TD>                        if (str != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">279</TD><TD>                                return str;</TD></TR><TR><TD CLASS="l">280</TD><TD>                        }</TD></TR><TR><TD CLASS="l">281</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">282</TD><TD>                return &#34;&amp;&#34; + symbol; // not found //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">283</TD><TD>        }</TD></TR><TR><TD CLASS="l">284</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="6">285</A></TD><TD>        /*</TD></TR><TR><TD CLASS="l">286</TD><TD>         * A '&amp;' has been read. Process a entity</TD></TR><TR><TD CLASS="l">287</TD><TD>         */</TD></TR><TR><TD CLASS="l">288</TD><TD>        private String processEntity() throws IOException {</TD></TR><TR CLASS="z"><TD CLASS="l">289</TD><TD>                StringBuffer buf= new StringBuffer();</TD></TR><TR CLASS="z"><TD CLASS="l">290</TD><TD>                int ch= nextChar();</TD></TR><TR CLASS="z"><TD CLASS="l">291</TD><TD>                while (Character.isLetterOrDigit((char)ch) || ch == '#') {</TD></TR><TR CLASS="z"><TD CLASS="l">292</TD><TD>                        buf.append((char) ch);</TD></TR><TR CLASS="z"><TD CLASS="l">293</TD><TD>                        ch= nextChar();</TD></TR><TR><TD CLASS="l">294</TD><TD>                }</TD></TR><TR><TD CLASS="l">295</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">296</TD><TD>                if (ch == ';')</TD></TR><TR CLASS="z"><TD CLASS="l">297</TD><TD>                        return entity2Text(buf.toString());</TD></TR><TR><TD CLASS="l">298</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">299</TD><TD>                buf.insert(0, '&amp;');</TD></TR><TR CLASS="z"><TD CLASS="l">300</TD><TD>                if (ch != -1)</TD></TR><TR CLASS="z"><TD CLASS="l">301</TD><TD>                        buf.append((char) ch);</TD></TR><TR CLASS="z"><TD CLASS="l">302</TD><TD>                return buf.toString();</TD></TR><TR><TD CLASS="l">303</TD><TD>        }</TD></TR><TR><TD CLASS="l">304</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="e.html">org.eclipse.wst.sse.ui.internal.derived</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/115.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/115.html
deleted file mode 100644
index e7c789e..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/115.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="e.html">org.eclipse.wst.sse.ui.internal.derived</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">HTMLTextPresenter.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>HTMLTextPresenter.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/349)</TD><TD CLASS="h">0%   (0/90)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">HTMLTextPresenter</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/349)</TD><TD CLASS="h">0%   (0/90)</TD></TR><TR><TD CLASS="f"><A HREF="#0">&lt;static initializer&gt;</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">HTMLTextPresenter (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#3">HTMLTextPresenter (boolean): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">adaptTextPresentation (TextPresentation, int, int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/59)</TD><TD CLASS="h">0%   (0/15)</TD></TR><TR><TD CLASS="f"><A HREF="#5">append (StringBuffer, String, TextPresentation): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/22)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">createReader (String, TextPresentation): Reader</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#7">getIndent (String): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/32)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">trim (StringBuffer, TextPresentation): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/64)</TD><TD CLASS="h">0%   (0/15)</TD></TR><TR><TD CLASS="f"><A HREF="#9">updatePresentation (Display, String, TextPresentation, int, int): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/148)</TD><TD CLASS="h">0%   (0/41)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2005, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.derived;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.io.IOException;</TD></TR><TR><TD CLASS="l">16</TD><TD>import java.io.Reader;</TD></TR><TR><TD CLASS="l">17</TD><TD>import java.io.StringReader;</TD></TR><TR><TD CLASS="l">18</TD><TD>import java.util.Iterator;</TD></TR><TR><TD CLASS="l">19</TD><TD> </TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.jface.text.DefaultInformationControl;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.jface.text.Region;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.jface.text.TextPresentation;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.swt.custom.StyleRange;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.swt.graphics.GC;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.swt.widgets.Display;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.wst.sse.ui.internal.Logger;</TD></TR><TR><TD CLASS="l">27</TD><TD> </TD></TR><TR><TD CLASS="l">28</TD><TD>/*</TD></TR><TR><TD CLASS="l">29</TD><TD> * Copied from org.eclipse.jdt.internal.ui.text.HTMLTextPresenter</TD></TR><TR><TD CLASS="l">30</TD><TD> * Modifications were made to use own Logger to log exception, and the</TD></TR><TR><TD CLASS="l"><A NAME="0">31</A></TD><TD> * ellipses constant</TD></TR><TR><TD CLASS="l">32</TD><TD> */</TD></TR><TR CLASS="z"><TD CLASS="l">33</TD><TD>public class HTMLTextPresenter implements DefaultInformationControl.IInformationPresenter {</TD></TR><TR><TD CLASS="l">34</TD><TD>        private static final String ELLIPSES = &#34;...&#34;; //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">35</TD><TD>        private static final String LINE_DELIM = System.getProperty(&#34;line.separator&#34;, &#34;\n&#34;); //$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR><TD CLASS="l">36</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="3">37</A></TD><TD>        private int fCounter;</TD></TR><TR><TD CLASS="l">38</TD><TD>        private boolean fEnforceUpperLineLimit;</TD></TR><TR><TD CLASS="l">39</TD><TD> </TD></TR><TR><TD CLASS="l">40</TD><TD>        public HTMLTextPresenter(boolean enforceUpperLineLimit) {</TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>                super();</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">42</A></TD><TD>                fEnforceUpperLineLimit = enforceUpperLineLimit;</TD></TR><TR CLASS="z"><TD CLASS="l">43</TD><TD>        }</TD></TR><TR><TD CLASS="l">44</TD><TD> </TD></TR><TR><TD CLASS="l">45</TD><TD>        public HTMLTextPresenter() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="6">46</A></TD><TD>                this(true);</TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>        }</TD></TR><TR><TD CLASS="l">48</TD><TD> </TD></TR><TR><TD CLASS="l">49</TD><TD>        protected Reader createReader(String hoverInfo, TextPresentation presentation) {</TD></TR><TR CLASS="z"><TD CLASS="l">50</TD><TD>                return new HTML2TextReader(new StringReader(hoverInfo), presentation);</TD></TR><TR><TD CLASS="l"><A NAME="4">51</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">52</TD><TD> </TD></TR><TR><TD CLASS="l">53</TD><TD>        protected void adaptTextPresentation(TextPresentation presentation, int offset, int insertLength) {</TD></TR><TR><TD CLASS="l">54</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                int yoursStart = offset;</TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>                int yoursEnd = offset + insertLength - 1;</TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>                yoursEnd = Math.max(yoursStart, yoursEnd);</TD></TR><TR><TD CLASS="l">58</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>                Iterator e = presentation.getAllStyleRangeIterator();</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                while (e.hasNext()) {</TD></TR><TR><TD CLASS="l">61</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>                        StyleRange range = (StyleRange) e.next();</TD></TR><TR><TD CLASS="l">63</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                        int myStart = range.start;</TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>                        int myEnd = range.start + range.length - 1;</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                        myEnd = Math.max(myStart, myEnd);</TD></TR><TR><TD CLASS="l">67</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>                        if (myEnd &lt; yoursStart)</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                                continue;</TD></TR><TR><TD CLASS="l">70</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>                        if (myStart &lt; yoursStart)</TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>                                range.length += insertLength;</TD></TR><TR><TD CLASS="l">73</TD><TD>                        else</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>                                range.start += insertLength;</TD></TR><TR><TD CLASS="l">75</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="5">76</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">77</TD><TD> </TD></TR><TR><TD CLASS="l">78</TD><TD>        private void append(StringBuffer buffer, String string, TextPresentation presentation) {</TD></TR><TR><TD CLASS="l">79</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">80</TD><TD>                int length = string.length();</TD></TR><TR CLASS="z"><TD CLASS="l">81</TD><TD>                buffer.append(string);</TD></TR><TR><TD CLASS="l">82</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">83</TD><TD>                if (presentation != null)</TD></TR><TR CLASS="z"><TD CLASS="l">84</TD><TD>                        adaptTextPresentation(presentation, fCounter, length);</TD></TR><TR><TD CLASS="l">85</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="7">86</A></TD><TD>                fCounter += length;</TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>        }</TD></TR><TR><TD CLASS="l">88</TD><TD> </TD></TR><TR><TD CLASS="l">89</TD><TD>        private String getIndent(String line) {</TD></TR><TR CLASS="z"><TD CLASS="l">90</TD><TD>                int length = line.length();</TD></TR><TR><TD CLASS="l">91</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">92</TD><TD>                int i = 0;</TD></TR><TR CLASS="z"><TD CLASS="l">93</TD><TD>                while (i &lt; length &amp;&amp; Character.isWhitespace(line.charAt(i)))</TD></TR><TR CLASS="z"><TD CLASS="l">94</TD><TD>                        ++i;</TD></TR><TR><TD CLASS="l">95</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">96</TD><TD>                return (i == length ? line : line.substring(0, i)) + &#34; &#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">97</TD><TD>        }</TD></TR><TR><TD CLASS="l">98</TD><TD> </TD></TR><TR><TD CLASS="l">99</TD><TD>        /*</TD></TR><TR><TD CLASS="l">100</TD><TD>         * @see IHoverInformationPresenter#updatePresentation(Display display,</TD></TR><TR><TD CLASS="l"><A NAME="9">101</A></TD><TD>         *      String, TextPresentation, int, int)</TD></TR><TR><TD CLASS="l">102</TD><TD>         */</TD></TR><TR><TD CLASS="l">103</TD><TD>        public String updatePresentation(Display display, String hoverInfo, TextPresentation presentation, int maxWidth, int maxHeight) {</TD></TR><TR><TD CLASS="l">104</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">105</TD><TD>                if (hoverInfo == null)</TD></TR><TR CLASS="z"><TD CLASS="l">106</TD><TD>                        return null;</TD></TR><TR><TD CLASS="l">107</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">108</TD><TD>                GC gc = new GC(display);</TD></TR><TR><TD CLASS="l">109</TD><TD>                try {</TD></TR><TR><TD CLASS="l">110</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">111</TD><TD>                        StringBuffer buffer = new StringBuffer();</TD></TR><TR CLASS="z"><TD CLASS="l">112</TD><TD>                        int maxNumberOfLines = Math.round(maxHeight / gc.getFontMetrics().getHeight());</TD></TR><TR><TD CLASS="l">113</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">114</TD><TD>                        fCounter = 0;</TD></TR><TR CLASS="z"><TD CLASS="l">115</TD><TD>                        LineBreakingReader reader = new LineBreakingReader(createReader(hoverInfo, presentation), gc, maxWidth);</TD></TR><TR><TD CLASS="l">116</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">117</TD><TD>                        boolean lastLineFormatted = false;</TD></TR><TR CLASS="z"><TD CLASS="l">118</TD><TD>                        String lastLineIndent = null;</TD></TR><TR><TD CLASS="l">119</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">120</TD><TD>                        String line = reader.readLine();</TD></TR><TR CLASS="z"><TD CLASS="l">121</TD><TD>                        boolean lineFormatted = reader.isFormattedLine();</TD></TR><TR CLASS="z"><TD CLASS="l">122</TD><TD>                        boolean firstLineProcessed = false;</TD></TR><TR><TD CLASS="l">123</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">124</TD><TD>                        while (line != null) {</TD></TR><TR><TD CLASS="l">125</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">126</TD><TD>                                if (fEnforceUpperLineLimit &amp;&amp; maxNumberOfLines &lt;= 0)</TD></TR><TR CLASS="z"><TD CLASS="l">127</TD><TD>                                        break;</TD></TR><TR><TD CLASS="l">128</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">129</TD><TD>                                if (firstLineProcessed) {</TD></TR><TR CLASS="z"><TD CLASS="l">130</TD><TD>                                        if (!lastLineFormatted)</TD></TR><TR CLASS="z"><TD CLASS="l">131</TD><TD>                                                append(buffer, LINE_DELIM, null);</TD></TR><TR><TD CLASS="l">132</TD><TD>                                        else {</TD></TR><TR CLASS="z"><TD CLASS="l">133</TD><TD>                                                append(buffer, LINE_DELIM, presentation);</TD></TR><TR CLASS="z"><TD CLASS="l">134</TD><TD>                                                if (lastLineIndent != null)</TD></TR><TR CLASS="z"><TD CLASS="l">135</TD><TD>                                                        append(buffer, lastLineIndent, presentation);</TD></TR><TR><TD CLASS="l">136</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">137</TD><TD>                                }</TD></TR><TR><TD CLASS="l">138</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">139</TD><TD>                                append(buffer, line, null);</TD></TR><TR CLASS="z"><TD CLASS="l">140</TD><TD>                                firstLineProcessed = true;</TD></TR><TR><TD CLASS="l">141</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">142</TD><TD>                                lastLineFormatted = lineFormatted;</TD></TR><TR CLASS="z"><TD CLASS="l">143</TD><TD>                                if (!lineFormatted)</TD></TR><TR CLASS="z"><TD CLASS="l">144</TD><TD>                                        lastLineIndent = null;</TD></TR><TR CLASS="z"><TD CLASS="l">145</TD><TD>                                else if (lastLineIndent == null)</TD></TR><TR CLASS="z"><TD CLASS="l">146</TD><TD>                                        lastLineIndent = getIndent(line);</TD></TR><TR><TD CLASS="l">147</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">148</TD><TD>                                line = reader.readLine();</TD></TR><TR CLASS="z"><TD CLASS="l">149</TD><TD>                                lineFormatted = reader.isFormattedLine();</TD></TR><TR><TD CLASS="l">150</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">151</TD><TD>                                maxNumberOfLines--;</TD></TR><TR><TD CLASS="l">152</TD><TD>                        }</TD></TR><TR><TD CLASS="l">153</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">154</TD><TD>                        if (line != null &amp;&amp; buffer.length() &gt; 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">155</TD><TD>                                append(buffer, LINE_DELIM, lineFormatted ? presentation : null);</TD></TR><TR CLASS="z"><TD CLASS="l">156</TD><TD>                                append(buffer, ELLIPSES, presentation);</TD></TR><TR><TD CLASS="l">157</TD><TD>                        }</TD></TR><TR><TD CLASS="l">158</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">159</TD><TD>                        return trim(buffer, presentation);</TD></TR><TR><TD CLASS="l">160</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">161</TD><TD>                } catch (IOException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">162</TD><TD>                        Logger.log(Logger.WARNING_DEBUG, e.getMessage(), e);</TD></TR><TR CLASS="z"><TD CLASS="l">163</TD><TD>                        return null;</TD></TR><TR><TD CLASS="l">164</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">165</TD><TD>                } finally {</TD></TR><TR CLASS="z"><TD CLASS="l">166</TD><TD>                        gc.dispose();</TD></TR><TR CLASS="z"><TD CLASS="l">167</TD><TD>                }</TD></TR><TR><TD CLASS="l"><A NAME="8">168</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">169</TD><TD> </TD></TR><TR><TD CLASS="l">170</TD><TD>        private String trim(StringBuffer buffer, TextPresentation presentation) {</TD></TR><TR><TD CLASS="l">171</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">172</TD><TD>                int length = buffer.length();</TD></TR><TR><TD CLASS="l">173</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">174</TD><TD>                int end = length - 1;</TD></TR><TR CLASS="z"><TD CLASS="l">175</TD><TD>                while (end &gt;= 0 &amp;&amp; Character.isWhitespace(buffer.charAt(end)))</TD></TR><TR CLASS="z"><TD CLASS="l">176</TD><TD>                        --end;</TD></TR><TR><TD CLASS="l">177</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">178</TD><TD>                if (end == -1)</TD></TR><TR CLASS="z"><TD CLASS="l">179</TD><TD>                        return &#34;&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">180</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">181</TD><TD>                if (end &lt; length - 1)</TD></TR><TR CLASS="z"><TD CLASS="l">182</TD><TD>                        buffer.delete(end + 1, length);</TD></TR><TR><TD CLASS="l">183</TD><TD>                else</TD></TR><TR CLASS="z"><TD CLASS="l">184</TD><TD>                        end = length;</TD></TR><TR><TD CLASS="l">185</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">186</TD><TD>                int start = 0;</TD></TR><TR CLASS="z"><TD CLASS="l">187</TD><TD>                while (start &lt; end &amp;&amp; Character.isWhitespace(buffer.charAt(start)))</TD></TR><TR CLASS="z"><TD CLASS="l">188</TD><TD>                        ++start;</TD></TR><TR><TD CLASS="l">189</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">190</TD><TD>                buffer.delete(0, start);</TD></TR><TR CLASS="z"><TD CLASS="l">191</TD><TD>                presentation.setResultWindow(new Region(start, buffer.length()));</TD></TR><TR CLASS="z"><TD CLASS="l">192</TD><TD>                return buffer.toString();</TD></TR><TR><TD CLASS="l">193</TD><TD>        }</TD></TR><TR><TD CLASS="l">194</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="e.html">org.eclipse.wst.sse.ui.internal.derived</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/116.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/116.html
deleted file mode 100644
index 4f778d4..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/116.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="e.html">org.eclipse.wst.sse.ui.internal.derived</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">LineBreakingReader.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>LineBreakingReader.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/167)</TD><TD CLASS="h">0%   (0/45)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">LineBreakingReader</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/167)</TD><TD CLASS="h">0%   (0/45)</TD></TR><TR><TD CLASS="f"><A HREF="#0">LineBreakingReader (Reader, GC, int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/24)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">findNextBreakOffset (int): int</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/47)</TD><TD CLASS="h">0%   (0/14)</TD></TR><TR><TD CLASS="f"><A HREF="#3">findWordBegin (int): int</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">isFormattedLine (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#5">readLine (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/74)</TD><TD CLASS="h">0%   (0/19)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2005, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.derived;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.io.BufferedReader;</TD></TR><TR><TD CLASS="l">16</TD><TD>import java.io.IOException;</TD></TR><TR><TD CLASS="l">17</TD><TD>import java.io.Reader;</TD></TR><TR><TD CLASS="l">18</TD><TD>import com.ibm.icu.text.BreakIterator;</TD></TR><TR><TD CLASS="l">19</TD><TD> </TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.swt.graphics.GC;</TD></TR><TR><TD CLASS="l">21</TD><TD> </TD></TR><TR><TD CLASS="l">22</TD><TD>/**</TD></TR><TR><TD CLASS="l">23</TD><TD> * Copied from org.eclipse.jdt.internal.ui.text.LineBreakingReader.</TD></TR><TR><TD CLASS="l">24</TD><TD> * Modifications were made to fix warnings.</TD></TR><TR><TD CLASS="l">25</TD><TD> */</TD></TR><TR><TD CLASS="l">26</TD><TD>/*</TD></TR><TR><TD CLASS="l">27</TD><TD> * Not a real reader. Could change if requested</TD></TR><TR><TD CLASS="l">28</TD><TD> */</TD></TR><TR><TD CLASS="l">29</TD><TD>public class LineBreakingReader {</TD></TR><TR><TD CLASS="l">30</TD><TD>        private GC fGC;</TD></TR><TR><TD CLASS="l">31</TD><TD> </TD></TR><TR><TD CLASS="l">32</TD><TD>        private String fLine;</TD></TR><TR><TD CLASS="l">33</TD><TD> </TD></TR><TR><TD CLASS="l">34</TD><TD>        private BreakIterator fLineBreakIterator;</TD></TR><TR><TD CLASS="l">35</TD><TD>        private int fMaxWidth;</TD></TR><TR><TD CLASS="l">36</TD><TD>        private int fOffset;</TD></TR><TR><TD CLASS="l">37</TD><TD> </TD></TR><TR><TD CLASS="l">38</TD><TD> </TD></TR><TR><TD CLASS="l">39</TD><TD>        private BufferedReader fReader;</TD></TR><TR><TD CLASS="l">40</TD><TD> </TD></TR><TR><TD CLASS="l">41</TD><TD>        /**</TD></TR><TR><TD CLASS="l">42</TD><TD>         * Creates a reader that breaks an input text to fit in a given width.</TD></TR><TR><TD CLASS="l">43</TD><TD>         * </TD></TR><TR><TD CLASS="l">44</TD><TD>         * @param reader</TD></TR><TR><TD CLASS="l">45</TD><TD>         *            Reader of the input text</TD></TR><TR><TD CLASS="l">46</TD><TD>         * @param gc</TD></TR><TR><TD CLASS="l">47</TD><TD>         *            The graphic context that defines the currently used font</TD></TR><TR><TD CLASS="l"><A NAME="0">48</A></TD><TD>         *            sizes</TD></TR><TR><TD CLASS="l">49</TD><TD>         * @param maxLineWidth</TD></TR><TR><TD CLASS="l">50</TD><TD>         *            The max width (pixes) where the text has to fit in</TD></TR><TR><TD CLASS="l">51</TD><TD>         */</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>        public LineBreakingReader(Reader reader, GC gc, int maxLineWidth) {</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>                fReader = new BufferedReader(reader);</TD></TR><TR CLASS="z"><TD CLASS="l">54</TD><TD>                fGC = gc;</TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                fMaxWidth = maxLineWidth;</TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>                fOffset = 0;</TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>                fLine = null;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">58</A></TD><TD>                fLineBreakIterator = BreakIterator.getLineInstance();</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>        }</TD></TR><TR><TD CLASS="l">60</TD><TD> </TD></TR><TR><TD CLASS="l">61</TD><TD>        private int findNextBreakOffset(int currOffset) {</TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>                int currWidth = 0;</TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>                int nextOffset = fLineBreakIterator.following(currOffset);</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                while (nextOffset != BreakIterator.DONE) {</TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>                        String word = fLine.substring(currOffset, nextOffset);</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                        int wordWidth = fGC.textExtent(word).x;</TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>                        int nextWidth = wordWidth + currWidth;</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>                        if (nextWidth &gt; fMaxWidth) {</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                                if (currWidth &gt; 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">70</TD><TD>                                        return currOffset;</TD></TR><TR><TD CLASS="l">71</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>                                return nextOffset;</TD></TR><TR><TD CLASS="l">73</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>                        currWidth = nextWidth;</TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>                        currOffset = nextOffset;</TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>                        nextOffset = fLineBreakIterator.next();</TD></TR><TR><TD CLASS="l">77</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">78</A></TD><TD>                return nextOffset;</TD></TR><TR><TD CLASS="l">79</TD><TD>        }</TD></TR><TR><TD CLASS="l">80</TD><TD> </TD></TR><TR><TD CLASS="l">81</TD><TD>        private int findWordBegin(int idx) {</TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>                while (idx &lt; fLine.length() &amp;&amp; Character.isWhitespace(fLine.charAt(idx))) {</TD></TR><TR CLASS="z"><TD CLASS="l">83</TD><TD>                        idx++;</TD></TR><TR><TD CLASS="l">84</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">85</A></TD><TD>                return idx;</TD></TR><TR><TD CLASS="l">86</TD><TD>        }</TD></TR><TR><TD CLASS="l">87</TD><TD> </TD></TR><TR><TD CLASS="l">88</TD><TD>        public boolean isFormattedLine() {</TD></TR><TR CLASS="z"><TD CLASS="l">89</TD><TD>                return fLine != null;</TD></TR><TR><TD CLASS="l">90</TD><TD>        }</TD></TR><TR><TD CLASS="l">91</TD><TD> </TD></TR><TR><TD CLASS="l">92</TD><TD>        /**</TD></TR><TR><TD CLASS="l"><A NAME="5">93</A></TD><TD>         * Reads the next line. The lengths of the line will not exceed the gived</TD></TR><TR><TD CLASS="l">94</TD><TD>         * maximum width.</TD></TR><TR><TD CLASS="l">95</TD><TD>         */</TD></TR><TR><TD CLASS="l">96</TD><TD>        public String readLine() throws IOException {</TD></TR><TR CLASS="z"><TD CLASS="l">97</TD><TD>                if (fLine == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">98</TD><TD>                        String line = fReader.readLine();</TD></TR><TR CLASS="z"><TD CLASS="l">99</TD><TD>                        if (line == null)</TD></TR><TR CLASS="z"><TD CLASS="l">100</TD><TD>                                return null;</TD></TR><TR><TD CLASS="l">101</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">102</TD><TD>                        int lineLen = fGC.textExtent(line).x;</TD></TR><TR CLASS="z"><TD CLASS="l">103</TD><TD>                        if (lineLen &lt; fMaxWidth) {</TD></TR><TR CLASS="z"><TD CLASS="l">104</TD><TD>                                return line;</TD></TR><TR><TD CLASS="l">105</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">106</TD><TD>                        fLine = line;</TD></TR><TR CLASS="z"><TD CLASS="l">107</TD><TD>                        fLineBreakIterator.setText(line);</TD></TR><TR CLASS="z"><TD CLASS="l">108</TD><TD>                        fOffset = 0;</TD></TR><TR><TD CLASS="l">109</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">110</TD><TD>                int breakOffset = findNextBreakOffset(fOffset);</TD></TR><TR><TD CLASS="l">111</TD><TD>                String res;</TD></TR><TR CLASS="z"><TD CLASS="l">112</TD><TD>                if (breakOffset != BreakIterator.DONE) {</TD></TR><TR CLASS="z"><TD CLASS="l">113</TD><TD>                        res = fLine.substring(fOffset, breakOffset);</TD></TR><TR CLASS="z"><TD CLASS="l">114</TD><TD>                        fOffset = findWordBegin(breakOffset);</TD></TR><TR CLASS="z"><TD CLASS="l">115</TD><TD>                        if (fOffset == fLine.length()) {</TD></TR><TR CLASS="z"><TD CLASS="l">116</TD><TD>                                fLine = null;</TD></TR><TR><TD CLASS="l">117</TD><TD>                        }</TD></TR><TR><TD CLASS="l">118</TD><TD>                } else {</TD></TR><TR CLASS="z"><TD CLASS="l">119</TD><TD>                        res = fLine.substring(fOffset);</TD></TR><TR CLASS="z"><TD CLASS="l">120</TD><TD>                        fLine = null;</TD></TR><TR><TD CLASS="l">121</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">122</TD><TD>                return res;</TD></TR><TR><TD CLASS="l">123</TD><TD>        }</TD></TR><TR><TD CLASS="l">124</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="e.html">org.eclipse.wst.sse.ui.internal.derived</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/117.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/117.html
deleted file mode 100644
index 977c293..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/117.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="e.html">org.eclipse.wst.sse.ui.internal.derived</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">SingleCharReader.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>SingleCharReader.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/57)</TD><TD CLASS="h">0%   (0/15)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">SingleCharReader</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/57)</TD><TD CLASS="h">0%   (0/15)</TD></TR><TR><TD CLASS="f"><A HREF="#0">SingleCharReader (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">getString (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/19)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#3">read (char [], int, int): int</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/33)</TD><TD CLASS="h">0%   (0/9)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">ready (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2005, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.derived;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.io.IOException;</TD></TR><TR><TD CLASS="l">16</TD><TD>import java.io.Reader;</TD></TR><TR><TD CLASS="l">17</TD><TD> </TD></TR><TR><TD CLASS="l">18</TD><TD>/*</TD></TR><TR><TD CLASS="l"><A NAME="0">19</A></TD><TD> * Copied from org.eclipse.jdt.internal.corext.javadoc.SingleCharReader.</TD></TR><TR><TD CLASS="l">20</TD><TD> * Modification was made to fix statement unnecessarily nested within else</TD></TR><TR><TD CLASS="l">21</TD><TD> * clause warning in read(..).</TD></TR><TR><TD CLASS="l">22</TD><TD> */</TD></TR><TR CLASS="z"><TD CLASS="l">23</TD><TD>public abstract class SingleCharReader extends Reader {</TD></TR><TR><TD CLASS="l">24</TD><TD> </TD></TR><TR><TD CLASS="l">25</TD><TD>        /**</TD></TR><TR><TD CLASS="l">26</TD><TD>         * @see Reader#read()</TD></TR><TR><TD CLASS="l">27</TD><TD>         */</TD></TR><TR><TD CLASS="l">28</TD><TD>        public abstract int read() throws IOException;</TD></TR><TR><TD CLASS="l">29</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="3">30</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">31</TD><TD>         * @see Reader#read(char[],int,int)</TD></TR><TR><TD CLASS="l">32</TD><TD>         */</TD></TR><TR><TD CLASS="l">33</TD><TD>        public int read(char cbuf[], int off, int len) throws IOException {</TD></TR><TR CLASS="z"><TD CLASS="l">34</TD><TD>                int end = off + len;</TD></TR><TR CLASS="z"><TD CLASS="l">35</TD><TD>                for (int i = off; i &lt; end; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">36</TD><TD>                        int ch = read();</TD></TR><TR CLASS="z"><TD CLASS="l">37</TD><TD>                        if (ch == -1) {</TD></TR><TR CLASS="z"><TD CLASS="l">38</TD><TD>                                if (i == off) {</TD></TR><TR CLASS="z"><TD CLASS="l">39</TD><TD>                                        return -1;</TD></TR><TR><TD CLASS="l">40</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>                                return i - off;</TD></TR><TR><TD CLASS="l">42</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">43</TD><TD>                        cbuf[i] = (char) ch;</TD></TR><TR><TD CLASS="l">44</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">45</TD><TD>                return len;</TD></TR><TR><TD CLASS="l">46</TD><TD>        }</TD></TR><TR><TD CLASS="l">47</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="4">48</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">49</TD><TD>         * @see Reader#ready()</TD></TR><TR><TD CLASS="l">50</TD><TD>         */</TD></TR><TR><TD CLASS="l">51</TD><TD>        public boolean ready() throws IOException {</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                return true;</TD></TR><TR><TD CLASS="l">53</TD><TD>        }</TD></TR><TR><TD CLASS="l">54</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="2">55</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">56</TD><TD>         * Gets the content as a String</TD></TR><TR><TD CLASS="l">57</TD><TD>         */</TD></TR><TR><TD CLASS="l">58</TD><TD>        public String getString() throws IOException {</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>                StringBuffer buf = new StringBuffer();</TD></TR><TR><TD CLASS="l">60</TD><TD>                int ch;</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                while ((ch = read()) != -1) {</TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>                        buf.append((char) ch);</TD></TR><TR><TD CLASS="l">63</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                return buf.toString();</TD></TR><TR><TD CLASS="l">65</TD><TD>        }</TD></TR><TR><TD CLASS="l">66</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="e.html">org.eclipse.wst.sse.ui.internal.derived</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/118.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/118.html
deleted file mode 100644
index 8fa018f..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/118.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="e.html">org.eclipse.wst.sse.ui.internal.derived</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">SubstitutionTextReader.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>SubstitutionTextReader.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/199)</TD><TD CLASS="h">0%   (0/55)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">SubstitutionTextReader</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/199)</TD><TD CLASS="h">0%   (0/55)</TD></TR><TR><TD CLASS="f"><A HREF="#0">&lt;static initializer&gt;</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">SubstitutionTextReader (Reader): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/26)</TD><TD CLASS="h">0%   (0/9)</TD></TR><TR><TD CLASS="f"><A HREF="#3">close (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">getReader (): Reader</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#5">isSkippingWhitespace (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">nextChar (): int</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/76)</TD><TD CLASS="h">0%   (0/19)</TD></TR><TR><TD CLASS="f"><A HREF="#7">read (): int</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/57)</TD><TD CLASS="h">0%   (0/12)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">ready (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#9">reset (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/17)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">setSkipWhitespace (boolean): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2005, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.derived;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.io.IOException;</TD></TR><TR><TD CLASS="l">16</TD><TD>import java.io.Reader;</TD></TR><TR><TD CLASS="l">17</TD><TD> </TD></TR><TR><TD CLASS="l">18</TD><TD>/*</TD></TR><TR><TD CLASS="l">19</TD><TD> * Copied from org.eclipse.jdt.internal.ui.text.SubstitutionTextReader.</TD></TR><TR><TD CLASS="l">20</TD><TD> * Modifications were made to read() to allow whitespaces and fixed statement</TD></TR><TR><TD CLASS="l">21</TD><TD> * unnecessarily nested within else clause warning in nextChar()</TD></TR><TR><TD CLASS="l">22</TD><TD> */</TD></TR><TR><TD CLASS="l">23</TD><TD>/**</TD></TR><TR><TD CLASS="l">24</TD><TD> * Reads the text contents from a reader and computes for each character a</TD></TR><TR><TD CLASS="l">25</TD><TD> * potential substitution. The substitution may eat more characters than only</TD></TR><TR><TD CLASS="l"><A NAME="0">26</A></TD><TD> * the one passed into the computation routine.</TD></TR><TR><TD CLASS="l">27</TD><TD> */</TD></TR><TR CLASS="z"><TD CLASS="l">28</TD><TD>public abstract class SubstitutionTextReader extends SingleCharReader {</TD></TR><TR><TD CLASS="l">29</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">30</TD><TD>        protected static final String LINE_DELIM = System.getProperty(&#34;line.separator&#34;, &#34;\n&#34;); //$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR><TD CLASS="l">31</TD><TD> </TD></TR><TR><TD CLASS="l">32</TD><TD>        private Reader fReader;</TD></TR><TR><TD CLASS="l">33</TD><TD>        protected boolean fWasWhiteSpace;</TD></TR><TR><TD CLASS="l">34</TD><TD>        private int fCharAfterWhiteSpace;</TD></TR><TR><TD CLASS="l">35</TD><TD> </TD></TR><TR><TD CLASS="l">36</TD><TD>        /**</TD></TR><TR><TD CLASS="l">37</TD><TD>         * Tells whether white space characters are skipped.</TD></TR><TR><TD CLASS="l">38</TD><TD>         */</TD></TR><TR CLASS="z"><TD CLASS="l">39</TD><TD>        private boolean fSkipWhiteSpace = true;</TD></TR><TR><TD CLASS="l">40</TD><TD> </TD></TR><TR><TD CLASS="l">41</TD><TD>        private boolean fReadFromBuffer;</TD></TR><TR><TD CLASS="l"><A NAME="2">42</A></TD><TD>        private StringBuffer fBuffer;</TD></TR><TR><TD CLASS="l">43</TD><TD>        private int fIndex;</TD></TR><TR><TD CLASS="l">44</TD><TD> </TD></TR><TR><TD CLASS="l">45</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>        protected SubstitutionTextReader(Reader reader) {</TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>                fReader = reader;</TD></TR><TR CLASS="z"><TD CLASS="l">48</TD><TD>                fBuffer = new StringBuffer();</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>                fIndex = 0;</TD></TR><TR CLASS="z"><TD CLASS="l">50</TD><TD>                fReadFromBuffer = false;</TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>                fCharAfterWhiteSpace = -1;</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                fWasWhiteSpace = true;</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>        }</TD></TR><TR><TD CLASS="l">54</TD><TD> </TD></TR><TR><TD CLASS="l">55</TD><TD>        /**</TD></TR><TR><TD CLASS="l">56</TD><TD>         * Implement to compute the substitution for the given character and if</TD></TR><TR><TD CLASS="l">57</TD><TD>         * necessary subsequent characters. Use &lt;code&gt;nextChar&lt;/code&gt; to read</TD></TR><TR><TD CLASS="l">58</TD><TD>         * subsequent characters.</TD></TR><TR><TD CLASS="l">59</TD><TD>         */</TD></TR><TR><TD CLASS="l">60</TD><TD>        protected abstract String computeSubstitution(int c) throws IOException;</TD></TR><TR><TD CLASS="l">61</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="4">62</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">63</TD><TD>         * Returns the internal reader.</TD></TR><TR><TD CLASS="l">64</TD><TD>         */</TD></TR><TR><TD CLASS="l">65</TD><TD>        protected Reader getReader() {</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                return fReader;</TD></TR><TR><TD CLASS="l">67</TD><TD>        }</TD></TR><TR><TD CLASS="l">68</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="6">69</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">70</TD><TD>         * Returns the next character.</TD></TR><TR><TD CLASS="l">71</TD><TD>         */</TD></TR><TR><TD CLASS="l">72</TD><TD>        protected int nextChar() throws IOException {</TD></TR><TR CLASS="z"><TD CLASS="l">73</TD><TD>                fReadFromBuffer = (fBuffer.length() &gt; 0);</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>                if (fReadFromBuffer) {</TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>                        char ch = fBuffer.charAt(fIndex++);</TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>                        if (fIndex &gt;= fBuffer.length()) {</TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>                                fBuffer.setLength(0);</TD></TR><TR CLASS="z"><TD CLASS="l">78</TD><TD>                                fIndex = 0;</TD></TR><TR><TD CLASS="l">79</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">80</TD><TD>                        return ch;</TD></TR><TR><TD CLASS="l">81</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>                int ch = fCharAfterWhiteSpace;</TD></TR><TR CLASS="z"><TD CLASS="l">83</TD><TD>                if (ch == -1) {</TD></TR><TR CLASS="z"><TD CLASS="l">84</TD><TD>                        ch = fReader.read();</TD></TR><TR><TD CLASS="l">85</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                if (fSkipWhiteSpace &amp;&amp; Character.isWhitespace((char) ch)) {</TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>                        do {</TD></TR><TR CLASS="z"><TD CLASS="l">88</TD><TD>                                ch = fReader.read();</TD></TR><TR CLASS="z"><TD CLASS="l">89</TD><TD>                        } while (Character.isWhitespace((char) ch));</TD></TR><TR CLASS="z"><TD CLASS="l">90</TD><TD>                        if (ch != -1) {</TD></TR><TR CLASS="z"><TD CLASS="l">91</TD><TD>                                fCharAfterWhiteSpace = ch;</TD></TR><TR CLASS="z"><TD CLASS="l">92</TD><TD>                                return ' ';</TD></TR><TR><TD CLASS="l">93</TD><TD>                        }</TD></TR><TR><TD CLASS="l">94</TD><TD>                } else {</TD></TR><TR CLASS="z"><TD CLASS="l">95</TD><TD>                        fCharAfterWhiteSpace = -1;</TD></TR><TR><TD CLASS="l">96</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">97</TD><TD>                return ch;</TD></TR><TR><TD CLASS="l">98</TD><TD>        }</TD></TR><TR><TD CLASS="l">99</TD><TD> </TD></TR><TR><TD CLASS="l">100</TD><TD>        /**</TD></TR><TR><TD CLASS="l">101</TD><TD>         * @see Reader#read()</TD></TR><TR><TD CLASS="l">102</TD><TD>         */</TD></TR><TR><TD CLASS="l"><A NAME="7">103</A></TD><TD>        public int read() throws IOException {</TD></TR><TR><TD CLASS="l">104</TD><TD>                int c;</TD></TR><TR CLASS="z"><TD CLASS="l">105</TD><TD>                do {</TD></TR><TR><TD CLASS="l">106</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">107</TD><TD>                        c = nextChar();</TD></TR><TR CLASS="z"><TD CLASS="l">108</TD><TD>                        while (!fReadFromBuffer) {</TD></TR><TR CLASS="z"><TD CLASS="l">109</TD><TD>                                String s = computeSubstitution(c);</TD></TR><TR CLASS="z"><TD CLASS="l">110</TD><TD>                                if (s == null)</TD></TR><TR CLASS="z"><TD CLASS="l">111</TD><TD>                                        break;</TD></TR><TR CLASS="z"><TD CLASS="l">112</TD><TD>                                if (s.length() &gt; 0)</TD></TR><TR CLASS="z"><TD CLASS="l">113</TD><TD>                                        fBuffer.insert(0, s);</TD></TR><TR CLASS="z"><TD CLASS="l">114</TD><TD>                                c = nextChar();</TD></TR><TR><TD CLASS="l">115</TD><TD>                        }</TD></TR><TR><TD CLASS="l">116</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">117</TD><TD>                } while (fSkipWhiteSpace &amp;&amp; fWasWhiteSpace &amp;&amp; ((c == ' ') &amp;&amp; !fReadFromBuffer));</TD></TR><TR><TD CLASS="l">118</TD><TD>                /*</TD></TR><TR><TD CLASS="l">119</TD><TD>                 * SSE: For above and below check, if whitespace is read from buffer,</TD></TR><TR><TD CLASS="l">120</TD><TD>                 * do not skip</TD></TR><TR><TD CLASS="l">121</TD><TD>                 */</TD></TR><TR CLASS="z"><TD CLASS="l">122</TD><TD>                fWasWhiteSpace = ((c == ' ' &amp;&amp; !fReadFromBuffer) || c == '\r' || c == '\n');</TD></TR><TR CLASS="z"><TD CLASS="l">123</TD><TD>                return c;</TD></TR><TR><TD CLASS="l">124</TD><TD>        }</TD></TR><TR><TD CLASS="l">125</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="8">126</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">127</TD><TD>         * @see Reader#ready()</TD></TR><TR><TD CLASS="l">128</TD><TD>         */</TD></TR><TR><TD CLASS="l">129</TD><TD>        public boolean ready() throws IOException {</TD></TR><TR CLASS="z"><TD CLASS="l">130</TD><TD>                return fReader.ready();</TD></TR><TR><TD CLASS="l">131</TD><TD>        }</TD></TR><TR><TD CLASS="l">132</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="3">133</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">134</TD><TD>         * @see Reader#close()</TD></TR><TR><TD CLASS="l">135</TD><TD>         */</TD></TR><TR><TD CLASS="l">136</TD><TD>        public void close() throws IOException {</TD></TR><TR CLASS="z"><TD CLASS="l">137</TD><TD>                fReader.close();</TD></TR><TR CLASS="z"><TD CLASS="l">138</TD><TD>        }</TD></TR><TR><TD CLASS="l">139</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="9">140</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">141</TD><TD>         * @see Reader#reset()</TD></TR><TR><TD CLASS="l">142</TD><TD>         */</TD></TR><TR><TD CLASS="l">143</TD><TD>        public void reset() throws IOException {</TD></TR><TR CLASS="z"><TD CLASS="l">144</TD><TD>                fReader.reset();</TD></TR><TR CLASS="z"><TD CLASS="l">145</TD><TD>                fWasWhiteSpace = true;</TD></TR><TR CLASS="z"><TD CLASS="l">146</TD><TD>                fCharAfterWhiteSpace = -1;</TD></TR><TR CLASS="z"><TD CLASS="l">147</TD><TD>                fBuffer.setLength(0);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="a">148</A></TD><TD>                fIndex = 0;</TD></TR><TR CLASS="z"><TD CLASS="l">149</TD><TD>        }</TD></TR><TR><TD CLASS="l">150</TD><TD> </TD></TR><TR><TD CLASS="l">151</TD><TD>        protected final void setSkipWhitespace(boolean state) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="5">152</A></TD><TD>                fSkipWhiteSpace = state;</TD></TR><TR CLASS="z"><TD CLASS="l">153</TD><TD>        }</TD></TR><TR><TD CLASS="l">154</TD><TD> </TD></TR><TR><TD CLASS="l">155</TD><TD>        protected final boolean isSkippingWhitespace() {</TD></TR><TR CLASS="z"><TD CLASS="l">156</TD><TD>                return fSkipWhiteSpace;</TD></TR><TR><TD CLASS="l">157</TD><TD>        }</TD></TR><TR><TD CLASS="l">158</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="e.html">org.eclipse.wst.sse.ui.internal.derived</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/119.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/119.html
deleted file mode 100644
index 8b533d8..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/119.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="f.html">org.eclipse.wst.sse.ui.internal.edit.util</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">SharedEditorPluginImageHelper.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>SharedEditorPluginImageHelper.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/3)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">SharedEditorPluginImageHelper</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#0">SharedEditorPluginImageHelper (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">getImage (String): Image</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#3">getImageDescriptor (String): ImageDescriptor</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/1)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2005 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.edit.util;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.jface.resource.ImageDescriptor;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.swt.graphics.Image;</TD></TR><TR><TD CLASS="l"><A NAME="0">17</A></TD><TD>import org.eclipse.wst.sse.ui.internal.editor.EditorPluginImageHelper;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.wst.sse.ui.internal.editor.EditorPluginImages;</TD></TR><TR><TD CLASS="l">19</TD><TD> </TD></TR><TR><TD CLASS="l">20</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">21</TD><TD>public class SharedEditorPluginImageHelper {</TD></TR><TR><TD CLASS="l">22</TD><TD>        public static final String IMG_DLCL_COLLAPSEALL = EditorPluginImages.IMG_DLCL_COLLAPSEALL;</TD></TR><TR><TD CLASS="l">23</TD><TD>        public static final String IMG_DLCL_DELETE = EditorPluginImages.IMG_DLCL_DELETE;</TD></TR><TR><TD CLASS="l">24</TD><TD>        public static final String IMG_DLCL_SYNCED = EditorPluginImages.IMG_DLCL_SYNCED;</TD></TR><TR><TD CLASS="l">25</TD><TD>        public static final String IMG_ELCL_COLLAPSEALL = EditorPluginImages.IMG_ELCL_COLLAPSEALL;</TD></TR><TR><TD CLASS="l">26</TD><TD>        public static final String IMG_ELCL_DELETE = EditorPluginImages.IMG_ELCL_DELETE;</TD></TR><TR><TD CLASS="l">27</TD><TD>        public static final String IMG_ELCL_SYNCED = EditorPluginImages.IMG_ELCL_SYNCED;</TD></TR><TR><TD CLASS="l">28</TD><TD> </TD></TR><TR><TD CLASS="l">29</TD><TD>        /**</TD></TR><TR><TD CLASS="l">30</TD><TD>         * Retrieves the specified image from the source editor plugin's image</TD></TR><TR><TD CLASS="l">31</TD><TD>         * registry. Note: The returned &lt;code&gt;Image&lt;/code&gt; is managed by the</TD></TR><TR><TD CLASS="l">32</TD><TD>         * workbench; clients must &lt;b&gt;not &lt;/b&gt; dispose of the returned image.</TD></TR><TR><TD CLASS="l">33</TD><TD>         * </TD></TR><TR><TD CLASS="l">34</TD><TD>         * @param symbolicName</TD></TR><TR><TD CLASS="l">35</TD><TD>         *            the symbolic name of the image; there are constants declared</TD></TR><TR><TD CLASS="l">36</TD><TD>         *            in this class for build-in images that come with the source</TD></TR><TR><TD CLASS="l"><A NAME="2">37</A></TD><TD>         *            editor</TD></TR><TR><TD CLASS="l">38</TD><TD>         * @return the image, or &lt;code&gt;null&lt;/code&gt; if not found</TD></TR><TR><TD CLASS="l">39</TD><TD>         */</TD></TR><TR><TD CLASS="l">40</TD><TD>        public static Image getImage(String symbolicName) {</TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>                return EditorPluginImageHelper.getInstance().getImage(symbolicName);</TD></TR><TR><TD CLASS="l">42</TD><TD>        }</TD></TR><TR><TD CLASS="l">43</TD><TD> </TD></TR><TR><TD CLASS="l">44</TD><TD>        /**</TD></TR><TR><TD CLASS="l">45</TD><TD>         * Retrieves the image descriptor for specified image from the source</TD></TR><TR><TD CLASS="l">46</TD><TD>         * editor plugin's image registry. Unlike &lt;code&gt;Image&lt;/code&gt;s, image</TD></TR><TR><TD CLASS="l">47</TD><TD>         * descriptors themselves do not need to be disposed.</TD></TR><TR><TD CLASS="l">48</TD><TD>         * </TD></TR><TR><TD CLASS="l">49</TD><TD>         * @param symbolicName</TD></TR><TR><TD CLASS="l">50</TD><TD>         *            the symbolic name of the image; there are constants declared</TD></TR><TR><TD CLASS="l">51</TD><TD>         *            in this interface for build-in images that come with the</TD></TR><TR><TD CLASS="l"><A NAME="3">52</A></TD><TD>         *            source editor</TD></TR><TR><TD CLASS="l">53</TD><TD>         * @return the image descriptor, or &lt;code&gt;null&lt;/code&gt; if not found</TD></TR><TR><TD CLASS="l">54</TD><TD>         */</TD></TR><TR><TD CLASS="l">55</TD><TD>        public static ImageDescriptor getImageDescriptor(String symbolicName) {</TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>                return EditorPluginImageHelper.getInstance().getImageDescriptor(symbolicName);</TD></TR><TR><TD CLASS="l">57</TD><TD>        }</TD></TR><TR><TD CLASS="l">58</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="f.html">org.eclipse.wst.sse.ui.internal.edit.util</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/11a.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/11a.html
deleted file mode 100644
index 86b0002..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/11a.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="10.html">org.eclipse.wst.sse.ui.internal.editor</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">EditorModelUtil.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>EditorModelUtil.java</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/73)</TD><TD CLASS="h">0%   (0/21)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">EditorModelUtil</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/57)</TD><TD CLASS="h">0%   (0/18)</TD></TR><TR><TD CLASS="f"><A HREF="#0">EditorModelUtil (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">addFactoriesTo (IStructuredModel): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/54)</TD><TD CLASS="h">0%   (0/17)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#3">EditorModelUtil$1</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/16)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#3">EditorModelUtil$1 (String, AdapterFactoryProvider, IStructuredModel): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#5">run (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR CLASS="z"><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.editor;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.util.Iterator;</TD></TR><TR><TD CLASS="l">16</TD><TD> </TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.core.runtime.SafeRunner;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.jface.util.SafeRunnable;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.wst.sse.core.internal.model.FactoryRegistry;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.wst.sse.ui.internal.Logger;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.wst.sse.ui.internal.SSEUIMessages;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.wst.sse.ui.internal.SSEUIPlugin;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.wst.sse.ui.internal.provisional.registry.AdapterFactoryProvider;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.wst.sse.ui.internal.provisional.registry.AdapterFactoryRegistry;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.wst.sse.ui.internal.provisional.registry.AdapterFactoryRegistryExtension;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.wst.sse.ui.internal.util.Assert;</TD></TR><TR><TD CLASS="l">28</TD><TD> </TD></TR><TR><TD CLASS="l">29</TD><TD> </TD></TR><TR><TD CLASS="l">30</TD><TD>/**</TD></TR><TR><TD CLASS="l"><A NAME="0">31</A></TD><TD> * INTERNAL USAGE ONLY</TD></TR><TR><TD CLASS="l">32</TD><TD> * </TD></TR><TR><TD CLASS="l">33</TD><TD> * @author nsd</TD></TR><TR><TD CLASS="l"><A NAME="2">34</A></TD><TD> */</TD></TR><TR CLASS="z"><TD CLASS="l">35</TD><TD>public class EditorModelUtil {</TD></TR><TR><TD CLASS="l">36</TD><TD> </TD></TR><TR><TD CLASS="l">37</TD><TD>        public static void addFactoriesTo(final IStructuredModel structuredModel) {</TD></TR><TR CLASS="z"><TD CLASS="l">38</TD><TD>                if (structuredModel == null)</TD></TR><TR CLASS="z"><TD CLASS="l">39</TD><TD>                        return;</TD></TR><TR><TD CLASS="l">40</TD><TD>                </TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>                AdapterFactoryRegistry adapterRegistry = SSEUIPlugin.getDefault().getAdapterFactoryRegistry();</TD></TR><TR CLASS="z"><TD CLASS="l">42</TD><TD>                String contentTypeId = structuredModel.getContentTypeIdentifier();</TD></TR><TR><TD CLASS="l">43</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>                Iterator adapterFactoryProviders = null;</TD></TR><TR CLASS="z"><TD CLASS="l">45</TD><TD>                if (adapterRegistry instanceof AdapterFactoryRegistryExtension) {</TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>                        adapterFactoryProviders = ((AdapterFactoryRegistryExtension) adapterRegistry).getAdapterFactories(contentTypeId);</TD></TR><TR><TD CLASS="l">47</TD><TD>                }</TD></TR><TR><TD CLASS="l">48</TD><TD>                else {</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>                        adapterFactoryProviders = adapterRegistry.getAdapterFactories();</TD></TR><TR><TD CLASS="l">50</TD><TD>                }</TD></TR><TR><TD CLASS="l">51</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                FactoryRegistry factoryRegistry = structuredModel.getFactoryRegistry();</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>                Assert.isNotNull(factoryRegistry, SSEUIMessages.EditorModelUtil_0); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">54</TD><TD>                // Add all those appropriate for this particular type of content</TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                while (adapterFactoryProviders.hasNext()) {</TD></TR><TR><TD CLASS="l">56</TD><TD>                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>                                final AdapterFactoryProvider provider = (AdapterFactoryProvider) adapterFactoryProviders.next();</TD></TR><TR><TD CLASS="l">58</TD><TD>                                /*</TD></TR><TR><TD CLASS="l">59</TD><TD>                                 * ContentType might have already been checked above, this</TD></TR><TR><TD CLASS="l"><A NAME="3">60</A></TD><TD>                                 * check is here for backwards compatability for those that</TD></TR><TR><TD CLASS="l">61</TD><TD>                                 * don't specify a content type</TD></TR><TR><TD CLASS="l"><A NAME="5">62</A></TD><TD>                                 */</TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>                                if (provider.isFor(structuredModel.getModelHandler())) {</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                                        SafeRunner.run(new SafeRunnable(SSEUIMessages.EditorModelUtil_1) { //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">65</TD><TD>                                                                        public void run() {</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                                                                                provider.addAdapterFactories(structuredModel);</TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>                                                                        }</TD></TR><TR><TD CLASS="l">68</TD><TD>                                                                });</TD></TR><TR><TD CLASS="l">69</TD><TD>                                }</TD></TR><TR><TD CLASS="l">70</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>                        catch (Exception e) {</TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>                                Logger.logException(e);</TD></TR><TR><TD CLASS="l">73</TD><TD>                        }</TD></TR><TR><TD CLASS="l">74</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>        }</TD></TR><TR><TD CLASS="l">76</TD><TD> </TD></TR><TR><TD CLASS="l">77</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="10.html">org.eclipse.wst.sse.ui.internal.editor</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/11b.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/11b.html
deleted file mode 100644
index 81cae45..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/11b.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="10.html">org.eclipse.wst.sse.ui.internal.editor</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">EditorPluginImageHelper.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>EditorPluginImageHelper.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/104)</TD><TD CLASS="h">0%   (0/33)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">EditorPluginImageHelper</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/104)</TD><TD CLASS="h">0%   (0/33)</TD></TR><TR><TD CLASS="f"><A HREF="#1">&lt;static initializer&gt;</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#0">EditorPluginImageHelper (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#3">createImage (String): Image</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/22)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">createImageDescriptor (String): ImageDescriptor</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/17)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#5">getImage (String): Image</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">getImageDescriptor (String): ImageDescriptor</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/19)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#7">getImageDescriptorRegistry (): HashMap</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">getImageRegistry (): ImageRegistry</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#9">getInstance (): EditorPluginImageHelper</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/3)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2004 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.editor;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.util.HashMap;</TD></TR><TR><TD CLASS="l">16</TD><TD> </TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.jface.resource.ImageDescriptor;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.jface.resource.ImageRegistry;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.jface.resource.JFaceResources;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.swt.graphics.Image;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.ui.plugin.AbstractUIPlugin;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.wst.sse.ui.internal.SSEUIPlugin;</TD></TR><TR><TD CLASS="l">23</TD><TD> </TD></TR><TR><TD CLASS="l">24</TD><TD> </TD></TR><TR><TD CLASS="l">25</TD><TD>/**</TD></TR><TR><TD CLASS="l">26</TD><TD> * Helper class to handle images provided by this plug-in.</TD></TR><TR><TD CLASS="l">27</TD><TD> * </TD></TR><TR><TD CLASS="l">28</TD><TD> * NOTE: For internal use only. For images used externally, please use the</TD></TR><TR><TD CLASS="l"><A NAME="0">29</A></TD><TD> * Shared***ImageHelper class instead.</TD></TR><TR><TD CLASS="l"><A NAME="1">30</A></TD><TD> * </TD></TR><TR><TD CLASS="l">31</TD><TD> * @author amywu</TD></TR><TR><TD CLASS="l">32</TD><TD> */</TD></TR><TR CLASS="z"><TD CLASS="l">33</TD><TD>public class EditorPluginImageHelper {</TD></TR><TR CLASS="z"><TD CLASS="l">34</TD><TD>        private static EditorPluginImageHelper instance = null;</TD></TR><TR><TD CLASS="l">35</TD><TD> </TD></TR><TR><TD CLASS="l">36</TD><TD>        /**</TD></TR><TR><TD CLASS="l">37</TD><TD>         * Gets the instance.</TD></TR><TR><TD CLASS="l"><A NAME="9">38</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">39</TD><TD>         * @return Returns a EditorPluginImageHelper</TD></TR><TR><TD CLASS="l">40</TD><TD>         */</TD></TR><TR><TD CLASS="l">41</TD><TD>        public synchronized static EditorPluginImageHelper getInstance() {</TD></TR><TR CLASS="z"><TD CLASS="l">42</TD><TD>                if (instance == null)</TD></TR><TR CLASS="z"><TD CLASS="l">43</TD><TD>                        instance = new EditorPluginImageHelper();</TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>                return instance;</TD></TR><TR><TD CLASS="l">45</TD><TD>        }</TD></TR><TR><TD CLASS="l">46</TD><TD> </TD></TR><TR><TD CLASS="l">47</TD><TD>        //         save a descriptor for each image</TD></TR><TR CLASS="z"><TD CLASS="l">48</TD><TD>        private HashMap fImageDescRegistry = null;</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>        private final String PLUGINID = SSEUIPlugin.ID;</TD></TR><TR><TD CLASS="l">50</TD><TD> </TD></TR><TR><TD CLASS="l">51</TD><TD>        /**</TD></TR><TR><TD CLASS="l">52</TD><TD>         * Creates an image from the given resource and adds the image to the</TD></TR><TR><TD CLASS="l">53</TD><TD>         * image registry.</TD></TR><TR><TD CLASS="l">54</TD><TD>         * </TD></TR><TR><TD CLASS="l"><A NAME="3">55</A></TD><TD>         * @param resource</TD></TR><TR><TD CLASS="l">56</TD><TD>         * @return Image</TD></TR><TR><TD CLASS="l">57</TD><TD>         */</TD></TR><TR><TD CLASS="l">58</TD><TD>        private Image createImage(String resource) {</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>                ImageDescriptor desc = getImageDescriptor(resource);</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                Image image = null;</TD></TR><TR><TD CLASS="l">61</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>                if (desc != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>                        image = desc.createImage();</TD></TR><TR><TD CLASS="l">64</TD><TD>                        // dont add the missing image descriptor image to the image</TD></TR><TR><TD CLASS="l">65</TD><TD>                        // registry</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                        if (!desc.equals(ImageDescriptor.getMissingImageDescriptor()))</TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>                                getImageRegistry().put(resource, image);</TD></TR><TR><TD CLASS="l">68</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                return image;</TD></TR><TR><TD CLASS="l">70</TD><TD>        }</TD></TR><TR><TD CLASS="l">71</TD><TD> </TD></TR><TR><TD CLASS="l">72</TD><TD>        /**</TD></TR><TR><TD CLASS="l">73</TD><TD>         * Creates an image descriptor from the given imageFilePath and adds the</TD></TR><TR><TD CLASS="l">74</TD><TD>         * image descriptor to the image descriptor registry. If an image</TD></TR><TR><TD CLASS="l">75</TD><TD>         * descriptor could not be created, the default &#34;missing&#34; image descriptor</TD></TR><TR><TD CLASS="l">76</TD><TD>         * is returned but not added to the image descriptor registry.</TD></TR><TR><TD CLASS="l">77</TD><TD>         * </TD></TR><TR><TD CLASS="l">78</TD><TD>         * @param imageFilePath</TD></TR><TR><TD CLASS="l"><A NAME="4">79</A></TD><TD>         * @return ImageDescriptor image descriptor for imageFilePath or default</TD></TR><TR><TD CLASS="l">80</TD><TD>         *         &#34;missing&#34; image descriptor if resource could not be found</TD></TR><TR><TD CLASS="l">81</TD><TD>         */</TD></TR><TR><TD CLASS="l">82</TD><TD>        private ImageDescriptor createImageDescriptor(String imageFilePath) {</TD></TR><TR CLASS="z"><TD CLASS="l">83</TD><TD>                ImageDescriptor imageDescriptor = AbstractUIPlugin.imageDescriptorFromPlugin(PLUGINID, imageFilePath);</TD></TR><TR CLASS="z"><TD CLASS="l">84</TD><TD>                if (imageDescriptor != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>                        getImageDescriptorRegistry().put(imageFilePath, imageDescriptor);</TD></TR><TR><TD CLASS="l">86</TD><TD>                } else {</TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>                        imageDescriptor = ImageDescriptor.getMissingImageDescriptor();</TD></TR><TR><TD CLASS="l">88</TD><TD>                }</TD></TR><TR><TD CLASS="l">89</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">90</TD><TD>                return imageDescriptor;</TD></TR><TR><TD CLASS="l">91</TD><TD>        }</TD></TR><TR><TD CLASS="l">92</TD><TD> </TD></TR><TR><TD CLASS="l">93</TD><TD>        /**</TD></TR><TR><TD CLASS="l">94</TD><TD>         * Retrieves the image associated with resource from the image registry.</TD></TR><TR><TD CLASS="l">95</TD><TD>         * If the image cannot be retrieved, attempt to find and load the image at</TD></TR><TR><TD CLASS="l">96</TD><TD>         * the location specified in resource.</TD></TR><TR><TD CLASS="l">97</TD><TD>         * </TD></TR><TR><TD CLASS="l">98</TD><TD>         * @param resource</TD></TR><TR><TD CLASS="l">99</TD><TD>         *            the image to retrieve</TD></TR><TR><TD CLASS="l"><A NAME="5">100</A></TD><TD>         * @return Image the image associated with resource or null if one could</TD></TR><TR><TD CLASS="l">101</TD><TD>         *         not be found</TD></TR><TR><TD CLASS="l">102</TD><TD>         */</TD></TR><TR><TD CLASS="l">103</TD><TD>        public Image getImage(String resource) {</TD></TR><TR CLASS="z"><TD CLASS="l">104</TD><TD>                Image image = getImageRegistry().get(resource);</TD></TR><TR CLASS="z"><TD CLASS="l">105</TD><TD>                if (image == null) {</TD></TR><TR><TD CLASS="l">106</TD><TD>                        // create an image</TD></TR><TR CLASS="z"><TD CLASS="l">107</TD><TD>                        image = createImage(resource);</TD></TR><TR><TD CLASS="l">108</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">109</TD><TD>                return image;</TD></TR><TR><TD CLASS="l">110</TD><TD>        }</TD></TR><TR><TD CLASS="l">111</TD><TD> </TD></TR><TR><TD CLASS="l">112</TD><TD>        /**</TD></TR><TR><TD CLASS="l">113</TD><TD>         * Retrieves the image descriptor associated with resource from the image</TD></TR><TR><TD CLASS="l">114</TD><TD>         * descriptor registry. If the image descriptor cannot be retrieved,</TD></TR><TR><TD CLASS="l">115</TD><TD>         * attempt to find and load the image descriptor at the location specified</TD></TR><TR><TD CLASS="l">116</TD><TD>         * in resource.</TD></TR><TR><TD CLASS="l">117</TD><TD>         * </TD></TR><TR><TD CLASS="l">118</TD><TD>         * @param resource</TD></TR><TR><TD CLASS="l">119</TD><TD>         *            the image descriptor to retrieve</TD></TR><TR><TD CLASS="l">120</TD><TD>         * @return ImageDescriptor the image descriptor assocated with resource or</TD></TR><TR><TD CLASS="l"><A NAME="6">121</A></TD><TD>         *         the default &#34;missing&#34; image descriptor if one could not be</TD></TR><TR><TD CLASS="l">122</TD><TD>         *         found</TD></TR><TR><TD CLASS="l">123</TD><TD>         */</TD></TR><TR><TD CLASS="l">124</TD><TD>        public ImageDescriptor getImageDescriptor(String resource) {</TD></TR><TR CLASS="z"><TD CLASS="l">125</TD><TD>                ImageDescriptor imageDescriptor = null;</TD></TR><TR CLASS="z"><TD CLASS="l">126</TD><TD>                Object o = getImageDescriptorRegistry().get(resource);</TD></TR><TR CLASS="z"><TD CLASS="l">127</TD><TD>                if (o == null) {</TD></TR><TR><TD CLASS="l">128</TD><TD>                        //create a descriptor</TD></TR><TR CLASS="z"><TD CLASS="l">129</TD><TD>                        imageDescriptor = createImageDescriptor(resource);</TD></TR><TR><TD CLASS="l">130</TD><TD>                } else {</TD></TR><TR CLASS="z"><TD CLASS="l">131</TD><TD>                        imageDescriptor = (ImageDescriptor) o;</TD></TR><TR><TD CLASS="l">132</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">133</TD><TD>                return imageDescriptor;</TD></TR><TR><TD CLASS="l">134</TD><TD>        }</TD></TR><TR><TD CLASS="l">135</TD><TD> </TD></TR><TR><TD CLASS="l">136</TD><TD>        /**</TD></TR><TR><TD CLASS="l">137</TD><TD>         * Returns the image descriptor registry for this plugin.</TD></TR><TR><TD CLASS="l"><A NAME="7">138</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">139</TD><TD>         * @return HashMap - image descriptor registry for this plugin</TD></TR><TR><TD CLASS="l">140</TD><TD>         */</TD></TR><TR><TD CLASS="l">141</TD><TD>        private HashMap getImageDescriptorRegistry() {</TD></TR><TR CLASS="z"><TD CLASS="l">142</TD><TD>                if (fImageDescRegistry == null)</TD></TR><TR CLASS="z"><TD CLASS="l">143</TD><TD>                        fImageDescRegistry = new HashMap();</TD></TR><TR CLASS="z"><TD CLASS="l">144</TD><TD>                return fImageDescRegistry;</TD></TR><TR><TD CLASS="l">145</TD><TD>        }</TD></TR><TR><TD CLASS="l">146</TD><TD> </TD></TR><TR><TD CLASS="l">147</TD><TD>        /**</TD></TR><TR><TD CLASS="l">148</TD><TD>         * Returns the image registry for this plugin.</TD></TR><TR><TD CLASS="l"><A NAME="8">149</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">150</TD><TD>         * @return ImageRegistry - image registry for this plugin</TD></TR><TR><TD CLASS="l">151</TD><TD>         */</TD></TR><TR><TD CLASS="l">152</TD><TD>        private ImageRegistry getImageRegistry() {</TD></TR><TR CLASS="z"><TD CLASS="l">153</TD><TD>                return JFaceResources.getImageRegistry();</TD></TR><TR><TD CLASS="l">154</TD><TD>        }</TD></TR><TR><TD CLASS="l">155</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="10.html">org.eclipse.wst.sse.ui.internal.editor</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/11c.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/11c.html
deleted file mode 100644
index d0e38d3..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/11c.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="10.html">org.eclipse.wst.sse.ui.internal.editor</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">EditorPluginImages.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>EditorPluginImages.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">EditorPluginImages</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#0">EditorPluginImages (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2004 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.editor;</TD></TR><TR><TD CLASS="l"><A NAME="0">14</A></TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>/**</TD></TR><TR><TD CLASS="l">16</TD><TD> * Bundle of most images used by the Source Editor plug-in.</TD></TR><TR><TD CLASS="l">17</TD><TD> */</TD></TR><TR CLASS="z"><TD CLASS="l">18</TD><TD>public class EditorPluginImages {</TD></TR><TR><TD CLASS="l">19</TD><TD> </TD></TR><TR><TD CLASS="l">20</TD><TD>        public static final String IMG_CTOOL16_SPELLCHECK = &#34;icons/full/ctool16/spellcheck.gif&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">21</TD><TD>        public static final String IMG_DLCL_COLLAPSEALL = &#34;icons/full/dlcl16/collapseall.gif&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">22</TD><TD>        public static final String IMG_DLCL_DELETE = &#34;icons/full/dlcl16/delete.gif&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">23</TD><TD>        public static final String IMG_DLCL_SYNCED = &#34;icons/full/dlcl16/synced.gif&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">24</TD><TD>        public static final String IMG_DTOOL16_SPELLCHECK = &#34;icons/full/dtool16/spellcheck.gif&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">25</TD><TD>        public static final String IMG_ELCL_COLLAPSEALL = &#34;icons/full/elcl16/collapseall.gif&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">26</TD><TD>        public static final String IMG_ELCL_DELETE = &#34;icons/full/elcl16/delete.gif&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">27</TD><TD>        public static final String IMG_ELCL_SYNCED = &#34;icons/full/elcl16/synced.gif&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">28</TD><TD>        public static final String IMG_ETOOL16_SPELLCHECK = &#34;icons/full/etool16/spellcheck.gif&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">29</TD><TD>        public static final String IMG_OBJ_OCC_MATCH = &#34;icons/full/obj16/occ_match.gif&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">30</TD><TD> </TD></TR><TR><TD CLASS="l">31</TD><TD>        public static final String IMG_OBJ_PREFERENCES = &#34;icons/full/obj16/preferences.gif&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">32</TD><TD>        public static final String IMG_OBJ_PROP_PS = &#34;icons/full/obj16/prop_ps.gif&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">33</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="10.html">org.eclipse.wst.sse.ui.internal.editor</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/11d.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/11d.html
deleted file mode 100644
index f71b643..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/11d.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="10.html">org.eclipse.wst.sse.ui.internal.editor</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">SelectionConvertor.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>SelectionConvertor.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/67)</TD><TD CLASS="h">0%   (0/17)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">SelectionConvertor</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/67)</TD><TD CLASS="h">0%   (0/17)</TD></TR><TR><TD CLASS="f"><A HREF="#0">SelectionConvertor (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">getElements (IStructuredModel, int, int): Object []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/64)</TD><TD CLASS="h">0%   (0/16)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2008 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">11</TD><TD> </TD></TR><TR><TD CLASS="l">12</TD><TD>package org.eclipse.wst.sse.ui.internal.editor;</TD></TR><TR><TD CLASS="l">13</TD><TD> </TD></TR><TR><TD CLASS="l">14</TD><TD>import java.util.ArrayList;</TD></TR><TR><TD CLASS="l">15</TD><TD>import java.util.List;</TD></TR><TR><TD CLASS="l">16</TD><TD> </TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;</TD></TR><TR><TD CLASS="l">19</TD><TD> </TD></TR><TR><TD CLASS="l">20</TD><TD>/**</TD></TR><TR><TD CLASS="l">21</TD><TD> * This class/interface is part of an experimental API that is still under</TD></TR><TR><TD CLASS="l">22</TD><TD> * development and expected to change significantly before reaching stability.</TD></TR><TR><TD CLASS="l"><A NAME="0">23</A></TD><TD> * It is being made available at this early stage to solicit feedback from</TD></TR><TR><TD CLASS="l">24</TD><TD> * pioneering adopters on the understanding that any code that uses this API</TD></TR><TR><TD CLASS="l">25</TD><TD> * will almost certainly be broken (repeatedly) as the API evolves.</TD></TR><TR><TD CLASS="l">26</TD><TD> */</TD></TR><TR CLASS="z"><TD CLASS="l">27</TD><TD>public class SelectionConvertor {</TD></TR><TR><TD CLASS="l">28</TD><TD>        /**</TD></TR><TR><TD CLASS="l">29</TD><TD>         * @param model</TD></TR><TR><TD CLASS="l">30</TD><TD>         * @param start</TD></TR><TR><TD CLASS="l">31</TD><TD>         * @param end</TD></TR><TR><TD CLASS="l"><A NAME="2">32</A></TD><TD>         * @return the most specific mapping of this text selection to</TD></TR><TR><TD CLASS="l">33</TD><TD>         *         implementors of IndexedRegion</TD></TR><TR><TD CLASS="l">34</TD><TD>         */</TD></TR><TR><TD CLASS="l">35</TD><TD>        public Object[] getElements(IStructuredModel model, int start, int end) {</TD></TR><TR CLASS="z"><TD CLASS="l">36</TD><TD>                Object[] localSelectedStructures = null;</TD></TR><TR CLASS="z"><TD CLASS="l">37</TD><TD>                if (model != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">38</TD><TD>                        IndexedRegion region = model.getIndexedRegion(start);</TD></TR><TR CLASS="z"><TD CLASS="l">39</TD><TD>                        if (region != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">40</TD><TD>                                if (end &lt;= region.getEndOffset()) {</TD></TR><TR><TD CLASS="l">41</TD><TD>                                        // single selection</TD></TR><TR CLASS="z"><TD CLASS="l">42</TD><TD>                                        localSelectedStructures = new Object[1];</TD></TR><TR CLASS="z"><TD CLASS="l">43</TD><TD>                                        localSelectedStructures[0] = region;</TD></TR><TR><TD CLASS="l">44</TD><TD>                                }</TD></TR><TR><TD CLASS="l">45</TD><TD>                                else {</TD></TR><TR><TD CLASS="l">46</TD><TD>                                        // multiple selection</TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>                                        int maxLength = model.getStructuredDocument().getLength();</TD></TR><TR CLASS="z"><TD CLASS="l">48</TD><TD>                                        List structures = new ArrayList(2);</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>                                        while (region != null &amp;&amp; region.getEndOffset() &lt;= end &amp;&amp; region.getEndOffset() &lt; maxLength) {</TD></TR><TR CLASS="z"><TD CLASS="l">50</TD><TD>                                                structures.add(region);</TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>                                                region = model.getIndexedRegion(region.getEndOffset() + 1);</TD></TR><TR><TD CLASS="l">52</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>                                        localSelectedStructures = structures.toArray();</TD></TR><TR><TD CLASS="l">54</TD><TD>                                }</TD></TR><TR><TD CLASS="l">55</TD><TD>                        }</TD></TR><TR><TD CLASS="l">56</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>                if (localSelectedStructures == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>                        localSelectedStructures = new Object[0];</TD></TR><TR><TD CLASS="l">59</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                return localSelectedStructures;</TD></TR><TR><TD CLASS="l">61</TD><TD>        }</TD></TR><TR><TD CLASS="l">62</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="10.html">org.eclipse.wst.sse.ui.internal.editor</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/11e.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/11e.html
deleted file mode 100644
index 0b7bd8e..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/11e.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="10.html">org.eclipse.wst.sse.ui.internal.editor</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">StructuredModelDocumentProvider.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>StructuredModelDocumentProvider.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/27)</TD><TD CLASS="h">0%   (0/69)</TD><TD CLASS="h">0%   (0/34)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">StructuredModelDocumentProvider</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/27)</TD><TD CLASS="h">0%   (0/69)</TD><TD CLASS="h">0%   (0/34)</TD></TR><TR><TD CLASS="f"><A HREF="#0">&lt;static initializer&gt;</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">StructuredModelDocumentProvider (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#3">aboutToChange (Object): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">addElementStateListener (IElementStateListener): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#5">canSaveDocument (Object): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">changed (Object): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#7">connect (Object): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">disconnect (Object): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#9">getAnnotationModel (Object): IAnnotationModel</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">getContentType (Object): IContentType</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#b">getDocument (Object): IDocument</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#c">getInstance (): StructuredModelDocumentProvider</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#d">getModificationStamp (Object): long</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#e">getStatus (Object): IStatus</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#f">getSynchronizationStamp (Object): long</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#10">isDeleted (Object): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#11">isModifiable (Object): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#12">isReadOnly (Object): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#13">isStateValidated (Object): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#14">mustSaveDocument (Object): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#15">removeElementStateListener (IElementStateListener): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#16">resetDocument (Object): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#17">saveDocument (IProgressMonitor, Object, IDocument, boolean): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#18">setCanSaveDocument (Object): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#19">synchronize (Object): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#1a">updateStateCache (Object): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#1b">validateState (Object, Object): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2005 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.editor;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.io.IOException;</TD></TR><TR><TD CLASS="l">16</TD><TD>import java.io.UnsupportedEncodingException;</TD></TR><TR><TD CLASS="l">17</TD><TD> </TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.core.runtime.CoreException;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.core.runtime.IProgressMonitor;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.core.runtime.IStatus;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.core.runtime.Platform;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.core.runtime.Status;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.core.runtime.content.IContentType;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.jface.text.IDocument;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.jface.text.source.IAnnotationModel;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.ui.texteditor.IDocumentProvider;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.ui.texteditor.IDocumentProviderExtension;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.ui.texteditor.IDocumentProviderExtension4;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.ui.texteditor.IElementStateListener;</TD></TR><TR><TD CLASS="l">30</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;</TD></TR><TR><TD CLASS="l">31</TD><TD> </TD></TR><TR><TD CLASS="l">32</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="0">33</A></TD><TD>/**</TD></TR><TR><TD CLASS="l">34</TD><TD> * @author nitin</TD></TR><TR><TD CLASS="l">35</TD><TD> */</TD></TR><TR CLASS="z"><TD CLASS="l">36</TD><TD>public class StructuredModelDocumentProvider implements IDocumentProvider, IDocumentProviderExtension, IDocumentProviderExtension4 {</TD></TR><TR CLASS="z"><TD CLASS="l">37</TD><TD>        private static StructuredModelDocumentProvider _instance = null;</TD></TR><TR><TD CLASS="l">38</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="c">39</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">40</TD><TD>         * @return Returns the instance.</TD></TR><TR><TD CLASS="l">41</TD><TD>         */</TD></TR><TR><TD CLASS="l">42</TD><TD>        public static StructuredModelDocumentProvider getInstance() {</TD></TR><TR CLASS="z"><TD CLASS="l">43</TD><TD>                return _instance;</TD></TR><TR><TD CLASS="l">44</TD><TD>        }</TD></TR><TR><TD CLASS="l">45</TD><TD> </TD></TR><TR><TD CLASS="l">46</TD><TD>        {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">47</A></TD><TD>                _instance = new StructuredModelDocumentProvider();</TD></TR><TR><TD CLASS="l">48</TD><TD>        }</TD></TR><TR><TD CLASS="l">49</TD><TD> </TD></TR><TR><TD CLASS="l">50</TD><TD>        private StructuredModelDocumentProvider() {</TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>                super();</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>        }</TD></TR><TR><TD CLASS="l">53</TD><TD> </TD></TR><TR><TD CLASS="l">54</TD><TD>        /*</TD></TR><TR><TD CLASS="l">55</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="3">56</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">57</TD><TD>         * @see org.eclipse.ui.texteditor.IDocumentProvider#aboutToChange(java.lang.Object)</TD></TR><TR><TD CLASS="l">58</TD><TD>         */</TD></TR><TR><TD CLASS="l">59</TD><TD>        public void aboutToChange(Object element) {</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>        }</TD></TR><TR><TD CLASS="l">61</TD><TD> </TD></TR><TR><TD CLASS="l">62</TD><TD>        /*</TD></TR><TR><TD CLASS="l">63</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="4">64</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">65</TD><TD>         * @see org.eclipse.ui.texteditor.IDocumentProvider#addElementStateListener(org.eclipse.ui.texteditor.IElementStateListener)</TD></TR><TR><TD CLASS="l">66</TD><TD>         */</TD></TR><TR><TD CLASS="l">67</TD><TD>        public void addElementStateListener(IElementStateListener listener) {</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>        }</TD></TR><TR><TD CLASS="l">69</TD><TD> </TD></TR><TR><TD CLASS="l">70</TD><TD>        /*</TD></TR><TR><TD CLASS="l">71</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="5">72</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">73</TD><TD>         * @see org.eclipse.ui.texteditor.IDocumentProvider#canSaveDocument(java.lang.Object)</TD></TR><TR><TD CLASS="l">74</TD><TD>         */</TD></TR><TR><TD CLASS="l">75</TD><TD>        public boolean canSaveDocument(Object element) {</TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>                return ((IStructuredModel) element).isDirty();</TD></TR><TR><TD CLASS="l">77</TD><TD>        }</TD></TR><TR><TD CLASS="l">78</TD><TD> </TD></TR><TR><TD CLASS="l">79</TD><TD>        /*</TD></TR><TR><TD CLASS="l">80</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="6">81</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">82</TD><TD>         * @see org.eclipse.ui.texteditor.IDocumentProvider#changed(java.lang.Object)</TD></TR><TR><TD CLASS="l">83</TD><TD>         */</TD></TR><TR><TD CLASS="l">84</TD><TD>        public void changed(Object element) {</TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>        }</TD></TR><TR><TD CLASS="l">86</TD><TD> </TD></TR><TR><TD CLASS="l">87</TD><TD>        /*</TD></TR><TR><TD CLASS="l">88</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="7">89</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">90</TD><TD>         * @see org.eclipse.ui.texteditor.IDocumentProvider#connect(java.lang.Object)</TD></TR><TR><TD CLASS="l">91</TD><TD>         */</TD></TR><TR><TD CLASS="l">92</TD><TD>        public void connect(Object element) throws CoreException {</TD></TR><TR CLASS="z"><TD CLASS="l">93</TD><TD>        }</TD></TR><TR><TD CLASS="l">94</TD><TD> </TD></TR><TR><TD CLASS="l">95</TD><TD>        /*</TD></TR><TR><TD CLASS="l">96</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="8">97</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">98</TD><TD>         * @see org.eclipse.ui.texteditor.IDocumentProvider#disconnect(java.lang.Object)</TD></TR><TR><TD CLASS="l">99</TD><TD>         */</TD></TR><TR><TD CLASS="l">100</TD><TD>        public void disconnect(Object element) {</TD></TR><TR CLASS="z"><TD CLASS="l">101</TD><TD>        }</TD></TR><TR><TD CLASS="l">102</TD><TD> </TD></TR><TR><TD CLASS="l">103</TD><TD>        /*</TD></TR><TR><TD CLASS="l">104</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="9">105</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">106</TD><TD>         * @see org.eclipse.ui.texteditor.IDocumentProvider#getAnnotationModel(java.lang.Object)</TD></TR><TR><TD CLASS="l">107</TD><TD>         */</TD></TR><TR><TD CLASS="l">108</TD><TD>        public IAnnotationModel getAnnotationModel(Object element) {</TD></TR><TR CLASS="z"><TD CLASS="l">109</TD><TD>                return null;</TD></TR><TR><TD CLASS="l">110</TD><TD>        }</TD></TR><TR><TD CLASS="l">111</TD><TD> </TD></TR><TR><TD CLASS="l">112</TD><TD>        /*</TD></TR><TR><TD CLASS="l">113</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="b">114</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">115</TD><TD>         * @see org.eclipse.ui.texteditor.IDocumentProvider#getDocument(java.lang.Object)</TD></TR><TR><TD CLASS="l">116</TD><TD>         */</TD></TR><TR><TD CLASS="l">117</TD><TD>        public IDocument getDocument(Object element) {</TD></TR><TR CLASS="z"><TD CLASS="l">118</TD><TD>                return ((IStructuredModel) element).getStructuredDocument();</TD></TR><TR><TD CLASS="l">119</TD><TD>        }</TD></TR><TR><TD CLASS="l">120</TD><TD> </TD></TR><TR><TD CLASS="l">121</TD><TD>        /*</TD></TR><TR><TD CLASS="l">122</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="d">123</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">124</TD><TD>         * @see org.eclipse.ui.texteditor.IDocumentProvider#getModificationStamp(java.lang.Object)</TD></TR><TR><TD CLASS="l">125</TD><TD>         */</TD></TR><TR><TD CLASS="l">126</TD><TD>        public long getModificationStamp(Object element) {</TD></TR><TR CLASS="z"><TD CLASS="l">127</TD><TD>                return ((IStructuredModel) element).getSynchronizationStamp();</TD></TR><TR><TD CLASS="l">128</TD><TD>        }</TD></TR><TR><TD CLASS="l">129</TD><TD> </TD></TR><TR><TD CLASS="l">130</TD><TD>        /*</TD></TR><TR><TD CLASS="l">131</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="e">132</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">133</TD><TD>         * @see org.eclipse.ui.texteditor.IDocumentProviderExtension#getStatus(java.lang.Object)</TD></TR><TR><TD CLASS="l">134</TD><TD>         */</TD></TR><TR><TD CLASS="l">135</TD><TD>        public IStatus getStatus(Object element) {</TD></TR><TR CLASS="z"><TD CLASS="l">136</TD><TD>                return Status.OK_STATUS;</TD></TR><TR><TD CLASS="l">137</TD><TD>        }</TD></TR><TR><TD CLASS="l">138</TD><TD> </TD></TR><TR><TD CLASS="l">139</TD><TD>        /*</TD></TR><TR><TD CLASS="l">140</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="f">141</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">142</TD><TD>         * @see org.eclipse.ui.texteditor.IDocumentProvider#getSynchronizationStamp(java.lang.Object)</TD></TR><TR><TD CLASS="l">143</TD><TD>         */</TD></TR><TR><TD CLASS="l">144</TD><TD>        public long getSynchronizationStamp(Object element) {</TD></TR><TR CLASS="z"><TD CLASS="l">145</TD><TD>                return 0;</TD></TR><TR><TD CLASS="l">146</TD><TD>        }</TD></TR><TR><TD CLASS="l">147</TD><TD> </TD></TR><TR><TD CLASS="l">148</TD><TD>        /*</TD></TR><TR><TD CLASS="l">149</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="10">150</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">151</TD><TD>         * @see org.eclipse.ui.texteditor.IDocumentProvider#isDeleted(java.lang.Object)</TD></TR><TR><TD CLASS="l">152</TD><TD>         */</TD></TR><TR><TD CLASS="l">153</TD><TD>        public boolean isDeleted(Object element) {</TD></TR><TR CLASS="z"><TD CLASS="l">154</TD><TD>                return false;</TD></TR><TR><TD CLASS="l">155</TD><TD>        }</TD></TR><TR><TD CLASS="l">156</TD><TD> </TD></TR><TR><TD CLASS="l">157</TD><TD>        /*</TD></TR><TR><TD CLASS="l">158</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="11">159</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">160</TD><TD>         * @see org.eclipse.ui.texteditor.IDocumentProviderExtension#isModifiable(java.lang.Object)</TD></TR><TR><TD CLASS="l">161</TD><TD>         */</TD></TR><TR><TD CLASS="l">162</TD><TD>        public boolean isModifiable(Object element) {</TD></TR><TR CLASS="z"><TD CLASS="l">163</TD><TD>                return true;</TD></TR><TR><TD CLASS="l">164</TD><TD>        }</TD></TR><TR><TD CLASS="l">165</TD><TD> </TD></TR><TR><TD CLASS="l">166</TD><TD>        /*</TD></TR><TR><TD CLASS="l">167</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="12">168</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">169</TD><TD>         * @see org.eclipse.ui.texteditor.IDocumentProviderExtension#isReadOnly(java.lang.Object)</TD></TR><TR><TD CLASS="l">170</TD><TD>         */</TD></TR><TR><TD CLASS="l">171</TD><TD>        public boolean isReadOnly(Object element) {</TD></TR><TR CLASS="z"><TD CLASS="l">172</TD><TD>                return false;</TD></TR><TR><TD CLASS="l">173</TD><TD>        }</TD></TR><TR><TD CLASS="l">174</TD><TD> </TD></TR><TR><TD CLASS="l">175</TD><TD>        /*</TD></TR><TR><TD CLASS="l">176</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="13">177</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">178</TD><TD>         * @see org.eclipse.ui.texteditor.IDocumentProviderExtension#isStateValidated(java.lang.Object)</TD></TR><TR><TD CLASS="l">179</TD><TD>         */</TD></TR><TR><TD CLASS="l">180</TD><TD>        public boolean isStateValidated(Object element) {</TD></TR><TR CLASS="z"><TD CLASS="l">181</TD><TD>                return false;</TD></TR><TR><TD CLASS="l">182</TD><TD>        }</TD></TR><TR><TD CLASS="l">183</TD><TD> </TD></TR><TR><TD CLASS="l">184</TD><TD>        /*</TD></TR><TR><TD CLASS="l">185</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="14">186</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">187</TD><TD>         * @see org.eclipse.ui.texteditor.IDocumentProvider#mustSaveDocument(java.lang.Object)</TD></TR><TR><TD CLASS="l">188</TD><TD>         */</TD></TR><TR><TD CLASS="l">189</TD><TD>        public boolean mustSaveDocument(Object element) {</TD></TR><TR CLASS="z"><TD CLASS="l">190</TD><TD>                return ((IStructuredModel) element).isDirty();</TD></TR><TR><TD CLASS="l">191</TD><TD>        }</TD></TR><TR><TD CLASS="l">192</TD><TD> </TD></TR><TR><TD CLASS="l">193</TD><TD>        /*</TD></TR><TR><TD CLASS="l">194</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="15">195</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">196</TD><TD>         * @see org.eclipse.ui.texteditor.IDocumentProvider#removeElementStateListener(org.eclipse.ui.texteditor.IElementStateListener)</TD></TR><TR><TD CLASS="l">197</TD><TD>         */</TD></TR><TR><TD CLASS="l">198</TD><TD>        public void removeElementStateListener(IElementStateListener listener) {</TD></TR><TR CLASS="z"><TD CLASS="l">199</TD><TD>        }</TD></TR><TR><TD CLASS="l">200</TD><TD> </TD></TR><TR><TD CLASS="l">201</TD><TD>        /*</TD></TR><TR><TD CLASS="l">202</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="16">203</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">204</TD><TD>         * @see org.eclipse.ui.texteditor.IDocumentProvider#resetDocument(java.lang.Object)</TD></TR><TR><TD CLASS="l">205</TD><TD>         */</TD></TR><TR><TD CLASS="l">206</TD><TD>        public void resetDocument(Object element) throws CoreException {</TD></TR><TR CLASS="z"><TD CLASS="l">207</TD><TD>        }</TD></TR><TR><TD CLASS="l">208</TD><TD> </TD></TR><TR><TD CLASS="l">209</TD><TD>        /*</TD></TR><TR><TD CLASS="l">210</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l">211</TD><TD>         * </TD></TR><TR><TD CLASS="l">212</TD><TD>         * @see org.eclipse.ui.texteditor.IDocumentProvider#saveDocument(org.eclipse.core.runtime.IProgressMonitor,</TD></TR><TR><TD CLASS="l"><A NAME="17">213</A></TD><TD>         *      java.lang.Object, org.eclipse.jface.text.IDocument, boolean)</TD></TR><TR><TD CLASS="l">214</TD><TD>         */</TD></TR><TR><TD CLASS="l">215</TD><TD>        public void saveDocument(IProgressMonitor monitor, Object element, IDocument document, boolean overwrite) throws CoreException {</TD></TR><TR><TD CLASS="l">216</TD><TD>                try {</TD></TR><TR CLASS="z"><TD CLASS="l">217</TD><TD>                        ((IStructuredModel) element).save();</TD></TR><TR><TD CLASS="l">218</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">219</TD><TD>                catch (UnsupportedEncodingException e) {</TD></TR><TR><TD CLASS="l">220</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">221</TD><TD>                catch (IOException e) {</TD></TR><TR><TD CLASS="l">222</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">223</TD><TD>                catch (CoreException e) {</TD></TR><TR><TD CLASS="l">224</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">225</TD><TD>        }</TD></TR><TR><TD CLASS="l">226</TD><TD> </TD></TR><TR><TD CLASS="l">227</TD><TD>        /*</TD></TR><TR><TD CLASS="l">228</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="18">229</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">230</TD><TD>         * @see org.eclipse.ui.texteditor.IDocumentProviderExtension#setCanSaveDocument(java.lang.Object)</TD></TR><TR><TD CLASS="l">231</TD><TD>         */</TD></TR><TR><TD CLASS="l">232</TD><TD>        public void setCanSaveDocument(Object element) {</TD></TR><TR CLASS="z"><TD CLASS="l">233</TD><TD>        }</TD></TR><TR><TD CLASS="l">234</TD><TD> </TD></TR><TR><TD CLASS="l">235</TD><TD>        /*</TD></TR><TR><TD CLASS="l">236</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="19">237</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">238</TD><TD>         * @see org.eclipse.ui.texteditor.IDocumentProviderExtension#synchronize(java.lang.Object)</TD></TR><TR><TD CLASS="l">239</TD><TD>         */</TD></TR><TR><TD CLASS="l">240</TD><TD>        public void synchronize(Object element) throws CoreException {</TD></TR><TR CLASS="z"><TD CLASS="l">241</TD><TD>        }</TD></TR><TR><TD CLASS="l">242</TD><TD> </TD></TR><TR><TD CLASS="l">243</TD><TD>        /*</TD></TR><TR><TD CLASS="l">244</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="1a">245</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">246</TD><TD>         * @see org.eclipse.ui.texteditor.IDocumentProviderExtension#updateStateCache(java.lang.Object)</TD></TR><TR><TD CLASS="l">247</TD><TD>         */</TD></TR><TR><TD CLASS="l">248</TD><TD>        public void updateStateCache(Object element) throws CoreException {</TD></TR><TR CLASS="z"><TD CLASS="l">249</TD><TD>        }</TD></TR><TR><TD CLASS="l">250</TD><TD> </TD></TR><TR><TD CLASS="l">251</TD><TD>        /*</TD></TR><TR><TD CLASS="l">252</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l">253</TD><TD>         * </TD></TR><TR><TD CLASS="l"><A NAME="1b">254</A></TD><TD>         * @see org.eclipse.ui.texteditor.IDocumentProviderExtension#validateState(java.lang.Object,</TD></TR><TR><TD CLASS="l">255</TD><TD>         *      java.lang.Object)</TD></TR><TR><TD CLASS="l">256</TD><TD>         */</TD></TR><TR><TD CLASS="l"><A NAME="a">257</A></TD><TD>        public void validateState(Object element, Object computationContext) throws CoreException {</TD></TR><TR CLASS="z"><TD CLASS="l">258</TD><TD>        }</TD></TR><TR><TD CLASS="l">259</TD><TD> </TD></TR><TR><TD CLASS="l">260</TD><TD>        public IContentType getContentType(Object element) throws CoreException {</TD></TR><TR CLASS="z"><TD CLASS="l">261</TD><TD>                return Platform.getContentTypeManager().getContentType(((IStructuredModel) element).getContentTypeIdentifier());</TD></TR><TR><TD CLASS="l">262</TD><TD>        }</TD></TR><TR><TD CLASS="l">263</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="10.html">org.eclipse.wst.sse.ui.internal.editor</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/11f.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/11f.html
deleted file mode 100644
index 40b9bbb..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/11f.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="11.html">org.eclipse.wst.sse.ui.internal.encoding.ui</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">EncodingPreferencePage.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>EncodingPreferencePage.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/109)</TD><TD CLASS="h">0%   (0/30)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">EncodingPreferencePage</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/109)</TD><TD CLASS="h">0%   (0/30)</TD></TR><TR><TD CLASS="f"><A HREF="#0">EncodingPreferencePage (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">createCheckBox (Composite, String): Button</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/19)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#3">createComposite (Composite): Composite</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/25)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">createContents (Composite): Control</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/26)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR><TD CLASS="f"><A HREF="#5">createLabel (Composite, String): Label</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">init (IWorkbench): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#7">performDefaults (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">performOk (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/3)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2005 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.encoding.ui;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.jface.preference.PreferencePage;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.swt.SWT;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.swt.layout.GridData;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.swt.layout.GridLayout;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.swt.widgets.Button;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.swt.widgets.Composite;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.swt.widgets.Control;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.swt.widgets.Label;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.ui.IWorkbench;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.ui.IWorkbenchPreferencePage;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.wst.sse.core.internal.encoding.CommonEncodingPreferenceNames;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.wst.sse.core.internal.encoding.util.CodedResourcePlugin;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.wst.sse.ui.internal.SSEUIMessages;</TD></TR><TR><TD CLASS="l">28</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="0">29</A></TD><TD>/**</TD></TR><TR><TD CLASS="l">30</TD><TD> * @deprecated - this should not be handled by the platform and not WTP</TD></TR><TR><TD CLASS="l">31</TD><TD> */</TD></TR><TR><TD CLASS="l">32</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">33</A></TD><TD>public class EncodingPreferencePage extends PreferencePage implements IWorkbenchPreferencePage {</TD></TR><TR CLASS="z"><TD CLASS="l">34</TD><TD>        Button fUse3ByteBOMWithUTF8CheckBox = null;</TD></TR><TR><TD CLASS="l">35</TD><TD> </TD></TR><TR><TD CLASS="l">36</TD><TD>        private Button createCheckBox(Composite parent, String label) {</TD></TR><TR CLASS="z"><TD CLASS="l">37</TD><TD>                Button button = new Button(parent, SWT.CHECK | SWT.LEFT | SWT.WRAP);</TD></TR><TR CLASS="z"><TD CLASS="l">38</TD><TD>                button.setText(label);</TD></TR><TR><TD CLASS="l">39</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">40</TD><TD>                boolean selection = CodedResourcePlugin.getDefault().getPluginPreferences().getBoolean(CommonEncodingPreferenceNames.USE_3BYTE_BOM_WITH_UTF8);</TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>                button.setSelection(selection);</TD></TR><TR><TD CLASS="l">42</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">43</A></TD><TD>                return button;</TD></TR><TR><TD CLASS="l">44</TD><TD>        }</TD></TR><TR><TD CLASS="l">45</TD><TD> </TD></TR><TR><TD CLASS="l">46</TD><TD>        private Composite createComposite(Composite parent) {</TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>                Composite composite = new Composite(parent, SWT.NONE);</TD></TR><TR><TD CLASS="l">48</TD><TD> </TD></TR><TR><TD CLASS="l">49</TD><TD>                //GridLayout</TD></TR><TR CLASS="z"><TD CLASS="l">50</TD><TD>                GridLayout layout = new GridLayout(1, true);</TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>                composite.setLayout(layout);</TD></TR><TR><TD CLASS="l">52</TD><TD> </TD></TR><TR><TD CLASS="l">53</TD><TD>                //GridData</TD></TR><TR CLASS="z"><TD CLASS="l">54</TD><TD>                GridData data = new GridData(GridData.FILL_BOTH);</TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                composite.setLayoutData(data);</TD></TR><TR><TD CLASS="l">56</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>                return composite;</TD></TR><TR><TD CLASS="l">58</TD><TD>        }</TD></TR><TR><TD CLASS="l">59</TD><TD> </TD></TR><TR><TD CLASS="l">60</TD><TD>        /*</TD></TR><TR><TD CLASS="l">61</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="4">62</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">63</TD><TD>         * @see org.eclipse.jface.preference.PreferencePage#createContents(org.eclipse.swt.widgets.Composite)</TD></TR><TR><TD CLASS="l">64</TD><TD>         */</TD></TR><TR><TD CLASS="l">65</TD><TD>        protected Control createContents(Composite parent) {</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                Composite composite = createComposite(parent);</TD></TR><TR><TD CLASS="l">67</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>                String description = SSEUIMessages.EncodingPreferencePage_0; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">69</TD><TD>                </TD></TR><TR><TD CLASS="l">70</TD><TD>                // ISSUE: the following to lines look redundant, </TD></TR><TR><TD CLASS="l">71</TD><TD>                // not sure what was trying to be accomplished. </TD></TR><TR><TD CLASS="l">72</TD><TD>                // May be dead code. </TD></TR><TR CLASS="z"><TD CLASS="l">73</TD><TD>                createLabel(composite, description);</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>                createLabel(composite, &#34;&#34;); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">75</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>                String checkBoxLabel = SSEUIMessages.EncodingPreferencePage_1; //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>                fUse3ByteBOMWithUTF8CheckBox = createCheckBox(composite, checkBoxLabel);</TD></TR><TR><TD CLASS="l">78</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="5">79</A></TD><TD>                return composite;</TD></TR><TR><TD CLASS="l">80</TD><TD>        }</TD></TR><TR><TD CLASS="l">81</TD><TD> </TD></TR><TR><TD CLASS="l">82</TD><TD>        private Label createLabel(Composite parent, String text) {</TD></TR><TR CLASS="z"><TD CLASS="l">83</TD><TD>                Label label = new Label(parent, SWT.LEFT);</TD></TR><TR CLASS="z"><TD CLASS="l">84</TD><TD>                label.setText(text);</TD></TR><TR><TD CLASS="l">85</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                return label;</TD></TR><TR><TD CLASS="l">87</TD><TD>        }</TD></TR><TR><TD CLASS="l">88</TD><TD> </TD></TR><TR><TD CLASS="l">89</TD><TD> </TD></TR><TR><TD CLASS="l">90</TD><TD>        /*</TD></TR><TR><TD CLASS="l">91</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="6">92</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">93</TD><TD>         * @see org.eclipse.ui.IWorkbenchPreferencePage#init(org.eclipse.ui.IWorkbench)</TD></TR><TR><TD CLASS="l">94</TD><TD>         */</TD></TR><TR><TD CLASS="l"><A NAME="7">95</A></TD><TD>        public void init(IWorkbench workbench) {</TD></TR><TR CLASS="z"><TD CLASS="l">96</TD><TD>        }</TD></TR><TR><TD CLASS="l">97</TD><TD> </TD></TR><TR><TD CLASS="l">98</TD><TD>        public void performDefaults() {</TD></TR><TR CLASS="z"><TD CLASS="l">99</TD><TD>                boolean defaultSelection = CodedResourcePlugin.getDefault().getPluginPreferences().getDefaultBoolean(CommonEncodingPreferenceNames.USE_3BYTE_BOM_WITH_UTF8);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="8">100</A></TD><TD>                fUse3ByteBOMWithUTF8CheckBox.setSelection(defaultSelection);</TD></TR><TR CLASS="z"><TD CLASS="l">101</TD><TD>        }</TD></TR><TR><TD CLASS="l">102</TD><TD> </TD></TR><TR><TD CLASS="l">103</TD><TD>        public boolean performOk() {</TD></TR><TR CLASS="z"><TD CLASS="l">104</TD><TD>                CodedResourcePlugin.getDefault().getPluginPreferences().setValue(CommonEncodingPreferenceNames.USE_3BYTE_BOM_WITH_UTF8, fUse3ByteBOMWithUTF8CheckBox.getSelection());</TD></TR><TR CLASS="z"><TD CLASS="l">105</TD><TD>                CodedResourcePlugin.getDefault().savePluginPreferences();</TD></TR><TR><TD CLASS="l">106</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">107</TD><TD>                return true;</TD></TR><TR><TD CLASS="l">108</TD><TD>        }</TD></TR><TR><TD CLASS="l">109</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="11.html">org.eclipse.wst.sse.ui.internal.encoding.ui</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/12.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/12.html
deleted file mode 100644
index 69e0831..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/12.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR PACKAGE [<SPAN CLASS="in">org.eclipse.wst.sse.ui.internal.format</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>org.eclipse.wst.sse.ui.internal.format</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/92)</TD><TD CLASS="h">0%   (0/24)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY SOURCE FILE</H3><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR CLASS="o"><TD><A HREF="120.html">StructuredFormattingStrategy.java</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/92)</TD><TD CLASS="h">0%   (0/24)</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/120.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/120.html
deleted file mode 100644
index 3491f36..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/120.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="12.html">org.eclipse.wst.sse.ui.internal.format</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">StructuredFormattingStrategy.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>StructuredFormattingStrategy.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/92)</TD><TD CLASS="h">0%   (0/24)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">StructuredFormattingStrategy</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/92)</TD><TD CLASS="h">0%   (0/24)</TD></TR><TR><TD CLASS="f"><A HREF="#0">StructuredFormattingStrategy (IStructuredFormatProcessor): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/16)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">format (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/45)</TD><TD CLASS="h">0%   (0/10)</TD></TR><TR><TD CLASS="f"><A HREF="#3">formatterStarts (IFormattingContext): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/22)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">formatterStops (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/4)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2005 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.format;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.io.IOException;</TD></TR><TR><TD CLASS="l">16</TD><TD>import java.util.LinkedList;</TD></TR><TR><TD CLASS="l">17</TD><TD> </TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.core.runtime.CoreException;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.jface.text.IDocument;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.jface.text.IRegion;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.jface.text.TypedPosition;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.jface.text.formatter.ContextBasedFormattingStrategy;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.jface.text.formatter.FormattingContextProperties;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.jface.text.formatter.IFormattingContext;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.wst.sse.core.internal.format.IStructuredFormatProcessor;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.wst.sse.ui.internal.Logger;</TD></TR><TR><TD CLASS="l">27</TD><TD> </TD></TR><TR><TD CLASS="l">28</TD><TD> </TD></TR><TR><TD CLASS="l">29</TD><TD>public class StructuredFormattingStrategy extends ContextBasedFormattingStrategy {</TD></TR><TR><TD CLASS="l">30</TD><TD> </TD></TR><TR><TD CLASS="l">31</TD><TD>        /** Documents to be formatted by this strategy */</TD></TR><TR CLASS="z"><TD CLASS="l">32</TD><TD>        private final LinkedList fDocuments = new LinkedList();</TD></TR><TR><TD CLASS="l">33</TD><TD>        private IStructuredFormatProcessor fFormatProcessor;</TD></TR><TR><TD CLASS="l">34</TD><TD>        /** Partitions to be formatted by this strategy */</TD></TR><TR CLASS="z"><TD CLASS="l">35</TD><TD>        private final LinkedList fPartitions = new LinkedList();</TD></TR><TR><TD CLASS="l">36</TD><TD>        private IRegion fRegion;</TD></TR><TR><TD CLASS="l">37</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="0">38</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">39</TD><TD>         * @param formatProcessor</TD></TR><TR><TD CLASS="l">40</TD><TD>         */</TD></TR><TR><TD CLASS="l">41</TD><TD>        public StructuredFormattingStrategy(IStructuredFormatProcessor formatProcessor) {</TD></TR><TR CLASS="z"><TD CLASS="l">42</TD><TD>                super();</TD></TR><TR><TD CLASS="l">43</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>                fFormatProcessor = formatProcessor;</TD></TR><TR CLASS="z"><TD CLASS="l">45</TD><TD>        }</TD></TR><TR><TD CLASS="l">46</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="2">47</A></TD><TD>        /*</TD></TR><TR><TD CLASS="l">48</TD><TD>         * @see org.eclipse.jface.text.formatter.ContextBasedFormattingStrategy#format()</TD></TR><TR><TD CLASS="l">49</TD><TD>         */</TD></TR><TR><TD CLASS="l">50</TD><TD>        public void format() {</TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>                super.format();</TD></TR><TR><TD CLASS="l">52</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>                final IDocument document = (IDocument) fDocuments.removeFirst();</TD></TR><TR CLASS="z"><TD CLASS="l">54</TD><TD>                final TypedPosition partition = (TypedPosition) fPartitions.removeFirst();</TD></TR><TR><TD CLASS="l">55</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>                if (document != null &amp;&amp; partition != null &amp;&amp; fRegion != null &amp;&amp; fFormatProcessor != null) {</TD></TR><TR><TD CLASS="l">57</TD><TD>                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>                                fFormatProcessor.formatDocument(document, fRegion.getOffset(), fRegion.getLength());</TD></TR><TR><TD CLASS="l">59</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                        catch (IOException e) {</TD></TR><TR><TD CLASS="l">61</TD><TD>                                // log for now, unless we find reason not to</TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>                                Logger.log(Logger.INFO, e.getMessage());</TD></TR><TR><TD CLASS="l">63</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                        catch (CoreException e) {</TD></TR><TR><TD CLASS="l">65</TD><TD>                                // log for now, unless we find reason not to</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                                Logger.log(Logger.INFO, e.getMessage());</TD></TR><TR><TD CLASS="l">67</TD><TD>                        }</TD></TR><TR><TD CLASS="l">68</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>        }</TD></TR><TR><TD CLASS="l">70</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="3">71</A></TD><TD>        /*</TD></TR><TR><TD CLASS="l">72</TD><TD>         * @see org.eclipse.jface.text.formatter.ContextBasedFormattingStrategy#formatterStarts(org.eclipse.jface.text.formatter.IFormattingContext)</TD></TR><TR><TD CLASS="l">73</TD><TD>         */</TD></TR><TR><TD CLASS="l">74</TD><TD>        public void formatterStarts(final IFormattingContext context) {</TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>                super.formatterStarts(context);</TD></TR><TR><TD CLASS="l">76</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>                fPartitions.addLast(context.getProperty(FormattingContextProperties.CONTEXT_PARTITION));</TD></TR><TR CLASS="z"><TD CLASS="l">78</TD><TD>                fDocuments.addLast(context.getProperty(FormattingContextProperties.CONTEXT_MEDIUM));</TD></TR><TR CLASS="z"><TD CLASS="l">79</TD><TD>                fRegion = (IRegion) context.getProperty(FormattingContextProperties.CONTEXT_REGION);</TD></TR><TR CLASS="z"><TD CLASS="l">80</TD><TD>        }</TD></TR><TR><TD CLASS="l">81</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="4">82</A></TD><TD>        /*</TD></TR><TR><TD CLASS="l">83</TD><TD>         * @see org.eclipse.jface.text.formatter.ContextBasedFormattingStrategy#formatterStops()</TD></TR><TR><TD CLASS="l">84</TD><TD>         */</TD></TR><TR><TD CLASS="l">85</TD><TD>        public void formatterStops() {</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                super.formatterStops();</TD></TR><TR><TD CLASS="l">87</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">88</TD><TD>                fPartitions.clear();</TD></TR><TR CLASS="z"><TD CLASS="l">89</TD><TD>                fDocuments.clear();</TD></TR><TR CLASS="z"><TD CLASS="l">90</TD><TD>        }</TD></TR><TR><TD CLASS="l">91</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="12.html">org.eclipse.wst.sse.ui.internal.format</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/121.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/121.html
deleted file mode 100644
index 3411d79..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/121.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="13.html">org.eclipse.wst.sse.ui.internal.handlers</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">AbstractStructuredSelectHandler.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>AbstractStructuredSelectHandler.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/161)</TD><TD CLASS="h">0%   (0/38)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">AbstractStructuredSelectHandler</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/161)</TD><TD CLASS="h">0%   (0/38)</TD></TR><TR><TD CLASS="f"><A HREF="#0">AbstractStructuredSelectHandler (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">execute (ExecutionEvent): Object</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/122)</TD><TD CLASS="h">0%   (0/25)</TD></TR><TR><TD CLASS="f"><A HREF="#3">getIndexedRegion (IDocument, int): IndexedRegion</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/36)</TD><TD CLASS="h">0%   (0/12)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2008 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">11</TD><TD>package org.eclipse.wst.sse.ui.internal.handlers;</TD></TR><TR><TD CLASS="l">12</TD><TD> </TD></TR><TR><TD CLASS="l">13</TD><TD>import org.eclipse.core.commands.AbstractHandler;</TD></TR><TR><TD CLASS="l">14</TD><TD>import org.eclipse.core.commands.ExecutionEvent;</TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.core.commands.ExecutionException;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.jface.text.IDocument;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.jface.text.ITextSelection;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.jface.text.Region;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.jface.viewers.ISelection;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.ui.IEditorPart;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.ui.handlers.HandlerUtil;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.ui.texteditor.ITextEditor;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.wst.sse.core.StructuredModelManager;</TD></TR><TR><TD CLASS="l"><A NAME="0">24</A></TD><TD>import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.wst.sse.ui.internal.selection.SelectionHistory;</TD></TR><TR><TD CLASS="l"><A NAME="2">27</A></TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">28</TD><TD>abstract public class AbstractStructuredSelectHandler extends AbstractHandler {</TD></TR><TR><TD CLASS="l">29</TD><TD> </TD></TR><TR><TD CLASS="l">30</TD><TD>        public Object execute(ExecutionEvent event) throws ExecutionException {</TD></TR><TR CLASS="z"><TD CLASS="l">31</TD><TD>                IEditorPart editor = HandlerUtil.getActiveEditor(event);</TD></TR><TR CLASS="z"><TD CLASS="l">32</TD><TD>                ITextEditor textEditor = null;</TD></TR><TR CLASS="z"><TD CLASS="l">33</TD><TD>                if (editor instanceof ITextEditor)</TD></TR><TR CLASS="z"><TD CLASS="l">34</TD><TD>                        textEditor = (ITextEditor) editor;</TD></TR><TR><TD CLASS="l">35</TD><TD>                else {</TD></TR><TR CLASS="z"><TD CLASS="l">36</TD><TD>                        Object o = editor.getAdapter(ITextEditor.class);</TD></TR><TR CLASS="z"><TD CLASS="l">37</TD><TD>                        if (o != null)</TD></TR><TR CLASS="z"><TD CLASS="l">38</TD><TD>                                textEditor = (ITextEditor) o;</TD></TR><TR><TD CLASS="l">39</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">40</TD><TD>                if (textEditor != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>                        ISelection selection = textEditor.getSelectionProvider().getSelection();</TD></TR><TR CLASS="z"><TD CLASS="l">42</TD><TD>                        IDocument document = textEditor.getDocumentProvider().getDocument(textEditor.getEditorInput());</TD></TR><TR><TD CLASS="l">43</TD><TD>                        // determine current text selection</TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>                        if (selection instanceof ITextSelection &amp;&amp; document != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">45</TD><TD>                                ITextSelection textSelection = (ITextSelection) selection;</TD></TR><TR><TD CLASS="l">46</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>                                if (textSelection.getLength() &lt; document.getLength()) {</TD></TR><TR><TD CLASS="l">48</TD><TD>                                        // get current indexed region</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>                                        IndexedRegion cursorIndexedRegion = getCursorIndexedRegion(document, textSelection);</TD></TR><TR><TD CLASS="l">50</TD><TD> </TD></TR><TR><TD CLASS="l">51</TD><TD>                                        // determine new selection based on current indexed region</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                                        Region newSelectionRegion = getNewSelectionRegion(cursorIndexedRegion, textSelection);</TD></TR><TR><TD CLASS="l">53</TD><TD> </TD></TR><TR><TD CLASS="l">54</TD><TD>                                        // select new selection</TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                                        if (newSelectionRegion != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>                                                SelectionHistory history = (SelectionHistory) editor.getAdapter(SelectionHistory.class);</TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>                                                if (history != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>                                                        history.remember(new Region(textSelection.getOffset(), textSelection.getLength()));</TD></TR><TR><TD CLASS="l">59</TD><TD>                                                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                                                                history.ignoreSelectionChanges();</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                                                                textEditor.selectAndReveal(newSelectionRegion.getOffset(), newSelectionRegion.getLength());</TD></TR><TR><TD CLASS="l">62</TD><TD>                                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>                                                        finally {</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                                                                history.listenToSelectionChanges();</TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>                                                        }</TD></TR><TR><TD CLASS="l">66</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">67</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">68</TD><TD>                                }</TD></TR><TR><TD CLASS="l">69</TD><TD>                        }</TD></TR><TR><TD CLASS="l">70</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>                return null;</TD></TR><TR><TD CLASS="l">72</TD><TD>        }</TD></TR><TR><TD CLASS="l">73</TD><TD> </TD></TR><TR><TD CLASS="l">74</TD><TD>        /**</TD></TR><TR><TD CLASS="l">75</TD><TD>         * This method will probably be removed and replaced by using new</TD></TR><TR><TD CLASS="l">76</TD><TD>         * selection provider</TD></TR><TR><TD CLASS="l">77</TD><TD>         * </TD></TR><TR><TD CLASS="l">78</TD><TD>         * @param document</TD></TR><TR><TD CLASS="l"><A NAME="3">79</A></TD><TD>         * @param offset</TD></TR><TR><TD CLASS="l">80</TD><TD>         * @return</TD></TR><TR><TD CLASS="l">81</TD><TD>         */</TD></TR><TR><TD CLASS="l">82</TD><TD>        protected IndexedRegion getIndexedRegion(IDocument document, int offset) {</TD></TR><TR CLASS="z"><TD CLASS="l">83</TD><TD>                IndexedRegion indexedRegion = null;</TD></TR><TR><TD CLASS="l">84</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>                int lastOffset = offset;</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                IStructuredModel model = StructuredModelManager.getModelManager().getExistingModelForRead(document);</TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>                if (model != null) {</TD></TR><TR><TD CLASS="l">88</TD><TD>                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">89</TD><TD>                                indexedRegion = model.getIndexedRegion(lastOffset);</TD></TR><TR CLASS="z"><TD CLASS="l">90</TD><TD>                                while (indexedRegion == null &amp;&amp; lastOffset &gt;= 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">91</TD><TD>                                        lastOffset--;</TD></TR><TR CLASS="z"><TD CLASS="l">92</TD><TD>                                        indexedRegion = model.getIndexedRegion(lastOffset);</TD></TR><TR><TD CLASS="l">93</TD><TD>                                }</TD></TR><TR><TD CLASS="l">94</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">95</TD><TD>                        finally {</TD></TR><TR CLASS="z"><TD CLASS="l">96</TD><TD>                                model.releaseFromRead();</TD></TR><TR CLASS="z"><TD CLASS="l">97</TD><TD>                        }</TD></TR><TR><TD CLASS="l">98</TD><TD>                }</TD></TR><TR><TD CLASS="l">99</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">100</TD><TD>                return indexedRegion;</TD></TR><TR><TD CLASS="l">101</TD><TD>        }</TD></TR><TR><TD CLASS="l">102</TD><TD> </TD></TR><TR><TD CLASS="l">103</TD><TD>        abstract protected IndexedRegion getCursorIndexedRegion(IDocument document, ITextSelection textSelection);</TD></TR><TR><TD CLASS="l">104</TD><TD> </TD></TR><TR><TD CLASS="l">105</TD><TD>        abstract protected Region getNewSelectionRegion(IndexedRegion indexedRegion, ITextSelection textSelection);</TD></TR><TR><TD CLASS="l">106</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="13.html">org.eclipse.wst.sse.ui.internal.handlers</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/122.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/122.html
deleted file mode 100644
index a7666ad..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/122.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="13.html">org.eclipse.wst.sse.ui.internal.handlers</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">FindOccurrencesHandler.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>FindOccurrencesHandler.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/198)</TD><TD CLASS="h">0%   (0/51)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">FindOccurrencesHandler</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/198)</TD><TD CLASS="h">0%   (0/51)</TD></TR><TR><TD CLASS="f"><A HREF="#0">FindOccurrencesHandler (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">execute (ExecutionEvent): Object</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/84)</TD><TD CLASS="h">0%   (0/23)</TD></TR><TR><TD CLASS="f"><A HREF="#3">getPartition (IDocument, ITextSelection): ITypedRegion</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">getProcessorForCurrentSelection (IDocument, ITextSelection): FindOccurrencesP...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/79)</TD><TD CLASS="h">0%   (0/16)</TD></TR><TR><TD CLASS="f"><A HREF="#5">getTextSelection (ITextEditor): ITextSelection</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/17)</TD><TD CLASS="h">0%   (0/5)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2008 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">11</TD><TD>package org.eclipse.wst.sse.ui.internal.handlers;</TD></TR><TR><TD CLASS="l">12</TD><TD> </TD></TR><TR><TD CLASS="l">13</TD><TD>import java.util.Iterator;</TD></TR><TR><TD CLASS="l">14</TD><TD>import java.util.List;</TD></TR><TR><TD CLASS="l">15</TD><TD> </TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.core.commands.AbstractHandler;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.core.commands.ExecutionEvent;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.core.commands.ExecutionException;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.core.resources.IFile;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.jface.text.BadLocationException;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.jface.text.IDocument;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.jface.text.ITextSelection;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.jface.text.ITypedRegion;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.jface.viewers.ISelection;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.ui.IEditorPart;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.ui.IFileEditorInput;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.ui.handlers.HandlerUtil;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.ui.texteditor.ITextEditor;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.wst.sse.ui.internal.ExtendedConfigurationBuilder;</TD></TR><TR><TD CLASS="l"><A NAME="0">30</A></TD><TD>import org.eclipse.wst.sse.ui.internal.SSEUIMessages;</TD></TR><TR><TD CLASS="l">31</TD><TD>import org.eclipse.wst.sse.ui.internal.search.FindOccurrencesProcessor;</TD></TR><TR><TD CLASS="l">32</TD><TD>import org.eclipse.wst.sse.ui.internal.util.PlatformStatusLineUtil;</TD></TR><TR><TD CLASS="l"><A NAME="2">33</A></TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">34</TD><TD>public abstract class FindOccurrencesHandler extends AbstractHandler {</TD></TR><TR><TD CLASS="l">35</TD><TD>        </TD></TR><TR><TD CLASS="l">36</TD><TD>        public Object execute(ExecutionEvent event) throws ExecutionException {</TD></TR><TR CLASS="z"><TD CLASS="l">37</TD><TD>                IEditorPart editorPart = HandlerUtil.getActiveEditor(event);</TD></TR><TR CLASS="z"><TD CLASS="l">38</TD><TD>                ITextEditor textEditor = null;</TD></TR><TR CLASS="z"><TD CLASS="l">39</TD><TD>                if (editorPart instanceof ITextEditor)</TD></TR><TR CLASS="z"><TD CLASS="l">40</TD><TD>                        textEditor = (ITextEditor) editorPart;</TD></TR><TR><TD CLASS="l">41</TD><TD>                else {</TD></TR><TR CLASS="z"><TD CLASS="l">42</TD><TD>                        Object o = editorPart.getAdapter(ITextEditor.class);</TD></TR><TR CLASS="z"><TD CLASS="l">43</TD><TD>                        if (o != null)</TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>                                textEditor = (ITextEditor) o;</TD></TR><TR><TD CLASS="l">45</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>                boolean okay = false;</TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>                if (textEditor != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">48</TD><TD>                        IDocument document = textEditor.getDocumentProvider().getDocument(textEditor.getEditorInput());</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>                        if (document != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">50</TD><TD>                                ITextSelection textSelection = getTextSelection(textEditor);</TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>                                FindOccurrencesProcessor findOccurrenceProcessor = getProcessorForCurrentSelection(document, textSelection);</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                                if (findOccurrenceProcessor != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>                                        if (textEditor.getEditorInput() instanceof IFileEditorInput) {</TD></TR><TR CLASS="z"><TD CLASS="l">54</TD><TD>                                                IFile file = ((IFileEditorInput) textEditor.getEditorInput()).getFile();</TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                                                okay = findOccurrenceProcessor.findOccurrences(document, textSelection, file);</TD></TR><TR><TD CLASS="l">56</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">57</TD><TD>                                }</TD></TR><TR><TD CLASS="l">58</TD><TD>                        }</TD></TR><TR><TD CLASS="l">59</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                if (okay) {</TD></TR><TR><TD CLASS="l">61</TD><TD>                        // clear status message</TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>                        PlatformStatusLineUtil.clearStatusLine();</TD></TR><TR><TD CLASS="l">63</TD><TD>                }</TD></TR><TR><TD CLASS="l">64</TD><TD>                else {</TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>                        String errorMessage = SSEUIMessages.FindOccurrencesActionProvider_0; //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                        PlatformStatusLineUtil.displayErrorMessage(errorMessage);</TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>                        PlatformStatusLineUtil.addOneTimeClearListener();</TD></TR><TR><TD CLASS="l">68</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                return null;</TD></TR><TR><TD CLASS="l">70</TD><TD>        }</TD></TR><TR><TD CLASS="l">71</TD><TD>        </TD></TR><TR><TD CLASS="l">72</TD><TD>        /**</TD></TR><TR><TD CLASS="l">73</TD><TD>         * Get the appropriate find occurrences processor</TD></TR><TR><TD CLASS="l">74</TD><TD>         * </TD></TR><TR><TD CLASS="l">75</TD><TD>         * @param document -</TD></TR><TR><TD CLASS="l">76</TD><TD>         *            assumes not null</TD></TR><TR><TD CLASS="l">77</TD><TD>         * @param textSelection</TD></TR><TR><TD CLASS="l"><A NAME="4">78</A></TD><TD>         * @return</TD></TR><TR><TD CLASS="l">79</TD><TD>         */</TD></TR><TR><TD CLASS="l">80</TD><TD>        private FindOccurrencesProcessor getProcessorForCurrentSelection(IDocument document, ITextSelection textSelection) {</TD></TR><TR><TD CLASS="l">81</TD><TD>                // check if we have an action that's enabled on the current partition</TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>                ITypedRegion tr = getPartition(document, textSelection);</TD></TR><TR CLASS="z"><TD CLASS="l">83</TD><TD>                String partition = tr != null ? tr.getType() : &#34;&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">84</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>                Iterator it = getProcessors().iterator();</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                FindOccurrencesProcessor processor = null;</TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>                while (it.hasNext()) {</TD></TR><TR CLASS="z"><TD CLASS="l">88</TD><TD>                        processor = (FindOccurrencesProcessor) it.next();</TD></TR><TR><TD CLASS="l">89</TD><TD>                        // we just choose the first action that can handle the partition</TD></TR><TR CLASS="z"><TD CLASS="l">90</TD><TD>                        if (processor.enabledForParitition(partition))</TD></TR><TR CLASS="z"><TD CLASS="l">91</TD><TD>                                return processor;</TD></TR><TR><TD CLASS="l">92</TD><TD>                }</TD></TR><TR><TD CLASS="l">93</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">94</TD><TD>                List extendedFindOccurrencesProcessors = ExtendedConfigurationBuilder.getInstance().getConfigurations(FindOccurrencesProcessor.class.getName(), partition);</TD></TR><TR CLASS="z"><TD CLASS="l">95</TD><TD>                for (int i = 0; i &lt; extendedFindOccurrencesProcessors.size(); i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">96</TD><TD>                        Object o = extendedFindOccurrencesProcessors.get(i);</TD></TR><TR CLASS="z"><TD CLASS="l">97</TD><TD>                        if (o instanceof FindOccurrencesProcessor) {</TD></TR><TR><TD CLASS="l">98</TD><TD>                                /*</TD></TR><TR><TD CLASS="l">99</TD><TD>                                 * We just choose the first registered processor that</TD></TR><TR><TD CLASS="l">100</TD><TD>                                 * explicitly says it can handle the partition</TD></TR><TR><TD CLASS="l">101</TD><TD>                                 */</TD></TR><TR CLASS="z"><TD CLASS="l">102</TD><TD>                                processor = (FindOccurrencesProcessor) it.next();</TD></TR><TR CLASS="z"><TD CLASS="l">103</TD><TD>                                if (processor.enabledForParitition(partition))</TD></TR><TR CLASS="z"><TD CLASS="l">104</TD><TD>                                        return processor;</TD></TR><TR><TD CLASS="l">105</TD><TD>                        }</TD></TR><TR><TD CLASS="l">106</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">107</A></TD><TD>                return null;</TD></TR><TR><TD CLASS="l">108</TD><TD>        }</TD></TR><TR><TD CLASS="l">109</TD><TD> </TD></TR><TR><TD CLASS="l">110</TD><TD>        private ITypedRegion getPartition(IDocument document, ITextSelection textSelection) {</TD></TR><TR CLASS="z"><TD CLASS="l">111</TD><TD>                ITypedRegion region = null;</TD></TR><TR CLASS="z"><TD CLASS="l">112</TD><TD>                if (textSelection != null) {</TD></TR><TR><TD CLASS="l">113</TD><TD>                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">114</TD><TD>                                region = document.getPartition(textSelection.getOffset());</TD></TR><TR><TD CLASS="l">115</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">116</TD><TD>                        catch (BadLocationException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">117</TD><TD>                                region = null;</TD></TR><TR><TD CLASS="l">118</TD><TD>                        }</TD></TR><TR><TD CLASS="l">119</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="5">120</A></TD><TD>                return region;</TD></TR><TR><TD CLASS="l">121</TD><TD>        }</TD></TR><TR><TD CLASS="l">122</TD><TD> </TD></TR><TR><TD CLASS="l">123</TD><TD>        private ITextSelection getTextSelection(ITextEditor textEditor) {</TD></TR><TR CLASS="z"><TD CLASS="l">124</TD><TD>                ITextSelection textSelection = null;</TD></TR><TR CLASS="z"><TD CLASS="l">125</TD><TD>                ISelection selection = textEditor.getSelectionProvider().getSelection();</TD></TR><TR CLASS="z"><TD CLASS="l">126</TD><TD>                if (selection instanceof ITextSelection &amp;&amp; !selection.isEmpty()) {</TD></TR><TR CLASS="z"><TD CLASS="l">127</TD><TD>                        textSelection = (ITextSelection) selection;</TD></TR><TR><TD CLASS="l">128</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">129</TD><TD>                return textSelection;</TD></TR><TR><TD CLASS="l">130</TD><TD>        }</TD></TR><TR><TD CLASS="l">131</TD><TD>        </TD></TR><TR><TD CLASS="l">132</TD><TD>        abstract protected List getProcessors();</TD></TR><TR><TD CLASS="l">133</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="13.html">org.eclipse.wst.sse.ui.internal.handlers</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/123.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/123.html
deleted file mode 100644
index 4e41f7b..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/123.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="13.html">org.eclipse.wst.sse.ui.internal.handlers</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">FormatHandler.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>FormatHandler.java</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/661)</TD><TD CLASS="h">0%   (0/143)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">FormatHandler</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/565)</TD><TD CLASS="h">0%   (0/126)</TD></TR><TR><TD CLASS="f"><A HREF="#0">FormatHandler (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">dispose (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#3">execute (ExecutionEvent): Object</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/66)</TD><TD CLASS="h">0%   (0/18)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">format (IProgressMonitor, IFile): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/134)</TD><TD CLASS="h">0%   (0/23)</TD></TR><TR><TD CLASS="f"><A HREF="#5">format (IProgressMonitor, IResource): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/182)</TD><TD CLASS="h">0%   (0/37)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">getActiveProgressService (): IWorkbenchSiteProgressService</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/41)</TD><TD CLASS="h">0%   (0/10)</TD></TR><TR><TD CLASS="f"><A HREF="#7">getDisplay (): Display</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">getFormatProcessor (String): IStructuredFormatProcessor</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#9">getJob (): Job</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">process (IProgressMonitor, IResource): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/47)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR><TD CLASS="f"><A HREF="#b">processorAvailable (IResource): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/65)</TD><TD CLASS="h">0%   (0/22)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#c">FormatHandler$1</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/24)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#c">FormatHandler$1 (FormatHandler, IProgressMonitor, IFile): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#e">run (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#f">FormatHandler$FormatJob</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/72)</TD><TD CLASS="h">0%   (0/14)</TD></TR><TR><TD CLASS="f"><A HREF="#f">FormatHandler$FormatJob (FormatHandler, String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#11">run (IProgressMonitor): IStatus</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/65)</TD><TD CLASS="h">0%   (0/12)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR CLASS="z"><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2008 Standards for Technology in Automotive Retail and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     David Carver - initial API and implementation - bug 212330 -</TD></TR><TR><TD CLASS="l">10</TD><TD> *                    Based off FormatActionDelegate.java</TD></TR><TR><TD CLASS="l">11</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">12</TD><TD> </TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.handlers;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.io.IOException;</TD></TR><TR><TD CLASS="l">16</TD><TD> </TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.core.commands.AbstractHandler;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.core.commands.ExecutionEvent;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.core.commands.ExecutionException;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.core.commands.IHandler;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.core.filebuffers.FileBuffers;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.core.filebuffers.ITextFileBuffer;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.core.filebuffers.ITextFileBufferManager;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.core.filebuffers.LocationKind;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.core.resources.IContainer;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.core.resources.IFile;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.core.resources.IResource;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.core.runtime.CoreException;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.core.runtime.IProgressMonitor;</TD></TR><TR><TD CLASS="l">30</TD><TD>import org.eclipse.core.runtime.IStatus;</TD></TR><TR><TD CLASS="l">31</TD><TD>import org.eclipse.core.runtime.MultiStatus;</TD></TR><TR><TD CLASS="l">32</TD><TD>import org.eclipse.core.runtime.Status;</TD></TR><TR><TD CLASS="l">33</TD><TD>import org.eclipse.core.runtime.SubProgressMonitor;</TD></TR><TR><TD CLASS="l">34</TD><TD>import org.eclipse.core.runtime.content.IContentDescription;</TD></TR><TR><TD CLASS="l">35</TD><TD>import org.eclipse.core.runtime.content.IContentType;</TD></TR><TR><TD CLASS="l">36</TD><TD>import org.eclipse.core.runtime.jobs.Job;</TD></TR><TR><TD CLASS="l">37</TD><TD>import org.eclipse.jface.viewers.ISelection;</TD></TR><TR><TD CLASS="l">38</TD><TD>import org.eclipse.jface.viewers.IStructuredSelection;</TD></TR><TR><TD CLASS="l">39</TD><TD>import org.eclipse.osgi.util.NLS;</TD></TR><TR><TD CLASS="l">40</TD><TD>import org.eclipse.swt.widgets.Display;</TD></TR><TR><TD CLASS="l">41</TD><TD>import org.eclipse.ui.IWorkbenchPage;</TD></TR><TR><TD CLASS="l">42</TD><TD>import org.eclipse.ui.IWorkbenchPart;</TD></TR><TR><TD CLASS="l">43</TD><TD>import org.eclipse.ui.IWorkbenchWindow;</TD></TR><TR><TD CLASS="l">44</TD><TD>import org.eclipse.ui.PlatformUI;</TD></TR><TR><TD CLASS="l">45</TD><TD>import org.eclipse.ui.handlers.HandlerUtil;</TD></TR><TR><TD CLASS="l">46</TD><TD>import org.eclipse.ui.progress.IWorkbenchSiteProgressService;</TD></TR><TR><TD CLASS="l">47</TD><TD>import org.eclipse.wst.sse.core.internal.exceptions.MalformedInputExceptionWithDetail;</TD></TR><TR><TD CLASS="l">48</TD><TD>import org.eclipse.wst.sse.core.internal.format.IStructuredFormatProcessor;</TD></TR><TR><TD CLASS="l">49</TD><TD>import org.eclipse.wst.sse.ui.internal.FormatProcessorsExtensionReader;</TD></TR><TR><TD CLASS="l"><A NAME="0">50</A></TD><TD>import org.eclipse.wst.sse.ui.internal.Logger;</TD></TR><TR><TD CLASS="l">51</TD><TD>import org.eclipse.wst.sse.ui.internal.SSEUIMessages;</TD></TR><TR><TD CLASS="l">52</TD><TD>import org.eclipse.wst.sse.ui.internal.SSEUIPlugin;</TD></TR><TR><TD CLASS="l">53</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">54</TD><TD>public class FormatHandler extends AbstractHandler implements IHandler {</TD></TR><TR><TD CLASS="l">55</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="2">56</A></TD><TD>        protected IStructuredSelection fSelection;</TD></TR><TR><TD CLASS="l">57</TD><TD>        </TD></TR><TR><TD CLASS="l">58</TD><TD>        public void dispose() {</TD></TR><TR><TD CLASS="l"><A NAME="6">59</A></TD><TD>                // nulling out just in case</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>        }</TD></TR><TR><TD CLASS="l">61</TD><TD>        </TD></TR><TR><TD CLASS="l">62</TD><TD>        private IWorkbenchSiteProgressService getActiveProgressService() {</TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>                IWorkbenchSiteProgressService service = null;</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                if (PlatformUI.isWorkbenchRunning()) {</TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>                        IWorkbenchWindow activeWorkbenchWindow = PlatformUI.getWorkbench().getActiveWorkbenchWindow();</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                        if (activeWorkbenchWindow != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>                                IWorkbenchPage activePage = activeWorkbenchWindow.getActivePage();</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>                                if (activePage != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                                        IWorkbenchPart activePart = activePage.getActivePart();</TD></TR><TR CLASS="z"><TD CLASS="l">70</TD><TD>                                        if (activePart != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>                                                service = (IWorkbenchSiteProgressService) activePart.getSite().getAdapter(IWorkbenchSiteProgressService.class);</TD></TR><TR><TD CLASS="l">72</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">73</TD><TD>                                }</TD></TR><TR><TD CLASS="l">74</TD><TD>                        }</TD></TR><TR><TD CLASS="l">75</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>                return service;</TD></TR><TR><TD CLASS="l">77</TD><TD>        }</TD></TR><TR><TD CLASS="l">78</TD><TD>        </TD></TR><TR><TD CLASS="l">79</TD><TD>        </TD></TR><TR><TD CLASS="l"><A NAME="3">80</A></TD><TD>        </TD></TR><TR><TD CLASS="l">81</TD><TD> </TD></TR><TR><TD CLASS="l">82</TD><TD>        public Object execute(ExecutionEvent event) throws ExecutionException {</TD></TR><TR><TD CLASS="l">83</TD><TD>                </TD></TR><TR CLASS="z"><TD CLASS="l">84</TD><TD>            ISelection selection = HandlerUtil.getActiveWorkbenchWindow(event).getSelectionService().getSelection();</TD></TR><TR><TD CLASS="l">85</TD><TD>                </TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                if (selection instanceof IStructuredSelection) {</TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>                        fSelection = (IStructuredSelection) selection;</TD></TR><TR CLASS="z"><TD CLASS="l">88</TD><TD>                        boolean available = false;</TD></TR><TR><TD CLASS="l">89</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">90</TD><TD>                        Object[] elements = fSelection.toArray();</TD></TR><TR CLASS="z"><TD CLASS="l">91</TD><TD>                        for (int i = 0; i &lt; elements.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">92</TD><TD>                                if (elements[i] instanceof IResource) {</TD></TR><TR CLASS="z"><TD CLASS="l">93</TD><TD>                                        available = processorAvailable((IResource) elements[i]);</TD></TR><TR><TD CLASS="l">94</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">95</TD><TD>                                        if (available)</TD></TR><TR CLASS="z"><TD CLASS="l">96</TD><TD>                                                break;</TD></TR><TR><TD CLASS="l">97</TD><TD>                                }</TD></TR><TR><TD CLASS="l">98</TD><TD>                        }</TD></TR><TR><TD CLASS="l">99</TD><TD>                }</TD></TR><TR><TD CLASS="l">100</TD><TD>                </TD></TR><TR CLASS="z"><TD CLASS="l">101</TD><TD>                if (fSelection != null &amp;&amp; !fSelection.isEmpty()) {</TD></TR><TR CLASS="z"><TD CLASS="l">102</TD><TD>                        Job job = getJob();</TD></TR><TR CLASS="z"><TD CLASS="l">103</TD><TD>                        if (job != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">104</TD><TD>                                IWorkbenchSiteProgressService progressService = getActiveProgressService();</TD></TR><TR CLASS="z"><TD CLASS="l">105</TD><TD>                                if (progressService != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">106</TD><TD>                                        progressService.schedule(job);</TD></TR><TR><TD CLASS="l">107</TD><TD>                                }</TD></TR><TR><TD CLASS="l">108</TD><TD>                                else {</TD></TR><TR CLASS="z"><TD CLASS="l">109</TD><TD>                                        job.schedule();</TD></TR><TR><TD CLASS="l">110</TD><TD>                                }</TD></TR><TR><TD CLASS="l">111</TD><TD>                        }</TD></TR><TR><TD CLASS="l">112</TD><TD>                }</TD></TR><TR><TD CLASS="l">113</TD><TD>        </TD></TR><TR CLASS="z"><TD CLASS="l">114</TD><TD>                return null;</TD></TR><TR><TD CLASS="l">115</TD><TD>        }</TD></TR><TR><TD CLASS="l">116</TD><TD>        </TD></TR><TR><TD CLASS="l"><A NAME="f">117</A></TD><TD>        </TD></TR><TR><TD CLASS="l">118</TD><TD>        class FormatJob extends Job {</TD></TR><TR><TD CLASS="l">119</TD><TD> </TD></TR><TR><TD CLASS="l">120</TD><TD>                public FormatJob(String name) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="11">121</A></TD><TD>                        super(name);</TD></TR><TR CLASS="z"><TD CLASS="l">122</TD><TD>                }</TD></TR><TR><TD CLASS="l">123</TD><TD> </TD></TR><TR><TD CLASS="l">124</TD><TD>                protected IStatus run(IProgressMonitor monitor) {</TD></TR><TR CLASS="z"><TD CLASS="l">125</TD><TD>                        IStatus status = Status.OK_STATUS;</TD></TR><TR><TD CLASS="l">126</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">127</TD><TD>                        Object[] elements = fSelection.toArray();</TD></TR><TR CLASS="z"><TD CLASS="l">128</TD><TD>                        monitor.beginTask(&#34;&#34;, elements.length); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">129</TD><TD>                        for (int i = 0; i &lt; elements.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">130</TD><TD>                                if (elements[i] instanceof IResource) {</TD></TR><TR CLASS="z"><TD CLASS="l">131</TD><TD>                                        process(new SubProgressMonitor(monitor, 1), (IResource) elements[i]);</TD></TR><TR><TD CLASS="l">132</TD><TD>                                }</TD></TR><TR><TD CLASS="l">133</TD><TD>                                else {</TD></TR><TR CLASS="z"><TD CLASS="l">134</TD><TD>                                        monitor.worked(1);</TD></TR><TR><TD CLASS="l">135</TD><TD>                                }</TD></TR><TR><TD CLASS="l">136</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">137</TD><TD>                        monitor.done();</TD></TR><TR><TD CLASS="l">138</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">139</TD><TD>                        if (fErrorStatus.getChildren().length &gt; 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">140</TD><TD>                                status = fErrorStatus;</TD></TR><TR CLASS="z"><TD CLASS="l">141</TD><TD>                                fErrorStatus = new MultiStatus(SSEUIPlugin.ID, IStatus.ERROR, SSEUIMessages.FormatActionDelegate_errorStatusMessage, null); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">142</TD><TD>                        }</TD></TR><TR><TD CLASS="l">143</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">144</TD><TD>                        return status;</TD></TR><TR><TD CLASS="l">145</TD><TD>                }</TD></TR><TR><TD CLASS="l">146</TD><TD> </TD></TR><TR><TD CLASS="l">147</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="4">148</A></TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">149</TD><TD>        private MultiStatus fErrorStatus = new MultiStatus(SSEUIPlugin.ID, IStatus.ERROR, SSEUIMessages.FormatActionDelegate_errorStatusMessage, null); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">150</TD><TD> </TD></TR><TR><TD CLASS="l">151</TD><TD>        protected void format(IProgressMonitor monitor, IFile file) {</TD></TR><TR CLASS="z"><TD CLASS="l">152</TD><TD>                if(monitor == null || monitor.isCanceled())</TD></TR><TR CLASS="z"><TD CLASS="l">153</TD><TD>                        return;</TD></TR><TR><TD CLASS="l">154</TD><TD>                </TD></TR><TR><TD CLASS="l">155</TD><TD>                try {</TD></TR><TR CLASS="z"><TD CLASS="l">156</TD><TD>                        monitor.beginTask(&#34;&#34;, 100);</TD></TR><TR CLASS="z"><TD CLASS="l">157</TD><TD>                        IContentDescription contentDescription = file.getContentDescription();</TD></TR><TR CLASS="z"><TD CLASS="l">158</TD><TD>                        monitor.worked(5);</TD></TR><TR CLASS="z"><TD CLASS="l">159</TD><TD>                        if (contentDescription != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">160</TD><TD>                                IContentType contentType = contentDescription.getContentType();</TD></TR><TR CLASS="z"><TD CLASS="l">161</TD><TD>                                IStructuredFormatProcessor formatProcessor = getFormatProcessor(contentType.getId());</TD></TR><TR CLASS="z"><TD CLASS="l">162</TD><TD>                                if (formatProcessor != null &amp;&amp; (monitor == null || !monitor.isCanceled())) {</TD></TR><TR CLASS="z"><TD CLASS="l">163</TD><TD>                                        String message = NLS.bind(SSEUIMessages.FormatActionDelegate_3, new String[]{file.getFullPath().toString().substring(1)});                                        monitor.subTask(message);</TD></TR><TR CLASS="z"><TD CLASS="l">164</TD><TD>                                        formatProcessor.setProgressMonitor(new SubProgressMonitor(monitor, 95));</TD></TR><TR CLASS="z"><TD CLASS="l">165</TD><TD>                                        formatProcessor.formatFile(file);</TD></TR><TR><TD CLASS="l">166</TD><TD>                                }</TD></TR><TR><TD CLASS="l">167</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">168</TD><TD>                        monitor.done();</TD></TR><TR CLASS="z"><TD CLASS="l">169</TD><TD>                } catch (MalformedInputExceptionWithDetail e) {</TD></TR><TR CLASS="z"><TD CLASS="l">170</TD><TD>                        String message = NLS.bind(SSEUIMessages.FormatActionDelegate_5, new String[]{file.getFullPath().toString()});</TD></TR><TR CLASS="z"><TD CLASS="l">171</TD><TD>                        fErrorStatus.add(new Status(IStatus.ERROR, SSEUIPlugin.ID, IStatus.ERROR, message, e));</TD></TR><TR CLASS="z"><TD CLASS="l">172</TD><TD>                } catch (IOException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">173</TD><TD>                        String message = NLS.bind(SSEUIMessages.FormatActionDelegate_4, new String[]{file.getFullPath().toString()});</TD></TR><TR CLASS="z"><TD CLASS="l">174</TD><TD>                        fErrorStatus.add(new Status(IStatus.ERROR, SSEUIPlugin.ID, IStatus.ERROR, message, e));</TD></TR><TR CLASS="z"><TD CLASS="l">175</TD><TD>                } catch (CoreException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">176</TD><TD>                        String message = NLS.bind(SSEUIMessages.FormatActionDelegate_4, new String[]{file.getFullPath().toString()});</TD></TR><TR CLASS="z"><TD CLASS="l">177</TD><TD>                        fErrorStatus.add(new Status(IStatus.ERROR, SSEUIPlugin.ID, IStatus.ERROR, message, e));</TD></TR><TR><TD CLASS="l"><A NAME="5">178</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">179</TD><TD>        }</TD></TR><TR><TD CLASS="l">180</TD><TD> </TD></TR><TR><TD CLASS="l">181</TD><TD>        protected void format(final IProgressMonitor monitor, IResource resource) {</TD></TR><TR CLASS="z"><TD CLASS="l">182</TD><TD>                if (resource instanceof IFile) {</TD></TR><TR CLASS="z"><TD CLASS="l">183</TD><TD>                        final IFile file = (IFile) resource;</TD></TR><TR><TD CLASS="l">184</TD><TD> </TD></TR><TR><TD CLASS="l">185</TD><TD>                        // BUG 178598 - If the resource is shared, and it's possible to</TD></TR><TR><TD CLASS="l">186</TD><TD>                        // get the workbench Display, the UI thread is asked to execute the</TD></TR><TR><TD CLASS="l">187</TD><TD>                        // format of the file when it can</TD></TR><TR CLASS="z"><TD CLASS="l">188</TD><TD>                        monitor.beginTask(&#34;&#34;, 20); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">189</TD><TD>                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">190</TD><TD>                                ITextFileBufferManager manager= FileBuffers.getTextFileBufferManager();</TD></TR><TR CLASS="z"><TD CLASS="l">191</TD><TD>                                ITextFileBuffer buffer = null;</TD></TR><TR><TD CLASS="l">192</TD><TD>                                </TD></TR><TR><TD CLASS="l">193</TD><TD>                                try {</TD></TR><TR CLASS="z"><TD CLASS="l">194</TD><TD>                                        if(manager != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">195</TD><TD>                                                manager.connect(file.getFullPath(), LocationKind.IFILE, new SubProgressMonitor(monitor, 1));</TD></TR><TR CLASS="z"><TD CLASS="l">196</TD><TD>                                                buffer = manager.getTextFileBuffer(resource.getFullPath(), LocationKind.IFILE);</TD></TR><TR><TD CLASS="l">197</TD><TD>                                        }</TD></TR><TR><TD CLASS="l"><A NAME="c">198</A></TD><TD>                                        </TD></TR><TR CLASS="z"><TD CLASS="l">199</TD><TD>                                        if(buffer != null &amp;&amp; buffer.isShared()) {</TD></TR><TR CLASS="z"><TD CLASS="l">200</TD><TD>                                                Display display = getDisplay();</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="e">201</A></TD><TD>                                                if (display != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">202</TD><TD>                                                        display.syncExec(new Runnable() {</TD></TR><TR><TD CLASS="l">203</TD><TD>                                                                public void run() {</TD></TR><TR CLASS="z"><TD CLASS="l">204</TD><TD>                                                                        format(new SubProgressMonitor(monitor, 18), file);</TD></TR><TR CLASS="z"><TD CLASS="l">205</TD><TD>                                                                }</TD></TR><TR><TD CLASS="l">206</TD><TD>                                                        });</TD></TR><TR><TD CLASS="l">207</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">208</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">209</TD><TD>                                        else</TD></TR><TR CLASS="z"><TD CLASS="l">210</TD><TD>                                                format(new SubProgressMonitor(monitor, 18), file);</TD></TR><TR><TD CLASS="l">211</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">212</TD><TD>                                finally {</TD></TR><TR CLASS="z"><TD CLASS="l">213</TD><TD>                                        if(manager != null)</TD></TR><TR CLASS="z"><TD CLASS="l">214</TD><TD>                                                manager.disconnect(file.getFullPath(), LocationKind.IFILE, new SubProgressMonitor(monitor, 1));</TD></TR><TR CLASS="z"><TD CLASS="l">215</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">216</TD><TD>                                monitor.done();</TD></TR><TR><TD CLASS="l">217</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">218</TD><TD>                        catch(CoreException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">219</TD><TD>                                String message = NLS.bind(SSEUIMessages.FormatActionDelegate_4, new String[]{file.getFullPath().toString()});</TD></TR><TR CLASS="z"><TD CLASS="l">220</TD><TD>                                fErrorStatus.add(new Status(IStatus.ERROR, SSEUIPlugin.ID, IStatus.ERROR, message, e));</TD></TR><TR><TD CLASS="l">221</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">222</TD><TD>                        finally {</TD></TR><TR CLASS="z"><TD CLASS="l">223</TD><TD>                                if(monitor != null)</TD></TR><TR CLASS="z"><TD CLASS="l">224</TD><TD>                                        monitor.done();</TD></TR><TR CLASS="z"><TD CLASS="l">225</TD><TD>                        }</TD></TR><TR><TD CLASS="l">226</TD><TD>                        </TD></TR><TR><TD CLASS="l">227</TD><TD>                        </TD></TR><TR CLASS="z"><TD CLASS="l">228</TD><TD>                } else if (resource instanceof IContainer) {</TD></TR><TR CLASS="z"><TD CLASS="l">229</TD><TD>                        IContainer container = (IContainer) resource;</TD></TR><TR><TD CLASS="l">230</TD><TD> </TD></TR><TR><TD CLASS="l">231</TD><TD>                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">232</TD><TD>                                IResource[] members = container.members();</TD></TR><TR CLASS="z"><TD CLASS="l">233</TD><TD>                                monitor.beginTask(&#34;&#34;, members.length); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">234</TD><TD>                                for (int i = 0; i &lt; members.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">235</TD><TD>                                        if (monitor != null &amp;&amp; !monitor.isCanceled())</TD></TR><TR CLASS="z"><TD CLASS="l">236</TD><TD>                                                format(new SubProgressMonitor(monitor, 1), members[i]);</TD></TR><TR><TD CLASS="l">237</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">238</TD><TD>                                monitor.done();</TD></TR><TR CLASS="z"><TD CLASS="l">239</TD><TD>                        } catch (CoreException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">240</TD><TD>                                String message = NLS.bind(SSEUIMessages.FormatActionDelegate_4, new String[]{resource.getFullPath().toString()});</TD></TR><TR CLASS="z"><TD CLASS="l">241</TD><TD>                                fErrorStatus.add(new Status(IStatus.ERROR, SSEUIPlugin.ID, IStatus.ERROR, message, e));</TD></TR><TR><TD CLASS="l">242</TD><TD>                        }</TD></TR><TR><TD CLASS="l">243</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">244</TD><TD>        }</TD></TR><TR><TD CLASS="l">245</TD><TD>        </TD></TR><TR><TD CLASS="l">246</TD><TD>        private Display getDisplay() {</TD></TR><TR><TD CLASS="l">247</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="7">248</A></TD><TD>                // Note: the workbench should always have a display</TD></TR><TR><TD CLASS="l">249</TD><TD>                // (unless running headless), whereas Display.getCurrent()</TD></TR><TR><TD CLASS="l">250</TD><TD>                // only returns the display if the currently executing thread</TD></TR><TR><TD CLASS="l">251</TD><TD>                // has one.</TD></TR><TR CLASS="z"><TD CLASS="l">252</TD><TD>                if (PlatformUI.isWorkbenchRunning())</TD></TR><TR CLASS="z"><TD CLASS="l">253</TD><TD>                        return PlatformUI.getWorkbench().getDisplay();</TD></TR><TR><TD CLASS="l">254</TD><TD>                else</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="8">255</A></TD><TD>                        return null;</TD></TR><TR><TD CLASS="l">256</TD><TD>        }</TD></TR><TR><TD CLASS="l">257</TD><TD> </TD></TR><TR><TD CLASS="l">258</TD><TD>        protected IStructuredFormatProcessor getFormatProcessor(String contentTypeId) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="9">259</A></TD><TD>                return FormatProcessorsExtensionReader.getInstance().getFormatProcessor(contentTypeId);</TD></TR><TR><TD CLASS="l">260</TD><TD>        }</TD></TR><TR><TD CLASS="l">261</TD><TD> </TD></TR><TR><TD CLASS="l">262</TD><TD>        protected Job getJob() {</TD></TR><TR CLASS="z"><TD CLASS="l">263</TD><TD>                return new FormatJob(SSEUIMessages.FormatActionDelegate_jobName); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">264</TD><TD>        }</TD></TR><TR><TD CLASS="l">265</TD><TD> </TD></TR><TR><TD CLASS="l">266</TD><TD>        /*</TD></TR><TR><TD CLASS="l">267</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l">268</TD><TD>         * </TD></TR><TR><TD CLASS="l"><A NAME="a">269</A></TD><TD>         * @see org.eclipse.wst.sse.ui.edit.util.ResourceActionDelegate#process(org.eclipse.core.runtime.IProgressMonitor,</TD></TR><TR><TD CLASS="l">270</TD><TD>         *      org.eclipse.core.resources.IResource)</TD></TR><TR><TD CLASS="l">271</TD><TD>         */</TD></TR><TR><TD CLASS="l">272</TD><TD>        protected void process(IProgressMonitor monitor, IResource resource) {</TD></TR><TR CLASS="z"><TD CLASS="l">273</TD><TD>                monitor.beginTask(&#34;&#34;, 100);</TD></TR><TR CLASS="z"><TD CLASS="l">274</TD><TD>                format(new SubProgressMonitor(monitor, 98), resource);</TD></TR><TR><TD CLASS="l">275</TD><TD> </TD></TR><TR><TD CLASS="l">276</TD><TD>                try {</TD></TR><TR CLASS="z"><TD CLASS="l">277</TD><TD>                        resource.refreshLocal(IResource.DEPTH_INFINITE, new SubProgressMonitor(monitor, 2));</TD></TR><TR CLASS="z"><TD CLASS="l">278</TD><TD>                } catch (CoreException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">279</TD><TD>                        String message = NLS.bind(SSEUIMessages.FormatActionDelegate_4, new String[]{resource.getFullPath().toString()});</TD></TR><TR CLASS="z"><TD CLASS="l">280</TD><TD>                        fErrorStatus.add(new Status(IStatus.ERROR, SSEUIPlugin.ID, IStatus.ERROR, message, e));</TD></TR><TR><TD CLASS="l">281</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">282</TD><TD>                monitor.done();</TD></TR><TR CLASS="z"><TD CLASS="l">283</TD><TD>        }</TD></TR><TR><TD CLASS="l">284</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="b">285</A></TD><TD>        /* (non-Javadoc)</TD></TR><TR><TD CLASS="l">286</TD><TD>         * @see org.eclipse.wst.sse.ui.internal.actions.ResourceActionDelegate#processorAvailable(org.eclipse.core.resources.IResource)</TD></TR><TR><TD CLASS="l">287</TD><TD>         */</TD></TR><TR><TD CLASS="l">288</TD><TD>        protected boolean processorAvailable(IResource resource) {</TD></TR><TR CLASS="z"><TD CLASS="l">289</TD><TD>                boolean result = false;</TD></TR><TR CLASS="z"><TD CLASS="l">290</TD><TD>                if (resource.isAccessible()) {</TD></TR><TR><TD CLASS="l">291</TD><TD>                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">292</TD><TD>                                if (resource instanceof IFile) {</TD></TR><TR CLASS="z"><TD CLASS="l">293</TD><TD>                                        IFile file = (IFile) resource;</TD></TR><TR><TD CLASS="l">294</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">295</TD><TD>                                        IStructuredFormatProcessor formatProcessor = null;</TD></TR><TR CLASS="z"><TD CLASS="l">296</TD><TD>                                        IContentDescription contentDescription = file.getContentDescription();</TD></TR><TR CLASS="z"><TD CLASS="l">297</TD><TD>                                        if (contentDescription != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">298</TD><TD>                                                IContentType contentType = contentDescription.getContentType();</TD></TR><TR CLASS="z"><TD CLASS="l">299</TD><TD>                                                formatProcessor = getFormatProcessor(contentType.getId());</TD></TR><TR><TD CLASS="l">300</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">301</TD><TD>                                        if (formatProcessor != null)</TD></TR><TR CLASS="z"><TD CLASS="l">302</TD><TD>                                                result = true;</TD></TR><TR><TD CLASS="l">303</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">304</TD><TD>                                else if (resource instanceof IContainer) {</TD></TR><TR CLASS="z"><TD CLASS="l">305</TD><TD>                                        IContainer container = (IContainer) resource;</TD></TR><TR><TD CLASS="l">306</TD><TD>                                        IResource[] members;</TD></TR><TR CLASS="z"><TD CLASS="l">307</TD><TD>                                        members = container.members();</TD></TR><TR CLASS="z"><TD CLASS="l">308</TD><TD>                                        for (int i = 0; i &lt; members.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">309</TD><TD>                                                boolean available = processorAvailable(members[i]);</TD></TR><TR><TD CLASS="l">310</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">311</TD><TD>                                                if (available) {</TD></TR><TR CLASS="z"><TD CLASS="l">312</TD><TD>                                                        result = true;</TD></TR><TR CLASS="z"><TD CLASS="l">313</TD><TD>                                                        break;</TD></TR><TR><TD CLASS="l">314</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">315</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">316</TD><TD>                                }</TD></TR><TR><TD CLASS="l">317</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">318</TD><TD>                        catch (CoreException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">319</TD><TD>                                Logger.logException(e);</TD></TR><TR><TD CLASS="l">320</TD><TD>                        }</TD></TR><TR><TD CLASS="l">321</TD><TD>                }</TD></TR><TR><TD CLASS="l">322</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">323</TD><TD>                return result;</TD></TR><TR><TD CLASS="l">324</TD><TD>        }</TD></TR><TR><TD CLASS="l">325</TD><TD>        </TD></TR><TR><TD CLASS="l">326</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="13.html">org.eclipse.wst.sse.ui.internal.handlers</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/124.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/124.html
deleted file mode 100644
index 884332b..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/124.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="13.html">org.eclipse.wst.sse.ui.internal.handlers</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">StructuredSelectHistoryHandler.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>StructuredSelectHistoryHandler.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/86)</TD><TD CLASS="h">0%   (0/19)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">StructuredSelectHistoryHandler</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/86)</TD><TD CLASS="h">0%   (0/19)</TD></TR><TR><TD CLASS="f"><A HREF="#0">StructuredSelectHistoryHandler (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">execute (ExecutionEvent): Object</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/83)</TD><TD CLASS="h">0%   (0/18)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2008 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">11</TD><TD>package org.eclipse.wst.sse.ui.internal.handlers;</TD></TR><TR><TD CLASS="l">12</TD><TD> </TD></TR><TR><TD CLASS="l">13</TD><TD>import org.eclipse.core.commands.AbstractHandler;</TD></TR><TR><TD CLASS="l">14</TD><TD>import org.eclipse.core.commands.ExecutionEvent;</TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.core.commands.ExecutionException;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.jface.text.IRegion;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.ui.IEditorPart;</TD></TR><TR><TD CLASS="l"><A NAME="0">18</A></TD><TD>import org.eclipse.ui.handlers.HandlerUtil;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.ui.texteditor.ITextEditor;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.wst.sse.ui.internal.selection.SelectionHistory;</TD></TR><TR><TD CLASS="l"><A NAME="2">21</A></TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">22</TD><TD>public class StructuredSelectHistoryHandler extends AbstractHandler {</TD></TR><TR><TD CLASS="l">23</TD><TD> </TD></TR><TR><TD CLASS="l">24</TD><TD>        public Object execute(ExecutionEvent event) throws ExecutionException {</TD></TR><TR CLASS="z"><TD CLASS="l">25</TD><TD>                IEditorPart editor = HandlerUtil.getActiveEditor(event);</TD></TR><TR CLASS="z"><TD CLASS="l">26</TD><TD>                SelectionHistory history = (SelectionHistory) editor.getAdapter(SelectionHistory.class);</TD></TR><TR CLASS="z"><TD CLASS="l">27</TD><TD>                if (history != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">28</TD><TD>                        IRegion old = history.getLast();</TD></TR><TR CLASS="z"><TD CLASS="l">29</TD><TD>                        if (old != null) {</TD></TR><TR><TD CLASS="l">30</TD><TD>                                try {</TD></TR><TR CLASS="z"><TD CLASS="l">31</TD><TD>                                        history.ignoreSelectionChanges();</TD></TR><TR><TD CLASS="l">32</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">33</TD><TD>                                        ITextEditor textEditor = null;</TD></TR><TR CLASS="z"><TD CLASS="l">34</TD><TD>                                        if (editor instanceof ITextEditor)</TD></TR><TR CLASS="z"><TD CLASS="l">35</TD><TD>                                                textEditor = (ITextEditor) editor;</TD></TR><TR><TD CLASS="l">36</TD><TD>                                        else {</TD></TR><TR CLASS="z"><TD CLASS="l">37</TD><TD>                                                Object o = editor.getAdapter(ITextEditor.class);</TD></TR><TR CLASS="z"><TD CLASS="l">38</TD><TD>                                                if (o != null)</TD></TR><TR CLASS="z"><TD CLASS="l">39</TD><TD>                                                        textEditor = (ITextEditor) o;</TD></TR><TR><TD CLASS="l">40</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>                                        if (textEditor != null)</TD></TR><TR CLASS="z"><TD CLASS="l">42</TD><TD>                                                textEditor.selectAndReveal(old.getOffset(), old.getLength());</TD></TR><TR><TD CLASS="l">43</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>                                finally {</TD></TR><TR CLASS="z"><TD CLASS="l">45</TD><TD>                                        history.listenToSelectionChanges();</TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>                                }</TD></TR><TR><TD CLASS="l">47</TD><TD>                        }</TD></TR><TR><TD CLASS="l">48</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>                return null;</TD></TR><TR><TD CLASS="l">50</TD><TD>        }</TD></TR><TR><TD CLASS="l">51</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="13.html">org.eclipse.wst.sse.ui.internal.handlers</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/125.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/125.html
deleted file mode 100644
index 8e7f769..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/125.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="14.html">org.eclipse.wst.sse.ui.internal.hyperlink</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">HighlighterHyperlinkPresenter.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>HighlighterHyperlinkPresenter.java</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/24)</TD><TD CLASS="h">0%   (0/763)</TD><TD CLASS="h">0%   (0/205)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">HighlighterHyperlinkPresenter</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/22)</TD><TD CLASS="h">0%   (0/753)</TD><TD CLASS="h">0%   (0/202)</TD></TR><TR><TD CLASS="f"><A HREF="#1">HighlighterHyperlinkPresenter (Color): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#0">HighlighterHyperlinkPresenter (IPreferenceStore): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#3">activateCursor (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/28)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">canShowMultipleHyperlinks (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#5">createColor (IPreferenceStore, String, Display): Color</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/29)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">documentAboutToBeChanged (DocumentEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/25)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#7">documentChanged (DocumentEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/52)</TD><TD CLASS="h">0%   (0/12)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">getMaximumLocation (StyledText, int, int): Point</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/48)</TD><TD CLASS="h">0%   (0/11)</TD></TR><TR><TD CLASS="f"><A HREF="#9">getMinimumLocation (StyledText, int, int): Point</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/55)</TD><TD CLASS="h">0%   (0/13)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">hideHyperlinks (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#b">highlightRegion (IRegion): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/80)</TD><TD CLASS="h">0%   (0/23)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#c">includes (IRegion, IRegion): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/20)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#d">inputDocumentAboutToBeChanged (IDocument, IDocument): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#e">inputDocumentChanged (IDocument, IDocument): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#f">install (ITextViewer): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/41)</TD><TD CLASS="h">0%   (0/11)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#10">paintControl (PaintEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/132)</TD><TD CLASS="h">0%   (0/33)</TD></TR><TR><TD CLASS="f"><A HREF="#11">propertyChange (PropertyChangeEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/41)</TD><TD CLASS="h">0%   (0/9)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#12">repairRepresentation (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/63)</TD><TD CLASS="h">0%   (0/17)</TD></TR><TR><TD CLASS="f"><A HREF="#13">resetCursor (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/22)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#14">setColor (Color): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#15">showHyperlinks (IHyperlink []): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/20)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#16">uninstall (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/48)</TD><TD CLASS="h">0%   (0/15)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#17">HighlighterHyperlinkPresenter$1</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#17">HighlighterHyperlinkPresenter$1 (HighlighterHyperlinkPresenter): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#19">run (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR CLASS="z"><TD CLASS="l">1</TD><TD>package org.eclipse.wst.sse.ui.internal.hyperlink;</TD></TR><TR><TD CLASS="l">2</TD><TD> </TD></TR><TR><TD CLASS="l">3</TD><TD>import org.eclipse.jface.preference.IPreferenceStore;</TD></TR><TR><TD CLASS="l">4</TD><TD>import org.eclipse.jface.preference.PreferenceConverter;</TD></TR><TR><TD CLASS="l">5</TD><TD>import org.eclipse.jface.text.Assert;</TD></TR><TR><TD CLASS="l">6</TD><TD>import org.eclipse.jface.text.BadLocationException;</TD></TR><TR><TD CLASS="l">7</TD><TD>import org.eclipse.jface.text.DocumentEvent;</TD></TR><TR><TD CLASS="l">8</TD><TD>import org.eclipse.jface.text.IDocument;</TD></TR><TR><TD CLASS="l">9</TD><TD>import org.eclipse.jface.text.IDocumentListener;</TD></TR><TR><TD CLASS="l">10</TD><TD>import org.eclipse.jface.text.IRegion;</TD></TR><TR><TD CLASS="l">11</TD><TD>import org.eclipse.jface.text.ITextInputListener;</TD></TR><TR><TD CLASS="l">12</TD><TD>import org.eclipse.jface.text.ITextViewer;</TD></TR><TR><TD CLASS="l">13</TD><TD>import org.eclipse.jface.text.ITextViewerExtension2;</TD></TR><TR><TD CLASS="l">14</TD><TD>import org.eclipse.jface.text.ITextViewerExtension5;</TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.jface.text.Position;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.jface.text.Region;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.jface.text.hyperlink.IHyperlink;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.jface.text.hyperlink.IHyperlinkPresenter;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.jface.util.IPropertyChangeListener;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.jface.util.PropertyChangeEvent;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.swt.SWT;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.swt.custom.StyleRange;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.swt.custom.StyledText;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.swt.events.PaintEvent;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.swt.events.PaintListener;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.swt.graphics.Color;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.swt.graphics.Cursor;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.swt.graphics.GC;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.swt.graphics.Point;</TD></TR><TR><TD CLASS="l">30</TD><TD>import org.eclipse.swt.graphics.RGB;</TD></TR><TR><TD CLASS="l">31</TD><TD>import org.eclipse.swt.graphics.Rectangle;</TD></TR><TR><TD CLASS="l">32</TD><TD>import org.eclipse.swt.widgets.Display;</TD></TR><TR><TD CLASS="l">33</TD><TD> </TD></TR><TR><TD CLASS="l">34</TD><TD> </TD></TR><TR><TD CLASS="l">35</TD><TD>/**</TD></TR><TR><TD CLASS="l">36</TD><TD> * The is almost an exact copy of DefaultHyperlinkPresenter. However this</TD></TR><TR><TD CLASS="l">37</TD><TD> * hyperlink presenter works with the StructuredTextEditor's Highlighter</TD></TR><TR><TD CLASS="l">38</TD><TD> * instead of TextPresentation.</TD></TR><TR><TD CLASS="l">39</TD><TD> * </TD></TR><TR><TD CLASS="l">40</TD><TD> * The main difference is &lt;code&gt;text.redrawRange(offset, length, true);&lt;/code&gt;</TD></TR><TR><TD CLASS="l">41</TD><TD> * is called instead of passing false for clearBackground. Also all mention of</TD></TR><TR><TD CLASS="l">42</TD><TD> * TextPresentation was removed since it does not really apply.</TD></TR><TR><TD CLASS="l">43</TD><TD> * </TD></TR><TR><TD CLASS="l">44</TD><TD> * @see org.eclipse.jface.text.hyperlink.DefaultHyperlinkPresenter</TD></TR><TR><TD CLASS="l">45</TD><TD> */</TD></TR><TR><TD CLASS="l">46</TD><TD>public class HighlighterHyperlinkPresenter implements IHyperlinkPresenter, PaintListener, ITextInputListener, IDocumentListener, IPropertyChangeListener {</TD></TR><TR><TD CLASS="l">47</TD><TD> </TD></TR><TR><TD CLASS="l">48</TD><TD>        /**</TD></TR><TR><TD CLASS="l">49</TD><TD>         * A named preference that holds the color used for hyperlinks.</TD></TR><TR><TD CLASS="l">50</TD><TD>         * &lt;p&gt;</TD></TR><TR><TD CLASS="l">51</TD><TD>         * Value is of type &lt;code&gt;String&lt;/code&gt;. A RGB color value encoded as a</TD></TR><TR><TD CLASS="l">52</TD><TD>         * string using class &lt;code&gt;PreferenceConverter&lt;/code&gt;</TD></TR><TR><TD CLASS="l">53</TD><TD>         * &lt;/p&gt;</TD></TR><TR><TD CLASS="l">54</TD><TD>         * </TD></TR><TR><TD CLASS="l">55</TD><TD>         * @see org.eclipse.jface.resource.StringConverter</TD></TR><TR><TD CLASS="l">56</TD><TD>         * @see org.eclipse.jface.preference.PreferenceConverter</TD></TR><TR><TD CLASS="l">57</TD><TD>         */</TD></TR><TR><TD CLASS="l">58</TD><TD>        public final static String HYPERLINK_COLOR = &#34;hyperlinkColor&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">59</TD><TD> </TD></TR><TR><TD CLASS="l">60</TD><TD> </TD></TR><TR><TD CLASS="l">61</TD><TD>        /** The text viewer. */</TD></TR><TR><TD CLASS="l">62</TD><TD>        private ITextViewer fTextViewer;</TD></TR><TR><TD CLASS="l">63</TD><TD>        /** The hand cursor. */</TD></TR><TR><TD CLASS="l">64</TD><TD>        private Cursor fCursor;</TD></TR><TR><TD CLASS="l">65</TD><TD>        /** The link color. */</TD></TR><TR><TD CLASS="l">66</TD><TD>        private Color fColor;</TD></TR><TR><TD CLASS="l">67</TD><TD>        /** Tells whether to dispose the color on uninstall. */</TD></TR><TR><TD CLASS="l">68</TD><TD>        private boolean fDisposeColor;</TD></TR><TR><TD CLASS="l">69</TD><TD>        /** The currently active region. */</TD></TR><TR><TD CLASS="l">70</TD><TD>        private IRegion fActiveRegion;</TD></TR><TR><TD CLASS="l">71</TD><TD>        /** The currently active style range as position. */</TD></TR><TR><TD CLASS="l">72</TD><TD>        private Position fRememberedPosition;</TD></TR><TR><TD CLASS="l">73</TD><TD>        /** The optional preference store */</TD></TR><TR><TD CLASS="l">74</TD><TD>        private IPreferenceStore fPreferenceStore;</TD></TR><TR><TD CLASS="l">75</TD><TD> </TD></TR><TR><TD CLASS="l">76</TD><TD> </TD></TR><TR><TD CLASS="l">77</TD><TD>        /**</TD></TR><TR><TD CLASS="l">78</TD><TD>         * Creates a new default hyperlink presenter which uses</TD></TR><TR><TD CLASS="l">79</TD><TD>         * {@link #HYPERLINK_COLOR}to read the color from the given preference</TD></TR><TR><TD CLASS="l">80</TD><TD>         * store.</TD></TR><TR><TD CLASS="l"><A NAME="0">81</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">82</TD><TD>         * @param store</TD></TR><TR><TD CLASS="l">83</TD><TD>         *            the preference store</TD></TR><TR><TD CLASS="l">84</TD><TD>         */</TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>        public HighlighterHyperlinkPresenter(IPreferenceStore store) {</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                fPreferenceStore = store;</TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>                fDisposeColor = true;</TD></TR><TR CLASS="z"><TD CLASS="l">88</TD><TD>        }</TD></TR><TR><TD CLASS="l">89</TD><TD> </TD></TR><TR><TD CLASS="l">90</TD><TD>        /**</TD></TR><TR><TD CLASS="l">91</TD><TD>         * Creates a new default hyperlink presenter.</TD></TR><TR><TD CLASS="l"><A NAME="1">92</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">93</TD><TD>         * @param color</TD></TR><TR><TD CLASS="l">94</TD><TD>         *            the hyperlink color, to be disposed by the caller</TD></TR><TR><TD CLASS="l">95</TD><TD>         */</TD></TR><TR CLASS="z"><TD CLASS="l">96</TD><TD>        public HighlighterHyperlinkPresenter(Color color) {</TD></TR><TR CLASS="z"><TD CLASS="l">97</TD><TD>                fDisposeColor = false;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">98</A></TD><TD>                fColor = color;</TD></TR><TR CLASS="z"><TD CLASS="l">99</TD><TD>        }</TD></TR><TR><TD CLASS="l">100</TD><TD> </TD></TR><TR><TD CLASS="l">101</TD><TD>        public boolean canShowMultipleHyperlinks() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="15">102</A></TD><TD>                return false;</TD></TR><TR><TD CLASS="l">103</TD><TD>        }</TD></TR><TR><TD CLASS="l">104</TD><TD> </TD></TR><TR><TD CLASS="l">105</TD><TD>        public void showHyperlinks(IHyperlink[] hyperlinks) {</TD></TR><TR CLASS="z"><TD CLASS="l">106</TD><TD>                Assert.isLegal(hyperlinks != null &amp;&amp; hyperlinks.length == 1);</TD></TR><TR CLASS="z"><TD CLASS="l">107</TD><TD>                highlightRegion(hyperlinks[0].getHyperlinkRegion());</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="a">108</A></TD><TD>                activateCursor();</TD></TR><TR CLASS="z"><TD CLASS="l">109</TD><TD>        }</TD></TR><TR><TD CLASS="l">110</TD><TD> </TD></TR><TR><TD CLASS="l">111</TD><TD>        public void hideHyperlinks() {</TD></TR><TR CLASS="z"><TD CLASS="l">112</TD><TD>                repairRepresentation();</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="f">113</A></TD><TD>                fRememberedPosition = null;</TD></TR><TR CLASS="z"><TD CLASS="l">114</TD><TD>        }</TD></TR><TR><TD CLASS="l">115</TD><TD> </TD></TR><TR><TD CLASS="l">116</TD><TD>        public void install(ITextViewer textViewer) {</TD></TR><TR CLASS="z"><TD CLASS="l">117</TD><TD>                Assert.isNotNull(textViewer);</TD></TR><TR CLASS="z"><TD CLASS="l">118</TD><TD>                fTextViewer = textViewer;</TD></TR><TR CLASS="z"><TD CLASS="l">119</TD><TD>                fTextViewer.addTextInputListener(this);</TD></TR><TR><TD CLASS="l">120</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">121</TD><TD>                StyledText text = fTextViewer.getTextWidget();</TD></TR><TR CLASS="z"><TD CLASS="l">122</TD><TD>                if (text != null &amp;&amp; !text.isDisposed()) {</TD></TR><TR CLASS="z"><TD CLASS="l">123</TD><TD>                        text.addPaintListener(this);</TD></TR><TR CLASS="z"><TD CLASS="l">124</TD><TD>                        if (fPreferenceStore != null)</TD></TR><TR CLASS="z"><TD CLASS="l">125</TD><TD>                                fColor = createColor(fPreferenceStore, HYPERLINK_COLOR, text.getDisplay());</TD></TR><TR><TD CLASS="l">126</TD><TD>                }</TD></TR><TR><TD CLASS="l">127</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">128</TD><TD>                if (fPreferenceStore != null)</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="16">129</A></TD><TD>                        fPreferenceStore.addPropertyChangeListener(this);</TD></TR><TR CLASS="z"><TD CLASS="l">130</TD><TD>        }</TD></TR><TR><TD CLASS="l">131</TD><TD> </TD></TR><TR><TD CLASS="l">132</TD><TD>        public void uninstall() {</TD></TR><TR CLASS="z"><TD CLASS="l">133</TD><TD>                fTextViewer.removeTextInputListener(this);</TD></TR><TR><TD CLASS="l">134</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">135</TD><TD>                if (fColor != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">136</TD><TD>                        if (fDisposeColor)</TD></TR><TR CLASS="z"><TD CLASS="l">137</TD><TD>                                fColor.dispose();</TD></TR><TR CLASS="z"><TD CLASS="l">138</TD><TD>                        fColor = null;</TD></TR><TR><TD CLASS="l">139</TD><TD>                }</TD></TR><TR><TD CLASS="l">140</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">141</TD><TD>                if (fCursor != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">142</TD><TD>                        fCursor.dispose();</TD></TR><TR CLASS="z"><TD CLASS="l">143</TD><TD>                        fCursor = null;</TD></TR><TR><TD CLASS="l">144</TD><TD>                }</TD></TR><TR><TD CLASS="l">145</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">146</TD><TD>                StyledText text = fTextViewer.getTextWidget();</TD></TR><TR CLASS="z"><TD CLASS="l">147</TD><TD>                if (text != null &amp;&amp; !text.isDisposed())</TD></TR><TR CLASS="z"><TD CLASS="l">148</TD><TD>                        text.removePaintListener(this);</TD></TR><TR><TD CLASS="l">149</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">150</TD><TD>                fTextViewer = null;</TD></TR><TR><TD CLASS="l">151</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">152</TD><TD>                if (fPreferenceStore != null)</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="14">153</A></TD><TD>                        fPreferenceStore.removePropertyChangeListener(this);</TD></TR><TR CLASS="z"><TD CLASS="l">154</TD><TD>        }</TD></TR><TR><TD CLASS="l">155</TD><TD> </TD></TR><TR><TD CLASS="l">156</TD><TD>        public void setColor(Color color) {</TD></TR><TR CLASS="z"><TD CLASS="l">157</TD><TD>                Assert.isNotNull(fTextViewer);</TD></TR><TR CLASS="z"><TD CLASS="l">158</TD><TD>                fColor = color;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="b">159</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">160</TD><TD> </TD></TR><TR><TD CLASS="l">161</TD><TD>        private void highlightRegion(IRegion region) {</TD></TR><TR><TD CLASS="l">162</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">163</TD><TD>                if (region.equals(fActiveRegion))</TD></TR><TR CLASS="z"><TD CLASS="l">164</TD><TD>                        return;</TD></TR><TR><TD CLASS="l">165</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">166</TD><TD>                repairRepresentation();</TD></TR><TR><TD CLASS="l">167</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">168</TD><TD>                StyledText text = fTextViewer.getTextWidget();</TD></TR><TR CLASS="z"><TD CLASS="l">169</TD><TD>                if (text == null || text.isDisposed())</TD></TR><TR CLASS="z"><TD CLASS="l">170</TD><TD>                        return;</TD></TR><TR><TD CLASS="l">171</TD><TD> </TD></TR><TR><TD CLASS="l">172</TD><TD> </TD></TR><TR><TD CLASS="l">173</TD><TD>                // Underline</TD></TR><TR CLASS="z"><TD CLASS="l">174</TD><TD>                int offset = 0;</TD></TR><TR CLASS="z"><TD CLASS="l">175</TD><TD>                int length = 0;</TD></TR><TR CLASS="z"><TD CLASS="l">176</TD><TD>                if (fTextViewer instanceof ITextViewerExtension5) {</TD></TR><TR CLASS="z"><TD CLASS="l">177</TD><TD>                        ITextViewerExtension5 extension = (ITextViewerExtension5) fTextViewer;</TD></TR><TR CLASS="z"><TD CLASS="l">178</TD><TD>                        IRegion widgetRange = extension.modelRange2WidgetRange(region);</TD></TR><TR CLASS="z"><TD CLASS="l">179</TD><TD>                        if (widgetRange == null)</TD></TR><TR CLASS="z"><TD CLASS="l">180</TD><TD>                                return;</TD></TR><TR><TD CLASS="l">181</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">182</TD><TD>                        offset = widgetRange.getOffset();</TD></TR><TR CLASS="z"><TD CLASS="l">183</TD><TD>                        length = widgetRange.getLength();</TD></TR><TR><TD CLASS="l">184</TD><TD> </TD></TR><TR><TD CLASS="l">185</TD><TD>                }</TD></TR><TR><TD CLASS="l">186</TD><TD>                else {</TD></TR><TR CLASS="z"><TD CLASS="l">187</TD><TD>                        offset = region.getOffset() - fTextViewer.getVisibleRegion().getOffset();</TD></TR><TR CLASS="z"><TD CLASS="l">188</TD><TD>                        length = region.getLength();</TD></TR><TR><TD CLASS="l">189</TD><TD>                }</TD></TR><TR><TD CLASS="l">190</TD><TD> </TD></TR><TR><TD CLASS="l">191</TD><TD>                // needs to clean background due to StructuredTextEditor's highlighter</TD></TR><TR CLASS="z"><TD CLASS="l">192</TD><TD>                text.redrawRange(offset, length, true);</TD></TR><TR><TD CLASS="l">193</TD><TD> </TD></TR><TR><TD CLASS="l">194</TD><TD>                // Invalidate region ==&gt; apply text presentation</TD></TR><TR CLASS="z"><TD CLASS="l">195</TD><TD>                fActiveRegion = region;</TD></TR><TR><TD CLASS="l">196</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">197</TD><TD>                if (fTextViewer instanceof ITextViewerExtension2)</TD></TR><TR CLASS="z"><TD CLASS="l">198</TD><TD>                        ((ITextViewerExtension2) fTextViewer).invalidateTextPresentation(region.getOffset(), region.getLength());</TD></TR><TR><TD CLASS="l">199</TD><TD>                else</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">200</A></TD><TD>                        fTextViewer.invalidateTextPresentation();</TD></TR><TR CLASS="z"><TD CLASS="l">201</TD><TD>        }</TD></TR><TR><TD CLASS="l">202</TD><TD> </TD></TR><TR><TD CLASS="l">203</TD><TD>        private void activateCursor() {</TD></TR><TR CLASS="z"><TD CLASS="l">204</TD><TD>                StyledText text = fTextViewer.getTextWidget();</TD></TR><TR CLASS="z"><TD CLASS="l">205</TD><TD>                if (text == null || text.isDisposed())</TD></TR><TR CLASS="z"><TD CLASS="l">206</TD><TD>                        return;</TD></TR><TR CLASS="z"><TD CLASS="l">207</TD><TD>                Display display = text.getDisplay();</TD></TR><TR CLASS="z"><TD CLASS="l">208</TD><TD>                if (fCursor == null)</TD></TR><TR CLASS="z"><TD CLASS="l">209</TD><TD>                        fCursor = new Cursor(display, SWT.CURSOR_HAND);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="13">210</A></TD><TD>                text.setCursor(fCursor);</TD></TR><TR CLASS="z"><TD CLASS="l">211</TD><TD>        }</TD></TR><TR><TD CLASS="l">212</TD><TD> </TD></TR><TR><TD CLASS="l">213</TD><TD>        private void resetCursor() {</TD></TR><TR CLASS="z"><TD CLASS="l">214</TD><TD>                StyledText text = fTextViewer.getTextWidget();</TD></TR><TR CLASS="z"><TD CLASS="l">215</TD><TD>                if (text != null &amp;&amp; !text.isDisposed())</TD></TR><TR CLASS="z"><TD CLASS="l">216</TD><TD>                        text.setCursor(null);</TD></TR><TR><TD CLASS="l">217</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">218</TD><TD>                if (fCursor != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">219</TD><TD>                        fCursor.dispose();</TD></TR><TR CLASS="z"><TD CLASS="l">220</TD><TD>                        fCursor = null;</TD></TR><TR><TD CLASS="l">221</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="12">222</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">223</TD><TD> </TD></TR><TR><TD CLASS="l">224</TD><TD>        private void repairRepresentation() {</TD></TR><TR><TD CLASS="l">225</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">226</TD><TD>                if (fActiveRegion == null)</TD></TR><TR CLASS="z"><TD CLASS="l">227</TD><TD>                        return;</TD></TR><TR><TD CLASS="l">228</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">229</TD><TD>                int offset = fActiveRegion.getOffset();</TD></TR><TR CLASS="z"><TD CLASS="l">230</TD><TD>                int length = fActiveRegion.getLength();</TD></TR><TR CLASS="z"><TD CLASS="l">231</TD><TD>                fActiveRegion = null;</TD></TR><TR><TD CLASS="l">232</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">233</TD><TD>                resetCursor();</TD></TR><TR><TD CLASS="l">234</TD><TD> </TD></TR><TR><TD CLASS="l">235</TD><TD>                // Invalidate ==&gt; remove applied text presentation</TD></TR><TR CLASS="z"><TD CLASS="l">236</TD><TD>                if (fTextViewer instanceof ITextViewerExtension2)</TD></TR><TR CLASS="z"><TD CLASS="l">237</TD><TD>                        ((ITextViewerExtension2) fTextViewer).invalidateTextPresentation(offset, length);</TD></TR><TR><TD CLASS="l">238</TD><TD>                else</TD></TR><TR CLASS="z"><TD CLASS="l">239</TD><TD>                        fTextViewer.invalidateTextPresentation();</TD></TR><TR><TD CLASS="l">240</TD><TD> </TD></TR><TR><TD CLASS="l">241</TD><TD>                // Remove underline</TD></TR><TR CLASS="z"><TD CLASS="l">242</TD><TD>                if (fTextViewer instanceof ITextViewerExtension5) {</TD></TR><TR CLASS="z"><TD CLASS="l">243</TD><TD>                        ITextViewerExtension5 extension = (ITextViewerExtension5) fTextViewer;</TD></TR><TR CLASS="z"><TD CLASS="l">244</TD><TD>                        offset = extension.modelOffset2WidgetOffset(offset);</TD></TR><TR><TD CLASS="l">245</TD><TD>                }</TD></TR><TR><TD CLASS="l">246</TD><TD>                else {</TD></TR><TR CLASS="z"><TD CLASS="l">247</TD><TD>                        offset -= fTextViewer.getVisibleRegion().getOffset();</TD></TR><TR><TD CLASS="l">248</TD><TD>                }</TD></TR><TR><TD CLASS="l">249</TD><TD>                try {</TD></TR><TR CLASS="z"><TD CLASS="l">250</TD><TD>                        StyledText text = fTextViewer.getTextWidget();</TD></TR><TR><TD CLASS="l">251</TD><TD> </TD></TR><TR><TD CLASS="l">252</TD><TD>                        // needs to clean background due to StructuredTextEditor's</TD></TR><TR><TD CLASS="l">253</TD><TD>                        // highlighter</TD></TR><TR CLASS="z"><TD CLASS="l">254</TD><TD>                        text.redrawRange(offset, length, true);</TD></TR><TR><TD CLASS="l">255</TD><TD> </TD></TR><TR><TD CLASS="l">256</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">257</TD><TD>                catch (IllegalArgumentException x) {</TD></TR><TR><TD CLASS="l">258</TD><TD>                        // ignore - do not log</TD></TR><TR><TD CLASS="l">259</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">260</TD><TD>        }</TD></TR><TR><TD CLASS="l">261</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="10">262</A></TD><TD>        /*</TD></TR><TR><TD CLASS="l">263</TD><TD>         * @see PaintListener#paintControl(PaintEvent)</TD></TR><TR><TD CLASS="l">264</TD><TD>         */</TD></TR><TR><TD CLASS="l">265</TD><TD>        public void paintControl(PaintEvent event) {</TD></TR><TR CLASS="z"><TD CLASS="l">266</TD><TD>                if (fActiveRegion == null)</TD></TR><TR CLASS="z"><TD CLASS="l">267</TD><TD>                        return;</TD></TR><TR><TD CLASS="l">268</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">269</TD><TD>                StyledText text = fTextViewer.getTextWidget();</TD></TR><TR CLASS="z"><TD CLASS="l">270</TD><TD>                if (text == null || text.isDisposed())</TD></TR><TR CLASS="z"><TD CLASS="l">271</TD><TD>                        return;</TD></TR><TR><TD CLASS="l">272</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">273</TD><TD>                int offset = 0;</TD></TR><TR CLASS="z"><TD CLASS="l">274</TD><TD>                int length = 0;</TD></TR><TR><TD CLASS="l">275</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">276</TD><TD>                if (fTextViewer instanceof ITextViewerExtension5) {</TD></TR><TR><TD CLASS="l">277</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">278</TD><TD>                        ITextViewerExtension5 extension = (ITextViewerExtension5) fTextViewer;</TD></TR><TR CLASS="z"><TD CLASS="l">279</TD><TD>                        IRegion widgetRange = extension.modelRange2WidgetRange(fActiveRegion);</TD></TR><TR CLASS="z"><TD CLASS="l">280</TD><TD>                        if (widgetRange == null)</TD></TR><TR CLASS="z"><TD CLASS="l">281</TD><TD>                                return;</TD></TR><TR><TD CLASS="l">282</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">283</TD><TD>                        offset = widgetRange.getOffset();</TD></TR><TR CLASS="z"><TD CLASS="l">284</TD><TD>                        length = widgetRange.getLength();</TD></TR><TR><TD CLASS="l">285</TD><TD> </TD></TR><TR><TD CLASS="l">286</TD><TD>                }</TD></TR><TR><TD CLASS="l">287</TD><TD>                else {</TD></TR><TR><TD CLASS="l">288</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">289</TD><TD>                        IRegion region = fTextViewer.getVisibleRegion();</TD></TR><TR CLASS="z"><TD CLASS="l">290</TD><TD>                        if (!includes(region, fActiveRegion))</TD></TR><TR CLASS="z"><TD CLASS="l">291</TD><TD>                                return;</TD></TR><TR><TD CLASS="l">292</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">293</TD><TD>                        offset = fActiveRegion.getOffset() - region.getOffset();</TD></TR><TR CLASS="z"><TD CLASS="l">294</TD><TD>                        length = fActiveRegion.getLength();</TD></TR><TR><TD CLASS="l">295</TD><TD>                }</TD></TR><TR><TD CLASS="l">296</TD><TD> </TD></TR><TR><TD CLASS="l">297</TD><TD>                // support for BIDI</TD></TR><TR CLASS="z"><TD CLASS="l">298</TD><TD>                Point minLocation = getMinimumLocation(text, offset, length);</TD></TR><TR CLASS="z"><TD CLASS="l">299</TD><TD>                Point maxLocation = getMaximumLocation(text, offset, length);</TD></TR><TR><TD CLASS="l">300</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">301</TD><TD>                int x1 = minLocation.x;</TD></TR><TR CLASS="z"><TD CLASS="l">302</TD><TD>                int x2 = maxLocation.x - 1;</TD></TR><TR CLASS="z"><TD CLASS="l">303</TD><TD>                int y = minLocation.y + text.getLineHeight() - 1;</TD></TR><TR><TD CLASS="l">304</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">305</TD><TD>                GC gc = event.gc;</TD></TR><TR CLASS="z"><TD CLASS="l">306</TD><TD>                if (fColor != null &amp;&amp; !fColor.isDisposed())</TD></TR><TR CLASS="z"><TD CLASS="l">307</TD><TD>                        gc.setForeground(fColor);</TD></TR><TR CLASS="z"><TD CLASS="l">308</TD><TD>                else if (fColor == null &amp;&amp; !(offset &lt; 0 &amp;&amp; offset &gt;= text.getCharCount())) {</TD></TR><TR CLASS="z"><TD CLASS="l">309</TD><TD>                        StyleRange style = text.getStyleRangeAtOffset(offset);</TD></TR><TR CLASS="z"><TD CLASS="l">310</TD><TD>                        if (style != null)</TD></TR><TR CLASS="z"><TD CLASS="l">311</TD><TD>                                gc.setForeground(style.foreground);</TD></TR><TR><TD CLASS="l">312</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="9">313</A></TD><TD>                gc.drawLine(x1, y, x2, y);</TD></TR><TR CLASS="z"><TD CLASS="l">314</TD><TD>        }</TD></TR><TR><TD CLASS="l">315</TD><TD> </TD></TR><TR><TD CLASS="l">316</TD><TD>        private Point getMinimumLocation(StyledText text, int offset, int length) {</TD></TR><TR CLASS="z"><TD CLASS="l">317</TD><TD>                int max = text.getCharCount();</TD></TR><TR CLASS="z"><TD CLASS="l">318</TD><TD>                Rectangle bounds = text.getBounds();</TD></TR><TR CLASS="z"><TD CLASS="l">319</TD><TD>                Point minLocation = new Point(bounds.width, bounds.height);</TD></TR><TR CLASS="z"><TD CLASS="l">320</TD><TD>                for (int i = 0; i &lt;= length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">321</TD><TD>                        int k = offset + i;</TD></TR><TR CLASS="z"><TD CLASS="l">322</TD><TD>                        if (k &lt; 0 || k &gt; max)</TD></TR><TR CLASS="z"><TD CLASS="l">323</TD><TD>                                break;</TD></TR><TR><TD CLASS="l">324</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">325</TD><TD>                        Point location = text.getLocationAtOffset(k);</TD></TR><TR CLASS="z"><TD CLASS="l">326</TD><TD>                        if (location.x &lt; minLocation.x)</TD></TR><TR CLASS="z"><TD CLASS="l">327</TD><TD>                                minLocation.x = location.x;</TD></TR><TR CLASS="z"><TD CLASS="l">328</TD><TD>                        if (location.y &lt; minLocation.y)</TD></TR><TR CLASS="z"><TD CLASS="l">329</TD><TD>                                minLocation.y = location.y;</TD></TR><TR><TD CLASS="l">330</TD><TD>                }</TD></TR><TR><TD CLASS="l">331</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="8">332</A></TD><TD>                return minLocation;</TD></TR><TR><TD CLASS="l">333</TD><TD>        }</TD></TR><TR><TD CLASS="l">334</TD><TD> </TD></TR><TR><TD CLASS="l">335</TD><TD>        private Point getMaximumLocation(StyledText text, int offset, int length) {</TD></TR><TR CLASS="z"><TD CLASS="l">336</TD><TD>                Point maxLocation = new Point(0, 0);</TD></TR><TR><TD CLASS="l">337</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">338</TD><TD>                for (int i = 0; i &lt;= length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">339</TD><TD>                        int k = offset + i;</TD></TR><TR CLASS="z"><TD CLASS="l">340</TD><TD>                        if (k &lt; 0 || k &gt; text.getCharCount())</TD></TR><TR CLASS="z"><TD CLASS="l">341</TD><TD>                                break;</TD></TR><TR><TD CLASS="l">342</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">343</TD><TD>                        Point location = text.getLocationAtOffset(k);</TD></TR><TR CLASS="z"><TD CLASS="l">344</TD><TD>                        if (location.x &gt; maxLocation.x)</TD></TR><TR CLASS="z"><TD CLASS="l">345</TD><TD>                                maxLocation.x = location.x;</TD></TR><TR CLASS="z"><TD CLASS="l">346</TD><TD>                        if (location.y &gt; maxLocation.y)</TD></TR><TR CLASS="z"><TD CLASS="l">347</TD><TD>                                maxLocation.y = location.y;</TD></TR><TR><TD CLASS="l">348</TD><TD>                }</TD></TR><TR><TD CLASS="l">349</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="c">350</A></TD><TD>                return maxLocation;</TD></TR><TR><TD CLASS="l">351</TD><TD>        }</TD></TR><TR><TD CLASS="l">352</TD><TD> </TD></TR><TR><TD CLASS="l">353</TD><TD>        private boolean includes(IRegion region, IRegion position) {</TD></TR><TR CLASS="z"><TD CLASS="l">354</TD><TD>                return position.getOffset() &gt;= region.getOffset() &amp;&amp; position.getOffset() + position.getLength() &lt;= region.getOffset() + region.getLength();</TD></TR><TR><TD CLASS="l">355</TD><TD>        }</TD></TR><TR><TD CLASS="l">356</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="6">357</A></TD><TD>        /*</TD></TR><TR><TD CLASS="l">358</TD><TD>         * @see org.eclipse.jface.text.IDocumentListener#documentAboutToBeChanged(org.eclipse.jface.text.DocumentEvent)</TD></TR><TR><TD CLASS="l">359</TD><TD>         */</TD></TR><TR><TD CLASS="l">360</TD><TD>        public void documentAboutToBeChanged(DocumentEvent event) {</TD></TR><TR CLASS="z"><TD CLASS="l">361</TD><TD>                if (fActiveRegion != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">362</TD><TD>                        fRememberedPosition = new Position(fActiveRegion.getOffset(), fActiveRegion.getLength());</TD></TR><TR><TD CLASS="l">363</TD><TD>                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">364</TD><TD>                                event.getDocument().addPosition(fRememberedPosition);</TD></TR><TR><TD CLASS="l">365</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">366</TD><TD>                        catch (BadLocationException x) {</TD></TR><TR CLASS="z"><TD CLASS="l">367</TD><TD>                                fRememberedPosition = null;</TD></TR><TR><TD CLASS="l">368</TD><TD>                        }</TD></TR><TR><TD CLASS="l">369</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">370</TD><TD>        }</TD></TR><TR><TD CLASS="l">371</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="7">372</A></TD><TD>        /*</TD></TR><TR><TD CLASS="l">373</TD><TD>         * @see org.eclipse.jface.text.IDocumentListener#documentChanged(org.eclipse.jface.text.DocumentEvent)</TD></TR><TR><TD CLASS="l">374</TD><TD>         */</TD></TR><TR><TD CLASS="l">375</TD><TD>        public void documentChanged(DocumentEvent event) {</TD></TR><TR CLASS="z"><TD CLASS="l">376</TD><TD>                if (fRememberedPosition != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">377</TD><TD>                        if (!fRememberedPosition.isDeleted()) {</TD></TR><TR><TD CLASS="l">378</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">379</TD><TD>                                event.getDocument().removePosition(fRememberedPosition);</TD></TR><TR CLASS="z"><TD CLASS="l">380</TD><TD>                                fActiveRegion = new Region(fRememberedPosition.getOffset(), fRememberedPosition.getLength());</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="17">381</A></TD><TD>                                fRememberedPosition = null;</TD></TR><TR><TD CLASS="l">382</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">383</TD><TD>                                StyledText widget = fTextViewer.getTextWidget();</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="19">384</A></TD><TD>                                if (widget != null &amp;&amp; !widget.isDisposed()) {</TD></TR><TR CLASS="z"><TD CLASS="l">385</TD><TD>                                        widget.getDisplay().asyncExec(new Runnable() {</TD></TR><TR><TD CLASS="l">386</TD><TD>                                                public void run() {</TD></TR><TR CLASS="z"><TD CLASS="l">387</TD><TD>                                                        hideHyperlinks();</TD></TR><TR CLASS="z"><TD CLASS="l">388</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">389</TD><TD>                                        });</TD></TR><TR><TD CLASS="l">390</TD><TD>                                }</TD></TR><TR><TD CLASS="l">391</TD><TD> </TD></TR><TR><TD CLASS="l">392</TD><TD>                        }</TD></TR><TR><TD CLASS="l">393</TD><TD>                        else {</TD></TR><TR CLASS="z"><TD CLASS="l">394</TD><TD>                                fActiveRegion = null;</TD></TR><TR CLASS="z"><TD CLASS="l">395</TD><TD>                                fRememberedPosition = null;</TD></TR><TR CLASS="z"><TD CLASS="l">396</TD><TD>                                hideHyperlinks();</TD></TR><TR><TD CLASS="l">397</TD><TD>                        }</TD></TR><TR><TD CLASS="l">398</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">399</TD><TD>        }</TD></TR><TR><TD CLASS="l">400</TD><TD> </TD></TR><TR><TD CLASS="l">401</TD><TD>        /*</TD></TR><TR><TD CLASS="l"><A NAME="d">402</A></TD><TD>         * @see org.eclipse.jface.text.ITextInputListener#inputDocumentAboutToBeChanged(org.eclipse.jface.text.IDocument,</TD></TR><TR><TD CLASS="l">403</TD><TD>         *      org.eclipse.jface.text.IDocument)</TD></TR><TR><TD CLASS="l">404</TD><TD>         */</TD></TR><TR><TD CLASS="l">405</TD><TD>        public void inputDocumentAboutToBeChanged(IDocument oldInput, IDocument newInput) {</TD></TR><TR CLASS="z"><TD CLASS="l">406</TD><TD>                if (oldInput == null)</TD></TR><TR CLASS="z"><TD CLASS="l">407</TD><TD>                        return;</TD></TR><TR CLASS="z"><TD CLASS="l">408</TD><TD>                hideHyperlinks();</TD></TR><TR CLASS="z"><TD CLASS="l">409</TD><TD>                oldInput.removeDocumentListener(this);</TD></TR><TR CLASS="z"><TD CLASS="l">410</TD><TD>        }</TD></TR><TR><TD CLASS="l">411</TD><TD> </TD></TR><TR><TD CLASS="l">412</TD><TD>        /*</TD></TR><TR><TD CLASS="l"><A NAME="e">413</A></TD><TD>         * @see org.eclipse.jface.text.ITextInputListener#inputDocumentChanged(org.eclipse.jface.text.IDocument,</TD></TR><TR><TD CLASS="l">414</TD><TD>         *      org.eclipse.jface.text.IDocument)</TD></TR><TR><TD CLASS="l">415</TD><TD>         */</TD></TR><TR><TD CLASS="l">416</TD><TD>        public void inputDocumentChanged(IDocument oldInput, IDocument newInput) {</TD></TR><TR CLASS="z"><TD CLASS="l">417</TD><TD>                if (newInput == null)</TD></TR><TR CLASS="z"><TD CLASS="l">418</TD><TD>                        return;</TD></TR><TR CLASS="z"><TD CLASS="l">419</TD><TD>                newInput.addDocumentListener(this);</TD></TR><TR CLASS="z"><TD CLASS="l">420</TD><TD>        }</TD></TR><TR><TD CLASS="l">421</TD><TD> </TD></TR><TR><TD CLASS="l">422</TD><TD>        /**</TD></TR><TR><TD CLASS="l">423</TD><TD>         * Creates a color from the information stored in the given preference</TD></TR><TR><TD CLASS="l">424</TD><TD>         * store.</TD></TR><TR><TD CLASS="l">425</TD><TD>         * </TD></TR><TR><TD CLASS="l">426</TD><TD>         * @param store</TD></TR><TR><TD CLASS="l">427</TD><TD>         *            the preference store</TD></TR><TR><TD CLASS="l">428</TD><TD>         * @param key</TD></TR><TR><TD CLASS="l">429</TD><TD>         *            the key</TD></TR><TR><TD CLASS="l">430</TD><TD>         * @param display</TD></TR><TR><TD CLASS="l">431</TD><TD>         *            the display</TD></TR><TR><TD CLASS="l">432</TD><TD>         * @return the color or &lt;code&gt;null&lt;/code&gt; if there is no such</TD></TR><TR><TD CLASS="l"><A NAME="5">433</A></TD><TD>         *         information available</TD></TR><TR><TD CLASS="l">434</TD><TD>         */</TD></TR><TR><TD CLASS="l">435</TD><TD>        private Color createColor(IPreferenceStore store, String key, Display display) {</TD></TR><TR><TD CLASS="l">436</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">437</TD><TD>                RGB rgb = null;</TD></TR><TR><TD CLASS="l">438</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">439</TD><TD>                if (store.contains(key)) {</TD></TR><TR><TD CLASS="l">440</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">441</TD><TD>                        if (store.isDefault(key))</TD></TR><TR CLASS="z"><TD CLASS="l">442</TD><TD>                                rgb = PreferenceConverter.getDefaultColor(store, key);</TD></TR><TR><TD CLASS="l">443</TD><TD>                        else</TD></TR><TR CLASS="z"><TD CLASS="l">444</TD><TD>                                rgb = PreferenceConverter.getColor(store, key);</TD></TR><TR><TD CLASS="l">445</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">446</TD><TD>                        if (rgb != null)</TD></TR><TR CLASS="z"><TD CLASS="l">447</TD><TD>                                return new Color(display, rgb);</TD></TR><TR><TD CLASS="l">448</TD><TD>                }</TD></TR><TR><TD CLASS="l">449</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">450</TD><TD>                return null;</TD></TR><TR><TD CLASS="l">451</TD><TD>        }</TD></TR><TR><TD CLASS="l">452</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="11">453</A></TD><TD>        /*</TD></TR><TR><TD CLASS="l">454</TD><TD>         * @see org.eclipse.jface.util.IPropertyChangeListener#propertyChange(org.eclipse.jface.util.PropertyChangeEvent)</TD></TR><TR><TD CLASS="l">455</TD><TD>         */</TD></TR><TR><TD CLASS="l">456</TD><TD>        public void propertyChange(PropertyChangeEvent event) {</TD></TR><TR CLASS="z"><TD CLASS="l">457</TD><TD>                if (!HYPERLINK_COLOR.equals(event.getProperty()))</TD></TR><TR CLASS="z"><TD CLASS="l">458</TD><TD>                        return;</TD></TR><TR><TD CLASS="l">459</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">460</TD><TD>                if (fDisposeColor &amp;&amp; fColor != null &amp;&amp; !fColor.isDisposed())</TD></TR><TR CLASS="z"><TD CLASS="l">461</TD><TD>                        fColor.dispose();</TD></TR><TR CLASS="z"><TD CLASS="l">462</TD><TD>                fColor = null;</TD></TR><TR><TD CLASS="l">463</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">464</TD><TD>                StyledText textWidget = fTextViewer.getTextWidget();</TD></TR><TR CLASS="z"><TD CLASS="l">465</TD><TD>                if (textWidget != null &amp;&amp; !textWidget.isDisposed())</TD></TR><TR CLASS="z"><TD CLASS="l">466</TD><TD>                        fColor = createColor(fPreferenceStore, HYPERLINK_COLOR, textWidget.getDisplay());</TD></TR><TR CLASS="z"><TD CLASS="l">467</TD><TD>        }</TD></TR><TR><TD CLASS="l">468</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="14.html">org.eclipse.wst.sse.ui.internal.hyperlink</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/126.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/126.html
deleted file mode 100644
index 94ed73c..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/126.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="14.html">org.eclipse.wst.sse.ui.internal.hyperlink</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">OpenHyperlinkAction.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>OpenHyperlinkAction.java</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/145)</TD><TD CLASS="h">0%   (0/32)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">OpenHyperlinkAction</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/116)</TD><TD CLASS="h">0%   (0/29)</TD></TR><TR><TD CLASS="f"><A HREF="#0">OpenHyperlinkAction (ResourceBundle, String, ITextEditor, ITextViewer): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">run (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/103)</TD><TD CLASS="h">0%   (0/24)</TD></TR><TR><TD CLASS="f"><A HREF="#3">setHyperlinkDetectors (IHyperlinkDetector []): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#4">OpenHyperlinkAction$1</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/29)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#4">OpenHyperlinkAction$1 (OpenHyperlinkAction, IHyperlink [][], IHyperlinkDetect...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">run (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/14)</TD><TD CLASS="h">0%   (0/2)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR CLASS="z"><TD CLASS="l">1</TD><TD>package org.eclipse.wst.sse.ui.internal.hyperlink;</TD></TR><TR><TD CLASS="l">2</TD><TD> </TD></TR><TR><TD CLASS="l">3</TD><TD>import java.util.ResourceBundle;</TD></TR><TR><TD CLASS="l">4</TD><TD> </TD></TR><TR><TD CLASS="l">5</TD><TD>import org.eclipse.core.runtime.SafeRunner;</TD></TR><TR><TD CLASS="l">6</TD><TD>import org.eclipse.jface.text.IRegion;</TD></TR><TR><TD CLASS="l">7</TD><TD>import org.eclipse.jface.text.ITextSelection;</TD></TR><TR><TD CLASS="l">8</TD><TD>import org.eclipse.jface.text.ITextViewer;</TD></TR><TR><TD CLASS="l">9</TD><TD>import org.eclipse.jface.text.Region;</TD></TR><TR><TD CLASS="l">10</TD><TD>import org.eclipse.jface.text.hyperlink.IHyperlink;</TD></TR><TR><TD CLASS="l">11</TD><TD>import org.eclipse.jface.text.hyperlink.IHyperlinkDetector;</TD></TR><TR><TD CLASS="l">12</TD><TD>import org.eclipse.jface.util.SafeRunnable;</TD></TR><TR><TD CLASS="l">13</TD><TD>import org.eclipse.jface.viewers.ISelection;</TD></TR><TR><TD CLASS="l">14</TD><TD>import org.eclipse.ui.texteditor.ITextEditor;</TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.ui.texteditor.TextEditorAction;</TD></TR><TR><TD CLASS="l">16</TD><TD> </TD></TR><TR><TD CLASS="l">17</TD><TD>/**</TD></TR><TR><TD CLASS="l">18</TD><TD> * Open hyperlink action</TD></TR><TR><TD CLASS="l">19</TD><TD> */</TD></TR><TR><TD CLASS="l">20</TD><TD>public class OpenHyperlinkAction extends TextEditorAction {</TD></TR><TR><TD CLASS="l"><A NAME="0">21</A></TD><TD>        private IHyperlinkDetector[] fHyperlinkDetectors;</TD></TR><TR><TD CLASS="l">22</TD><TD>        private ITextViewer fTextViewer;</TD></TR><TR><TD CLASS="l">23</TD><TD> </TD></TR><TR><TD CLASS="l">24</TD><TD>        public OpenHyperlinkAction(ResourceBundle bundle, String prefix, ITextEditor editor, ITextViewer viewer) {</TD></TR><TR CLASS="z"><TD CLASS="l">25</TD><TD>                super(bundle, prefix, editor);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">26</A></TD><TD>                fTextViewer = viewer;</TD></TR><TR CLASS="z"><TD CLASS="l">27</TD><TD>        }</TD></TR><TR><TD CLASS="l">28</TD><TD> </TD></TR><TR><TD CLASS="l">29</TD><TD>        public void setHyperlinkDetectors(IHyperlinkDetector[] detectors) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">30</A></TD><TD>                fHyperlinkDetectors = detectors;</TD></TR><TR CLASS="z"><TD CLASS="l">31</TD><TD>        }</TD></TR><TR><TD CLASS="l">32</TD><TD> </TD></TR><TR><TD CLASS="l">33</TD><TD>        public void run() {</TD></TR><TR CLASS="z"><TD CLASS="l">34</TD><TD>                if (fHyperlinkDetectors == null)</TD></TR><TR CLASS="z"><TD CLASS="l">35</TD><TD>                        return;</TD></TR><TR CLASS="z"><TD CLASS="l">36</TD><TD>                ISelection selection = getTextEditor().getSelectionProvider().getSelection();</TD></TR><TR CLASS="z"><TD CLASS="l">37</TD><TD>                if (selection == null || !(selection instanceof ITextSelection)) {</TD></TR><TR CLASS="z"><TD CLASS="l">38</TD><TD>                        return;</TD></TR><TR><TD CLASS="l">39</TD><TD>                }</TD></TR><TR><TD CLASS="l">40</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>                ITextSelection textSelection = (ITextSelection) selection;</TD></TR><TR CLASS="z"><TD CLASS="l">42</TD><TD>                final IRegion region = new Region(textSelection.getOffset(), textSelection.getLength());</TD></TR><TR CLASS="z"><TD CLASS="l">43</TD><TD>                IHyperlink hyperlink = null;</TD></TR><TR><TD CLASS="l">44</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">45</TD><TD>                synchronized (fHyperlinkDetectors) {</TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>                        for (int i = 0, length = fHyperlinkDetectors.length; i &lt; length &amp;&amp; hyperlink == null; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>                                final IHyperlinkDetector detector = fHyperlinkDetectors[i];</TD></TR><TR CLASS="z"><TD CLASS="l">48</TD><TD>                                if (detector == null)</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>                                        continue;</TD></TR><TR><TD CLASS="l">50</TD><TD> </TD></TR><TR><TD CLASS="l">51</TD><TD>                                /* The array is final, but its contents aren't */</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                                final IHyperlink[][] hyperlinks = new IHyperlink[1][];</TD></TR><TR><TD CLASS="l">53</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="4">54</A></TD><TD>                                /*</TD></TR><TR><TD CLASS="l">55</TD><TD>                                 * Detect from within a SafeRunnable since the list of</TD></TR><TR><TD CLASS="l"><A NAME="6">56</A></TD><TD>                                 * detectors is extensible</TD></TR><TR><TD CLASS="l">57</TD><TD>                                 */</TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>                                SafeRunnable detectorRunnable = new SafeRunnable() {</TD></TR><TR><TD CLASS="l">59</TD><TD>                                        public void run() throws Exception {</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                                                hyperlinks[0] = detector.detectHyperlinks(fTextViewer, region, false);</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">62</TD><TD>                                };</TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>                                SafeRunner.run(detectorRunnable);</TD></TR><TR><TD CLASS="l">64</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>                                if (hyperlinks[0] == null)</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                                        continue;</TD></TR><TR><TD CLASS="l">67</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>                                if (hyperlinks.length &gt; 0)</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                                        hyperlink = hyperlinks[0][0];</TD></TR><TR><TD CLASS="l">70</TD><TD>                        }</TD></TR><TR><TD CLASS="l">71</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>                if (hyperlink != null) {</TD></TR><TR><TD CLASS="l">73</TD><TD>                        /**</TD></TR><TR><TD CLASS="l">74</TD><TD>                         * Force the highlight range to change when the hyperlink is</TD></TR><TR><TD CLASS="l">75</TD><TD>                         * opened by altering the highlighted range beforehand.</TD></TR><TR><TD CLASS="l">76</TD><TD>                         */</TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>                        getTextEditor().setHighlightRange(Math.max(0, region.getOffset() - 1), 0, false);</TD></TR><TR CLASS="z"><TD CLASS="l">78</TD><TD>                        hyperlink.open();</TD></TR><TR><TD CLASS="l">79</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">80</TD><TD>        }</TD></TR><TR><TD CLASS="l">81</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="14.html">org.eclipse.wst.sse.ui.internal.hyperlink</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/127.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/127.html
deleted file mode 100644
index 5b2c59a..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/127.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="15.html">org.eclipse.wst.sse.ui.internal.openon</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">AbstractOpenOn.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>AbstractOpenOn.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/274)</TD><TD CLASS="h">0%   (0/81)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">AbstractOpenOn</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/274)</TD><TD CLASS="h">0%   (0/81)</TD></TR><TR><TD CLASS="f"><A HREF="#0">AbstractOpenOn (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">getDocument (): IDocument</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#3">getEditorId (String): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/16)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">getFile (String): IFile</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/106)</TD><TD CLASS="h">0%   (0/25)</TD></TR><TR><TD CLASS="f"><A HREF="#5">getOpenOnRegion (IDocument, int): IRegion</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">openExternalFile (String): IEditorPart</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/35)</TD><TD CLASS="h">0%   (0/9)</TD></TR><TR><TD CLASS="f"><A HREF="#7">openFileFailed (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">openFileInEditor (IFile): IEditorPart</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/22)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#9">openFileInEditor (String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/44)</TD><TD CLASS="h">0%   (0/15)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">openOn (IDocument, IRegion): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#b">setDocument (IDocument): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.openon;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.io.File;</TD></TR><TR><TD CLASS="l">16</TD><TD> </TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.core.resources.IFile;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.core.resources.ResourcesPlugin;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.core.runtime.Path;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.jface.text.IDocument;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.jface.text.IRegion;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.swt.program.Program;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.ui.IEditorDescriptor;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.ui.IEditorInput;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.ui.IEditorPart;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.ui.IEditorRegistry;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.ui.IWorkbench;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.ui.IWorkbenchPage;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.ui.PartInitException;</TD></TR><TR><TD CLASS="l">30</TD><TD>import org.eclipse.ui.PlatformUI;</TD></TR><TR><TD CLASS="l">31</TD><TD>import org.eclipse.ui.editors.text.EditorsUI;</TD></TR><TR><TD CLASS="l">32</TD><TD>import org.eclipse.ui.ide.IDE;</TD></TR><TR><TD CLASS="l">33</TD><TD>import org.eclipse.wst.sse.core.StructuredModelManager;</TD></TR><TR><TD CLASS="l">34</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;</TD></TR><TR><TD CLASS="l">35</TD><TD>import org.eclipse.wst.sse.core.internal.util.URIResolver;</TD></TR><TR><TD CLASS="l">36</TD><TD>import org.eclipse.wst.sse.ui.internal.Logger;</TD></TR><TR><TD CLASS="l">37</TD><TD>import org.eclipse.wst.sse.ui.internal.SSEUIMessages;</TD></TR><TR><TD CLASS="l">38</TD><TD>import org.eclipse.wst.sse.ui.internal.util.PlatformStatusLineUtil;</TD></TR><TR><TD CLASS="l">39</TD><TD> </TD></TR><TR><TD CLASS="l">40</TD><TD> </TD></TR><TR><TD CLASS="l">41</TD><TD>/**</TD></TR><TR><TD CLASS="l">42</TD><TD> * This action class retrieves the link/file selected by the cursor and</TD></TR><TR><TD CLASS="l"><A NAME="0">43</A></TD><TD> * attempts to open the link/file in the default editor or web browser</TD></TR><TR><TD CLASS="l">44</TD><TD> * </TD></TR><TR><TD CLASS="l">45</TD><TD> * @deprecated Use base support for hyperlink navigation</TD></TR><TR><TD CLASS="l">46</TD><TD> */</TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>abstract public class AbstractOpenOn implements IOpenOn {</TD></TR><TR CLASS="z"><TD CLASS="l">48</TD><TD>        protected final String CANNOT_OPEN = SSEUIMessages.AbstractOpenOn_0; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">49</TD><TD>        // document currently associated with open</TD></TR><TR><TD CLASS="l">50</TD><TD>        private IDocument fDocument;</TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>        protected final String FILE_PROTOCOL = &#34;file:/&#34;;//$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>        private final String HTTP_PROTOCOL = &#34;http://&#34;;//$NON-NLS-1$</TD></TR><TR><TD CLASS="l">53</TD><TD> </TD></TR><TR><TD CLASS="l">54</TD><TD>        abstract protected IRegion doGetOpenOnRegion(int offset);</TD></TR><TR><TD CLASS="l">55</TD><TD> </TD></TR><TR><TD CLASS="l">56</TD><TD>        abstract protected void doOpenOn(IRegion region);</TD></TR><TR><TD CLASS="l">57</TD><TD> </TD></TR><TR><TD CLASS="l">58</TD><TD>        /**</TD></TR><TR><TD CLASS="l">59</TD><TD>         * Returns the current document associated with open on</TD></TR><TR><TD CLASS="l"><A NAME="2">60</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">61</TD><TD>         * @return IDocument</TD></TR><TR><TD CLASS="l">62</TD><TD>         */</TD></TR><TR><TD CLASS="l">63</TD><TD>        public IDocument getDocument() {</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                return fDocument;</TD></TR><TR><TD CLASS="l">65</TD><TD>        }</TD></TR><TR><TD CLASS="l">66</TD><TD> </TD></TR><TR><TD CLASS="l">67</TD><TD>        /**</TD></TR><TR><TD CLASS="l">68</TD><TD>         * Determines the editor associated with the given file name</TD></TR><TR><TD CLASS="l">69</TD><TD>         * </TD></TR><TR><TD CLASS="l"><A NAME="3">70</A></TD><TD>         * @param filename</TD></TR><TR><TD CLASS="l">71</TD><TD>         * @return editor id of the editor associated with the given file name</TD></TR><TR><TD CLASS="l">72</TD><TD>         */</TD></TR><TR><TD CLASS="l">73</TD><TD>        private String getEditorId(String filename) {</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>                IWorkbench workbench = PlatformUI.getWorkbench();</TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>                IEditorRegistry editorRegistry = workbench.getEditorRegistry();</TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>                IEditorDescriptor descriptor = editorRegistry.getDefaultEditor(filename);</TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>                if (descriptor != null)</TD></TR><TR CLASS="z"><TD CLASS="l">78</TD><TD>                        return descriptor.getId();</TD></TR><TR CLASS="z"><TD CLASS="l">79</TD><TD>                return EditorsUI.DEFAULT_TEXT_EDITOR_ID;</TD></TR><TR><TD CLASS="l">80</TD><TD>        }</TD></TR><TR><TD CLASS="l">81</TD><TD> </TD></TR><TR><TD CLASS="l">82</TD><TD>        /**</TD></TR><TR><TD CLASS="l">83</TD><TD>         * Returns an IFile from the given uri if possible, null if cannot find</TD></TR><TR><TD CLASS="l">84</TD><TD>         * file from uri.</TD></TR><TR><TD CLASS="l">85</TD><TD>         * </TD></TR><TR><TD CLASS="l">86</TD><TD>         * @param fileString</TD></TR><TR><TD CLASS="l"><A NAME="4">87</A></TD><TD>         *            file system path</TD></TR><TR><TD CLASS="l">88</TD><TD>         * @return returns IFile if fileString exists in the workspace</TD></TR><TR><TD CLASS="l">89</TD><TD>         */</TD></TR><TR><TD CLASS="l">90</TD><TD>        protected IFile getFile(String fileString) {</TD></TR><TR CLASS="z"><TD CLASS="l">91</TD><TD>                IStructuredModel model = null;</TD></TR><TR CLASS="z"><TD CLASS="l">92</TD><TD>                IFile file = null;</TD></TR><TR><TD CLASS="l">93</TD><TD>                try {</TD></TR><TR CLASS="z"><TD CLASS="l">94</TD><TD>                        model = StructuredModelManager.getModelManager().getExistingModelForRead(getDocument());</TD></TR><TR CLASS="z"><TD CLASS="l">95</TD><TD>                        if (model != null) {</TD></TR><TR><TD CLASS="l">96</TD><TD>                                // use the base location to obtain the in-workspace IFile</TD></TR><TR CLASS="z"><TD CLASS="l">97</TD><TD>                                IFile modelFile = ResourcesPlugin.getWorkspace().getRoot().getFile(new Path(model.getBaseLocation()));</TD></TR><TR CLASS="z"><TD CLASS="l">98</TD><TD>                                if (modelFile != null) {</TD></TR><TR><TD CLASS="l">99</TD><TD>                                        // find the referenced file's location on disk</TD></TR><TR CLASS="z"><TD CLASS="l">100</TD><TD>                                        URIResolver resolver = model.getResolver();</TD></TR><TR CLASS="z"><TD CLASS="l">101</TD><TD>                                        if (resolver != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">102</TD><TD>                                                String filesystemLocation = resolver.getLocationByURI(fileString);</TD></TR><TR CLASS="z"><TD CLASS="l">103</TD><TD>                                                if (filesystemLocation != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">104</TD><TD>                                                        IFile[] workspaceFiles = ResourcesPlugin.getWorkspace().getRoot().findFilesForLocation(new Path(filesystemLocation));</TD></TR><TR><TD CLASS="l">105</TD><TD>                                                        // favor a workspace file in the same project</TD></TR><TR CLASS="z"><TD CLASS="l">106</TD><TD>                                                        for (int i = 0; i &lt; workspaceFiles.length &amp;&amp; file == null; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">107</TD><TD>                                                                if (workspaceFiles[i].getProject().equals(modelFile.getProject())) {</TD></TR><TR CLASS="z"><TD CLASS="l">108</TD><TD>                                                                        file = workspaceFiles[i];</TD></TR><TR><TD CLASS="l">109</TD><TD>                                                                }</TD></TR><TR><TD CLASS="l">110</TD><TD>                                                        }</TD></TR><TR><TD CLASS="l">111</TD><TD>                                                        // if none were in the same project, just pick one</TD></TR><TR CLASS="z"><TD CLASS="l">112</TD><TD>                                                        if (file == null &amp;&amp; workspaceFiles.length &gt; 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">113</TD><TD>                                                                file = workspaceFiles[0];</TD></TR><TR><TD CLASS="l">114</TD><TD>                                                        }</TD></TR><TR><TD CLASS="l">115</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">116</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">117</TD><TD>                                }</TD></TR><TR><TD CLASS="l">118</TD><TD>                        }</TD></TR><TR><TD CLASS="l">119</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">120</TD><TD>                catch (Exception e) {</TD></TR><TR CLASS="z"><TD CLASS="l">121</TD><TD>                        Logger.log(Logger.WARNING, e.getMessage());</TD></TR><TR><TD CLASS="l">122</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">123</TD><TD>                finally {</TD></TR><TR CLASS="z"><TD CLASS="l">124</TD><TD>                        if (model != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">125</TD><TD>                                model.releaseFromRead();</TD></TR><TR><TD CLASS="l">126</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">127</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">128</TD><TD>                if (file == null &amp;&amp; fileString.startsWith(&#34;/&#34;)) { //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">129</TD><TD>                        file = ResourcesPlugin.getWorkspace().getRoot().getFile(new Path(fileString));</TD></TR><TR><TD CLASS="l">130</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">131</TD><TD>                return file;</TD></TR><TR><TD CLASS="l">132</TD><TD>        }</TD></TR><TR><TD CLASS="l">133</TD><TD> </TD></TR><TR><TD CLASS="l">134</TD><TD>        /*</TD></TR><TR><TD CLASS="l">135</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l">136</TD><TD>         * </TD></TR><TR><TD CLASS="l">137</TD><TD>         * @see org.eclipse.wst.sse.ui.IOpenOn#getOpenOnRegion(org.eclipse.jface.text.IDocument,</TD></TR><TR><TD CLASS="l">138</TD><TD>         *      int)</TD></TR><TR><TD CLASS="l"><A NAME="5">139</A></TD><TD>         */</TD></TR><TR><TD CLASS="l">140</TD><TD>        public IRegion getOpenOnRegion(IDocument doc, int offset) {</TD></TR><TR><TD CLASS="l">141</TD><TD>                IRegion region;</TD></TR><TR><TD CLASS="l">142</TD><TD>                // set the document for this action</TD></TR><TR CLASS="z"><TD CLASS="l">143</TD><TD>                setDocument(doc);</TD></TR><TR CLASS="z"><TD CLASS="l">144</TD><TD>                region = doGetOpenOnRegion(offset);</TD></TR><TR><TD CLASS="l">145</TD><TD>                // reset the document back to null for this action</TD></TR><TR CLASS="z"><TD CLASS="l">146</TD><TD>                setDocument(null);</TD></TR><TR CLASS="z"><TD CLASS="l">147</TD><TD>                return region;</TD></TR><TR><TD CLASS="l">148</TD><TD>        }</TD></TR><TR><TD CLASS="l">149</TD><TD> </TD></TR><TR><TD CLASS="l">150</TD><TD>        /**</TD></TR><TR><TD CLASS="l">151</TD><TD>         * Try to open the external file, fileString in its default editor</TD></TR><TR><TD CLASS="l">152</TD><TD>         * </TD></TR><TR><TD CLASS="l">153</TD><TD>         * @param fileString</TD></TR><TR><TD CLASS="l"><A NAME="6">154</A></TD><TD>         * @return IEditorPart editor opened or null if editor could not be opened</TD></TR><TR><TD CLASS="l">155</TD><TD>         */</TD></TR><TR><TD CLASS="l">156</TD><TD>        protected IEditorPart openExternalFile(String fileString) {</TD></TR><TR><TD CLASS="l">157</TD><TD>                // file does not exist in workspace so try to open using system editor</TD></TR><TR CLASS="z"><TD CLASS="l">158</TD><TD>                File file = new File(fileString);</TD></TR><TR><TD CLASS="l">159</TD><TD>                // try to open existing external file if it exists</TD></TR><TR CLASS="z"><TD CLASS="l">160</TD><TD>                if (file.exists()) {</TD></TR><TR CLASS="z"><TD CLASS="l">161</TD><TD>                        IEditorInput input = new ExternalFileEditorInput(file);</TD></TR><TR CLASS="z"><TD CLASS="l">162</TD><TD>                        String editorId = getEditorId(fileString);</TD></TR><TR><TD CLASS="l">163</TD><TD> </TD></TR><TR><TD CLASS="l">164</TD><TD>                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">165</TD><TD>                                IWorkbenchPage page = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage();</TD></TR><TR CLASS="z"><TD CLASS="l">166</TD><TD>                                return page.openEditor(input, editorId, true);</TD></TR><TR><TD CLASS="l">167</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">168</TD><TD>                        catch (PartInitException pie) {</TD></TR><TR CLASS="z"><TD CLASS="l">169</TD><TD>                                Logger.log(Logger.WARNING_DEBUG, pie.getMessage(), pie);</TD></TR><TR><TD CLASS="l">170</TD><TD>                        }</TD></TR><TR><TD CLASS="l">171</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">172</TD><TD>                return null;</TD></TR><TR><TD CLASS="l">173</TD><TD>        }</TD></TR><TR><TD CLASS="l">174</TD><TD> </TD></TR><TR><TD CLASS="l">175</TD><TD>        /**</TD></TR><TR><TD CLASS="l"><A NAME="7">176</A></TD><TD>         * Notifies user that open on selection action could not successfully open</TD></TR><TR><TD CLASS="l">177</TD><TD>         * the selection (writes message on status bar and beeps)</TD></TR><TR><TD CLASS="l">178</TD><TD>         */</TD></TR><TR><TD CLASS="l">179</TD><TD>        protected void openFileFailed() {</TD></TR><TR CLASS="z"><TD CLASS="l">180</TD><TD>                PlatformStatusLineUtil.displayErrorMessage(CANNOT_OPEN);</TD></TR><TR CLASS="z"><TD CLASS="l">181</TD><TD>                PlatformStatusLineUtil.addOneTimeClearListener();</TD></TR><TR CLASS="z"><TD CLASS="l">182</TD><TD>        }</TD></TR><TR><TD CLASS="l">183</TD><TD> </TD></TR><TR><TD CLASS="l">184</TD><TD>        /**</TD></TR><TR><TD CLASS="l">185</TD><TD>         * Opens the IFile, input in its default editor, if possible, and returns</TD></TR><TR><TD CLASS="l">186</TD><TD>         * the editor opened. Possible reasons for failure: input cannot be found,</TD></TR><TR><TD CLASS="l">187</TD><TD>         * input does not exist in workbench, editor cannot be opened.</TD></TR><TR><TD CLASS="l">188</TD><TD>         * </TD></TR><TR><TD CLASS="l"><A NAME="8">189</A></TD><TD>         * @return IEditorPart editor opened or null if input == null or does not</TD></TR><TR><TD CLASS="l">190</TD><TD>         *         exist, external editor was opened, editor could not be opened</TD></TR><TR><TD CLASS="l">191</TD><TD>         */</TD></TR><TR><TD CLASS="l">192</TD><TD>        protected IEditorPart openFileInEditor(IFile input) {</TD></TR><TR CLASS="z"><TD CLASS="l">193</TD><TD>                if (input != null &amp;&amp; input.exists()) {</TD></TR><TR><TD CLASS="l">194</TD><TD>                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">195</TD><TD>                                IWorkbenchPage page = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage();</TD></TR><TR CLASS="z"><TD CLASS="l">196</TD><TD>                                return IDE.openEditor(page, input, true);</TD></TR><TR><TD CLASS="l">197</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">198</TD><TD>                        catch (PartInitException pie) {</TD></TR><TR CLASS="z"><TD CLASS="l">199</TD><TD>                                Logger.log(Logger.WARNING_DEBUG, pie.getMessage(), pie);</TD></TR><TR><TD CLASS="l">200</TD><TD>                        }</TD></TR><TR><TD CLASS="l">201</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">202</TD><TD>                return null;</TD></TR><TR><TD CLASS="l">203</TD><TD>        }</TD></TR><TR><TD CLASS="l">204</TD><TD> </TD></TR><TR><TD CLASS="l">205</TD><TD>        // on</TD></TR><TR><TD CLASS="l">206</TD><TD> </TD></TR><TR><TD CLASS="l">207</TD><TD>        /**</TD></TR><TR><TD CLASS="l">208</TD><TD>         * Opens the appropriate editor for fileString</TD></TR><TR><TD CLASS="l"><A NAME="9">209</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">210</TD><TD>         * @param fileString</TD></TR><TR><TD CLASS="l">211</TD><TD>         */</TD></TR><TR><TD CLASS="l">212</TD><TD>        protected void openFileInEditor(String fileString) {</TD></TR><TR CLASS="z"><TD CLASS="l">213</TD><TD>                IEditorPart editor = null;</TD></TR><TR CLASS="z"><TD CLASS="l">214</TD><TD>                if (fileString != null) {</TD></TR><TR><TD CLASS="l">215</TD><TD>                        // open web browser if this is a web address</TD></TR><TR CLASS="z"><TD CLASS="l">216</TD><TD>                        String temp = fileString.toLowerCase();</TD></TR><TR CLASS="z"><TD CLASS="l">217</TD><TD>                        if (temp.startsWith(HTTP_PROTOCOL)) {</TD></TR><TR CLASS="z"><TD CLASS="l">218</TD><TD>                                Program.launch(fileString); // launches web browser/executable</TD></TR><TR><TD CLASS="l">219</TD><TD>                                // associated with uri</TD></TR><TR CLASS="z"><TD CLASS="l">220</TD><TD>                                return;</TD></TR><TR><TD CLASS="l">221</TD><TD>                        }</TD></TR><TR><TD CLASS="l">222</TD><TD>                        // chop off the file protocol</TD></TR><TR CLASS="z"><TD CLASS="l">223</TD><TD>                        if (temp.startsWith(FILE_PROTOCOL)) {</TD></TR><TR CLASS="z"><TD CLASS="l">224</TD><TD>                                fileString = fileString.substring(FILE_PROTOCOL.length());</TD></TR><TR><TD CLASS="l">225</TD><TD>                        }</TD></TR><TR><TD CLASS="l">226</TD><TD> </TD></TR><TR><TD CLASS="l">227</TD><TD>                        // try to locate the file in the workspace and return an IFile if</TD></TR><TR><TD CLASS="l">228</TD><TD>                        // found</TD></TR><TR CLASS="z"><TD CLASS="l">229</TD><TD>                        IFile file = getFile(fileString);</TD></TR><TR CLASS="z"><TD CLASS="l">230</TD><TD>                        if (file != null) {</TD></TR><TR><TD CLASS="l">231</TD><TD>                                // file exists in workspace</TD></TR><TR CLASS="z"><TD CLASS="l">232</TD><TD>                                editor = openFileInEditor(file);</TD></TR><TR><TD CLASS="l">233</TD><TD>                        }</TD></TR><TR><TD CLASS="l">234</TD><TD>                        else {</TD></TR><TR><TD CLASS="l">235</TD><TD>                                // file does not exist in workspace</TD></TR><TR CLASS="z"><TD CLASS="l">236</TD><TD>                                editor = openExternalFile(fileString);</TD></TR><TR><TD CLASS="l">237</TD><TD>                        }</TD></TR><TR><TD CLASS="l">238</TD><TD>                }</TD></TR><TR><TD CLASS="l">239</TD><TD>                // no editor was opened</TD></TR><TR CLASS="z"><TD CLASS="l">240</TD><TD>                if (editor == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">241</TD><TD>                        openFileFailed();</TD></TR><TR><TD CLASS="l">242</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">243</TD><TD>        }</TD></TR><TR><TD CLASS="l">244</TD><TD> </TD></TR><TR><TD CLASS="l">245</TD><TD>        /*</TD></TR><TR><TD CLASS="l">246</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l">247</TD><TD>         * </TD></TR><TR><TD CLASS="l">248</TD><TD>         * @see org.eclipse.wst.sse.ui.IOpenOn#openOn(org.eclipse.jface.text.IDocument,</TD></TR><TR><TD CLASS="l"><A NAME="a">249</A></TD><TD>         *      org.eclipse.jface.text.IRegion)</TD></TR><TR><TD CLASS="l">250</TD><TD>         */</TD></TR><TR><TD CLASS="l">251</TD><TD>        public void openOn(IDocument doc, IRegion region) {</TD></TR><TR><TD CLASS="l">252</TD><TD>                // set the document for this action</TD></TR><TR CLASS="z"><TD CLASS="l">253</TD><TD>                setDocument(doc);</TD></TR><TR><TD CLASS="l">254</TD><TD>                // if no region was given this action fails</TD></TR><TR CLASS="z"><TD CLASS="l">255</TD><TD>                if (region == null)</TD></TR><TR CLASS="z"><TD CLASS="l">256</TD><TD>                        openFileFailed();</TD></TR><TR><TD CLASS="l">257</TD><TD>                else</TD></TR><TR CLASS="z"><TD CLASS="l">258</TD><TD>                        doOpenOn(region);</TD></TR><TR><TD CLASS="l">259</TD><TD>                // reset the document back to null for this action</TD></TR><TR CLASS="z"><TD CLASS="l">260</TD><TD>                setDocument(null);</TD></TR><TR CLASS="z"><TD CLASS="l">261</TD><TD>        }</TD></TR><TR><TD CLASS="l">262</TD><TD> </TD></TR><TR><TD CLASS="l">263</TD><TD>        /**</TD></TR><TR><TD CLASS="l">264</TD><TD>         * Sets current document associated with open on</TD></TR><TR><TD CLASS="l"><A NAME="b">265</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">266</TD><TD>         * @param document</TD></TR><TR><TD CLASS="l">267</TD><TD>         */</TD></TR><TR><TD CLASS="l">268</TD><TD>        public void setDocument(IDocument document) {</TD></TR><TR CLASS="z"><TD CLASS="l">269</TD><TD>                fDocument = document;</TD></TR><TR CLASS="z"><TD CLASS="l">270</TD><TD>        }</TD></TR><TR><TD CLASS="l">271</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="15.html">org.eclipse.wst.sse.ui.internal.openon</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/128.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/128.html
deleted file mode 100644
index 6b30662..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/128.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="15.html">org.eclipse.wst.sse.ui.internal.openon</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">ExternalFileEditorInput.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>ExternalFileEditorInput.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/85)</TD><TD CLASS="h">0%   (0/22)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">ExternalFileEditorInput</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/85)</TD><TD CLASS="h">0%   (0/22)</TD></TR><TR><TD CLASS="f"><A HREF="#0">ExternalFileEditorInput (File): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">equals (Object): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/19)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#3">exists (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">getAdapter (Class): Object</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/25)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#5">getImageDescriptor (): ImageDescriptor</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">getName (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#7">getPath (Object): IPath</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">getPersistable (): IPersistableElement</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#9">getToolTipText (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">hashCode (): int</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/1)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2008 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.openon;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.io.File;</TD></TR><TR><TD CLASS="l">16</TD><TD> </TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.core.runtime.IPath;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.core.runtime.Path;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.core.runtime.Platform;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.jface.resource.ImageDescriptor;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.ui.IEditorInput;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.ui.IPersistableElement;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.ui.editors.text.ILocationProvider;</TD></TR><TR><TD CLASS="l">24</TD><TD> </TD></TR><TR><TD CLASS="l">25</TD><TD>/**</TD></TR><TR><TD CLASS="l">26</TD><TD> * EditorInput for external files. Copied from</TD></TR><TR><TD CLASS="l">27</TD><TD> * org.eclipse.ui.internal.editors.text.JavaFileEditorInput</TD></TR><TR><TD CLASS="l">28</TD><TD> * </TD></TR><TR><TD CLASS="l">29</TD><TD> * @deprecated Use org.eclipse.ui.ide.FileStoreEditorInput and EFS.getLocalFileSystem().fromLocalFile()</TD></TR><TR><TD CLASS="l">30</TD><TD> */</TD></TR><TR><TD CLASS="l">31</TD><TD>public class ExternalFileEditorInput implements IEditorInput, ILocationProvider {</TD></TR><TR><TD CLASS="l"><A NAME="0">32</A></TD><TD> </TD></TR><TR><TD CLASS="l">33</TD><TD>        private File fFile;</TD></TR><TR><TD CLASS="l">34</TD><TD> </TD></TR><TR><TD CLASS="l">35</TD><TD>        public ExternalFileEditorInput(File file) {</TD></TR><TR CLASS="z"><TD CLASS="l">36</TD><TD>                super();</TD></TR><TR CLASS="z"><TD CLASS="l">37</TD><TD>                fFile = file;</TD></TR><TR CLASS="z"><TD CLASS="l">38</TD><TD>        }</TD></TR><TR><TD CLASS="l">39</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="2">40</A></TD><TD>        /*</TD></TR><TR><TD CLASS="l">41</TD><TD>         * @see java.lang.Object#equals(java.lang.Object)</TD></TR><TR><TD CLASS="l">42</TD><TD>         */</TD></TR><TR><TD CLASS="l">43</TD><TD>        public boolean equals(Object o) {</TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>                if (o == this)</TD></TR><TR CLASS="z"><TD CLASS="l">45</TD><TD>                        return true;</TD></TR><TR><TD CLASS="l">46</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>                if (o instanceof ExternalFileEditorInput) {</TD></TR><TR CLASS="z"><TD CLASS="l">48</TD><TD>                        ExternalFileEditorInput input = (ExternalFileEditorInput) o;</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>                        return fFile.equals(input.fFile);</TD></TR><TR><TD CLASS="l">50</TD><TD>                }</TD></TR><TR><TD CLASS="l">51</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                return false;</TD></TR><TR><TD CLASS="l">53</TD><TD>        }</TD></TR><TR><TD CLASS="l">54</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="3">55</A></TD><TD>        /*</TD></TR><TR><TD CLASS="l">56</TD><TD>         * @see org.eclipse.ui.IEditorInput#exists()</TD></TR><TR><TD CLASS="l">57</TD><TD>         */</TD></TR><TR><TD CLASS="l">58</TD><TD>        public boolean exists() {</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>                return fFile.exists();</TD></TR><TR><TD CLASS="l">60</TD><TD>        }</TD></TR><TR><TD CLASS="l">61</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="4">62</A></TD><TD>        /*</TD></TR><TR><TD CLASS="l">63</TD><TD>         * @see org.eclipse.core.runtime.IAdaptable#getAdapter(java.lang.Class)</TD></TR><TR><TD CLASS="l">64</TD><TD>         */</TD></TR><TR><TD CLASS="l">65</TD><TD>        public Object getAdapter(Class adapter) {</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                if (ILocationProvider.class.equals(adapter))</TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>                        return this;</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>                return Platform.getAdapterManager().getAdapter(this, adapter);</TD></TR><TR><TD CLASS="l">69</TD><TD>        }</TD></TR><TR><TD CLASS="l">70</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="5">71</A></TD><TD>        /*</TD></TR><TR><TD CLASS="l">72</TD><TD>         * @see org.eclipse.ui.IEditorInput#getImageDescriptor()</TD></TR><TR><TD CLASS="l">73</TD><TD>         */</TD></TR><TR><TD CLASS="l">74</TD><TD>        public ImageDescriptor getImageDescriptor() {</TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>                return null;</TD></TR><TR><TD CLASS="l">76</TD><TD>        }</TD></TR><TR><TD CLASS="l">77</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="6">78</A></TD><TD>        /*</TD></TR><TR><TD CLASS="l">79</TD><TD>         * @see org.eclipse.ui.IEditorInput#getName()</TD></TR><TR><TD CLASS="l">80</TD><TD>         */</TD></TR><TR><TD CLASS="l">81</TD><TD>        public String getName() {</TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>                return fFile.getName();</TD></TR><TR><TD CLASS="l">83</TD><TD>        }</TD></TR><TR><TD CLASS="l">84</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="7">85</A></TD><TD>        /*</TD></TR><TR><TD CLASS="l">86</TD><TD>         * @see org.eclipse.ui.editors.text.ILocationProvider#getPath(java.lang.Object)</TD></TR><TR><TD CLASS="l">87</TD><TD>         */</TD></TR><TR><TD CLASS="l">88</TD><TD>        public IPath getPath(Object element) {</TD></TR><TR CLASS="z"><TD CLASS="l">89</TD><TD>                if (element instanceof ExternalFileEditorInput) {</TD></TR><TR CLASS="z"><TD CLASS="l">90</TD><TD>                        ExternalFileEditorInput input = (ExternalFileEditorInput) element;</TD></TR><TR CLASS="z"><TD CLASS="l">91</TD><TD>                        return new Path(input.fFile.getAbsolutePath());</TD></TR><TR><TD CLASS="l">92</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">93</TD><TD>                return null;</TD></TR><TR><TD CLASS="l">94</TD><TD>        }</TD></TR><TR><TD CLASS="l">95</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="8">96</A></TD><TD>        /*</TD></TR><TR><TD CLASS="l">97</TD><TD>         * @see org.eclipse.ui.IEditorInput#getPersistable()</TD></TR><TR><TD CLASS="l">98</TD><TD>         */</TD></TR><TR><TD CLASS="l">99</TD><TD>        public IPersistableElement getPersistable() {</TD></TR><TR CLASS="z"><TD CLASS="l">100</TD><TD>                return null;</TD></TR><TR><TD CLASS="l">101</TD><TD>        }</TD></TR><TR><TD CLASS="l">102</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="9">103</A></TD><TD>        /*</TD></TR><TR><TD CLASS="l">104</TD><TD>         * @see org.eclipse.ui.IEditorInput#getToolTipText()</TD></TR><TR><TD CLASS="l">105</TD><TD>         */</TD></TR><TR><TD CLASS="l">106</TD><TD>        public String getToolTipText() {</TD></TR><TR CLASS="z"><TD CLASS="l">107</TD><TD>                return fFile.getAbsolutePath();</TD></TR><TR><TD CLASS="l">108</TD><TD>        }</TD></TR><TR><TD CLASS="l">109</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="a">110</A></TD><TD>        /*</TD></TR><TR><TD CLASS="l">111</TD><TD>         * @see java.lang.Object#hashCode()</TD></TR><TR><TD CLASS="l">112</TD><TD>         */</TD></TR><TR><TD CLASS="l">113</TD><TD>        public int hashCode() {</TD></TR><TR CLASS="z"><TD CLASS="l">114</TD><TD>                return fFile.hashCode();</TD></TR><TR><TD CLASS="l">115</TD><TD>        }</TD></TR><TR><TD CLASS="l">116</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="15.html">org.eclipse.wst.sse.ui.internal.openon</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/129.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/129.html
deleted file mode 100644
index 6de4220..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/129.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="15.html">org.eclipse.wst.sse.ui.internal.openon</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">OpenFileHyperlinkTracker.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>OpenFileHyperlinkTracker.java</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/37)</TD><TD CLASS="h">0%   (0/996)</TD><TD CLASS="h">0%   (0/306)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">OpenFileHyperlinkTracker</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/35)</TD><TD CLASS="h">0%   (0/986)</TD><TD CLASS="h">0%   (0/303)</TD></TR><TR><TD CLASS="f"><A HREF="#0">OpenFileHyperlinkTracker (ITextViewer): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">activateCursor (ITextViewer): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/27)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR><TD CLASS="f"><A HREF="#3">computeStateMask (String): int</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/40)</TD><TD CLASS="h">0%   (0/12)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">createColor (IPreferenceStore, String, Display): Color</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/22)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#5">deactivate (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">deactivate (boolean): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#7">documentAboutToBeChanged (DocumentEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/28)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">documentChanged (DocumentEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/56)</TD><TD CLASS="h">0%   (0/14)</TD></TR><TR><TD CLASS="f"><A HREF="#9">focusGained (FocusEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">focusLost (FocusEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#b">getCurrentTextOffset (): int</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/47)</TD><TD CLASS="h">0%   (0/13)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#c">getMaximumLocation (StyledText, int, int): Point</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/39)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR><TD CLASS="f"><A HREF="#d">getMinimumLocation (StyledText, int, int): Point</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/39)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#e">getNewPreferenceStore (): IPreferenceStore</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#f">getTextViewer (): ITextViewer</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#10">highlightRegion (ITextViewer, IRegion): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/66)</TD><TD CLASS="h">0%   (0/20)</TD></TR><TR><TD CLASS="f"><A HREF="#11">includes (IRegion, IRegion): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/20)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#12">inputDocumentAboutToBeChanged (IDocument, IDocument): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#13">inputDocumentChanged (IDocument, IDocument): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#14">install (IPreferenceStore): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/54)</TD><TD CLASS="h">0%   (0/20)</TD></TR><TR><TD CLASS="f"><A HREF="#15">keyPressed (KeyEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/18)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#16">keyReleased (KeyEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#17">mouseDoubleClick (MouseEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#18">mouseDown (MouseEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/20)</TD><TD CLASS="h">0%   (0/9)</TD></TR><TR><TD CLASS="f"><A HREF="#19">mouseMove (MouseEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/91)</TD><TD CLASS="h">0%   (0/29)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#1a">mouseUp (MouseEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/42)</TD><TD CLASS="h">0%   (0/13)</TD></TR><TR><TD CLASS="f"><A HREF="#1b">paintControl (PaintEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/120)</TD><TD CLASS="h">0%   (0/32)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#1c">propertyChange (PropertyChangeEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/24)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR><TD CLASS="f"><A HREF="#1d">repairRepresentation (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#1e">repairRepresentation (boolean): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/53)</TD><TD CLASS="h">0%   (0/17)</TD></TR><TR><TD CLASS="f"><A HREF="#1f">resetCursor (ITextViewer): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/21)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#20">setHyperlinkPreferenceKeys (String, String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#21">uninstall (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/59)</TD><TD CLASS="h">0%   (0/22)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#22">updateColor (ITextViewer): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/22)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#23">updateKeyModifierMask (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#24">OpenFileHyperlinkTracker$1</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#24">OpenFileHyperlinkTracker$1 (OpenFileHyperlinkTracker): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#26">run (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR CLASS="z"><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.openon;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import com.ibm.icu.util.StringTokenizer;</TD></TR><TR><TD CLASS="l">16</TD><TD> </TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.jface.preference.IPreferenceStore;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.jface.preference.PreferenceConverter;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.jface.text.BadLocationException;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.jface.text.DocumentEvent;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.jface.text.IDocument;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.jface.text.IDocumentListener;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.jface.text.IRegion;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.jface.text.ITextInputListener;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.jface.text.ITextViewer;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.jface.text.ITextViewerExtension5;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.jface.text.Position;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.jface.text.Region;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.jface.util.IPropertyChangeListener;</TD></TR><TR><TD CLASS="l">30</TD><TD>import org.eclipse.jface.util.PropertyChangeEvent;</TD></TR><TR><TD CLASS="l">31</TD><TD>import org.eclipse.swt.SWT;</TD></TR><TR><TD CLASS="l">32</TD><TD>import org.eclipse.swt.custom.StyledText;</TD></TR><TR><TD CLASS="l">33</TD><TD>import org.eclipse.swt.events.FocusEvent;</TD></TR><TR><TD CLASS="l">34</TD><TD>import org.eclipse.swt.events.FocusListener;</TD></TR><TR><TD CLASS="l">35</TD><TD>import org.eclipse.swt.events.KeyEvent;</TD></TR><TR><TD CLASS="l">36</TD><TD>import org.eclipse.swt.events.KeyListener;</TD></TR><TR><TD CLASS="l">37</TD><TD>import org.eclipse.swt.events.MouseEvent;</TD></TR><TR><TD CLASS="l">38</TD><TD>import org.eclipse.swt.events.MouseListener;</TD></TR><TR><TD CLASS="l">39</TD><TD>import org.eclipse.swt.events.MouseMoveListener;</TD></TR><TR><TD CLASS="l">40</TD><TD>import org.eclipse.swt.events.PaintEvent;</TD></TR><TR><TD CLASS="l">41</TD><TD>import org.eclipse.swt.events.PaintListener;</TD></TR><TR><TD CLASS="l">42</TD><TD>import org.eclipse.swt.graphics.Color;</TD></TR><TR><TD CLASS="l">43</TD><TD>import org.eclipse.swt.graphics.Cursor;</TD></TR><TR><TD CLASS="l">44</TD><TD>import org.eclipse.swt.graphics.GC;</TD></TR><TR><TD CLASS="l">45</TD><TD>import org.eclipse.swt.graphics.Point;</TD></TR><TR><TD CLASS="l">46</TD><TD>import org.eclipse.swt.graphics.RGB;</TD></TR><TR><TD CLASS="l">47</TD><TD>import org.eclipse.swt.widgets.Control;</TD></TR><TR><TD CLASS="l">48</TD><TD>import org.eclipse.swt.widgets.Display;</TD></TR><TR><TD CLASS="l">49</TD><TD>import org.eclipse.wst.sse.ui.internal.Logger;</TD></TR><TR><TD CLASS="l">50</TD><TD>import org.eclipse.wst.sse.ui.internal.util.EditorUtility;</TD></TR><TR><TD CLASS="l">51</TD><TD> </TD></TR><TR><TD CLASS="l">52</TD><TD> </TD></TR><TR><TD CLASS="l">53</TD><TD>/**</TD></TR><TR><TD CLASS="l">54</TD><TD> * @deprecated Use org.eclipse.jface.text.hyperlink.HyperlinkManager</TD></TR><TR><TD CLASS="l">55</TD><TD> */</TD></TR><TR><TD CLASS="l">56</TD><TD>public class OpenFileHyperlinkTracker implements KeyListener, MouseListener, MouseMoveListener, FocusListener, PaintListener, IPropertyChangeListener, IDocumentListener, ITextInputListener {</TD></TR><TR><TD CLASS="l">57</TD><TD> </TD></TR><TR><TD CLASS="l">58</TD><TD>        /** The session is active. */</TD></TR><TR><TD CLASS="l">59</TD><TD>        private boolean fActive;</TD></TR><TR><TD CLASS="l">60</TD><TD> </TD></TR><TR><TD CLASS="l">61</TD><TD>        /** The currently active style range. */</TD></TR><TR><TD CLASS="l">62</TD><TD>        private IRegion fActiveRegion;</TD></TR><TR><TD CLASS="l">63</TD><TD>        /** Preference key for browser-like links to be enabled */</TD></TR><TR><TD CLASS="l">64</TD><TD>        private String fBrowserLikeLinksKeyModifierKey;</TD></TR><TR><TD CLASS="l">65</TD><TD> </TD></TR><TR><TD CLASS="l">66</TD><TD>        /** The link color. */</TD></TR><TR><TD CLASS="l">67</TD><TD>        private Color fColor;</TD></TR><TR><TD CLASS="l">68</TD><TD>        /** The hand cursor. */</TD></TR><TR><TD CLASS="l">69</TD><TD>        private Cursor fCursor;</TD></TR><TR><TD CLASS="l">70</TD><TD>        /** The key modifier mask. */</TD></TR><TR><TD CLASS="l">71</TD><TD>        private int fKeyModifierMask;</TD></TR><TR><TD CLASS="l">72</TD><TD>        /** Preference key for hyperlink underline color */</TD></TR><TR><TD CLASS="l">73</TD><TD>        private String fLinkColorKey;</TD></TR><TR><TD CLASS="l">74</TD><TD>        /** The preference store */</TD></TR><TR><TD CLASS="l">75</TD><TD>        private IPreferenceStore fPreferenceStore;</TD></TR><TR><TD CLASS="l">76</TD><TD>        /** The currently active style range as position. */</TD></TR><TR><TD CLASS="l">77</TD><TD>        private Position fRememberedPosition;</TD></TR><TR><TD CLASS="l">78</TD><TD> </TD></TR><TR><TD CLASS="l">79</TD><TD>        /** The text viewer this hyperlink tracker is associated with */</TD></TR><TR><TD CLASS="l">80</TD><TD>        private ITextViewer fTextViewer;</TD></TR><TR><TD CLASS="l"><A NAME="0">81</A></TD><TD> </TD></TR><TR><TD CLASS="l">82</TD><TD>        /**</TD></TR><TR><TD CLASS="l">83</TD><TD>         *  </TD></TR><TR><TD CLASS="l">84</TD><TD>         */</TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>        public OpenFileHyperlinkTracker(ITextViewer textViewer) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">86</A></TD><TD>                fTextViewer = textViewer;</TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>        }</TD></TR><TR><TD CLASS="l">88</TD><TD> </TD></TR><TR><TD CLASS="l">89</TD><TD>        private void activateCursor(ITextViewer viewer) {</TD></TR><TR CLASS="z"><TD CLASS="l">90</TD><TD>                StyledText text = viewer.getTextWidget();</TD></TR><TR CLASS="z"><TD CLASS="l">91</TD><TD>                if (text == null || text.isDisposed())</TD></TR><TR CLASS="z"><TD CLASS="l">92</TD><TD>                        return;</TD></TR><TR CLASS="z"><TD CLASS="l">93</TD><TD>                Display display = text.getDisplay();</TD></TR><TR CLASS="z"><TD CLASS="l">94</TD><TD>                if (fCursor == null)</TD></TR><TR CLASS="z"><TD CLASS="l">95</TD><TD>                        fCursor = new Cursor(display, SWT.CURSOR_HAND);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">96</A></TD><TD>                text.setCursor(fCursor);</TD></TR><TR CLASS="z"><TD CLASS="l">97</TD><TD>        }</TD></TR><TR><TD CLASS="l">98</TD><TD> </TD></TR><TR><TD CLASS="l">99</TD><TD>        private int computeStateMask(String modifiers) {</TD></TR><TR CLASS="z"><TD CLASS="l">100</TD><TD>                if (modifiers == null)</TD></TR><TR CLASS="z"><TD CLASS="l">101</TD><TD>                        return -1;</TD></TR><TR><TD CLASS="l">102</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">103</TD><TD>                if (modifiers.length() == 0)</TD></TR><TR CLASS="z"><TD CLASS="l">104</TD><TD>                        return SWT.NONE;</TD></TR><TR><TD CLASS="l">105</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">106</TD><TD>                int stateMask = 0;</TD></TR><TR CLASS="z"><TD CLASS="l">107</TD><TD>                StringTokenizer modifierTokenizer = new StringTokenizer(modifiers, &#34;,;.:+-* &#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">108</TD><TD>                while (modifierTokenizer.hasMoreTokens()) {</TD></TR><TR CLASS="z"><TD CLASS="l">109</TD><TD>                        int modifier = EditorUtility.findLocalizedModifier(modifierTokenizer.nextToken());</TD></TR><TR CLASS="z"><TD CLASS="l">110</TD><TD>                        if (modifier == 0 || (stateMask &amp; modifier) == modifier)</TD></TR><TR CLASS="z"><TD CLASS="l">111</TD><TD>                                return -1;</TD></TR><TR CLASS="z"><TD CLASS="l">112</TD><TD>                        stateMask = stateMask | modifier;</TD></TR><TR><TD CLASS="l">113</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">114</TD><TD>                return stateMask;</TD></TR><TR><TD CLASS="l">115</TD><TD>        }</TD></TR><TR><TD CLASS="l">116</TD><TD> </TD></TR><TR><TD CLASS="l">117</TD><TD>        /**</TD></TR><TR><TD CLASS="l">118</TD><TD>         * Creates a color from the information stored in the given preference</TD></TR><TR><TD CLASS="l">119</TD><TD>         * store. Returns &lt;code&gt;null&lt;/code&gt; if there is no such information</TD></TR><TR><TD CLASS="l"><A NAME="4">120</A></TD><TD>         * available.</TD></TR><TR><TD CLASS="l">121</TD><TD>         */</TD></TR><TR><TD CLASS="l">122</TD><TD>        private Color createColor(IPreferenceStore store, String key, Display display) {</TD></TR><TR><TD CLASS="l">123</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">124</TD><TD>                RGB rgb = null;</TD></TR><TR><TD CLASS="l">125</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">126</TD><TD>                if (store.contains(key)) {</TD></TR><TR><TD CLASS="l">127</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">128</TD><TD>                        if (store.isDefault(key))</TD></TR><TR CLASS="z"><TD CLASS="l">129</TD><TD>                                rgb = PreferenceConverter.getDefaultColor(store, key);</TD></TR><TR><TD CLASS="l">130</TD><TD>                        else</TD></TR><TR CLASS="z"><TD CLASS="l">131</TD><TD>                                rgb = PreferenceConverter.getColor(store, key);</TD></TR><TR><TD CLASS="l">132</TD><TD>                }</TD></TR><TR><TD CLASS="l">133</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="5">134</A></TD><TD>                return EditorUtility.getColor(rgb);</TD></TR><TR><TD CLASS="l">135</TD><TD>        }</TD></TR><TR><TD CLASS="l">136</TD><TD> </TD></TR><TR><TD CLASS="l">137</TD><TD>        public void deactivate() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="6">138</A></TD><TD>                deactivate(false);</TD></TR><TR CLASS="z"><TD CLASS="l">139</TD><TD>        }</TD></TR><TR><TD CLASS="l">140</TD><TD> </TD></TR><TR><TD CLASS="l">141</TD><TD>        public void deactivate(boolean redrawAll) {</TD></TR><TR CLASS="z"><TD CLASS="l">142</TD><TD>                if (!fActive)</TD></TR><TR CLASS="z"><TD CLASS="l">143</TD><TD>                        return;</TD></TR><TR><TD CLASS="l">144</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">145</TD><TD>                repairRepresentation(redrawAll);</TD></TR><TR CLASS="z"><TD CLASS="l">146</TD><TD>                fActive = false;</TD></TR><TR CLASS="z"><TD CLASS="l">147</TD><TD>        }</TD></TR><TR><TD CLASS="l">148</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="7">149</A></TD><TD>        /*</TD></TR><TR><TD CLASS="l">150</TD><TD>         * @see org.eclipse.jface.text.IDocumentListener#documentAboutToBeChanged(org.eclipse.jface.text.DocumentEvent)</TD></TR><TR><TD CLASS="l">151</TD><TD>         */</TD></TR><TR><TD CLASS="l">152</TD><TD>        public void documentAboutToBeChanged(DocumentEvent event) {</TD></TR><TR CLASS="z"><TD CLASS="l">153</TD><TD>                if (fActive &amp;&amp; fActiveRegion != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">154</TD><TD>                        fRememberedPosition = new Position(fActiveRegion.getOffset(), fActiveRegion.getLength());</TD></TR><TR><TD CLASS="l">155</TD><TD>                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">156</TD><TD>                                event.getDocument().addPosition(fRememberedPosition);</TD></TR><TR CLASS="z"><TD CLASS="l">157</TD><TD>                        } catch (BadLocationException x) {</TD></TR><TR CLASS="z"><TD CLASS="l">158</TD><TD>                                fRememberedPosition = null;</TD></TR><TR><TD CLASS="l">159</TD><TD>                        }</TD></TR><TR><TD CLASS="l">160</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">161</TD><TD>        }</TD></TR><TR><TD CLASS="l">162</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="8">163</A></TD><TD>        /*</TD></TR><TR><TD CLASS="l">164</TD><TD>         * @see org.eclipse.jface.text.IDocumentListener#documentChanged(org.eclipse.jface.text.DocumentEvent)</TD></TR><TR><TD CLASS="l">165</TD><TD>         */</TD></TR><TR><TD CLASS="l">166</TD><TD>        public void documentChanged(DocumentEvent event) {</TD></TR><TR CLASS="z"><TD CLASS="l">167</TD><TD>                if (fRememberedPosition != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">168</TD><TD>                        if (!fRememberedPosition.isDeleted()) {</TD></TR><TR><TD CLASS="l">169</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">170</TD><TD>                                event.getDocument().removePosition(fRememberedPosition);</TD></TR><TR CLASS="z"><TD CLASS="l">171</TD><TD>                                fActiveRegion = new Region(fRememberedPosition.getOffset(), fRememberedPosition.getLength());</TD></TR><TR CLASS="z"><TD CLASS="l">172</TD><TD>                                fRememberedPosition = null;</TD></TR><TR><TD CLASS="l">173</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="24">174</A></TD><TD>                                ITextViewer viewer = getTextViewer();</TD></TR><TR CLASS="z"><TD CLASS="l">175</TD><TD>                                if (viewer != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">176</TD><TD>                                        StyledText widget = viewer.getTextWidget();</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="26">177</A></TD><TD>                                        if (widget != null &amp;&amp; !widget.isDisposed()) {</TD></TR><TR CLASS="z"><TD CLASS="l">178</TD><TD>                                                widget.getDisplay().asyncExec(new Runnable() {</TD></TR><TR><TD CLASS="l">179</TD><TD>                                                        public void run() {</TD></TR><TR CLASS="z"><TD CLASS="l">180</TD><TD>                                                                deactivate();</TD></TR><TR CLASS="z"><TD CLASS="l">181</TD><TD>                                                        }</TD></TR><TR><TD CLASS="l">182</TD><TD>                                                });</TD></TR><TR><TD CLASS="l">183</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">184</TD><TD>                                }</TD></TR><TR><TD CLASS="l">185</TD><TD> </TD></TR><TR><TD CLASS="l">186</TD><TD>                        } else {</TD></TR><TR CLASS="z"><TD CLASS="l">187</TD><TD>                                fActiveRegion = null;</TD></TR><TR CLASS="z"><TD CLASS="l">188</TD><TD>                                fRememberedPosition = null;</TD></TR><TR CLASS="z"><TD CLASS="l">189</TD><TD>                                deactivate();</TD></TR><TR><TD CLASS="l">190</TD><TD>                        }</TD></TR><TR><TD CLASS="l">191</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">192</TD><TD>        }</TD></TR><TR><TD CLASS="l">193</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="9">194</A></TD><TD>        /*</TD></TR><TR><TD CLASS="l">195</TD><TD>         * @see org.eclipse.swt.events.FocusListener#focusGained(org.eclipse.swt.events.FocusEvent)</TD></TR><TR><TD CLASS="l">196</TD><TD>         */</TD></TR><TR><TD CLASS="l">197</TD><TD>        public void focusGained(FocusEvent e) {</TD></TR><TR CLASS="z"><TD CLASS="l">198</TD><TD>        }</TD></TR><TR><TD CLASS="l">199</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="a">200</A></TD><TD>        /*</TD></TR><TR><TD CLASS="l">201</TD><TD>         * @see org.eclipse.swt.events.FocusListener#focusLost(org.eclipse.swt.events.FocusEvent)</TD></TR><TR><TD CLASS="l">202</TD><TD>         */</TD></TR><TR><TD CLASS="l">203</TD><TD>        public void focusLost(FocusEvent event) {</TD></TR><TR CLASS="z"><TD CLASS="l">204</TD><TD>                deactivate();</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="b">205</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">206</TD><TD> </TD></TR><TR><TD CLASS="l">207</TD><TD>        private int getCurrentTextOffset() {</TD></TR><TR><TD CLASS="l">208</TD><TD>                try {</TD></TR><TR CLASS="z"><TD CLASS="l">209</TD><TD>                        StyledText text = getTextViewer().getTextWidget();</TD></TR><TR CLASS="z"><TD CLASS="l">210</TD><TD>                        if (text == null || text.isDisposed())</TD></TR><TR CLASS="z"><TD CLASS="l">211</TD><TD>                                return -1;</TD></TR><TR><TD CLASS="l">212</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">213</TD><TD>                        Display display = text.getDisplay();</TD></TR><TR CLASS="z"><TD CLASS="l">214</TD><TD>                        Point absolutePosition = display.getCursorLocation();</TD></TR><TR CLASS="z"><TD CLASS="l">215</TD><TD>                        Point relativePosition = text.toControl(absolutePosition);</TD></TR><TR><TD CLASS="l">216</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">217</TD><TD>                        int widgetOffset = text.getOffsetAtLocation(relativePosition);</TD></TR><TR CLASS="z"><TD CLASS="l">218</TD><TD>                        if (getTextViewer() instanceof ITextViewerExtension5) {</TD></TR><TR CLASS="z"><TD CLASS="l">219</TD><TD>                                ITextViewerExtension5 extension = (ITextViewerExtension5) getTextViewer();</TD></TR><TR CLASS="z"><TD CLASS="l">220</TD><TD>                                return extension.widgetOffset2ModelOffset(widgetOffset);</TD></TR><TR><TD CLASS="l">221</TD><TD>                        } else {</TD></TR><TR CLASS="z"><TD CLASS="l">222</TD><TD>                                return widgetOffset + getTextViewer().getVisibleRegion().getOffset();</TD></TR><TR><TD CLASS="l">223</TD><TD>                        }</TD></TR><TR><TD CLASS="l">224</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">225</TD><TD>                } catch (IllegalArgumentException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">226</TD><TD>                        return -1;</TD></TR><TR><TD CLASS="l"><A NAME="c">227</A></TD><TD>                }</TD></TR><TR><TD CLASS="l">228</TD><TD>        }</TD></TR><TR><TD CLASS="l">229</TD><TD> </TD></TR><TR><TD CLASS="l">230</TD><TD>        private Point getMaximumLocation(StyledText text, int offset, int length) {</TD></TR><TR CLASS="z"><TD CLASS="l">231</TD><TD>                Point maxLocation = new Point(Integer.MIN_VALUE, Integer.MIN_VALUE);</TD></TR><TR><TD CLASS="l">232</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">233</TD><TD>                for (int i = 0; i &lt;= length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">234</TD><TD>                        Point location = text.getLocationAtOffset(offset + i);</TD></TR><TR><TD CLASS="l">235</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">236</TD><TD>                        if (location.x &gt; maxLocation.x)</TD></TR><TR CLASS="z"><TD CLASS="l">237</TD><TD>                                maxLocation.x = location.x;</TD></TR><TR CLASS="z"><TD CLASS="l">238</TD><TD>                        if (location.y &gt; maxLocation.y)</TD></TR><TR CLASS="z"><TD CLASS="l">239</TD><TD>                                maxLocation.y = location.y;</TD></TR><TR><TD CLASS="l">240</TD><TD>                }</TD></TR><TR><TD CLASS="l">241</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="d">242</A></TD><TD>                return maxLocation;</TD></TR><TR><TD CLASS="l">243</TD><TD>        }</TD></TR><TR><TD CLASS="l">244</TD><TD> </TD></TR><TR><TD CLASS="l">245</TD><TD>        private Point getMinimumLocation(StyledText text, int offset, int length) {</TD></TR><TR CLASS="z"><TD CLASS="l">246</TD><TD>                Point minLocation = new Point(Integer.MAX_VALUE, Integer.MAX_VALUE);</TD></TR><TR><TD CLASS="l">247</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">248</TD><TD>                for (int i = 0; i &lt;= length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">249</TD><TD>                        Point location = text.getLocationAtOffset(offset + i);</TD></TR><TR><TD CLASS="l">250</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">251</TD><TD>                        if (location.x &lt; minLocation.x)</TD></TR><TR CLASS="z"><TD CLASS="l">252</TD><TD>                                minLocation.x = location.x;</TD></TR><TR CLASS="z"><TD CLASS="l">253</TD><TD>                        if (location.y &lt; minLocation.y)</TD></TR><TR CLASS="z"><TD CLASS="l">254</TD><TD>                                minLocation.y = location.y;</TD></TR><TR><TD CLASS="l">255</TD><TD>                }</TD></TR><TR><TD CLASS="l">256</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="e">257</A></TD><TD>                return minLocation;</TD></TR><TR><TD CLASS="l">258</TD><TD>        }</TD></TR><TR><TD CLASS="l">259</TD><TD> </TD></TR><TR><TD CLASS="l">260</TD><TD>        private IPreferenceStore getNewPreferenceStore() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="f">261</A></TD><TD>                return fPreferenceStore;</TD></TR><TR><TD CLASS="l">262</TD><TD>        }</TD></TR><TR><TD CLASS="l">263</TD><TD> </TD></TR><TR><TD CLASS="l">264</TD><TD>        private ITextViewer getTextViewer() {</TD></TR><TR CLASS="z"><TD CLASS="l">265</TD><TD>                return fTextViewer;</TD></TR><TR><TD CLASS="l"><A NAME="10">266</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">267</TD><TD> </TD></TR><TR><TD CLASS="l">268</TD><TD>        private void highlightRegion(ITextViewer viewer, IRegion region) {</TD></TR><TR><TD CLASS="l">269</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">270</TD><TD>                if (region.equals(fActiveRegion))</TD></TR><TR CLASS="z"><TD CLASS="l">271</TD><TD>                        return;</TD></TR><TR><TD CLASS="l">272</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">273</TD><TD>                repairRepresentation();</TD></TR><TR><TD CLASS="l">274</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">275</TD><TD>                StyledText text = viewer.getTextWidget();</TD></TR><TR CLASS="z"><TD CLASS="l">276</TD><TD>                if (text == null || text.isDisposed())</TD></TR><TR CLASS="z"><TD CLASS="l">277</TD><TD>                        return;</TD></TR><TR><TD CLASS="l">278</TD><TD> </TD></TR><TR><TD CLASS="l">279</TD><TD> </TD></TR><TR><TD CLASS="l">280</TD><TD>                // Underline</TD></TR><TR CLASS="z"><TD CLASS="l">281</TD><TD>                int offset = 0;</TD></TR><TR CLASS="z"><TD CLASS="l">282</TD><TD>                int length = 0;</TD></TR><TR CLASS="z"><TD CLASS="l">283</TD><TD>                if (viewer instanceof ITextViewerExtension5) {</TD></TR><TR CLASS="z"><TD CLASS="l">284</TD><TD>                        ITextViewerExtension5 extension = (ITextViewerExtension5) viewer;</TD></TR><TR CLASS="z"><TD CLASS="l">285</TD><TD>                        IRegion widgetRange = extension.modelRange2WidgetRange(new Region(region.getOffset(), region.getLength()));</TD></TR><TR CLASS="z"><TD CLASS="l">286</TD><TD>                        if (widgetRange == null)</TD></TR><TR CLASS="z"><TD CLASS="l">287</TD><TD>                                return;</TD></TR><TR><TD CLASS="l">288</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">289</TD><TD>                        offset = widgetRange.getOffset();</TD></TR><TR CLASS="z"><TD CLASS="l">290</TD><TD>                        length = widgetRange.getLength();</TD></TR><TR><TD CLASS="l">291</TD><TD> </TD></TR><TR><TD CLASS="l">292</TD><TD>                } else {</TD></TR><TR CLASS="z"><TD CLASS="l">293</TD><TD>                        offset = region.getOffset() - viewer.getVisibleRegion().getOffset();</TD></TR><TR CLASS="z"><TD CLASS="l">294</TD><TD>                        length = region.getLength();</TD></TR><TR><TD CLASS="l">295</TD><TD>                }</TD></TR><TR><TD CLASS="l">296</TD><TD>                // need clearBackground to be true for paint event to be fired</TD></TR><TR CLASS="z"><TD CLASS="l">297</TD><TD>                text.redrawRange(offset, length, true);</TD></TR><TR><TD CLASS="l">298</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="11">299</A></TD><TD>                fActiveRegion = region;</TD></TR><TR CLASS="z"><TD CLASS="l">300</TD><TD>        }</TD></TR><TR><TD CLASS="l">301</TD><TD> </TD></TR><TR><TD CLASS="l">302</TD><TD>        private boolean includes(IRegion region, IRegion position) {</TD></TR><TR CLASS="z"><TD CLASS="l">303</TD><TD>                return position.getOffset() &gt;= region.getOffset() &amp;&amp; position.getOffset() + position.getLength() &lt;= region.getOffset() + region.getLength();</TD></TR><TR><TD CLASS="l">304</TD><TD>        }</TD></TR><TR><TD CLASS="l">305</TD><TD> </TD></TR><TR><TD CLASS="l">306</TD><TD>        /*</TD></TR><TR><TD CLASS="l"><A NAME="12">307</A></TD><TD>         * @see org.eclipse.jface.text.ITextInputListener#inputDocumentAboutToBeChanged(org.eclipse.jface.text.IDocument,</TD></TR><TR><TD CLASS="l">308</TD><TD>         *      org.eclipse.jface.text.IDocument)</TD></TR><TR><TD CLASS="l">309</TD><TD>         */</TD></TR><TR><TD CLASS="l">310</TD><TD>        public void inputDocumentAboutToBeChanged(IDocument oldInput, IDocument newInput) {</TD></TR><TR CLASS="z"><TD CLASS="l">311</TD><TD>                if (oldInput == null)</TD></TR><TR CLASS="z"><TD CLASS="l">312</TD><TD>                        return;</TD></TR><TR CLASS="z"><TD CLASS="l">313</TD><TD>                deactivate();</TD></TR><TR CLASS="z"><TD CLASS="l">314</TD><TD>                oldInput.removeDocumentListener(this);</TD></TR><TR CLASS="z"><TD CLASS="l">315</TD><TD>        }</TD></TR><TR><TD CLASS="l">316</TD><TD> </TD></TR><TR><TD CLASS="l">317</TD><TD>        /*</TD></TR><TR><TD CLASS="l"><A NAME="13">318</A></TD><TD>         * @see org.eclipse.jface.text.ITextInputListener#inputDocumentChanged(org.eclipse.jface.text.IDocument,</TD></TR><TR><TD CLASS="l">319</TD><TD>         *      org.eclipse.jface.text.IDocument)</TD></TR><TR><TD CLASS="l">320</TD><TD>         */</TD></TR><TR><TD CLASS="l">321</TD><TD>        public void inputDocumentChanged(IDocument oldInput, IDocument newInput) {</TD></TR><TR CLASS="z"><TD CLASS="l">322</TD><TD>                if (newInput == null)</TD></TR><TR CLASS="z"><TD CLASS="l">323</TD><TD>                        return;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="14">324</A></TD><TD>                newInput.addDocumentListener(this);</TD></TR><TR CLASS="z"><TD CLASS="l">325</TD><TD>        }</TD></TR><TR><TD CLASS="l">326</TD><TD> </TD></TR><TR><TD CLASS="l">327</TD><TD>        public void install(IPreferenceStore store) {</TD></TR><TR CLASS="z"><TD CLASS="l">328</TD><TD>                fPreferenceStore = store;</TD></TR><TR CLASS="z"><TD CLASS="l">329</TD><TD>                ITextViewer textViewer = getTextViewer();</TD></TR><TR CLASS="z"><TD CLASS="l">330</TD><TD>                if (textViewer == null)</TD></TR><TR CLASS="z"><TD CLASS="l">331</TD><TD>                        return;</TD></TR><TR><TD CLASS="l">332</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">333</TD><TD>                StyledText text = textViewer.getTextWidget();</TD></TR><TR CLASS="z"><TD CLASS="l">334</TD><TD>                if (text == null || text.isDisposed())</TD></TR><TR CLASS="z"><TD CLASS="l">335</TD><TD>                        return;</TD></TR><TR><TD CLASS="l">336</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">337</TD><TD>                updateColor(textViewer);</TD></TR><TR><TD CLASS="l">338</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">339</TD><TD>                textViewer.addTextInputListener(this);</TD></TR><TR><TD CLASS="l">340</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">341</TD><TD>                IDocument document = textViewer.getDocument();</TD></TR><TR CLASS="z"><TD CLASS="l">342</TD><TD>                if (document != null)</TD></TR><TR CLASS="z"><TD CLASS="l">343</TD><TD>                        document.addDocumentListener(this);</TD></TR><TR><TD CLASS="l">344</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">345</TD><TD>                text.addKeyListener(this);</TD></TR><TR CLASS="z"><TD CLASS="l">346</TD><TD>                text.addMouseListener(this);</TD></TR><TR CLASS="z"><TD CLASS="l">347</TD><TD>                text.addMouseMoveListener(this);</TD></TR><TR CLASS="z"><TD CLASS="l">348</TD><TD>                text.addFocusListener(this);</TD></TR><TR CLASS="z"><TD CLASS="l">349</TD><TD>                text.addPaintListener(this);</TD></TR><TR><TD CLASS="l">350</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">351</TD><TD>                updateKeyModifierMask();</TD></TR><TR><TD CLASS="l">352</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">353</TD><TD>                fPreferenceStore.addPropertyChangeListener(this);</TD></TR><TR CLASS="z"><TD CLASS="l">354</TD><TD>        }</TD></TR><TR><TD CLASS="l">355</TD><TD> </TD></TR><TR><TD CLASS="l">356</TD><TD>        /*</TD></TR><TR><TD CLASS="l"><A NAME="15">357</A></TD><TD>         * @see org.eclipse.swt.events.KeyListener#keyPressed(org.eclipse.swt.events.KeyEvent)</TD></TR><TR><TD CLASS="l">358</TD><TD>         */</TD></TR><TR><TD CLASS="l">359</TD><TD>        public void keyPressed(KeyEvent event) {</TD></TR><TR><TD CLASS="l">360</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">361</TD><TD>                if (fActive) {</TD></TR><TR CLASS="z"><TD CLASS="l">362</TD><TD>                        deactivate();</TD></TR><TR CLASS="z"><TD CLASS="l">363</TD><TD>                        return;</TD></TR><TR><TD CLASS="l">364</TD><TD>                }</TD></TR><TR><TD CLASS="l">365</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">366</TD><TD>                if (event.keyCode != fKeyModifierMask) {</TD></TR><TR CLASS="z"><TD CLASS="l">367</TD><TD>                        deactivate();</TD></TR><TR CLASS="z"><TD CLASS="l">368</TD><TD>                        return;</TD></TR><TR><TD CLASS="l">369</TD><TD>                }</TD></TR><TR><TD CLASS="l">370</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">371</TD><TD>                fActive = true;</TD></TR><TR><TD CLASS="l">372</TD><TD> </TD></TR><TR><TD CLASS="l">373</TD><TD>                //                        removed for #25871</TD></TR><TR><TD CLASS="l">374</TD><TD>                //</TD></TR><TR><TD CLASS="l">375</TD><TD>                //                        ISourceViewer viewer= getSourceViewer();</TD></TR><TR><TD CLASS="l">376</TD><TD>                //                        if (viewer == null)</TD></TR><TR><TD CLASS="l">377</TD><TD>                //                                return;</TD></TR><TR><TD CLASS="l">378</TD><TD>                //                        </TD></TR><TR><TD CLASS="l">379</TD><TD>                //                        IRegion region= getCurrentTextRegion(viewer);</TD></TR><TR><TD CLASS="l">380</TD><TD>                //                        if (region == null)</TD></TR><TR><TD CLASS="l">381</TD><TD>                //                                return;</TD></TR><TR><TD CLASS="l">382</TD><TD>                //                        </TD></TR><TR><TD CLASS="l">383</TD><TD>                //                        highlightRegion(viewer, region);</TD></TR><TR><TD CLASS="l">384</TD><TD>                //                        activateCursor(viewer);</TD></TR><TR CLASS="z"><TD CLASS="l">385</TD><TD>        }</TD></TR><TR><TD CLASS="l">386</TD><TD> </TD></TR><TR><TD CLASS="l">387</TD><TD>        /*</TD></TR><TR><TD CLASS="l"><A NAME="16">388</A></TD><TD>         * @see org.eclipse.swt.events.KeyListener#keyReleased(org.eclipse.swt.events.KeyEvent)</TD></TR><TR><TD CLASS="l">389</TD><TD>         */</TD></TR><TR><TD CLASS="l">390</TD><TD>        public void keyReleased(KeyEvent event) {</TD></TR><TR><TD CLASS="l">391</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">392</TD><TD>                if (!fActive)</TD></TR><TR CLASS="z"><TD CLASS="l">393</TD><TD>                        return;</TD></TR><TR><TD CLASS="l">394</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">395</TD><TD>                deactivate();</TD></TR><TR CLASS="z"><TD CLASS="l">396</TD><TD>        }</TD></TR><TR><TD CLASS="l">397</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="17">398</A></TD><TD>        /*</TD></TR><TR><TD CLASS="l">399</TD><TD>         * @see org.eclipse.swt.events.MouseListener#mouseDoubleClick(org.eclipse.swt.events.MouseEvent)</TD></TR><TR><TD CLASS="l">400</TD><TD>         */</TD></TR><TR><TD CLASS="l">401</TD><TD>        public void mouseDoubleClick(MouseEvent e) {</TD></TR><TR CLASS="z"><TD CLASS="l">402</TD><TD>        }</TD></TR><TR><TD CLASS="l">403</TD><TD> </TD></TR><TR><TD CLASS="l">404</TD><TD>        /*</TD></TR><TR><TD CLASS="l"><A NAME="18">405</A></TD><TD>         * @see org.eclipse.swt.events.MouseListener#mouseDown(org.eclipse.swt.events.MouseEvent)</TD></TR><TR><TD CLASS="l">406</TD><TD>         */</TD></TR><TR><TD CLASS="l">407</TD><TD>        public void mouseDown(MouseEvent event) {</TD></TR><TR><TD CLASS="l">408</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">409</TD><TD>                if (!fActive)</TD></TR><TR CLASS="z"><TD CLASS="l">410</TD><TD>                        return;</TD></TR><TR><TD CLASS="l">411</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">412</TD><TD>                if (event.stateMask != fKeyModifierMask) {</TD></TR><TR CLASS="z"><TD CLASS="l">413</TD><TD>                        deactivate();</TD></TR><TR CLASS="z"><TD CLASS="l">414</TD><TD>                        return;</TD></TR><TR><TD CLASS="l">415</TD><TD>                }</TD></TR><TR><TD CLASS="l">416</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">417</TD><TD>                if (event.button != 1) {</TD></TR><TR CLASS="z"><TD CLASS="l">418</TD><TD>                        deactivate();</TD></TR><TR CLASS="z"><TD CLASS="l">419</TD><TD>                        return;</TD></TR><TR><TD CLASS="l">420</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">421</TD><TD>        }</TD></TR><TR><TD CLASS="l">422</TD><TD> </TD></TR><TR><TD CLASS="l">423</TD><TD>        /*</TD></TR><TR><TD CLASS="l"><A NAME="19">424</A></TD><TD>         * @see org.eclipse.swt.events.MouseMoveListener#mouseMove(org.eclipse.swt.events.MouseEvent)</TD></TR><TR><TD CLASS="l">425</TD><TD>         */</TD></TR><TR><TD CLASS="l">426</TD><TD>        public void mouseMove(MouseEvent event) {</TD></TR><TR><TD CLASS="l">427</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">428</TD><TD>                if (event.widget instanceof Control &amp;&amp; !((Control) event.widget).isFocusControl()) {</TD></TR><TR CLASS="z"><TD CLASS="l">429</TD><TD>                        deactivate();</TD></TR><TR CLASS="z"><TD CLASS="l">430</TD><TD>                        return;</TD></TR><TR><TD CLASS="l">431</TD><TD>                }</TD></TR><TR><TD CLASS="l">432</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">433</TD><TD>                if (!fActive) {</TD></TR><TR CLASS="z"><TD CLASS="l">434</TD><TD>                        if (event.stateMask != fKeyModifierMask)</TD></TR><TR CLASS="z"><TD CLASS="l">435</TD><TD>                                return;</TD></TR><TR><TD CLASS="l">436</TD><TD>                        // modifier was already pressed</TD></TR><TR CLASS="z"><TD CLASS="l">437</TD><TD>                        fActive = true;</TD></TR><TR><TD CLASS="l">438</TD><TD>                }</TD></TR><TR><TD CLASS="l">439</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">440</TD><TD>                ITextViewer viewer = getTextViewer();</TD></TR><TR CLASS="z"><TD CLASS="l">441</TD><TD>                if (viewer == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">442</TD><TD>                        deactivate();</TD></TR><TR CLASS="z"><TD CLASS="l">443</TD><TD>                        return;</TD></TR><TR><TD CLASS="l">444</TD><TD>                }</TD></TR><TR><TD CLASS="l">445</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">446</TD><TD>                StyledText text = viewer.getTextWidget();</TD></TR><TR CLASS="z"><TD CLASS="l">447</TD><TD>                if (text == null || text.isDisposed()) {</TD></TR><TR CLASS="z"><TD CLASS="l">448</TD><TD>                        deactivate();</TD></TR><TR CLASS="z"><TD CLASS="l">449</TD><TD>                        return;</TD></TR><TR><TD CLASS="l">450</TD><TD>                }</TD></TR><TR><TD CLASS="l">451</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">452</TD><TD>                if ((event.stateMask &amp; SWT.BUTTON1) != 0 &amp;&amp; text.getSelectionCount() != 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">453</TD><TD>                        deactivate();</TD></TR><TR CLASS="z"><TD CLASS="l">454</TD><TD>                        return;</TD></TR><TR><TD CLASS="l">455</TD><TD>                }</TD></TR><TR><TD CLASS="l">456</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">457</TD><TD>                IRegion region = null;</TD></TR><TR CLASS="z"><TD CLASS="l">458</TD><TD>                int offset = getCurrentTextOffset();</TD></TR><TR CLASS="z"><TD CLASS="l">459</TD><TD>                IOpenOn openOn = OpenOnProvider.getInstance().getOpenOn(getTextViewer().getDocument(), offset);</TD></TR><TR CLASS="z"><TD CLASS="l">460</TD><TD>                if (openOn != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">461</TD><TD>                        region = openOn.getOpenOnRegion(getTextViewer().getDocument(), offset);</TD></TR><TR><TD CLASS="l">462</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">463</TD><TD>                if (region == null || region.getLength() == 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">464</TD><TD>                        repairRepresentation();</TD></TR><TR CLASS="z"><TD CLASS="l">465</TD><TD>                        return;</TD></TR><TR><TD CLASS="l">466</TD><TD>                }</TD></TR><TR><TD CLASS="l">467</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">468</TD><TD>                highlightRegion(viewer, region);</TD></TR><TR CLASS="z"><TD CLASS="l">469</TD><TD>                activateCursor(viewer);</TD></TR><TR CLASS="z"><TD CLASS="l">470</TD><TD>        }</TD></TR><TR><TD CLASS="l">471</TD><TD> </TD></TR><TR><TD CLASS="l">472</TD><TD>        /*</TD></TR><TR><TD CLASS="l"><A NAME="1a">473</A></TD><TD>         * @see org.eclipse.swt.events.MouseListener#mouseUp(org.eclipse.swt.events.MouseEvent)</TD></TR><TR><TD CLASS="l">474</TD><TD>         */</TD></TR><TR><TD CLASS="l">475</TD><TD>        public void mouseUp(MouseEvent e) {</TD></TR><TR><TD CLASS="l">476</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">477</TD><TD>                if (!fActive)</TD></TR><TR CLASS="z"><TD CLASS="l">478</TD><TD>                        return;</TD></TR><TR><TD CLASS="l">479</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">480</TD><TD>                if (e.button != 1) {</TD></TR><TR CLASS="z"><TD CLASS="l">481</TD><TD>                        deactivate();</TD></TR><TR CLASS="z"><TD CLASS="l">482</TD><TD>                        return;</TD></TR><TR><TD CLASS="l">483</TD><TD>                }</TD></TR><TR><TD CLASS="l">484</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">485</TD><TD>                boolean wasActive = fCursor != null;</TD></TR><TR CLASS="z"><TD CLASS="l">486</TD><TD>                IRegion previousRegion = fActiveRegion;</TD></TR><TR><TD CLASS="l">487</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">488</TD><TD>                deactivate();</TD></TR><TR><TD CLASS="l">489</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">490</TD><TD>                if (wasActive) {</TD></TR><TR CLASS="z"><TD CLASS="l">491</TD><TD>                        IOpenOn openOn = OpenOnProvider.getInstance().getOpenOn(getTextViewer().getDocument(), previousRegion.getOffset());</TD></TR><TR CLASS="z"><TD CLASS="l">492</TD><TD>                        if (openOn != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">493</TD><TD>                                openOn.openOn(getTextViewer().getDocument(), previousRegion);</TD></TR><TR><TD CLASS="l">494</TD><TD>                        }</TD></TR><TR><TD CLASS="l">495</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">496</TD><TD>        }</TD></TR><TR><TD CLASS="l">497</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="1b">498</A></TD><TD>        /*</TD></TR><TR><TD CLASS="l">499</TD><TD>         * @see PaintListener#paintControl(PaintEvent)</TD></TR><TR><TD CLASS="l">500</TD><TD>         */</TD></TR><TR><TD CLASS="l">501</TD><TD>        public void paintControl(PaintEvent event) {</TD></TR><TR CLASS="z"><TD CLASS="l">502</TD><TD>                if (fActiveRegion == null)</TD></TR><TR CLASS="z"><TD CLASS="l">503</TD><TD>                        return;</TD></TR><TR><TD CLASS="l">504</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">505</TD><TD>                ITextViewer viewer = getTextViewer();</TD></TR><TR CLASS="z"><TD CLASS="l">506</TD><TD>                if (viewer == null)</TD></TR><TR CLASS="z"><TD CLASS="l">507</TD><TD>                        return;</TD></TR><TR><TD CLASS="l">508</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">509</TD><TD>                StyledText text = viewer.getTextWidget();</TD></TR><TR CLASS="z"><TD CLASS="l">510</TD><TD>                if (text == null || text.isDisposed())</TD></TR><TR CLASS="z"><TD CLASS="l">511</TD><TD>                        return;</TD></TR><TR><TD CLASS="l">512</TD><TD> </TD></TR><TR><TD CLASS="l">513</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">514</TD><TD>                int offset = 0;</TD></TR><TR CLASS="z"><TD CLASS="l">515</TD><TD>                int length = 0;</TD></TR><TR><TD CLASS="l">516</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">517</TD><TD>                if (viewer instanceof ITextViewerExtension5) {</TD></TR><TR><TD CLASS="l">518</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">519</TD><TD>                        ITextViewerExtension5 extension = (ITextViewerExtension5) viewer;</TD></TR><TR CLASS="z"><TD CLASS="l">520</TD><TD>                        IRegion widgetRange = extension.modelRange2WidgetRange(fActiveRegion);</TD></TR><TR CLASS="z"><TD CLASS="l">521</TD><TD>                        if (widgetRange == null)</TD></TR><TR CLASS="z"><TD CLASS="l">522</TD><TD>                                return;</TD></TR><TR><TD CLASS="l">523</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">524</TD><TD>                        offset = widgetRange.getOffset();</TD></TR><TR CLASS="z"><TD CLASS="l">525</TD><TD>                        length = widgetRange.getLength();</TD></TR><TR><TD CLASS="l">526</TD><TD> </TD></TR><TR><TD CLASS="l">527</TD><TD>                } else {</TD></TR><TR><TD CLASS="l">528</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">529</TD><TD>                        IRegion region = viewer.getVisibleRegion();</TD></TR><TR CLASS="z"><TD CLASS="l">530</TD><TD>                        if (!includes(region, fActiveRegion))</TD></TR><TR CLASS="z"><TD CLASS="l">531</TD><TD>                                return;</TD></TR><TR><TD CLASS="l">532</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">533</TD><TD>                        offset = fActiveRegion.getOffset() - region.getOffset();</TD></TR><TR CLASS="z"><TD CLASS="l">534</TD><TD>                        length = fActiveRegion.getLength();</TD></TR><TR><TD CLASS="l">535</TD><TD>                }</TD></TR><TR><TD CLASS="l">536</TD><TD> </TD></TR><TR><TD CLASS="l">537</TD><TD>                // support for bidi</TD></TR><TR CLASS="z"><TD CLASS="l">538</TD><TD>                Point minLocation = getMinimumLocation(text, offset, length);</TD></TR><TR CLASS="z"><TD CLASS="l">539</TD><TD>                Point maxLocation = getMaximumLocation(text, offset, length);</TD></TR><TR><TD CLASS="l">540</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">541</TD><TD>                int x1 = minLocation.x;</TD></TR><TR CLASS="z"><TD CLASS="l">542</TD><TD>                int x2 = minLocation.x + maxLocation.x - minLocation.x - 1;</TD></TR><TR CLASS="z"><TD CLASS="l">543</TD><TD>                int y = minLocation.y + text.getLineHeight() - 1;</TD></TR><TR><TD CLASS="l">544</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">545</TD><TD>                GC gc = event.gc;</TD></TR><TR CLASS="z"><TD CLASS="l">546</TD><TD>                if (fColor != null &amp;&amp; !fColor.isDisposed())</TD></TR><TR CLASS="z"><TD CLASS="l">547</TD><TD>                        gc.setForeground(fColor);</TD></TR><TR CLASS="z"><TD CLASS="l">548</TD><TD>                gc.drawLine(x1, y, x2, y);</TD></TR><TR CLASS="z"><TD CLASS="l">549</TD><TD>        }</TD></TR><TR><TD CLASS="l">550</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="1c">551</A></TD><TD>        /*</TD></TR><TR><TD CLASS="l">552</TD><TD>         * @see IPropertyChangeListener#propertyChange(PropertyChangeEvent)</TD></TR><TR><TD CLASS="l">553</TD><TD>         */</TD></TR><TR><TD CLASS="l">554</TD><TD>        public void propertyChange(PropertyChangeEvent event) {</TD></TR><TR CLASS="z"><TD CLASS="l">555</TD><TD>                if (event.getProperty().equals(fLinkColorKey)) {</TD></TR><TR CLASS="z"><TD CLASS="l">556</TD><TD>                        ITextViewer viewer = getTextViewer();</TD></TR><TR CLASS="z"><TD CLASS="l">557</TD><TD>                        if (viewer != null)</TD></TR><TR CLASS="z"><TD CLASS="l">558</TD><TD>                                updateColor(viewer);</TD></TR><TR CLASS="z"><TD CLASS="l">559</TD><TD>                } else if (event.getProperty().equals(fBrowserLikeLinksKeyModifierKey)) {</TD></TR><TR CLASS="z"><TD CLASS="l">560</TD><TD>                        updateKeyModifierMask();</TD></TR><TR><TD CLASS="l"><A NAME="1d">561</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">562</TD><TD>        }</TD></TR><TR><TD CLASS="l">563</TD><TD> </TD></TR><TR><TD CLASS="l">564</TD><TD>        private void repairRepresentation() {</TD></TR><TR CLASS="z"><TD CLASS="l">565</TD><TD>                repairRepresentation(false);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="1e">566</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">567</TD><TD> </TD></TR><TR><TD CLASS="l">568</TD><TD>        private void repairRepresentation(boolean redrawAll) {</TD></TR><TR><TD CLASS="l">569</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">570</TD><TD>                if (fActiveRegion == null)</TD></TR><TR CLASS="z"><TD CLASS="l">571</TD><TD>                        return;</TD></TR><TR><TD CLASS="l">572</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">573</TD><TD>                int offset = fActiveRegion.getOffset();</TD></TR><TR CLASS="z"><TD CLASS="l">574</TD><TD>                int length = fActiveRegion.getLength();</TD></TR><TR CLASS="z"><TD CLASS="l">575</TD><TD>                fActiveRegion = null;</TD></TR><TR><TD CLASS="l">576</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">577</TD><TD>                ITextViewer viewer = getTextViewer();</TD></TR><TR CLASS="z"><TD CLASS="l">578</TD><TD>                if (viewer != null) {</TD></TR><TR><TD CLASS="l">579</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">580</TD><TD>                        resetCursor(viewer);</TD></TR><TR><TD CLASS="l">581</TD><TD> </TD></TR><TR><TD CLASS="l">582</TD><TD>                        // Remove underline</TD></TR><TR CLASS="z"><TD CLASS="l">583</TD><TD>                        if (viewer instanceof ITextViewerExtension5) {</TD></TR><TR CLASS="z"><TD CLASS="l">584</TD><TD>                                ITextViewerExtension5 extension = (ITextViewerExtension5) viewer;</TD></TR><TR CLASS="z"><TD CLASS="l">585</TD><TD>                                offset = extension.modelOffset2WidgetOffset(offset);</TD></TR><TR><TD CLASS="l">586</TD><TD>                        } else {</TD></TR><TR CLASS="z"><TD CLASS="l">587</TD><TD>                                offset -= viewer.getVisibleRegion().getOffset();</TD></TR><TR><TD CLASS="l">588</TD><TD>                        }</TD></TR><TR><TD CLASS="l">589</TD><TD>                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">590</TD><TD>                                StyledText text = viewer.getTextWidget();</TD></TR><TR><TD CLASS="l">591</TD><TD> </TD></TR><TR><TD CLASS="l">592</TD><TD>                                // need clearBackground to be true for paint event to be fired</TD></TR><TR CLASS="z"><TD CLASS="l">593</TD><TD>                                text.redrawRange(offset, length, true);</TD></TR><TR CLASS="z"><TD CLASS="l">594</TD><TD>                        } catch (IllegalArgumentException x) {</TD></TR><TR CLASS="z"><TD CLASS="l">595</TD><TD>                                Logger.logException(x);</TD></TR><TR><TD CLASS="l">596</TD><TD>                        }</TD></TR><TR><TD CLASS="l"><A NAME="1f">597</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">598</TD><TD>        }</TD></TR><TR><TD CLASS="l">599</TD><TD> </TD></TR><TR><TD CLASS="l">600</TD><TD>        private void resetCursor(ITextViewer viewer) {</TD></TR><TR CLASS="z"><TD CLASS="l">601</TD><TD>                StyledText text = viewer.getTextWidget();</TD></TR><TR CLASS="z"><TD CLASS="l">602</TD><TD>                if (text != null &amp;&amp; !text.isDisposed())</TD></TR><TR CLASS="z"><TD CLASS="l">603</TD><TD>                        text.setCursor(null);</TD></TR><TR><TD CLASS="l">604</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">605</TD><TD>                if (fCursor != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">606</TD><TD>                        fCursor.dispose();</TD></TR><TR CLASS="z"><TD CLASS="l">607</TD><TD>                        fCursor = null;</TD></TR><TR><TD CLASS="l"><A NAME="20">608</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">609</TD><TD>        }</TD></TR><TR><TD CLASS="l">610</TD><TD> </TD></TR><TR><TD CLASS="l">611</TD><TD>        public void setHyperlinkPreferenceKeys(String linkColorKey, String browserLikeLinksKeyModifierKey) {</TD></TR><TR CLASS="z"><TD CLASS="l">612</TD><TD>                fLinkColorKey = linkColorKey;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="21">613</A></TD><TD>                fBrowserLikeLinksKeyModifierKey = browserLikeLinksKeyModifierKey;</TD></TR><TR CLASS="z"><TD CLASS="l">614</TD><TD>        }</TD></TR><TR><TD CLASS="l">615</TD><TD> </TD></TR><TR><TD CLASS="l">616</TD><TD>        public void uninstall() {</TD></TR><TR CLASS="z"><TD CLASS="l">617</TD><TD>                if (fCursor != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">618</TD><TD>                        fCursor.dispose();</TD></TR><TR CLASS="z"><TD CLASS="l">619</TD><TD>                        fCursor = null;</TD></TR><TR><TD CLASS="l">620</TD><TD>                }</TD></TR><TR><TD CLASS="l">621</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">622</TD><TD>                ITextViewer textViewer = getTextViewer();</TD></TR><TR CLASS="z"><TD CLASS="l">623</TD><TD>                if (textViewer == null)</TD></TR><TR CLASS="z"><TD CLASS="l">624</TD><TD>                        return;</TD></TR><TR><TD CLASS="l">625</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">626</TD><TD>                textViewer.removeTextInputListener(this);</TD></TR><TR><TD CLASS="l">627</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">628</TD><TD>                IDocument document = textViewer.getDocument();</TD></TR><TR CLASS="z"><TD CLASS="l">629</TD><TD>                if (document != null)</TD></TR><TR CLASS="z"><TD CLASS="l">630</TD><TD>                        document.removeDocumentListener(this);</TD></TR><TR><TD CLASS="l">631</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">632</TD><TD>                IPreferenceStore preferenceStore = getNewPreferenceStore();</TD></TR><TR CLASS="z"><TD CLASS="l">633</TD><TD>                if (preferenceStore != null)</TD></TR><TR CLASS="z"><TD CLASS="l">634</TD><TD>                        preferenceStore.removePropertyChangeListener(this);</TD></TR><TR><TD CLASS="l">635</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">636</TD><TD>                StyledText text = textViewer.getTextWidget();</TD></TR><TR CLASS="z"><TD CLASS="l">637</TD><TD>                if (text == null || text.isDisposed())</TD></TR><TR CLASS="z"><TD CLASS="l">638</TD><TD>                        return;</TD></TR><TR><TD CLASS="l">639</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">640</TD><TD>                text.removeKeyListener(this);</TD></TR><TR CLASS="z"><TD CLASS="l">641</TD><TD>                text.removeMouseListener(this);</TD></TR><TR CLASS="z"><TD CLASS="l">642</TD><TD>                text.removeMouseMoveListener(this);</TD></TR><TR CLASS="z"><TD CLASS="l">643</TD><TD>                text.removeFocusListener(this);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="22">644</A></TD><TD>                text.removePaintListener(this);</TD></TR><TR CLASS="z"><TD CLASS="l">645</TD><TD>        }</TD></TR><TR><TD CLASS="l">646</TD><TD> </TD></TR><TR><TD CLASS="l">647</TD><TD>        private void updateColor(ITextViewer viewer) {</TD></TR><TR CLASS="z"><TD CLASS="l">648</TD><TD>                StyledText text = viewer.getTextWidget();</TD></TR><TR CLASS="z"><TD CLASS="l">649</TD><TD>                if (text == null || text.isDisposed())</TD></TR><TR CLASS="z"><TD CLASS="l">650</TD><TD>                        return;</TD></TR><TR><TD CLASS="l">651</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">652</TD><TD>                Display display = text.getDisplay();</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="23">653</A></TD><TD>                fColor = createColor(getNewPreferenceStore(), fLinkColorKey, display);</TD></TR><TR CLASS="z"><TD CLASS="l">654</TD><TD>        }</TD></TR><TR><TD CLASS="l">655</TD><TD> </TD></TR><TR><TD CLASS="l">656</TD><TD>        private void updateKeyModifierMask() {</TD></TR><TR CLASS="z"><TD CLASS="l">657</TD><TD>                String modifiers = getNewPreferenceStore().getString(fBrowserLikeLinksKeyModifierKey);</TD></TR><TR CLASS="z"><TD CLASS="l">658</TD><TD>                fKeyModifierMask = computeStateMask(modifiers);</TD></TR><TR CLASS="z"><TD CLASS="l">659</TD><TD>        }</TD></TR><TR><TD CLASS="l">660</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="15.html">org.eclipse.wst.sse.ui.internal.openon</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/12a.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/12a.html
deleted file mode 100644
index 1268118..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/12a.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="15.html">org.eclipse.wst.sse.ui.internal.openon</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">OpenOnAction.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>OpenOnAction.java</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/100)</TD><TD CLASS="h">0%   (0/21)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">OpenOnAction</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/17)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#0">OpenOnAction (ResourceBundle, String, ITextEditor): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">run (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#2">OpenOnAction$1</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/83)</TD><TD CLASS="h">0%   (0/18)</TD></TR><TR><TD CLASS="f"><A HREF="#2">OpenOnAction$1 (OpenOnAction): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#5">run (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/77)</TD><TD CLASS="h">0%   (0/16)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR CLASS="z"><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2005 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.openon;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.util.ResourceBundle;</TD></TR><TR><TD CLASS="l">16</TD><TD> </TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.jface.text.IDocument;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.jface.text.ITextSelection;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.jface.text.Region;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.jface.viewers.ISelection;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.swt.custom.BusyIndicator;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.ui.texteditor.ITextEditor;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.ui.texteditor.TextEditorAction;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.wst.sse.ui.internal.IExtendedSimpleEditor;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.wst.sse.ui.internal.provisional.extensions.ISourceEditingTextTools;</TD></TR><TR><TD CLASS="l">26</TD><TD> </TD></TR><TR><TD CLASS="l">27</TD><TD> </TD></TR><TR><TD CLASS="l">28</TD><TD>/**</TD></TR><TR><TD CLASS="l">29</TD><TD> * Determines the appropriate IOpenFileAction to call based on current</TD></TR><TR><TD CLASS="l">30</TD><TD> * partition.</TD></TR><TR><TD CLASS="l">31</TD><TD> * </TD></TR><TR><TD CLASS="l"><A NAME="0">32</A></TD><TD> * @deprecated Use base support for hyperlink navigation</TD></TR><TR><TD CLASS="l">33</TD><TD> */</TD></TR><TR><TD CLASS="l">34</TD><TD>public class OpenOnAction extends TextEditorAction {</TD></TR><TR><TD CLASS="l">35</TD><TD>        public OpenOnAction(ResourceBundle bundle, String prefix, ITextEditor editor) {</TD></TR><TR CLASS="z"><TD CLASS="l">36</TD><TD>                super(bundle, prefix, editor);</TD></TR><TR CLASS="z"><TD CLASS="l">37</TD><TD>        }</TD></TR><TR><TD CLASS="l">38</TD><TD> </TD></TR><TR><TD CLASS="l">39</TD><TD>        /*</TD></TR><TR><TD CLASS="l">40</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="2">41</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">42</TD><TD>         * @see org.eclipse.jface.action.IAction#run()</TD></TR><TR><TD CLASS="l"><A NAME="5">43</A></TD><TD>         */</TD></TR><TR><TD CLASS="l">44</TD><TD>        public void run() {</TD></TR><TR CLASS="z"><TD CLASS="l">45</TD><TD>                BusyIndicator.showWhile(getTextEditor().getEditorSite().getShell().getDisplay(), new Runnable() {</TD></TR><TR><TD CLASS="l">46</TD><TD>                        public void run() {</TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>                                ITextEditor editor = getTextEditor();</TD></TR><TR><TD CLASS="l">48</TD><TD> </TD></TR><TR><TD CLASS="l">49</TD><TD>                                // figure out current offset</TD></TR><TR CLASS="z"><TD CLASS="l">50</TD><TD>                                int offset = -1;</TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>                                ISourceEditingTextTools textTools = (ISourceEditingTextTools) getTextEditor().getAdapter(ISourceEditingTextTools.class);</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                                if (textTools != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>                                        offset = textTools.getCaretOffset();</TD></TR><TR><TD CLASS="l">54</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                                else if (editor instanceof IExtendedSimpleEditor) {</TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>                                        offset = ((IExtendedSimpleEditor) editor).getCaretPosition();</TD></TR><TR><TD CLASS="l">57</TD><TD>                                }</TD></TR><TR><TD CLASS="l">58</TD><TD>                                else {</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>                                        if (editor.getSelectionProvider() != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                                                ISelection sel = editor.getSelectionProvider().getSelection();</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                                                if (sel instanceof ITextSelection) {</TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>                                                        offset = ((ITextSelection) sel).getOffset();</TD></TR><TR><TD CLASS="l">63</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">64</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">65</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                                IDocument document = editor.getDocumentProvider().getDocument(editor.getEditorInput());</TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>                                IOpenOn openOn = OpenOnProvider.getInstance().getOpenOn(document, offset);</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>                                if (openOn != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                                        openOn.openOn(document, new Region(offset, 0));</TD></TR><TR><TD CLASS="l">70</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>                        }</TD></TR><TR><TD CLASS="l">72</TD><TD>                });</TD></TR><TR CLASS="z"><TD CLASS="l">73</TD><TD>        }</TD></TR><TR><TD CLASS="l">74</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="15.html">org.eclipse.wst.sse.ui.internal.openon</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/12b.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/12b.html
deleted file mode 100644
index db5d7df..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/12b.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="15.html">org.eclipse.wst.sse.ui.internal.openon</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">OpenOnBuilder.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>OpenOnBuilder.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/256)</TD><TD CLASS="h">0%   (0/71)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">OpenOnBuilder</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/256)</TD><TD CLASS="h">0%   (0/71)</TD></TR><TR><TD CLASS="f"><A HREF="#0">OpenOnBuilder (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">getId (IConfigurationElement): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#3">getInstance (): OpenOnBuilder</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">getOpenOnClass (IConfigurationElement): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#5">getOpenOnDefinitions (): OpenOnDefinition []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">getOpenOnDefinitions (String, String): OpenOnDefinition []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/83)</TD><TD CLASS="h">0%   (0/19)</TD></TR><TR><TD CLASS="f"><A HREF="#7">initCache (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/14)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">processContentTypeTag (IConfigurationElement): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/19)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#9">processOpenOnTag (IConfigurationElement): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/31)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">processPartitionTypeTag (IConfigurationElement): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#b">readContributions (String, String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#c">readElement (IConfigurationElement): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/45)</TD><TD CLASS="h">0%   (0/15)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2005 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.openon;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.util.ArrayList;</TD></TR><TR><TD CLASS="l">16</TD><TD>import java.util.List;</TD></TR><TR><TD CLASS="l">17</TD><TD> </TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.core.runtime.IConfigurationElement;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.core.runtime.IExtensionRegistry;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.core.runtime.Platform;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.wst.sse.ui.internal.extension.RegistryReader;</TD></TR><TR><TD CLASS="l">22</TD><TD> </TD></TR><TR><TD CLASS="l">23</TD><TD> </TD></TR><TR><TD CLASS="l">24</TD><TD>/**</TD></TR><TR><TD CLASS="l">25</TD><TD> * Reads extensions for open on extension point,</TD></TR><TR><TD CLASS="l"><A NAME="0">26</A></TD><TD> * org.eclipse.wst.sse.ui.extensions.openon</TD></TR><TR><TD CLASS="l">27</TD><TD> * </TD></TR><TR><TD CLASS="l">28</TD><TD> * @deprecated Use base support for hyperlink navigation</TD></TR><TR><TD CLASS="l">29</TD><TD> */</TD></TR><TR CLASS="z"><TD CLASS="l">30</TD><TD>public class OpenOnBuilder extends RegistryReader {</TD></TR><TR><TD CLASS="l">31</TD><TD>        public static final String ATT_CLASS = &#34;class&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">32</TD><TD> </TD></TR><TR><TD CLASS="l">33</TD><TD>        public static final String ATT_ID = &#34;id&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">34</TD><TD> </TD></TR><TR><TD CLASS="l">35</TD><TD>        private static OpenOnBuilder fInstance;</TD></TR><TR><TD CLASS="l">36</TD><TD>        // extension point ID</TD></TR><TR><TD CLASS="l">37</TD><TD>        public static final String PL_OPENON = &#34;openon&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">38</TD><TD> </TD></TR><TR><TD CLASS="l">39</TD><TD>        public static final String PLUGIN_ID = &#34;org.eclipse.wst.sse.ui&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">40</TD><TD>        public static final String TAG_CONTENT_TYPE_IDENTIFIER = &#34;contenttypeidentifier&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">41</TD><TD> </TD></TR><TR><TD CLASS="l">42</TD><TD>        public static final String TAG_OPENON = &#34;openon&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">43</TD><TD>        public static final String TAG_PARTITION_TYPE = &#34;partitiontype&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">44</TD><TD> </TD></TR><TR><TD CLASS="l">45</TD><TD>        /**</TD></TR><TR><TD CLASS="l">46</TD><TD>         * returns singleton instance of OpenOnBuilder</TD></TR><TR><TD CLASS="l"><A NAME="3">47</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">48</TD><TD>         * @return OpenOnBuilder</TD></TR><TR><TD CLASS="l">49</TD><TD>         */</TD></TR><TR><TD CLASS="l">50</TD><TD>        public synchronized static OpenOnBuilder getInstance() {</TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>                if (fInstance == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                        fInstance = new OpenOnBuilder();</TD></TR><TR><TD CLASS="l">53</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">54</TD><TD>                return fInstance;</TD></TR><TR><TD CLASS="l">55</TD><TD>        }</TD></TR><TR><TD CLASS="l">56</TD><TD> </TD></TR><TR><TD CLASS="l">57</TD><TD>        private String fCurrentContentType;</TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>        private OpenOnDefinition fCurrentOpenOnDefinition = null;</TD></TR><TR><TD CLASS="l">59</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>        private List fOpenOnDefs = null;</TD></TR><TR><TD CLASS="l">61</TD><TD> </TD></TR><TR><TD CLASS="l">62</TD><TD>        protected String targetContributionTag;</TD></TR><TR><TD CLASS="l">63</TD><TD> </TD></TR><TR><TD CLASS="l">64</TD><TD>        /**</TD></TR><TR><TD CLASS="l">65</TD><TD>         * Returns the name of the part ID attribute that is expected in the</TD></TR><TR><TD CLASS="l">66</TD><TD>         * target extension.</TD></TR><TR><TD CLASS="l">67</TD><TD>         * </TD></TR><TR><TD CLASS="l"><A NAME="2">68</A></TD><TD>         * @param element</TD></TR><TR><TD CLASS="l">69</TD><TD>         * @return String</TD></TR><TR><TD CLASS="l">70</TD><TD>         */</TD></TR><TR><TD CLASS="l">71</TD><TD>        protected String getId(IConfigurationElement element) {</TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>                String value = element.getAttribute(ATT_ID);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">73</A></TD><TD>                return value;</TD></TR><TR><TD CLASS="l">74</TD><TD>        }</TD></TR><TR><TD CLASS="l">75</TD><TD> </TD></TR><TR><TD CLASS="l">76</TD><TD>        protected String getOpenOnClass(IConfigurationElement element) {</TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>                String value = element.getAttribute(ATT_CLASS);</TD></TR><TR CLASS="z"><TD CLASS="l">78</TD><TD>                return value;</TD></TR><TR><TD CLASS="l">79</TD><TD>        }</TD></TR><TR><TD CLASS="l">80</TD><TD> </TD></TR><TR><TD CLASS="l">81</TD><TD>        /**</TD></TR><TR><TD CLASS="l">82</TD><TD>         * Returns all the open on definition objects</TD></TR><TR><TD CLASS="l"><A NAME="5">83</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">84</TD><TD>         * @return</TD></TR><TR><TD CLASS="l">85</TD><TD>         */</TD></TR><TR><TD CLASS="l">86</TD><TD>        public OpenOnDefinition[] getOpenOnDefinitions() {</TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>                initCache();</TD></TR><TR CLASS="z"><TD CLASS="l">88</TD><TD>                return (OpenOnDefinition[]) fOpenOnDefs.toArray(new OpenOnDefinition[fOpenOnDefs.size()]);</TD></TR><TR><TD CLASS="l">89</TD><TD>        }</TD></TR><TR><TD CLASS="l">90</TD><TD> </TD></TR><TR><TD CLASS="l">91</TD><TD>        /**</TD></TR><TR><TD CLASS="l">92</TD><TD>         * Returns all the open on definition objects valid for</TD></TR><TR><TD CLASS="l">93</TD><TD>         * contentType/partitionType</TD></TR><TR><TD CLASS="l">94</TD><TD>         * </TD></TR><TR><TD CLASS="l">95</TD><TD>         * @param contentType</TD></TR><TR><TD CLASS="l">96</TD><TD>         * @param partitionType</TD></TR><TR><TD CLASS="l"><A NAME="6">97</A></TD><TD>         * @return if either contentType or partitionType is null, null is</TD></TR><TR><TD CLASS="l">98</TD><TD>         *         returned</TD></TR><TR><TD CLASS="l">99</TD><TD>         */</TD></TR><TR><TD CLASS="l">100</TD><TD>        public OpenOnDefinition[] getOpenOnDefinitions(String contentType, String partitionType) {</TD></TR><TR CLASS="z"><TD CLASS="l">101</TD><TD>                if (contentType == null || partitionType == null) {</TD></TR><TR><TD CLASS="l">102</TD><TD>                        // should not be able to define an openon without a content type</TD></TR><TR><TD CLASS="l">103</TD><TD>                        // but if it were possible then would need to search all openon</TD></TR><TR><TD CLASS="l">104</TD><TD>                        // definitions for</TD></TR><TR><TD CLASS="l">105</TD><TD>                        // definitions with empty contentType list</TD></TR><TR CLASS="z"><TD CLASS="l">106</TD><TD>                        return null;</TD></TR><TR><TD CLASS="l">107</TD><TD>                }</TD></TR><TR><TD CLASS="l">108</TD><TD> </TD></TR><TR><TD CLASS="l">109</TD><TD>                // entire list of openon definition objects</TD></TR><TR CLASS="z"><TD CLASS="l">110</TD><TD>                OpenOnDefinition[] allDefs = getOpenOnDefinitions();</TD></TR><TR><TD CLASS="l">111</TD><TD>                // current list of open on definitions valid for</TD></TR><TR><TD CLASS="l">112</TD><TD>                // contentType/partitionType</TD></TR><TR CLASS="z"><TD CLASS="l">113</TD><TD>                List defs = new ArrayList();</TD></TR><TR><TD CLASS="l">114</TD><TD>                // default definitions that should be added to end of list of open on</TD></TR><TR><TD CLASS="l">115</TD><TD>                // definitions</TD></TR><TR CLASS="z"><TD CLASS="l">116</TD><TD>                List lastDefs = new ArrayList();</TD></TR><TR><TD CLASS="l">117</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">118</TD><TD>                for (int i = 0; i &lt; allDefs.length; ++i) {</TD></TR><TR><TD CLASS="l">119</TD><TD>                        // for each one check if it contains contentType</TD></TR><TR CLASS="z"><TD CLASS="l">120</TD><TD>                        List partitions = (List) allDefs[i].getContentTypes().get(contentType);</TD></TR><TR CLASS="z"><TD CLASS="l">121</TD><TD>                        if (partitions != null) {</TD></TR><TR><TD CLASS="l">122</TD><TD>                                // this openon definition is valid for all partition types for</TD></TR><TR><TD CLASS="l">123</TD><TD>                                // this content type</TD></TR><TR CLASS="z"><TD CLASS="l">124</TD><TD>                                if (partitions.isEmpty()) {</TD></TR><TR><TD CLASS="l">125</TD><TD>                                        // this will be added to end of list because this is</TD></TR><TR><TD CLASS="l">126</TD><TD>                                        // considered a default openon</TD></TR><TR CLASS="z"><TD CLASS="l">127</TD><TD>                                        lastDefs.add(allDefs[i]);</TD></TR><TR><TD CLASS="l">128</TD><TD>                                } else {</TD></TR><TR><TD CLASS="l">129</TD><TD>                                        // examine the partition types of this openon</TD></TR><TR CLASS="z"><TD CLASS="l">130</TD><TD>                                        int j = 0; // current index in list of partitions</TD></TR><TR CLASS="z"><TD CLASS="l">131</TD><TD>                                        boolean added = false; // openon has been added to list</TD></TR><TR CLASS="z"><TD CLASS="l">132</TD><TD>                                        while (j &lt; partitions.size() &amp;&amp; !added) {</TD></TR><TR><TD CLASS="l">133</TD><TD>                                                // this openon definition applies to partitionType so</TD></TR><TR><TD CLASS="l">134</TD><TD>                                                // add to list of valid openons</TD></TR><TR CLASS="z"><TD CLASS="l">135</TD><TD>                                                if (partitionType.equals(partitions.get(j))) {</TD></TR><TR CLASS="z"><TD CLASS="l">136</TD><TD>                                                        defs.add(allDefs[i]);</TD></TR><TR CLASS="z"><TD CLASS="l">137</TD><TD>                                                        added = true;</TD></TR><TR><TD CLASS="l">138</TD><TD>                                                } else {</TD></TR><TR><TD CLASS="l">139</TD><TD>                                                        // continue checking to see if this openon</TD></TR><TR><TD CLASS="l">140</TD><TD>                                                        // definition is valid for current partitionType</TD></TR><TR CLASS="z"><TD CLASS="l">141</TD><TD>                                                        ++j;</TD></TR><TR><TD CLASS="l">142</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">143</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">144</TD><TD>                                }</TD></TR><TR><TD CLASS="l">145</TD><TD>                        }</TD></TR><TR><TD CLASS="l">146</TD><TD>                }</TD></TR><TR><TD CLASS="l">147</TD><TD>                // append the default openon definitions</TD></TR><TR CLASS="z"><TD CLASS="l">148</TD><TD>                defs.addAll(lastDefs);</TD></TR><TR><TD CLASS="l">149</TD><TD> </TD></TR><TR><TD CLASS="l">150</TD><TD>                // return the list</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="7">151</A></TD><TD>                return (OpenOnDefinition[]) defs.toArray(new OpenOnDefinition[defs.size()]);</TD></TR><TR><TD CLASS="l">152</TD><TD>        }</TD></TR><TR><TD CLASS="l">153</TD><TD> </TD></TR><TR><TD CLASS="l">154</TD><TD>        private void initCache() {</TD></TR><TR CLASS="z"><TD CLASS="l">155</TD><TD>                if (fOpenOnDefs == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">156</TD><TD>                        fOpenOnDefs = new ArrayList(0);</TD></TR><TR CLASS="z"><TD CLASS="l">157</TD><TD>                        readContributions(TAG_OPENON, PL_OPENON);</TD></TR><TR><TD CLASS="l">158</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">159</TD><TD>        }</TD></TR><TR><TD CLASS="l">160</TD><TD> </TD></TR><TR><TD CLASS="l">161</TD><TD>        /**</TD></TR><TR><TD CLASS="l">162</TD><TD>         * Processes element which should be a configuration element specifying a</TD></TR><TR><TD CLASS="l">163</TD><TD>         * content type for the current open on tag. Assumes that there is a valid</TD></TR><TR><TD CLASS="l">164</TD><TD>         * current open on definition object.</TD></TR><TR><TD CLASS="l">165</TD><TD>         * </TD></TR><TR><TD CLASS="l">166</TD><TD>         * @param element</TD></TR><TR><TD CLASS="l"><A NAME="8">167</A></TD><TD>         *            contenttypeidentifier configuration element</TD></TR><TR><TD CLASS="l">168</TD><TD>         */</TD></TR><TR><TD CLASS="l">169</TD><TD>        private void processContentTypeTag(IConfigurationElement element) {</TD></TR><TR><TD CLASS="l">170</TD><TD>                // add to current openOnDefinition</TD></TR><TR CLASS="z"><TD CLASS="l">171</TD><TD>                String theId = getId(element);</TD></TR><TR><TD CLASS="l">172</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">173</TD><TD>                if (theId != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">174</TD><TD>                        fCurrentContentType = theId;</TD></TR><TR CLASS="z"><TD CLASS="l">175</TD><TD>                        fCurrentOpenOnDefinition.addContentTypeId(fCurrentContentType);</TD></TR><TR><TD CLASS="l">176</TD><TD>                } else {</TD></TR><TR CLASS="z"><TD CLASS="l">177</TD><TD>                        fCurrentContentType = null;</TD></TR><TR><TD CLASS="l">178</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">179</TD><TD>        }</TD></TR><TR><TD CLASS="l">180</TD><TD> </TD></TR><TR><TD CLASS="l">181</TD><TD>        /**</TD></TR><TR><TD CLASS="l">182</TD><TD>         * Processes element which should be a configuration element specifying an</TD></TR><TR><TD CLASS="l">183</TD><TD>         * open on object. Creates a new open on definition object and adds it to</TD></TR><TR><TD CLASS="l">184</TD><TD>         * the list of open on definition objects</TD></TR><TR><TD CLASS="l">185</TD><TD>         * </TD></TR><TR><TD CLASS="l"><A NAME="9">186</A></TD><TD>         * @param element</TD></TR><TR><TD CLASS="l">187</TD><TD>         *            openon configuration element</TD></TR><TR><TD CLASS="l">188</TD><TD>         */</TD></TR><TR><TD CLASS="l">189</TD><TD>        private void processOpenOnTag(IConfigurationElement element) {</TD></TR><TR CLASS="z"><TD CLASS="l">190</TD><TD>                String theId = getId(element);</TD></TR><TR CLASS="z"><TD CLASS="l">191</TD><TD>                String theClass = getOpenOnClass(element);</TD></TR><TR><TD CLASS="l">192</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">193</TD><TD>                if (theId != null &amp;&amp; theClass != null) {</TD></TR><TR><TD CLASS="l">194</TD><TD>                        // start building new OpenOnDefinition</TD></TR><TR CLASS="z"><TD CLASS="l">195</TD><TD>                        fCurrentOpenOnDefinition = new OpenOnDefinition(theId, theClass, element);</TD></TR><TR CLASS="z"><TD CLASS="l">196</TD><TD>                        fOpenOnDefs.add(fCurrentOpenOnDefinition);</TD></TR><TR><TD CLASS="l">197</TD><TD>                } else {</TD></TR><TR CLASS="z"><TD CLASS="l">198</TD><TD>                        fCurrentOpenOnDefinition = null;</TD></TR><TR><TD CLASS="l">199</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">200</TD><TD>        }</TD></TR><TR><TD CLASS="l">201</TD><TD> </TD></TR><TR><TD CLASS="l">202</TD><TD>        /**</TD></TR><TR><TD CLASS="l">203</TD><TD>         * Processes element which should be a configuration element specifying a</TD></TR><TR><TD CLASS="l">204</TD><TD>         * partition type for the current open on/content type tag. Assumes that</TD></TR><TR><TD CLASS="l">205</TD><TD>         * there is a valid current open on/content type tag.</TD></TR><TR><TD CLASS="l">206</TD><TD>         * </TD></TR><TR><TD CLASS="l">207</TD><TD>         * @param element</TD></TR><TR><TD CLASS="l"><A NAME="a">208</A></TD><TD>         *            partitiontype configuration element</TD></TR><TR><TD CLASS="l">209</TD><TD>         */</TD></TR><TR><TD CLASS="l">210</TD><TD>        private void processPartitionTypeTag(IConfigurationElement element) {</TD></TR><TR><TD CLASS="l">211</TD><TD>                // add to current openOnDefinition/contentType</TD></TR><TR CLASS="z"><TD CLASS="l">212</TD><TD>                String theId = getId(element);</TD></TR><TR><TD CLASS="l">213</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">214</TD><TD>                if (theId != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">215</TD><TD>                        fCurrentOpenOnDefinition.addPartitionType(fCurrentContentType, theId);</TD></TR><TR><TD CLASS="l">216</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">217</TD><TD>        }</TD></TR><TR><TD CLASS="l">218</TD><TD> </TD></TR><TR><TD CLASS="l">219</TD><TD>        /**</TD></TR><TR><TD CLASS="l">220</TD><TD>         * Reads the contributions from the registry for the provided workbench</TD></TR><TR><TD CLASS="l">221</TD><TD>         * part and the provided extension point ID.</TD></TR><TR><TD CLASS="l">222</TD><TD>         * </TD></TR><TR><TD CLASS="l"><A NAME="b">223</A></TD><TD>         * @param tag</TD></TR><TR><TD CLASS="l">224</TD><TD>         * @param extensionPoint</TD></TR><TR><TD CLASS="l">225</TD><TD>         */</TD></TR><TR><TD CLASS="l">226</TD><TD>        protected void readContributions(String tag, String extensionPoint) {</TD></TR><TR CLASS="z"><TD CLASS="l">227</TD><TD>                targetContributionTag = tag;</TD></TR><TR CLASS="z"><TD CLASS="l">228</TD><TD>                IExtensionRegistry registry = Platform.getExtensionRegistry();</TD></TR><TR CLASS="z"><TD CLASS="l">229</TD><TD>                readRegistry(registry, PLUGIN_ID, extensionPoint);</TD></TR><TR CLASS="z"><TD CLASS="l">230</TD><TD>        }</TD></TR><TR><TD CLASS="l">231</TD><TD> </TD></TR><TR><TD CLASS="l">232</TD><TD>        /*</TD></TR><TR><TD CLASS="l">233</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="c">234</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">235</TD><TD>         * @see org.eclipse.wst.sse.ui.internal.extension.RegistryReader#readElement(org.eclipse.core.runtime.IConfigurationElement)</TD></TR><TR><TD CLASS="l">236</TD><TD>         */</TD></TR><TR><TD CLASS="l">237</TD><TD>        protected boolean readElement(IConfigurationElement element) {</TD></TR><TR CLASS="z"><TD CLASS="l">238</TD><TD>                String tag = element.getName();</TD></TR><TR><TD CLASS="l">239</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">240</TD><TD>                if (tag.equals(targetContributionTag)) {</TD></TR><TR CLASS="z"><TD CLASS="l">241</TD><TD>                        processOpenOnTag(element);</TD></TR><TR><TD CLASS="l">242</TD><TD> </TD></TR><TR><TD CLASS="l">243</TD><TD>                        // make sure processing of current open on tag resulted in a</TD></TR><TR><TD CLASS="l">244</TD><TD>                        // current open on definition</TD></TR><TR><TD CLASS="l">245</TD><TD>                        // before continue reading the children</TD></TR><TR CLASS="z"><TD CLASS="l">246</TD><TD>                        if (fCurrentOpenOnDefinition != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">247</TD><TD>                                readElementChildren(element);</TD></TR><TR><TD CLASS="l">248</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">249</TD><TD>                        return true;</TD></TR><TR CLASS="z"><TD CLASS="l">250</TD><TD>                } else if (tag.equals(TAG_CONTENT_TYPE_IDENTIFIER)) {</TD></TR><TR CLASS="z"><TD CLASS="l">251</TD><TD>                        processContentTypeTag(element);</TD></TR><TR><TD CLASS="l">252</TD><TD> </TD></TR><TR><TD CLASS="l">253</TD><TD>                        // make sure processing of current content type resulted in a</TD></TR><TR><TD CLASS="l">254</TD><TD>                        // valid content type</TD></TR><TR><TD CLASS="l">255</TD><TD>                        // before reading the children</TD></TR><TR CLASS="z"><TD CLASS="l">256</TD><TD>                        if (fCurrentContentType != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">257</TD><TD>                                readElementChildren(element);</TD></TR><TR><TD CLASS="l">258</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">259</TD><TD>                        return true;</TD></TR><TR CLASS="z"><TD CLASS="l">260</TD><TD>                } else if (tag.equals(TAG_PARTITION_TYPE)) {</TD></TR><TR CLASS="z"><TD CLASS="l">261</TD><TD>                        processPartitionTypeTag(element);</TD></TR><TR CLASS="z"><TD CLASS="l">262</TD><TD>                        return true;</TD></TR><TR><TD CLASS="l">263</TD><TD>                }</TD></TR><TR><TD CLASS="l">264</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">265</TD><TD>                return false;</TD></TR><TR><TD CLASS="l">266</TD><TD>        }</TD></TR><TR><TD CLASS="l">267</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="15.html">org.eclipse.wst.sse.ui.internal.openon</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/12c.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/12c.html
deleted file mode 100644
index 1923b98..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/12c.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="15.html">org.eclipse.wst.sse.ui.internal.openon</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">OpenOnDefinition.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>OpenOnDefinition.java</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/183)</TD><TD CLASS="h">0%   (0/46)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">OpenOnDefinition</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/150)</TD><TD CLASS="h">0%   (0/41)</TD></TR><TR><TD CLASS="f"><A HREF="#0">OpenOnDefinition (String, String, IConfigurationElement): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/29)</TD><TD CLASS="h">0%   (0/10)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">addContentTypeId (String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/14)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#3">addPartitionType (String, String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/24)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">createExtension (String): Object</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/42)</TD><TD CLASS="h">0%   (0/11)</TD></TR><TR><TD CLASS="f"><A HREF="#5">createOpenOn (): IOpenOn</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">getClassName (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#7">getConfigurationElement (): IConfigurationElement</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">getContentTypes (): HashMap</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#9">getId (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">handleCreateExecutableException (Object [], Throwable): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/17)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#b">OpenOnDefinition$1</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/33)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#b">OpenOnDefinition$1 (OpenOnDefinition, Object [], IConfigurationElement, Strin...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#d">run (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/18)</TD><TD CLASS="h">0%   (0/4)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR CLASS="z"><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2005 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.openon;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.util.ArrayList;</TD></TR><TR><TD CLASS="l">16</TD><TD>import java.util.HashMap;</TD></TR><TR><TD CLASS="l">17</TD><TD>import java.util.List;</TD></TR><TR><TD CLASS="l">18</TD><TD> </TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.core.runtime.CoreException;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.core.runtime.IConfigurationElement;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.core.runtime.Platform;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.swt.custom.BusyIndicator;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.wst.sse.ui.internal.Logger;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.osgi.framework.Bundle;</TD></TR><TR><TD CLASS="l">25</TD><TD> </TD></TR><TR><TD CLASS="l">26</TD><TD> </TD></TR><TR><TD CLASS="l">27</TD><TD>/**</TD></TR><TR><TD CLASS="l">28</TD><TD> * Open on definition object</TD></TR><TR><TD CLASS="l">29</TD><TD> * </TD></TR><TR><TD CLASS="l">30</TD><TD> * @deprecated Use base support for hyperlink navigation</TD></TR><TR><TD CLASS="l">31</TD><TD> */</TD></TR><TR><TD CLASS="l">32</TD><TD>public class OpenOnDefinition {</TD></TR><TR CLASS="z"><TD CLASS="l">33</TD><TD>        private String fClassName = null;</TD></TR><TR><TD CLASS="l">34</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">35</TD><TD>        private IConfigurationElement fConfigurationElement = null;</TD></TR><TR><TD CLASS="l">36</TD><TD> </TD></TR><TR><TD CLASS="l">37</TD><TD>        // a hash map of content type Ids (String) that points to lists of</TD></TR><TR><TD CLASS="l">38</TD><TD>        // parition types (List of Strings)</TD></TR><TR><TD CLASS="l">39</TD><TD>        // contentTypeId -&gt; List(paritionType, paritionType, partitionType, ...)</TD></TR><TR><TD CLASS="l">40</TD><TD>        // contentTypeId2 -&gt; List(partitionType, partitionType, ...)</TD></TR><TR><TD CLASS="l">41</TD><TD>        // ...</TD></TR><TR CLASS="z"><TD CLASS="l">42</TD><TD>        private HashMap fContentTypes = null;</TD></TR><TR CLASS="z"><TD CLASS="l">43</TD><TD>        private String fId = null;</TD></TR><TR><TD CLASS="l">44</TD><TD> </TD></TR><TR><TD CLASS="l">45</TD><TD>        /**</TD></TR><TR><TD CLASS="l">46</TD><TD>         * @param id</TD></TR><TR><TD CLASS="l"><A NAME="0">47</A></TD><TD>         * @param class1</TD></TR><TR><TD CLASS="l">48</TD><TD>         * @param configurationElement</TD></TR><TR><TD CLASS="l">49</TD><TD>         */</TD></TR><TR><TD CLASS="l">50</TD><TD>        public OpenOnDefinition(String id, String class1, IConfigurationElement configurationElement) {</TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>                super();</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                fId = id;</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>                fClassName = class1;</TD></TR><TR CLASS="z"><TD CLASS="l">54</TD><TD>                fConfigurationElement = configurationElement;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">55</A></TD><TD>                fContentTypes = new HashMap();</TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>        }</TD></TR><TR><TD CLASS="l">57</TD><TD> </TD></TR><TR><TD CLASS="l">58</TD><TD>        public void addContentTypeId(String contentTypeId) {</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>                if (!fContentTypes.containsKey(contentTypeId))</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">60</A></TD><TD>                        fContentTypes.put(contentTypeId, new ArrayList());</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>        }</TD></TR><TR><TD CLASS="l">62</TD><TD> </TD></TR><TR><TD CLASS="l">63</TD><TD>        public void addPartitionType(String contentTypeId, String partitionType) {</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                if (!fContentTypes.containsKey(contentTypeId))</TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>                        fContentTypes.put(contentTypeId, new ArrayList());</TD></TR><TR><TD CLASS="l">66</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>                List partitionList = (List) fContentTypes.get(contentTypeId);</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>                partitionList.add(partitionType);</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>        }</TD></TR><TR><TD CLASS="l">70</TD><TD> </TD></TR><TR><TD CLASS="l">71</TD><TD>        /**</TD></TR><TR><TD CLASS="l">72</TD><TD>         * Creates an extension. If the extension plugin has not been loaded a</TD></TR><TR><TD CLASS="l">73</TD><TD>         * busy cursor will be activated during the duration of the load.</TD></TR><TR><TD CLASS="l">74</TD><TD>         * </TD></TR><TR><TD CLASS="l">75</TD><TD>         * @param propertyName</TD></TR><TR><TD CLASS="l">76</TD><TD>         * @return Object</TD></TR><TR><TD CLASS="l"><A NAME="4">77</A></TD><TD>         */</TD></TR><TR><TD CLASS="l">78</TD><TD>        private Object createExtension(String propertyName) {</TD></TR><TR><TD CLASS="l">79</TD><TD>                // If plugin has been loaded create extension.</TD></TR><TR><TD CLASS="l">80</TD><TD>                // Otherwise, show busy cursor then create extension.</TD></TR><TR CLASS="z"><TD CLASS="l">81</TD><TD>                final IConfigurationElement element = getConfigurationElement();</TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>                final String name = propertyName;</TD></TR><TR><TD CLASS="l">83</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">84</TD><TD>                final Object[] result = new Object[1];</TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>                String pluginId = element.getDeclaringExtension().getNamespace();</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                Bundle bundle = Platform.getBundle(pluginId);</TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>                if (bundle.getState() == Bundle.ACTIVE) {</TD></TR><TR><TD CLASS="l">88</TD><TD>                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">89</TD><TD>                                return element.createExecutableExtension(name);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="b">90</A></TD><TD>                        } catch (CoreException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">91</TD><TD>                                handleCreateExecutableException(result, e);</TD></TR><TR><TD CLASS="l">92</TD><TD>                        }</TD></TR><TR><TD CLASS="l"><A NAME="d">93</A></TD><TD>                } else {</TD></TR><TR CLASS="z"><TD CLASS="l">94</TD><TD>                        BusyIndicator.showWhile(null, new Runnable() {</TD></TR><TR><TD CLASS="l">95</TD><TD>                                public void run() {</TD></TR><TR><TD CLASS="l">96</TD><TD>                                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">97</TD><TD>                                                result[0] = element.createExecutableExtension(name);</TD></TR><TR CLASS="z"><TD CLASS="l">98</TD><TD>                                        } catch (Exception e) {</TD></TR><TR CLASS="z"><TD CLASS="l">99</TD><TD>                                                handleCreateExecutableException(result, e);</TD></TR><TR><TD CLASS="l">100</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">101</TD><TD>                                }</TD></TR><TR><TD CLASS="l">102</TD><TD>                        });</TD></TR><TR><TD CLASS="l">103</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">104</TD><TD>                return result[0];</TD></TR><TR><TD CLASS="l">105</TD><TD>        }</TD></TR><TR><TD CLASS="l">106</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="5">107</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">108</TD><TD>         * @return IOpenOn for this definition</TD></TR><TR><TD CLASS="l">109</TD><TD>         */</TD></TR><TR><TD CLASS="l">110</TD><TD>        public IOpenOn createOpenOn() {</TD></TR><TR CLASS="z"><TD CLASS="l">111</TD><TD>                IOpenOn openOn = null;</TD></TR><TR><TD CLASS="l">112</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">113</TD><TD>                if (getClassName() != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">114</TD><TD>                        openOn = (IOpenOn) createExtension(OpenOnBuilder.ATT_CLASS);</TD></TR><TR><TD CLASS="l">115</TD><TD>                }</TD></TR><TR><TD CLASS="l">116</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">117</TD><TD>                return openOn;</TD></TR><TR><TD CLASS="l">118</TD><TD>        }</TD></TR><TR><TD CLASS="l">119</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="6">120</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">121</TD><TD>         * @return Returns the fClass.</TD></TR><TR><TD CLASS="l">122</TD><TD>         */</TD></TR><TR><TD CLASS="l">123</TD><TD>        public String getClassName() {</TD></TR><TR CLASS="z"><TD CLASS="l">124</TD><TD>                return fClassName;</TD></TR><TR><TD CLASS="l">125</TD><TD>        }</TD></TR><TR><TD CLASS="l">126</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="7">127</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">128</TD><TD>         * @return Returns the fConfigurationElement.</TD></TR><TR><TD CLASS="l">129</TD><TD>         */</TD></TR><TR><TD CLASS="l">130</TD><TD>        public IConfigurationElement getConfigurationElement() {</TD></TR><TR CLASS="z"><TD CLASS="l">131</TD><TD>                return fConfigurationElement;</TD></TR><TR><TD CLASS="l">132</TD><TD>        }</TD></TR><TR><TD CLASS="l">133</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="8">134</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">135</TD><TD>         * @return Returns the fContentTypes.</TD></TR><TR><TD CLASS="l">136</TD><TD>         */</TD></TR><TR><TD CLASS="l">137</TD><TD>        public HashMap getContentTypes() {</TD></TR><TR CLASS="z"><TD CLASS="l">138</TD><TD>                return fContentTypes;</TD></TR><TR><TD CLASS="l">139</TD><TD>        }</TD></TR><TR><TD CLASS="l">140</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="9">141</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">142</TD><TD>         * @return Returns the fId.</TD></TR><TR><TD CLASS="l">143</TD><TD>         */</TD></TR><TR><TD CLASS="l">144</TD><TD>        public String getId() {</TD></TR><TR CLASS="z"><TD CLASS="l">145</TD><TD>                return fId;</TD></TR><TR><TD CLASS="l">146</TD><TD>        }</TD></TR><TR><TD CLASS="l">147</TD><TD> </TD></TR><TR><TD CLASS="l">148</TD><TD>        /**</TD></TR><TR><TD CLASS="l"><A NAME="a">149</A></TD><TD>         * @param result</TD></TR><TR><TD CLASS="l">150</TD><TD>         * @param e</TD></TR><TR><TD CLASS="l">151</TD><TD>         */</TD></TR><TR><TD CLASS="l">152</TD><TD>        private void handleCreateExecutableException(Object[] result, Throwable e) {</TD></TR><TR CLASS="z"><TD CLASS="l">153</TD><TD>                Logger.logException(&#34;Unable to create open on: &#34; + getId(), e); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">154</TD><TD>                e.printStackTrace();</TD></TR><TR CLASS="z"><TD CLASS="l">155</TD><TD>                result[0] = null;</TD></TR><TR CLASS="z"><TD CLASS="l">156</TD><TD>        }</TD></TR><TR><TD CLASS="l">157</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="15.html">org.eclipse.wst.sse.ui.internal.openon</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/12d.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/12d.html
deleted file mode 100644
index 9284bf9..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/12d.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="15.html">org.eclipse.wst.sse.ui.internal.openon</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">OpenOnProvider.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>OpenOnProvider.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/121)</TD><TD CLASS="h">0%   (0/39)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">OpenOnProvider</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/121)</TD><TD CLASS="h">0%   (0/39)</TD></TR><TR><TD CLASS="f"><A HREF="#0">OpenOnProvider (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">getContentType (IDocument): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/29)</TD><TD CLASS="h">0%   (0/11)</TD></TR><TR><TD CLASS="f"><A HREF="#3">getInstance (): OpenOnProvider</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">getOpenOn (IDocument, int): IOpenOn</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/43)</TD><TD CLASS="h">0%   (0/11)</TD></TR><TR><TD CLASS="f"><A HREF="#5">getPartitionType (IDocument, int): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/38)</TD><TD CLASS="h">0%   (0/13)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.openon;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD> </TD></TR><TR><TD CLASS="l">16</TD><TD> </TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.core.runtime.Platform;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.core.runtime.content.IContentType;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.jface.text.BadLocationException;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.jface.text.IDocument;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.jface.text.ITypedRegion;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.jface.text.TextUtilities;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.wst.sse.core.StructuredModelManager;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.IModelManager;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredPartitioning;</TD></TR><TR><TD CLASS="l">28</TD><TD> </TD></TR><TR><TD CLASS="l">29</TD><TD> </TD></TR><TR><TD CLASS="l">30</TD><TD>/**</TD></TR><TR><TD CLASS="l"><A NAME="0">31</A></TD><TD> * Determines the appropriate IOpenOn to call based on current partition.</TD></TR><TR><TD CLASS="l">32</TD><TD> * </TD></TR><TR><TD CLASS="l">33</TD><TD> * @deprecated Use base support for hyperlink navigation</TD></TR><TR><TD CLASS="l">34</TD><TD> */</TD></TR><TR CLASS="z"><TD CLASS="l">35</TD><TD>public class OpenOnProvider {</TD></TR><TR><TD CLASS="l">36</TD><TD>        private static OpenOnProvider fInstance;</TD></TR><TR><TD CLASS="l">37</TD><TD> </TD></TR><TR><TD CLASS="l">38</TD><TD>        /**</TD></TR><TR><TD CLASS="l">39</TD><TD>         * returns singleton instance of OpenOnProvider</TD></TR><TR><TD CLASS="l"><A NAME="3">40</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">41</TD><TD>         * @return OpenOnProvider</TD></TR><TR><TD CLASS="l">42</TD><TD>         */</TD></TR><TR><TD CLASS="l">43</TD><TD>        public synchronized static OpenOnProvider getInstance() {</TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>                if (fInstance == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">45</TD><TD>                        fInstance = new OpenOnProvider();</TD></TR><TR><TD CLASS="l">46</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>                return fInstance;</TD></TR><TR><TD CLASS="l">48</TD><TD>        }</TD></TR><TR><TD CLASS="l">49</TD><TD> </TD></TR><TR><TD CLASS="l">50</TD><TD> </TD></TR><TR><TD CLASS="l">51</TD><TD>        /**</TD></TR><TR><TD CLASS="l">52</TD><TD>         * Returns the content type of document</TD></TR><TR><TD CLASS="l">53</TD><TD>         * </TD></TR><TR><TD CLASS="l">54</TD><TD>         * @param document -</TD></TR><TR><TD CLASS="l"><A NAME="2">55</A></TD><TD>         *            assumes document is not null</TD></TR><TR><TD CLASS="l">56</TD><TD>         * @return String content type of given document</TD></TR><TR><TD CLASS="l">57</TD><TD>         */</TD></TR><TR><TD CLASS="l">58</TD><TD>        protected String getContentType(IDocument document) {</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>                String type = null;</TD></TR><TR><TD CLASS="l">60</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                IModelManager mgr = StructuredModelManager.getModelManager();</TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>                IStructuredModel model = null;</TD></TR><TR><TD CLASS="l">63</TD><TD>                try {</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                        model = mgr.getExistingModelForRead(document);</TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>                        if (model != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                                type = model.getContentTypeIdentifier();</TD></TR><TR><TD CLASS="l">67</TD><TD>                        }</TD></TR><TR><TD CLASS="l">68</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                finally {</TD></TR><TR CLASS="z"><TD CLASS="l">70</TD><TD>                        if (model != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>                                model.releaseFromRead();</TD></TR><TR><TD CLASS="l">72</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">73</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>                return type;</TD></TR><TR><TD CLASS="l">75</TD><TD>        }</TD></TR><TR><TD CLASS="l">76</TD><TD> </TD></TR><TR><TD CLASS="l">77</TD><TD>        /**</TD></TR><TR><TD CLASS="l">78</TD><TD>         * Returns the appropriate IOpenOn for the current partition</TD></TR><TR><TD CLASS="l"><A NAME="4">79</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">80</TD><TD>         * @return</TD></TR><TR><TD CLASS="l">81</TD><TD>         */</TD></TR><TR><TD CLASS="l">82</TD><TD>        public IOpenOn getOpenOn(IDocument document, int offset) {</TD></TR><TR CLASS="z"><TD CLASS="l">83</TD><TD>                IOpenOn openOn = null;</TD></TR><TR><TD CLASS="l">84</TD><TD> </TD></TR><TR><TD CLASS="l">85</TD><TD>                // determine the current partition</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                if (document != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>                        String contentTypeID = getContentType(document);</TD></TR><TR CLASS="z"><TD CLASS="l">88</TD><TD>                        String partitionType = getPartitionType(document, offset);</TD></TR><TR><TD CLASS="l">89</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">90</TD><TD>                        IContentType contentType = Platform.getContentTypeManager().getContentType(contentTypeID);</TD></TR><TR><TD CLASS="l">91</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">92</TD><TD>                        while (openOn == null &amp;&amp; contentType != null) {</TD></TR><TR><TD CLASS="l">93</TD><TD>                                // Query OpenOnBuilder and get the list of OpenOns for the</TD></TR><TR><TD CLASS="l">94</TD><TD>                                // current partition</TD></TR><TR CLASS="z"><TD CLASS="l">95</TD><TD>                                OpenOnDefinition[] defs = OpenOnBuilder.getInstance().getOpenOnDefinitions(contentType.getId(), partitionType);</TD></TR><TR CLASS="z"><TD CLASS="l">96</TD><TD>                                contentType = contentType.getBaseType();</TD></TR><TR><TD CLASS="l">97</TD><TD> </TD></TR><TR><TD CLASS="l">98</TD><TD>                                // If more than 1 openon is returned, need to further check</TD></TR><TR><TD CLASS="l">99</TD><TD>                                // which OpenOn is the appropriate one to return</TD></TR><TR><TD CLASS="l">100</TD><TD>                                // for now just returning the first one</TD></TR><TR CLASS="z"><TD CLASS="l">101</TD><TD>                                if (defs != null &amp;&amp; defs.length &gt; 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">102</TD><TD>                                        openOn = defs[0].createOpenOn();</TD></TR><TR><TD CLASS="l">103</TD><TD>                                }</TD></TR><TR><TD CLASS="l">104</TD><TD>                        }</TD></TR><TR><TD CLASS="l">105</TD><TD>                }</TD></TR><TR><TD CLASS="l">106</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">107</TD><TD>                return openOn;</TD></TR><TR><TD CLASS="l">108</TD><TD>        }</TD></TR><TR><TD CLASS="l">109</TD><TD> </TD></TR><TR><TD CLASS="l">110</TD><TD>        /**</TD></TR><TR><TD CLASS="l">111</TD><TD>         * Returns the partition type located at offset in the document</TD></TR><TR><TD CLASS="l">112</TD><TD>         * </TD></TR><TR><TD CLASS="l">113</TD><TD>         * @param document -</TD></TR><TR><TD CLASS="l">114</TD><TD>         *            assumes document is not null</TD></TR><TR><TD CLASS="l"><A NAME="5">115</A></TD><TD>         * @param offset</TD></TR><TR><TD CLASS="l">116</TD><TD>         * @return String partition type</TD></TR><TR><TD CLASS="l">117</TD><TD>         */</TD></TR><TR><TD CLASS="l">118</TD><TD>        protected String getPartitionType(IDocument document, int offset) {</TD></TR><TR CLASS="z"><TD CLASS="l">119</TD><TD>                String type = null;</TD></TR><TR><TD CLASS="l">120</TD><TD>                try {</TD></TR><TR><TD CLASS="l">121</TD><TD>                        // TODO: provide partitioning information so we're not using a default like this</TD></TR><TR CLASS="z"><TD CLASS="l">122</TD><TD>                        if (document instanceof IStructuredDocument) {</TD></TR><TR CLASS="z"><TD CLASS="l">123</TD><TD>                                type = TextUtilities.getContentType(document, IStructuredPartitioning.DEFAULT_STRUCTURED_PARTITIONING, offset, false);</TD></TR><TR><TD CLASS="l">124</TD><TD>                        }</TD></TR><TR><TD CLASS="l">125</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">126</TD><TD>                catch (BadLocationException e1) {</TD></TR><TR><TD CLASS="l">127</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">128</TD><TD>                finally {</TD></TR><TR CLASS="z"><TD CLASS="l">129</TD><TD>                        if (type == null) {</TD></TR><TR><TD CLASS="l">130</TD><TD>                                try {</TD></TR><TR CLASS="z"><TD CLASS="l">131</TD><TD>                                        ITypedRegion region = document.getPartition(offset);</TD></TR><TR CLASS="z"><TD CLASS="l">132</TD><TD>                                        if (region != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">133</TD><TD>                                                type = region.getType();</TD></TR><TR><TD CLASS="l">134</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">135</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">136</TD><TD>                                catch (BadLocationException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">137</TD><TD>                                        type = null;</TD></TR><TR><TD CLASS="l">138</TD><TD>                                }</TD></TR><TR><TD CLASS="l">139</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">140</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">141</TD><TD>                return type;</TD></TR><TR><TD CLASS="l">142</TD><TD>        }</TD></TR><TR><TD CLASS="l">143</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="15.html">org.eclipse.wst.sse.ui.internal.openon</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/12e.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/12e.html
deleted file mode 100644
index 8a7cd4f..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/12e.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="16.html">org.eclipse.wst.sse.ui.internal.properties</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">AdapterPropertySheetEntryLabelProvider.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>AdapterPropertySheetEntryLabelProvider.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/89)</TD><TD CLASS="h">0%   (0/19)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">AdapterPropertySheetEntryLabelProvider</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/89)</TD><TD CLASS="h">0%   (0/19)</TD></TR><TR><TD CLASS="f"><A HREF="#0">AdapterPropertySheetEntryLabelProvider (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">getImage (Object): Image</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/43)</TD><TD CLASS="h">0%   (0/9)</TD></TR><TR><TD CLASS="f"><A HREF="#3">getText (Object): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/43)</TD><TD CLASS="h">0%   (0/9)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2005 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.properties;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD> </TD></TR><TR><TD CLASS="l">16</TD><TD> </TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.jface.viewers.LabelProvider;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.swt.graphics.Image;</TD></TR><TR><TD CLASS="l"><A NAME="0">19</A></TD><TD>import org.eclipse.ui.views.properties.IPropertySheetEntry;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;</TD></TR><TR><TD CLASS="l"><A NAME="2">21</A></TD><TD> </TD></TR><TR><TD CLASS="l">22</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">23</TD><TD>public class AdapterPropertySheetEntryLabelProvider extends LabelProvider {</TD></TR><TR><TD CLASS="l">24</TD><TD>        public Image getImage(Object element) {</TD></TR><TR CLASS="z"><TD CLASS="l">25</TD><TD>                if (element == null)</TD></TR><TR CLASS="z"><TD CLASS="l">26</TD><TD>                        return null;</TD></TR><TR CLASS="z"><TD CLASS="l">27</TD><TD>                if (element instanceof IPropertySheetEntry) {</TD></TR><TR CLASS="z"><TD CLASS="l">28</TD><TD>                        return ((IPropertySheetEntry) element).getImage();</TD></TR><TR><TD CLASS="l">29</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">30</TD><TD>                if (element instanceof INodeNotifier) {</TD></TR><TR CLASS="z"><TD CLASS="l">31</TD><TD>                        IPropertySheetEntry entry = (IPropertySheetEntry) ((INodeNotifier) element).getAdapterFor(IPropertySheetEntry.class);</TD></TR><TR CLASS="z"><TD CLASS="l">32</TD><TD>                        if (entry != null)</TD></TR><TR CLASS="z"><TD CLASS="l">33</TD><TD>                                return entry.getImage();</TD></TR><TR><TD CLASS="l">34</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">35</A></TD><TD>                return super.getImage(element);</TD></TR><TR><TD CLASS="l">36</TD><TD>        }</TD></TR><TR><TD CLASS="l">37</TD><TD> </TD></TR><TR><TD CLASS="l">38</TD><TD>        public String getText(Object element) {</TD></TR><TR CLASS="z"><TD CLASS="l">39</TD><TD>                if (element == null)</TD></TR><TR CLASS="z"><TD CLASS="l">40</TD><TD>                        return null;</TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>                if (element instanceof IPropertySheetEntry) {</TD></TR><TR CLASS="z"><TD CLASS="l">42</TD><TD>                        return ((IPropertySheetEntry) element).getValueAsString();</TD></TR><TR><TD CLASS="l">43</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>                if (element instanceof INodeNotifier) {</TD></TR><TR CLASS="z"><TD CLASS="l">45</TD><TD>                        IPropertySheetEntry entry = (IPropertySheetEntry) ((INodeNotifier) element).getAdapterFor(IPropertySheetEntry.class);</TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>                        if (entry != null)</TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>                                return entry.getValueAsString();</TD></TR><TR><TD CLASS="l">48</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>                return super.getText(element);</TD></TR><TR><TD CLASS="l">50</TD><TD>        }</TD></TR><TR><TD CLASS="l">51</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="16.html">org.eclipse.wst.sse.ui.internal.properties</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/12f.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/12f.html
deleted file mode 100644
index eea734b..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/12f.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="16.html">org.eclipse.wst.sse.ui.internal.properties</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">ConfigurablePropertySheetPage.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>ConfigurablePropertySheetPage.java</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/14)</TD><TD CLASS="h">0%   (0/333)</TD><TD CLASS="h">0%   (0/77)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">ConfigurablePropertySheetPage</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/325)</TD><TD CLASS="h">0%   (0/75)</TD></TR><TR><TD CLASS="f"><A HREF="#0">&lt;static initializer&gt;</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">ConfigurablePropertySheetPage (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/19)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#3">createControl (Composite): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">dispose (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#5">getConfiguration (): PropertySheetConfiguration</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">handleEntrySelection (ISelection): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/34)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR><TD CLASS="f"><A HREF="#7">init (IPageSite): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">makeContributions (IMenuManager, IToolBarManager, IStatusLineManager): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/38)</TD><TD CLASS="h">0%   (0/10)</TD></TR><TR><TD CLASS="f"><A HREF="#9">remove (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/55)</TD><TD CLASS="h">0%   (0/11)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">selectionChanged (IWorkbenchPart, ISelection): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/92)</TD><TD CLASS="h">0%   (0/16)</TD></TR><TR><TD CLASS="f"><A HREF="#b">setConfiguration (PropertySheetConfiguration): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/37)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#c">setFocus (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#d">ConfigurablePropertySheetPage$NullPropertySheetConfiguration</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#d">ConfigurablePropertySheetPage$NullPropertySheetConfiguration (ConfigurablePro...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#f">getPropertySourceProvider (IPropertySheetPage): IPropertySourceProvider</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2008 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.properties;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.core.runtime.Platform;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.jface.action.IMenuManager;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.jface.action.IStatusLineManager;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.jface.action.IToolBarManager;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.jface.viewers.ISelection;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.jface.viewers.IStructuredSelection;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.swt.widgets.Composite;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.ui.IWorkbenchPart;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.ui.part.IPageSite;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.ui.part.PageBookView;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.ui.views.properties.IPropertySheetEntry;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.ui.views.properties.IPropertySheetPage;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.ui.views.properties.IPropertySource;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.ui.views.properties.IPropertySourceProvider;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.ui.views.properties.PropertySheetPage;</TD></TR><TR><TD CLASS="l">30</TD><TD>import org.eclipse.wst.sse.ui.views.properties.IPropertySourceExtension;</TD></TR><TR><TD CLASS="l">31</TD><TD>import org.eclipse.wst.sse.ui.views.properties.PropertySheetConfiguration;</TD></TR><TR><TD CLASS="l">32</TD><TD> </TD></TR><TR><TD CLASS="l">33</TD><TD> </TD></TR><TR><TD CLASS="l">34</TD><TD>/**</TD></TR><TR><TD CLASS="l">35</TD><TD> * A configurable IPropertySheetPage since the standard PropertySheetPage does</TD></TR><TR><TD CLASS="l"><A NAME="d">36</A></TD><TD> * not expose its viewer field.</TD></TR><TR><TD CLASS="l">37</TD><TD> */</TD></TR><TR><TD CLASS="l"><A NAME="f">38</A></TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">39</TD><TD>public class ConfigurablePropertySheetPage extends PropertySheetPage {</TD></TR><TR CLASS="z"><TD CLASS="l">40</TD><TD>        private class NullPropertySheetConfiguration extends PropertySheetConfiguration {</TD></TR><TR><TD CLASS="l">41</TD><TD>                public IPropertySourceProvider getPropertySourceProvider(IPropertySheetPage page) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="0">42</A></TD><TD>                        return null;</TD></TR><TR><TD CLASS="l">43</TD><TD>                }</TD></TR><TR><TD CLASS="l">44</TD><TD>        }</TD></TR><TR><TD CLASS="l">45</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>        private static final boolean _DEBUG = &#34;true&#34;.equalsIgnoreCase(Platform.getDebugOption(&#34;org.eclipse.wst.sse.ui/propertySheet&#34;)); //$NON-NLS-1$  //$NON-NLS-2$;;</TD></TR><TR><TD CLASS="l">47</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">48</TD><TD>        private long _DEBUG_TIME = 0;</TD></TR><TR><TD CLASS="l">49</TD><TD> </TD></TR><TR><TD CLASS="l">50</TD><TD>        private PropertySheetConfiguration fConfiguration;</TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>        private Object[] fSelectedEntries = null;</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>        private ISelection fInput = null;</TD></TR><TR><TD CLASS="l">53</TD><TD>        private IMenuManager fMenuManager;</TD></TR><TR><TD CLASS="l">54</TD><TD> </TD></TR><TR><TD CLASS="l">55</TD><TD>        private RemoveAction fRemoveAction;</TD></TR><TR><TD CLASS="l">56</TD><TD> </TD></TR><TR><TD CLASS="l">57</TD><TD>        private IStatusLineManager fStatusLineManager;</TD></TR><TR><TD CLASS="l">58</TD><TD> </TD></TR><TR><TD CLASS="l">59</TD><TD>        private IToolBarManager fToolBarManager;</TD></TR><TR><TD CLASS="l"><A NAME="2">60</A></TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>        private final PropertySheetConfiguration NULL_CONFIGURATION = new NullPropertySheetConfiguration();</TD></TR><TR><TD CLASS="l">62</TD><TD> </TD></TR><TR><TD CLASS="l">63</TD><TD>        public ConfigurablePropertySheetPage() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">64</A></TD><TD>                super();</TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>        }</TD></TR><TR><TD CLASS="l">66</TD><TD> </TD></TR><TR><TD CLASS="l">67</TD><TD>        public void createControl(Composite parent) {</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>                setPropertySourceProvider(getConfiguration().getPropertySourceProvider(this));</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">69</A></TD><TD>                super.createControl(parent);</TD></TR><TR CLASS="z"><TD CLASS="l">70</TD><TD>        }</TD></TR><TR><TD CLASS="l">71</TD><TD> </TD></TR><TR><TD CLASS="l">72</TD><TD>        public void dispose() {</TD></TR><TR CLASS="z"><TD CLASS="l">73</TD><TD>                setConfiguration(null);</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>                getSite().getWorkbenchWindow().getSelectionService().removePostSelectionListener(this);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="5">75</A></TD><TD>                super.dispose();</TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>        }</TD></TR><TR><TD CLASS="l">77</TD><TD> </TD></TR><TR><TD CLASS="l">78</TD><TD>        public PropertySheetConfiguration getConfiguration() {</TD></TR><TR CLASS="z"><TD CLASS="l">79</TD><TD>                if (fConfiguration == null)</TD></TR><TR CLASS="z"><TD CLASS="l">80</TD><TD>                        fConfiguration = NULL_CONFIGURATION;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="6">81</A></TD><TD>                return fConfiguration;</TD></TR><TR><TD CLASS="l">82</TD><TD>        }</TD></TR><TR><TD CLASS="l">83</TD><TD> </TD></TR><TR><TD CLASS="l">84</TD><TD>        public void handleEntrySelection(ISelection selection) {</TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>                if (getControl() != null &amp;&amp; !getControl().isDisposed() &amp;&amp; selection != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                        super.handleEntrySelection(selection);</TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>                        if (selection instanceof IStructuredSelection) {</TD></TR><TR CLASS="z"><TD CLASS="l">88</TD><TD>                                fSelectedEntries = ((IStructuredSelection) selection).toArray();</TD></TR><TR><TD CLASS="l">89</TD><TD>                        }</TD></TR><TR><TD CLASS="l">90</TD><TD>                        else {</TD></TR><TR CLASS="z"><TD CLASS="l">91</TD><TD>                                fSelectedEntries = null;</TD></TR><TR><TD CLASS="l">92</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">93</TD><TD>                        fRemoveAction.setEnabled(!selection.isEmpty());</TD></TR><TR><TD CLASS="l"><A NAME="7">94</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">95</TD><TD>        }</TD></TR><TR><TD CLASS="l">96</TD><TD> </TD></TR><TR><TD CLASS="l">97</TD><TD>        public void init(IPageSite pageSite) {</TD></TR><TR CLASS="z"><TD CLASS="l">98</TD><TD>                super.init(pageSite);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="8">99</A></TD><TD>                pageSite.getWorkbenchWindow().getSelectionService().addPostSelectionListener(this);</TD></TR><TR CLASS="z"><TD CLASS="l">100</TD><TD>        }</TD></TR><TR><TD CLASS="l">101</TD><TD> </TD></TR><TR><TD CLASS="l">102</TD><TD>        public void makeContributions(IMenuManager menuManager, IToolBarManager toolBarManager, IStatusLineManager statusLineManager) {</TD></TR><TR CLASS="z"><TD CLASS="l">103</TD><TD>                super.makeContributions(menuManager, toolBarManager, statusLineManager);</TD></TR><TR CLASS="z"><TD CLASS="l">104</TD><TD>                fMenuManager = menuManager;</TD></TR><TR CLASS="z"><TD CLASS="l">105</TD><TD>                fToolBarManager = toolBarManager;</TD></TR><TR CLASS="z"><TD CLASS="l">106</TD><TD>                fStatusLineManager = statusLineManager;</TD></TR><TR><TD CLASS="l">107</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">108</TD><TD>                fRemoveAction = new RemoveAction(this);</TD></TR><TR CLASS="z"><TD CLASS="l">109</TD><TD>                toolBarManager.add(fRemoveAction);</TD></TR><TR CLASS="z"><TD CLASS="l">110</TD><TD>                menuManager.add(fRemoveAction);</TD></TR><TR CLASS="z"><TD CLASS="l">111</TD><TD>                getConfiguration().addContributions(menuManager, toolBarManager, statusLineManager);</TD></TR><TR><TD CLASS="l">112</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="9">113</A></TD><TD>                menuManager.update(true);</TD></TR><TR CLASS="z"><TD CLASS="l">114</TD><TD>        }</TD></TR><TR><TD CLASS="l">115</TD><TD> </TD></TR><TR><TD CLASS="l">116</TD><TD>        void remove() {</TD></TR><TR CLASS="z"><TD CLASS="l">117</TD><TD>                if (fSelectedEntries != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">118</TD><TD>                        Object[] entries = fSelectedEntries;</TD></TR><TR CLASS="z"><TD CLASS="l">119</TD><TD>                        ISelection selection = fInput;</TD></TR><TR CLASS="z"><TD CLASS="l">120</TD><TD>                        if (selection != null &amp;&amp; !selection.isEmpty() &amp;&amp; selection instanceof IStructuredSelection) {</TD></TR><TR CLASS="z"><TD CLASS="l">121</TD><TD>                                IPropertySource source = getConfiguration().getPropertySourceProvider(this).getPropertySource(((IStructuredSelection) selection).getFirstElement());</TD></TR><TR CLASS="z"><TD CLASS="l">122</TD><TD>                                if (source != null &amp;&amp; source instanceof IPropertySourceExtension) {</TD></TR><TR CLASS="z"><TD CLASS="l">123</TD><TD>                                        for (int i = 0; i &lt; entries.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">124</TD><TD>                                                if (entries[i] instanceof IPropertySheetEntry) {</TD></TR><TR CLASS="z"><TD CLASS="l">125</TD><TD>                                                        IPropertySheetEntry entry = (IPropertySheetEntry) entries[i];</TD></TR><TR CLASS="z"><TD CLASS="l">126</TD><TD>                                                        ((IPropertySourceExtension) source).removeProperty(entry.getDisplayName());</TD></TR><TR><TD CLASS="l">127</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">128</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">129</TD><TD>                                }</TD></TR><TR><TD CLASS="l">130</TD><TD>                        }</TD></TR><TR><TD CLASS="l">131</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">132</TD><TD>        }</TD></TR><TR><TD CLASS="l">133</TD><TD> </TD></TR><TR><TD CLASS="l">134</TD><TD>        /*</TD></TR><TR><TD CLASS="l">135</TD><TD>         * Filter the selection through the current Configuration. Not every</TD></TR><TR><TD CLASS="l">136</TD><TD>         * selection received is a Structured selection nor are the Structured</TD></TR><TR><TD CLASS="l">137</TD><TD>         * selection's elements all to be displayed.</TD></TR><TR><TD CLASS="l">138</TD><TD>         * </TD></TR><TR><TD CLASS="l"><A NAME="a">139</A></TD><TD>         * @see org.eclipse.ui.ISelectionListener#selectionChanged(org.eclipse.ui.IWorkbenchPart,</TD></TR><TR><TD CLASS="l">140</TD><TD>         *      org.eclipse.jface.viewers.ISelection)</TD></TR><TR><TD CLASS="l">141</TD><TD>         */</TD></TR><TR><TD CLASS="l">142</TD><TD>        public void selectionChanged(IWorkbenchPart part, ISelection selection) {</TD></TR><TR CLASS="z"><TD CLASS="l">143</TD><TD>                if (_DEBUG) {</TD></TR><TR CLASS="z"><TD CLASS="l">144</TD><TD>                        _DEBUG_TIME = System.currentTimeMillis();</TD></TR><TR><TD CLASS="l">145</TD><TD>                }</TD></TR><TR><TD CLASS="l">146</TD><TD>                // skip if we're the source of this selection</TD></TR><TR CLASS="z"><TD CLASS="l">147</TD><TD>                if (part != null &amp;&amp; part instanceof PageBookView) {</TD></TR><TR CLASS="z"><TD CLASS="l">148</TD><TD>                        if (((PageBookView) part).getCurrentPage() == this)</TD></TR><TR CLASS="z"><TD CLASS="l">149</TD><TD>                                return;</TD></TR><TR><TD CLASS="l">150</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">151</TD><TD>                if (getControl() != null &amp;&amp; getControl().isVisible()) {</TD></TR><TR CLASS="z"><TD CLASS="l">152</TD><TD>                        ISelection preferredSelection = getConfiguration().getInputSelection(part, selection);</TD></TR><TR><TD CLASS="l">153</TD><TD>                        /*</TD></TR><TR><TD CLASS="l">154</TD><TD>                         * Do some minor caching of the selection.</TD></TR><TR><TD CLASS="l">155</TD><TD>                         * </TD></TR><TR><TD CLASS="l">156</TD><TD>                         * As a PropertySheetPage, we've always notified of selection</TD></TR><TR><TD CLASS="l">157</TD><TD>                         * changes, but we've also subscribed to post selection</TD></TR><TR><TD CLASS="l">158</TD><TD>                         * notification so we can track caret movements in source viewers.</TD></TR><TR><TD CLASS="l">159</TD><TD>                         * When selecting a block of text, we're thus notified of the new</TD></TR><TR><TD CLASS="l">160</TD><TD>                         * selection twice. Remembering what our last *effective*</TD></TR><TR><TD CLASS="l">161</TD><TD>                         * selection was allows us to cut out most of the</TD></TR><TR><TD CLASS="l">162</TD><TD>                         * double-notification penalty.</TD></TR><TR><TD CLASS="l">163</TD><TD>                         */</TD></TR><TR CLASS="z"><TD CLASS="l">164</TD><TD>                        if (!preferredSelection.equals(fInput)) {</TD></TR><TR CLASS="z"><TD CLASS="l">165</TD><TD>                                fInput = preferredSelection;</TD></TR><TR CLASS="z"><TD CLASS="l">166</TD><TD>                                fSelectedEntries = null;</TD></TR><TR CLASS="z"><TD CLASS="l">167</TD><TD>                                super.selectionChanged(part, preferredSelection);</TD></TR><TR><TD CLASS="l">168</TD><TD>                        }</TD></TR><TR><TD CLASS="l">169</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">170</TD><TD>                        if (_DEBUG) {</TD></TR><TR CLASS="z"><TD CLASS="l">171</TD><TD>                                System.out.println(&#34;(P:service &#34; + (System.currentTimeMillis() - _DEBUG_TIME) + &#34;ms) &#34; + part + &#34; : &#34; + ((IStructuredSelection) preferredSelection).getFirstElement()); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$</TD></TR><TR><TD CLASS="l">172</TD><TD>                        }</TD></TR><TR><TD CLASS="l">173</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">174</TD><TD>                else if (_DEBUG) {</TD></TR><TR CLASS="z"><TD CLASS="l">175</TD><TD>                        System.out.println(&#34;[skipped] (P:&#34; + (System.currentTimeMillis() - _DEBUG_TIME) + &#34;ms) &#34; + part + &#34; : &#34; + selection); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$</TD></TR><TR><TD CLASS="l">176</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">177</TD><TD>        }</TD></TR><TR><TD CLASS="l">178</TD><TD> </TD></TR><TR><TD CLASS="l">179</TD><TD>        /**</TD></TR><TR><TD CLASS="l"><A NAME="b">180</A></TD><TD>         * @param configuration</TD></TR><TR><TD CLASS="l">181</TD><TD>         *            The configuration to set.</TD></TR><TR><TD CLASS="l">182</TD><TD>         */</TD></TR><TR><TD CLASS="l">183</TD><TD>        public void setConfiguration(PropertySheetConfiguration configuration) {</TD></TR><TR CLASS="z"><TD CLASS="l">184</TD><TD>                if (fConfiguration != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">185</TD><TD>                        fConfiguration.removeContributions(fMenuManager, fToolBarManager, fStatusLineManager);</TD></TR><TR CLASS="z"><TD CLASS="l">186</TD><TD>                        fConfiguration.unconfigure();</TD></TR><TR><TD CLASS="l">187</TD><TD>                }</TD></TR><TR><TD CLASS="l">188</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">189</TD><TD>                fConfiguration = configuration;</TD></TR><TR><TD CLASS="l">190</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">191</TD><TD>                if (fConfiguration != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">192</TD><TD>                        setPropertySourceProvider(fConfiguration.getPropertySourceProvider(this));</TD></TR><TR CLASS="z"><TD CLASS="l">193</TD><TD>                        fConfiguration.addContributions(fMenuManager, fToolBarManager, fStatusLineManager);</TD></TR><TR><TD CLASS="l"><A NAME="c">194</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">195</TD><TD>        }</TD></TR><TR><TD CLASS="l">196</TD><TD> </TD></TR><TR><TD CLASS="l">197</TD><TD>        public void setFocus() {</TD></TR><TR CLASS="z"><TD CLASS="l">198</TD><TD>                super.setFocus();</TD></TR><TR CLASS="z"><TD CLASS="l">199</TD><TD>        }</TD></TR><TR><TD CLASS="l">200</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="16.html">org.eclipse.wst.sse.ui.internal.properties</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/13.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/13.html
deleted file mode 100644
index 2b2e4f7..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/13.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR PACKAGE [<SPAN CLASS="in">org.eclipse.wst.sse.ui.internal.handlers</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>org.eclipse.wst.sse.ui.internal.handlers</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/25)</TD><TD CLASS="h">0%   (0/1106)</TD><TD CLASS="h">0%   (0/251)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY SOURCE FILE</H3><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR CLASS="o"><TD><A HREF="121.html">AbstractStructuredSelectHandler.java</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/161)</TD><TD CLASS="h">0%   (0/38)</TD></TR><TR><TD><A HREF="122.html">FindOccurrencesHandler.java</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/198)</TD><TD CLASS="h">0%   (0/51)</TD></TR><TR CLASS="o"><TD><A HREF="123.html">FormatHandler.java</A></TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/661)</TD><TD CLASS="h">0%   (0/143)</TD></TR><TR><TD><A HREF="124.html">StructuredSelectHistoryHandler.java</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/86)</TD><TD CLASS="h">0%   (0/19)</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/130.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/130.html
deleted file mode 100644
index 4a3a997..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/130.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="16.html">org.eclipse.wst.sse.ui.internal.properties</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">CustomPropertyDescriptor.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>CustomPropertyDescriptor.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/106)</TD><TD CLASS="h">0%   (0/23)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">CustomPropertyDescriptor</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/106)</TD><TD CLASS="h">0%   (0/23)</TD></TR><TR><TD CLASS="f"><A HREF="#0">CustomPropertyDescriptor (Object, String, Class): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">CustomPropertyDescriptor (String, String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/20)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#3">createPropertyEditor (Composite): CellEditor</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">getCellEditorClass (): Class</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#5">getPropertyEditor (Composite): CellEditor</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/60)</TD><TD CLASS="h">0%   (0/12)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">setCellEditorClass (Class): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2005 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.properties;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD> </TD></TR><TR><TD CLASS="l">16</TD><TD> </TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.jface.viewers.CellEditor;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.jface.viewers.TextCellEditor;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.swt.widgets.Composite;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.ui.views.properties.PropertyDescriptor;</TD></TR><TR><TD CLASS="l">21</TD><TD> </TD></TR><TR><TD CLASS="l">22</TD><TD>public class CustomPropertyDescriptor extends PropertyDescriptor {</TD></TR><TR><TD CLASS="l">23</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">24</TD><TD>        protected Class cellEditorClass = null;</TD></TR><TR><TD CLASS="l">25</TD><TD> </TD></TR><TR><TD CLASS="l">26</TD><TD>        /**</TD></TR><TR><TD CLASS="l">27</TD><TD>         * Returns a property descriptor with a unique name and a display name.</TD></TR><TR><TD CLASS="l">28</TD><TD>         * </TD></TR><TR><TD CLASS="l">29</TD><TD>         * @param id</TD></TR><TR><TD CLASS="l">30</TD><TD>         *            the id for the property</TD></TR><TR><TD CLASS="l"><A NAME="0">31</A></TD><TD>         * @param displayName</TD></TR><TR><TD CLASS="l">32</TD><TD>         *            the name to display for the property</TD></TR><TR><TD CLASS="l">33</TD><TD>         */</TD></TR><TR><TD CLASS="l">34</TD><TD>        public CustomPropertyDescriptor(Object id, String newDisplayName, Class editorClass) {</TD></TR><TR CLASS="z"><TD CLASS="l">35</TD><TD>                super(id, newDisplayName);</TD></TR><TR CLASS="z"><TD CLASS="l">36</TD><TD>                setDescription((String) id);</TD></TR><TR CLASS="z"><TD CLASS="l">37</TD><TD>                setCellEditorClass(editorClass);</TD></TR><TR CLASS="z"><TD CLASS="l">38</TD><TD>        }</TD></TR><TR><TD CLASS="l">39</TD><TD> </TD></TR><TR><TD CLASS="l">40</TD><TD>        /**</TD></TR><TR><TD CLASS="l">41</TD><TD>         * Returns a property descriptor with a unique name and a display name.</TD></TR><TR><TD CLASS="l">42</TD><TD>         * </TD></TR><TR><TD CLASS="l">43</TD><TD>         * @param uniqueName</TD></TR><TR><TD CLASS="l">44</TD><TD>         *            the unique name of the property</TD></TR><TR><TD CLASS="l"><A NAME="2">45</A></TD><TD>         * @param displayName</TD></TR><TR><TD CLASS="l">46</TD><TD>         *            the name to display for the property</TD></TR><TR><TD CLASS="l">47</TD><TD>         */</TD></TR><TR><TD CLASS="l">48</TD><TD>        public CustomPropertyDescriptor(String uniqueName, String newDisplayName) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">49</A></TD><TD>                this(uniqueName, newDisplayName, TextCellEditor.class);</TD></TR><TR CLASS="z"><TD CLASS="l">50</TD><TD>        }</TD></TR><TR><TD CLASS="l">51</TD><TD> </TD></TR><TR><TD CLASS="l">52</TD><TD>        public CellEditor createPropertyEditor(Composite parent) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">53</A></TD><TD>                return getPropertyEditor(parent);</TD></TR><TR><TD CLASS="l">54</TD><TD>        }</TD></TR><TR><TD CLASS="l">55</TD><TD> </TD></TR><TR><TD CLASS="l">56</TD><TD>        public Class getCellEditorClass() {</TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>                return cellEditorClass;</TD></TR><TR><TD CLASS="l">58</TD><TD>        }</TD></TR><TR><TD CLASS="l">59</TD><TD> </TD></TR><TR><TD CLASS="l">60</TD><TD>        /**</TD></TR><TR><TD CLASS="l">61</TD><TD>         * Returns the editor used to edit the property.</TD></TR><TR><TD CLASS="l"><A NAME="5">62</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">63</TD><TD>         * @return an editor for the property</TD></TR><TR><TD CLASS="l">64</TD><TD>         */</TD></TR><TR><TD CLASS="l">65</TD><TD>        protected CellEditor getPropertyEditor(Composite parent) {</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                if (getCellEditorClass() == null)</TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>                        return null;</TD></TR><TR><TD CLASS="l">68</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                java.lang.reflect.Constructor constructor = null;</TD></TR><TR><TD CLASS="l">70</TD><TD>                try {</TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>                        constructor = getCellEditorClass().getDeclaredConstructor(new Class[]{Composite.class});</TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>                } catch (NoSuchMethodException nsme) {</TD></TR><TR CLASS="z"><TD CLASS="l">73</TD><TD>                        return new TextCellEditor(parent);</TD></TR><TR><TD CLASS="l">74</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>                if (constructor != null) {</TD></TR><TR><TD CLASS="l">76</TD><TD>                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>                                return (CellEditor) constructor.newInstance(new Object[]{parent});</TD></TR><TR CLASS="z"><TD CLASS="l">78</TD><TD>                        } catch (InstantiationException ie) {</TD></TR><TR CLASS="z"><TD CLASS="l">79</TD><TD>                        } catch (java.lang.reflect.InvocationTargetException ite) {</TD></TR><TR CLASS="z"><TD CLASS="l">80</TD><TD>                        } catch (IllegalAccessException iae) {</TD></TR><TR><TD CLASS="l">81</TD><TD>                        }</TD></TR><TR><TD CLASS="l">82</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="6">83</A></TD><TD>                return new TextCellEditor(parent);</TD></TR><TR><TD CLASS="l">84</TD><TD>        }</TD></TR><TR><TD CLASS="l">85</TD><TD> </TD></TR><TR><TD CLASS="l">86</TD><TD>        public void setCellEditorClass(Class newCellEditorClass) {</TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>                cellEditorClass = newCellEditorClass;</TD></TR><TR CLASS="z"><TD CLASS="l">88</TD><TD>        }</TD></TR><TR><TD CLASS="l">89</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="16.html">org.eclipse.wst.sse.ui.internal.properties</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/131.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/131.html
deleted file mode 100644
index 63549a6..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/131.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="16.html">org.eclipse.wst.sse.ui.internal.properties</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">RemoveAction.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>RemoveAction.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/30)</TD><TD CLASS="h">0%   (0/10)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">RemoveAction</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/30)</TD><TD CLASS="h">0%   (0/10)</TD></TR><TR><TD CLASS="f"><A HREF="#0">RemoveAction (ConfigurablePropertySheetPage): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/24)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">getText (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#3">run (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2005 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.properties;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.jface.action.Action;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.wst.sse.ui.internal.SSEUIMessages;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.wst.sse.ui.internal.editor.EditorPluginImageHelper;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.wst.sse.ui.internal.editor.EditorPluginImages;</TD></TR><TR><TD CLASS="l">19</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="0">20</A></TD><TD>public class RemoveAction extends Action {</TD></TR><TR><TD CLASS="l">21</TD><TD>        private ConfigurablePropertySheetPage fPage;</TD></TR><TR><TD CLASS="l">22</TD><TD> </TD></TR><TR><TD CLASS="l">23</TD><TD>        public RemoveAction(ConfigurablePropertySheetPage page) {</TD></TR><TR CLASS="z"><TD CLASS="l">24</TD><TD>                super();</TD></TR><TR CLASS="z"><TD CLASS="l">25</TD><TD>                fPage = page;</TD></TR><TR CLASS="z"><TD CLASS="l">26</TD><TD>                setText(getText());</TD></TR><TR CLASS="z"><TD CLASS="l">27</TD><TD>                setToolTipText(getText());</TD></TR><TR CLASS="z"><TD CLASS="l">28</TD><TD>                setImageDescriptor(EditorPluginImageHelper.getInstance().getImageDescriptor(EditorPluginImages.IMG_ELCL_DELETE));</TD></TR><TR CLASS="z"><TD CLASS="l">29</TD><TD>                setDisabledImageDescriptor(EditorPluginImageHelper.getInstance().getImageDescriptor(EditorPluginImages.IMG_DLCL_DELETE));</TD></TR><TR CLASS="z"><TD CLASS="l">30</TD><TD>        }</TD></TR><TR><TD CLASS="l">31</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="2">32</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">33</TD><TD>         * @see org.eclipse.jface.action.Action#getText()</TD></TR><TR><TD CLASS="l">34</TD><TD>         */</TD></TR><TR><TD CLASS="l">35</TD><TD>        public String getText() {</TD></TR><TR CLASS="z"><TD CLASS="l">36</TD><TD>                return SSEUIMessages.RemoveAction_0; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">37</TD><TD>        }</TD></TR><TR><TD CLASS="l">38</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="3">39</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">40</TD><TD>         * @see org.eclipse.jface.action.IAction#run()</TD></TR><TR><TD CLASS="l">41</TD><TD>         */</TD></TR><TR><TD CLASS="l">42</TD><TD>        public void run() {</TD></TR><TR CLASS="z"><TD CLASS="l">43</TD><TD>                fPage.remove();</TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>        }</TD></TR><TR><TD CLASS="l">45</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="16.html">org.eclipse.wst.sse.ui.internal.properties</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/132.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/132.html
deleted file mode 100644
index a4d95fe..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/132.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="16.html">org.eclipse.wst.sse.ui.internal.properties</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">ShowPropertiesAction.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>ShowPropertiesAction.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/65)</TD><TD CLASS="h">0%   (0/18)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">ShowPropertiesAction</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/65)</TD><TD CLASS="h">0%   (0/18)</TD></TR><TR><TD CLASS="f"><A HREF="#0">ShowPropertiesAction (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">ShowPropertiesAction (IWorkbenchPart, ISelectionProvider): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#3">getViewID (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">run (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/42)</TD><TD CLASS="h">0%   (0/10)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2008 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.properties;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.jface.viewers.ISelectionProvider;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.ui.ISelectionListener;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.ui.IViewPart;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.ui.IWorkbenchPage;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.ui.IWorkbenchPart;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.ui.IWorkbenchWindow;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.ui.PlatformUI;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.wst.sse.ui.internal.SSEUIMessages;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.wst.sse.ui.internal.SSEUIPlugin;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.wst.sse.ui.internal.ShowViewAction;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.wst.sse.ui.internal.editor.EditorPluginImageHelper;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.wst.sse.ui.internal.editor.EditorPluginImages;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.wst.sse.ui.internal.editor.IHelpContextIds;</TD></TR><TR><TD CLASS="l">28</TD><TD> </TD></TR><TR><TD CLASS="l">29</TD><TD>/**</TD></TR><TR><TD CLASS="l">30</TD><TD> * Surfaces the Properties view</TD></TR><TR><TD CLASS="l">31</TD><TD> */</TD></TR><TR><TD CLASS="l">32</TD><TD>public class ShowPropertiesAction extends ShowViewAction {</TD></TR><TR><TD CLASS="l">33</TD><TD>        private final static String VIEW_ID = &#34;org.eclipse.ui.views.PropertySheet&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l"><A NAME="0">34</A></TD><TD>        private ISelectionProvider fSelectionProvider;</TD></TR><TR><TD CLASS="l">35</TD><TD>        private IWorkbenchPart fPart;</TD></TR><TR><TD CLASS="l">36</TD><TD> </TD></TR><TR><TD CLASS="l">37</TD><TD>        public ShowPropertiesAction() {</TD></TR><TR CLASS="z"><TD CLASS="l">38</TD><TD>                super(SSEUIMessages.ShowPropertiesAction_0, EditorPluginImageHelper.getInstance().getImageDescriptor(EditorPluginImages.IMG_OBJ_PROP_PS)); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">39</A></TD><TD>                PlatformUI.getWorkbench().getHelpSystem().setHelp(this, IHelpContextIds.CONTMNU_PROPERTIES_HELPID);</TD></TR><TR CLASS="z"><TD CLASS="l">40</TD><TD>        }</TD></TR><TR><TD CLASS="l">41</TD><TD> </TD></TR><TR><TD CLASS="l">42</TD><TD>        public ShowPropertiesAction(IWorkbenchPart part, ISelectionProvider provider) {</TD></TR><TR CLASS="z"><TD CLASS="l">43</TD><TD>                this();</TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>                fSelectionProvider = provider;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">45</A></TD><TD>                fPart = part;</TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>        }</TD></TR><TR><TD CLASS="l">47</TD><TD> </TD></TR><TR><TD CLASS="l">48</TD><TD>        protected String getViewID() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">49</A></TD><TD>                return VIEW_ID;</TD></TR><TR><TD CLASS="l">50</TD><TD>        }</TD></TR><TR><TD CLASS="l">51</TD><TD> </TD></TR><TR><TD CLASS="l">52</TD><TD>        public void run() {</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>                super.run();</TD></TR><TR><TD CLASS="l">54</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                if (fSelectionProvider != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>                        IWorkbenchWindow window = SSEUIPlugin.getDefault().getWorkbench().getActiveWorkbenchWindow();</TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>                        IWorkbenchPage page = window.getActivePage();</TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>                        if (page != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>                                IViewPart findView = page.findView(getViewID());</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                                if (findView instanceof ISelectionListener &amp;&amp; fPart != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                                        ((ISelectionListener) findView).selectionChanged(fPart, fSelectionProvider.getSelection());</TD></TR><TR><TD CLASS="l">62</TD><TD>                                }</TD></TR><TR><TD CLASS="l">63</TD><TD>                                else {</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                                        findView.getViewSite().getSelectionProvider().setSelection(fSelectionProvider.getSelection());</TD></TR><TR><TD CLASS="l">65</TD><TD>                                }</TD></TR><TR><TD CLASS="l">66</TD><TD>                        }</TD></TR><TR><TD CLASS="l">67</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>        }</TD></TR><TR><TD CLASS="l">69</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="16.html">org.eclipse.wst.sse.ui.internal.properties</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/133.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/133.html
deleted file mode 100644
index 3ff2cad..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/133.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="17.html">org.eclipse.wst.sse.ui.internal.provisional.extensions</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">ConfigurationPointCalculator.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>ConfigurationPointCalculator.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/227)</TD><TD CLASS="h">0%   (0/56)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">ConfigurationPointCalculator</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/227)</TD><TD CLASS="h">0%   (0/56)</TD></TR><TR><TD CLASS="f"><A HREF="#1">ConfigurationPointCalculator (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">getConfigurationPoints (): String []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/165)</TD><TD CLASS="h">0%   (0/32)</TD></TR><TR><TD CLASS="f"><A HREF="#0">getConfigurationPoints (IEditorPart, String, String, Class): String []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/19)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">getContentType (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#5">getPart (): IWorkbenchPart</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">getRootClass (): Class</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#7">getSubContext (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">setContentType (String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#9">setPart (IWorkbenchPart): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">setRootClass (Class): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#b">setSubContext (String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2008 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.provisional.extensions;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.util.ArrayList;</TD></TR><TR><TD CLASS="l">16</TD><TD>import java.util.List;</TD></TR><TR><TD CLASS="l">17</TD><TD> </TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.core.runtime.Platform;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.core.runtime.content.IContentType;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.core.runtime.content.IContentTypeManager;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.ui.IEditorPart;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.ui.IWorkbenchPart;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.ui.IWorkbenchPartSite;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.ui.part.MultiPageEditorSite;</TD></TR><TR><TD CLASS="l">25</TD><TD> </TD></TR><TR><TD CLASS="l">26</TD><TD>public class ConfigurationPointCalculator {</TD></TR><TR><TD CLASS="l"><A NAME="0">27</A></TD><TD>        public static final String DESIGN = &#34;.design&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">28</TD><TD>        public static final String SOURCE = &#34;.source&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">29</TD><TD> </TD></TR><TR><TD CLASS="l">30</TD><TD>        public static String[] getConfigurationPoints(IEditorPart part, String contentType, String subContext, Class rootClass) {</TD></TR><TR CLASS="z"><TD CLASS="l">31</TD><TD>                ConfigurationPointCalculator calculator = new ConfigurationPointCalculator();</TD></TR><TR CLASS="z"><TD CLASS="l">32</TD><TD>                calculator.setContentType(contentType);</TD></TR><TR CLASS="z"><TD CLASS="l">33</TD><TD>                calculator.setPart(part);</TD></TR><TR CLASS="z"><TD CLASS="l">34</TD><TD>                calculator.setRootClass(rootClass);</TD></TR><TR CLASS="z"><TD CLASS="l">35</TD><TD>                calculator.setSubContext(subContext);</TD></TR><TR CLASS="z"><TD CLASS="l">36</TD><TD>                return calculator.getConfigurationPoints();</TD></TR><TR><TD CLASS="l">37</TD><TD>        }</TD></TR><TR><TD CLASS="l">38</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">39</TD><TD>        protected String fContentType = null;</TD></TR><TR CLASS="z"><TD CLASS="l">40</TD><TD>        protected IWorkbenchPart fPart = null;</TD></TR><TR><TD CLASS="l">41</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">42</TD><TD>        protected Class fRootClass = null;</TD></TR><TR CLASS="z"><TD CLASS="l">43</TD><TD>        protected String fSubContext = null;</TD></TR><TR><TD CLASS="l">44</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="1">45</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">46</TD><TD>         * </TD></TR><TR><TD CLASS="l">47</TD><TD>         */</TD></TR><TR><TD CLASS="l">48</TD><TD>        public ConfigurationPointCalculator() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">49</A></TD><TD>                super();</TD></TR><TR CLASS="z"><TD CLASS="l">50</TD><TD>        }</TD></TR><TR><TD CLASS="l">51</TD><TD> </TD></TR><TR><TD CLASS="l">52</TD><TD>        public String[] getConfigurationPoints() {</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>                List points = new ArrayList(2);</TD></TR><TR><TD CLASS="l">54</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                IWorkbenchPartSite site = null;</TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>                if (fPart != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>                        site = fPart.getSite();</TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>                        String id = site.getId();</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>                        if (id != null &amp;&amp; id.length() &gt; 0 &amp;&amp; !id.equals(fRootClass.getName()))</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                                points.add(id);</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                        if (site instanceof MultiPageEditorSite) {</TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>                                String multipageID = ((MultiPageEditorSite) site).getMultiPageEditor().getSite().getId();</TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>                                if (!points.contains(multipageID))</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                                        points.add(multipageID);</TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>                                String sourcePageID = ((MultiPageEditorSite) site).getMultiPageEditor().getSite().getId() + &#34;.source&#34;; //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                                if (!points.contains(sourcePageID))</TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>                                        points.add(sourcePageID);</TD></TR><TR><TD CLASS="l">68</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                        if (site instanceof MultiPageEditorSite) {</TD></TR><TR CLASS="z"><TD CLASS="l">70</TD><TD>                                String multipageClassName = ((MultiPageEditorSite) site).getMultiPageEditor().getClass().getName();</TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>                                if (!points.contains(multipageClassName))</TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>                                        points.add(multipageClassName);</TD></TR><TR><TD CLASS="l">73</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>                        Class editorClass = fPart.getClass();</TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>                        while (editorClass != null &amp;&amp; fRootClass != null &amp;&amp; !editorClass.equals(fRootClass)) {</TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>                                if (!points.contains(editorClass.getName()))</TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>                                        points.add(editorClass.getName());</TD></TR><TR CLASS="z"><TD CLASS="l">78</TD><TD>                                editorClass = editorClass.getSuperclass();</TD></TR><TR><TD CLASS="l">79</TD><TD>                        }</TD></TR><TR><TD CLASS="l">80</TD><TD>                }</TD></TR><TR><TD CLASS="l">81</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>                if (fContentType != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">83</TD><TD>                        IContentType contentType = Platform.getContentTypeManager().getContentType(fContentType);</TD></TR><TR CLASS="z"><TD CLASS="l">84</TD><TD>                        while (contentType != null &amp;&amp; !contentType.getId().equals(IContentTypeManager.CT_TEXT)) {</TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>                                if (!points.contains(contentType.getId()))</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                                        points.add(contentType.getId());</TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>                                contentType = contentType.getBaseType();</TD></TR><TR><TD CLASS="l">88</TD><TD>                        }</TD></TR><TR><TD CLASS="l">89</TD><TD>                }</TD></TR><TR><TD CLASS="l">90</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">91</TD><TD>                if (fRootClass != null &amp;&amp; !points.contains(fRootClass.getName()))</TD></TR><TR CLASS="z"><TD CLASS="l">92</TD><TD>                        points.add(fRootClass.getName());</TD></TR><TR CLASS="z"><TD CLASS="l">93</TD><TD>                return (String[]) points.toArray(new String[0]);</TD></TR><TR><TD CLASS="l">94</TD><TD>        }</TD></TR><TR><TD CLASS="l">95</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="4">96</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">97</TD><TD>         * @return Returns the contentType.</TD></TR><TR><TD CLASS="l">98</TD><TD>         */</TD></TR><TR><TD CLASS="l">99</TD><TD>        public String getContentType() {</TD></TR><TR CLASS="z"><TD CLASS="l">100</TD><TD>                return fContentType;</TD></TR><TR><TD CLASS="l">101</TD><TD>        }</TD></TR><TR><TD CLASS="l">102</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="5">103</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">104</TD><TD>         * @return Returns the part.</TD></TR><TR><TD CLASS="l">105</TD><TD>         */</TD></TR><TR><TD CLASS="l">106</TD><TD>        public IWorkbenchPart getPart() {</TD></TR><TR CLASS="z"><TD CLASS="l">107</TD><TD>                return fPart;</TD></TR><TR><TD CLASS="l">108</TD><TD>        }</TD></TR><TR><TD CLASS="l">109</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="6">110</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">111</TD><TD>         * @return Returns the rootClass.</TD></TR><TR><TD CLASS="l">112</TD><TD>         */</TD></TR><TR><TD CLASS="l">113</TD><TD>        public Class getRootClass() {</TD></TR><TR CLASS="z"><TD CLASS="l">114</TD><TD>                return fRootClass;</TD></TR><TR><TD CLASS="l">115</TD><TD>        }</TD></TR><TR><TD CLASS="l">116</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="7">117</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">118</TD><TD>         * @return Returns the subContext.</TD></TR><TR><TD CLASS="l">119</TD><TD>         */</TD></TR><TR><TD CLASS="l">120</TD><TD>        public String getSubContext() {</TD></TR><TR CLASS="z"><TD CLASS="l">121</TD><TD>                return fSubContext;</TD></TR><TR><TD CLASS="l">122</TD><TD>        }</TD></TR><TR><TD CLASS="l">123</TD><TD> </TD></TR><TR><TD CLASS="l">124</TD><TD>        /**</TD></TR><TR><TD CLASS="l"><A NAME="8">125</A></TD><TD>         * @param contentType</TD></TR><TR><TD CLASS="l">126</TD><TD>         *            The contentType to set.</TD></TR><TR><TD CLASS="l">127</TD><TD>         */</TD></TR><TR><TD CLASS="l">128</TD><TD>        public void setContentType(String contentType) {</TD></TR><TR CLASS="z"><TD CLASS="l">129</TD><TD>                fContentType = contentType;</TD></TR><TR CLASS="z"><TD CLASS="l">130</TD><TD>        }</TD></TR><TR><TD CLASS="l">131</TD><TD> </TD></TR><TR><TD CLASS="l">132</TD><TD>        /**</TD></TR><TR><TD CLASS="l"><A NAME="9">133</A></TD><TD>         * @param part</TD></TR><TR><TD CLASS="l">134</TD><TD>         *            The part to set.</TD></TR><TR><TD CLASS="l">135</TD><TD>         */</TD></TR><TR><TD CLASS="l">136</TD><TD>        public void setPart(IWorkbenchPart part) {</TD></TR><TR CLASS="z"><TD CLASS="l">137</TD><TD>                fPart = part;</TD></TR><TR CLASS="z"><TD CLASS="l">138</TD><TD>        }</TD></TR><TR><TD CLASS="l">139</TD><TD> </TD></TR><TR><TD CLASS="l">140</TD><TD>        /**</TD></TR><TR><TD CLASS="l"><A NAME="a">141</A></TD><TD>         * @param rootClass</TD></TR><TR><TD CLASS="l">142</TD><TD>         *            The rootClass to set.</TD></TR><TR><TD CLASS="l">143</TD><TD>         */</TD></TR><TR><TD CLASS="l">144</TD><TD>        public void setRootClass(Class rootClass) {</TD></TR><TR CLASS="z"><TD CLASS="l">145</TD><TD>                fRootClass = rootClass;</TD></TR><TR CLASS="z"><TD CLASS="l">146</TD><TD>        }</TD></TR><TR><TD CLASS="l">147</TD><TD> </TD></TR><TR><TD CLASS="l">148</TD><TD>        /**</TD></TR><TR><TD CLASS="l"><A NAME="b">149</A></TD><TD>         * @param subContext</TD></TR><TR><TD CLASS="l">150</TD><TD>         *            The subContext to set.</TD></TR><TR><TD CLASS="l">151</TD><TD>         */</TD></TR><TR><TD CLASS="l">152</TD><TD>        public void setSubContext(String subContext) {</TD></TR><TR CLASS="z"><TD CLASS="l">153</TD><TD>                fSubContext = subContext;</TD></TR><TR CLASS="z"><TD CLASS="l">154</TD><TD>        }</TD></TR><TR><TD CLASS="l">155</TD><TD> </TD></TR><TR><TD CLASS="l">156</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="17.html">org.eclipse.wst.sse.ui.internal.provisional.extensions</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/134.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/134.html
deleted file mode 100644
index 110a514..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/134.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="18.html">org.eclipse.wst.sse.ui.internal.provisional.extensions.breakpoint</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">NullSourceEditingTextTools.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>NullSourceEditingTextTools.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/47)</TD><TD CLASS="h">0%   (0/14)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">NullSourceEditingTextTools</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/47)</TD><TD CLASS="h">0%   (0/14)</TD></TR><TR><TD CLASS="f"><A HREF="#1">NullSourceEditingTextTools (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">getCaretOffset (): int</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/14)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#3">getDocument (): IDocument</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">getEditorPart (): IEditorPart</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#0">getInstance (): ISourceEditingTextTools</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">getSelection (): ITextSelection</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#7">setTextEditor (ITextEditor): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2005 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.provisional.extensions.breakpoint;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.jface.text.IDocument;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.jface.text.ITextSelection;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.jface.text.TextSelection;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.jface.viewers.ISelection;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.ui.IEditorPart;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.ui.texteditor.ITextEditor;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.wst.sse.ui.internal.provisional.extensions.ISourceEditingTextTools;</TD></TR><TR><TD CLASS="l">22</TD><TD> </TD></TR><TR><TD CLASS="l">23</TD><TD>public class NullSourceEditingTextTools implements ISourceEditingTextTools {</TD></TR><TR><TD CLASS="l">24</TD><TD>        public static final String ID = &#34;sourceeditingtexttools&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">25</TD><TD>        private ITextEditor fTextEditor;</TD></TR><TR><TD CLASS="l">26</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="0">27</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">28</TD><TD>         * @return</TD></TR><TR><TD CLASS="l">29</TD><TD>         */</TD></TR><TR><TD CLASS="l">30</TD><TD>        public synchronized static ISourceEditingTextTools getInstance() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="1">31</A></TD><TD>                return new NullSourceEditingTextTools();</TD></TR><TR><TD CLASS="l">32</TD><TD>        }</TD></TR><TR><TD CLASS="l">33</TD><TD> </TD></TR><TR><TD CLASS="l">34</TD><TD>        private NullSourceEditingTextTools() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">35</A></TD><TD>                super();</TD></TR><TR CLASS="z"><TD CLASS="l">36</TD><TD>        }</TD></TR><TR><TD CLASS="l">37</TD><TD> </TD></TR><TR><TD CLASS="l">38</TD><TD>        public int getCaretOffset() {</TD></TR><TR CLASS="z"><TD CLASS="l">39</TD><TD>                ISelection sel = fTextEditor.getSelectionProvider().getSelection();</TD></TR><TR CLASS="z"><TD CLASS="l">40</TD><TD>                if (sel instanceof ITextSelection) {</TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>                        return ((ITextSelection) sel).getOffset();</TD></TR><TR><TD CLASS="l">42</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">43</A></TD><TD>                return -1;</TD></TR><TR><TD CLASS="l">44</TD><TD>        }</TD></TR><TR><TD CLASS="l">45</TD><TD> </TD></TR><TR><TD CLASS="l">46</TD><TD>        public IDocument getDocument() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">47</A></TD><TD>                return fTextEditor.getDocumentProvider().getDocument(fTextEditor.getEditorInput());</TD></TR><TR><TD CLASS="l">48</TD><TD>        }</TD></TR><TR><TD CLASS="l">49</TD><TD> </TD></TR><TR><TD CLASS="l">50</TD><TD>        public IEditorPart getEditorPart() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="6">51</A></TD><TD>                return fTextEditor;</TD></TR><TR><TD CLASS="l">52</TD><TD>        }</TD></TR><TR><TD CLASS="l">53</TD><TD> </TD></TR><TR><TD CLASS="l">54</TD><TD>        public ITextSelection getSelection() {</TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                if (fTextEditor != null)</TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>                        return (ITextSelection) fTextEditor.getSelectionProvider().getSelection();</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="7">57</A></TD><TD>                return TextSelection.emptySelection();</TD></TR><TR><TD CLASS="l">58</TD><TD>        }</TD></TR><TR><TD CLASS="l">59</TD><TD> </TD></TR><TR><TD CLASS="l">60</TD><TD>        public void setTextEditor(ITextEditor editor) {</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                fTextEditor = editor;</TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>        }</TD></TR><TR><TD CLASS="l">63</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="18.html">org.eclipse.wst.sse.ui.internal.provisional.extensions.breakpoint</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/135.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/135.html
deleted file mode 100644
index d3d17d9..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/135.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="19.html">org.eclipse.wst.sse.ui.internal.provisional.registry</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">AdapterFactoryRegistryImpl.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>AdapterFactoryRegistryImpl.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/295)</TD><TD CLASS="h">0%   (0/77)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">AdapterFactoryRegistryImpl</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/295)</TD><TD CLASS="h">0%   (0/77)</TD></TR><TR><TD CLASS="f"><A HREF="#0">&lt;static initializer&gt;</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">AdapterFactoryRegistryImpl (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/33)</TD><TD CLASS="h">0%   (0/10)</TD></TR><TR><TD CLASS="f"><A HREF="#3">add (AdapterFactoryProvider): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">getAdapterFactories (): Iterator</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/60)</TD><TD CLASS="h">0%   (0/15)</TD></TR><TR><TD CLASS="f"><A HREF="#5">getAdapterFactories (String): Iterator</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/47)</TD><TD CLASS="h">0%   (0/10)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">getAdapterFactoriesAsList (IContentType): List</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/26)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#7">getAdapterFactoriesAsList (String): List</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/112)</TD><TD CLASS="h">0%   (0/29)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">getInstance (): AdapterFactoryRegistry</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/3)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2005 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.provisional.registry;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.util.ArrayList;</TD></TR><TR><TD CLASS="l">16</TD><TD>import java.util.HashMap;</TD></TR><TR><TD CLASS="l">17</TD><TD>import java.util.HashSet;</TD></TR><TR><TD CLASS="l">18</TD><TD>import java.util.Iterator;</TD></TR><TR><TD CLASS="l">19</TD><TD>import java.util.List;</TD></TR><TR><TD CLASS="l">20</TD><TD>import java.util.Map;</TD></TR><TR><TD CLASS="l">21</TD><TD> </TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.core.runtime.CoreException;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.core.runtime.IConfigurationElement;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.core.runtime.Platform;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.core.runtime.content.IContentType;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.core.runtime.content.IContentTypeManager;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.wst.sse.ui.internal.Logger;</TD></TR><TR><TD CLASS="l">28</TD><TD> </TD></TR><TR><TD CLASS="l">29</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="0">30</A></TD><TD>public class AdapterFactoryRegistryImpl implements AdapterFactoryRegistry, AdapterFactoryRegistryExtension {</TD></TR><TR><TD CLASS="l">31</TD><TD> </TD></TR><TR><TD CLASS="l">32</TD><TD>        protected final static String ATT_CLASS = &#34;class&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l"><A NAME="8">33</A></TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">34</TD><TD>        private static AdapterFactoryRegistry instance = null;</TD></TR><TR><TD CLASS="l">35</TD><TD> </TD></TR><TR><TD CLASS="l">36</TD><TD>        static synchronized public AdapterFactoryRegistry getInstance() {</TD></TR><TR CLASS="z"><TD CLASS="l">37</TD><TD>                if (instance == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">38</TD><TD>                        instance = new AdapterFactoryRegistryImpl();</TD></TR><TR><TD CLASS="l">39</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">40</TD><TD>                return instance;</TD></TR><TR><TD CLASS="l">41</TD><TD>        }</TD></TR><TR><TD CLASS="l">42</TD><TD> </TD></TR><TR><TD CLASS="l">43</TD><TD>        // this map exists so there is only one provider</TD></TR><TR><TD CLASS="l">44</TD><TD>        // instance not duplicate providers for different content types</TD></TR><TR CLASS="z"><TD CLASS="l">45</TD><TD>        private HashMap adapterProviders = null;</TD></TR><TR><TD CLASS="l">46</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>        private boolean DEBUG = false;</TD></TR><TR><TD CLASS="l">48</TD><TD>        /**</TD></TR><TR><TD CLASS="l">49</TD><TD>         * This HashMap contains: [contentTypeId -&gt; element2providerMap] | V</TD></TR><TR><TD CLASS="l">50</TD><TD>         * [configurationElement -&gt; AdapterFactoryProvider]</TD></TR><TR><TD CLASS="l">51</TD><TD>         * </TD></TR><TR><TD CLASS="l">52</TD><TD>         */</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>        private HashMap hashMap = null;</TD></TR><TR><TD CLASS="l">54</TD><TD> </TD></TR><TR><TD CLASS="l">55</TD><TD>        // providers with no content type associated</TD></TR><TR><TD CLASS="l"><A NAME="2">56</A></TD><TD>        // just added through the add(...) method</TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>        private HashSet unassociatedProviders = null;</TD></TR><TR><TD CLASS="l">58</TD><TD> </TD></TR><TR><TD CLASS="l">59</TD><TD>        private AdapterFactoryRegistryImpl() {</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                super();</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                this.hashMap = new HashMap();</TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>                this.unassociatedProviders = new HashSet();</TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>                this.adapterProviders = new HashMap();</TD></TR><TR><TD CLASS="l">64</TD><TD> </TD></TR><TR><TD CLASS="l">65</TD><TD>                // doesn't instantiate classes, just stores configuration elements</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">66</A></TD><TD>                AdapterFactoryRegistryReader.readRegistry(hashMap);</TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>        }</TD></TR><TR><TD CLASS="l">68</TD><TD> </TD></TR><TR><TD CLASS="l">69</TD><TD>        void add(AdapterFactoryProvider adapterFactoryProvider) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">70</A></TD><TD>                this.unassociatedProviders.add(adapterFactoryProvider);</TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>        }</TD></TR><TR><TD CLASS="l">72</TD><TD> </TD></TR><TR><TD CLASS="l">73</TD><TD>        public Iterator getAdapterFactories() {</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>                if (DEBUG) {</TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>                        System.out.println(&#34;====================================================================================&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>                        System.out.println(&#34;GETTING ALL ADAPTER FACTORIES&#34;); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">77</TD><TD>                }</TD></TR><TR><TD CLASS="l">78</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">79</TD><TD>                List results = new ArrayList();</TD></TR><TR><TD CLASS="l">80</TD><TD> </TD></TR><TR><TD CLASS="l">81</TD><TD>                // add providers that have no content type specification</TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>                results.addAll(this.unassociatedProviders);</TD></TR><TR CLASS="z"><TD CLASS="l">83</TD><TD>                Iterator it = this.hashMap.keySet().iterator();</TD></TR><TR CLASS="z"><TD CLASS="l">84</TD><TD>                String contentTypeId = null;</TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>                while (it.hasNext()) {</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                        contentTypeId = (String) it.next();</TD></TR><TR><TD CLASS="l">87</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">88</TD><TD>                        if (DEBUG)</TD></TR><TR CLASS="z"><TD CLASS="l">89</TD><TD>                                System.out.println(&#34; + for: &#34; + contentTypeId); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">90</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">91</TD><TD>                        results.addAll(getAdapterFactoriesAsList(contentTypeId));</TD></TR><TR><TD CLASS="l">92</TD><TD>                }</TD></TR><TR><TD CLASS="l">93</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">94</TD><TD>                if (DEBUG) {</TD></TR><TR CLASS="z"><TD CLASS="l">95</TD><TD>                        System.out.println(&#34;====================================================================================&#34;); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">96</TD><TD>                }</TD></TR><TR><TD CLASS="l">97</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="5">98</A></TD><TD>                return results.iterator();</TD></TR><TR><TD CLASS="l">99</TD><TD>        }</TD></TR><TR><TD CLASS="l">100</TD><TD> </TD></TR><TR><TD CLASS="l">101</TD><TD>        public Iterator getAdapterFactories(String contentTypeID) {</TD></TR><TR CLASS="z"><TD CLASS="l">102</TD><TD>                if (DEBUG) {</TD></TR><TR CLASS="z"><TD CLASS="l">103</TD><TD>                        System.out.println(&#34;====================================================================================&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">104</TD><TD>                        System.out.println(&#34;GETTING ADAPTER FACTORIES for: &#34; + contentTypeID); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">105</TD><TD>                }</TD></TR><TR><TD CLASS="l">106</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">107</TD><TD>                List results = new ArrayList();</TD></TR><TR><TD CLASS="l">108</TD><TD> </TD></TR><TR><TD CLASS="l">109</TD><TD>                // add providers that have no content type specification</TD></TR><TR CLASS="z"><TD CLASS="l">110</TD><TD>                results.addAll(unassociatedProviders);</TD></TR><TR><TD CLASS="l">111</TD><TD> </TD></TR><TR><TD CLASS="l">112</TD><TD>                // add unknown content type providers (for backwards compatability)</TD></TR><TR CLASS="z"><TD CLASS="l">113</TD><TD>                results.addAll(getAdapterFactoriesAsList(AdapterFactoryRegistryReader.UNKNOWN_CONTENT_TYPE));</TD></TR><TR><TD CLASS="l">114</TD><TD> </TD></TR><TR><TD CLASS="l">115</TD><TD>                // add providers for specific content type</TD></TR><TR CLASS="z"><TD CLASS="l">116</TD><TD>                results.addAll(getAdapterFactoriesAsList(Platform.getContentTypeManager().getContentType(contentTypeID)));</TD></TR><TR><TD CLASS="l">117</TD><TD> </TD></TR><TR><TD CLASS="l">118</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">119</TD><TD>                if (DEBUG) {</TD></TR><TR CLASS="z"><TD CLASS="l">120</TD><TD>                        System.out.println(&#34;====================================================================================&#34;); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">121</TD><TD>                }</TD></TR><TR><TD CLASS="l">122</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="6">123</A></TD><TD>                return results.iterator();</TD></TR><TR><TD CLASS="l">124</TD><TD>        }</TD></TR><TR><TD CLASS="l">125</TD><TD> </TD></TR><TR><TD CLASS="l">126</TD><TD>        public List getAdapterFactoriesAsList(IContentType contentType) {</TD></TR><TR CLASS="z"><TD CLASS="l">127</TD><TD>                IContentType type = contentType;</TD></TR><TR CLASS="z"><TD CLASS="l">128</TD><TD>                List results = new ArrayList();</TD></TR><TR CLASS="z"><TD CLASS="l">129</TD><TD>                while (type != null &amp;&amp; !type.getId().equals(IContentTypeManager.CT_TEXT)) {</TD></TR><TR CLASS="z"><TD CLASS="l">130</TD><TD>                        results.addAll(getAdapterFactoriesAsList(type.getId()));</TD></TR><TR CLASS="z"><TD CLASS="l">131</TD><TD>                        type = type.getBaseType();</TD></TR><TR><TD CLASS="l">132</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">133</TD><TD>                return results;</TD></TR><TR><TD CLASS="l">134</TD><TD>        }</TD></TR><TR><TD CLASS="l">135</TD><TD> </TD></TR><TR><TD CLASS="l">136</TD><TD>        /**</TD></TR><TR><TD CLASS="l">137</TD><TD>         * Using this new API, only AdapterFactoryProviders for a certain content</TD></TR><TR><TD CLASS="l">138</TD><TD>         * type are instantiated. This will allow for the minimum number of</TD></TR><TR><TD CLASS="l">139</TD><TD>         * plugins to be loaded rather than all that implement the adapter factory</TD></TR><TR><TD CLASS="l">140</TD><TD>         * extension point.</TD></TR><TR><TD CLASS="l">141</TD><TD>         * </TD></TR><TR><TD CLASS="l">142</TD><TD>         * @param contentTypeID</TD></TR><TR><TD CLASS="l"><A NAME="7">143</A></TD><TD>         * @return</TD></TR><TR><TD CLASS="l">144</TD><TD>         */</TD></TR><TR><TD CLASS="l">145</TD><TD>        public List getAdapterFactoriesAsList(String contentTypeID) {</TD></TR><TR><TD CLASS="l">146</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">147</TD><TD>                List results = new ArrayList();</TD></TR><TR><TD CLASS="l">148</TD><TD> </TD></TR><TR><TD CLASS="l">149</TD><TD>                // get element2Provider map for specified content type</TD></TR><TR CLASS="z"><TD CLASS="l">150</TD><TD>                Object o = hashMap.get(contentTypeID);</TD></TR><TR CLASS="z"><TD CLASS="l">151</TD><TD>                if (o != null) {</TD></TR><TR><TD CLASS="l">152</TD><TD>                        // instantiate if necessary from</TD></TR><TR><TD CLASS="l">153</TD><TD>                        // element2adapterFactoryProvider</TD></TR><TR><TD CLASS="l">154</TD><TD>                        // map</TD></TR><TR CLASS="z"><TD CLASS="l">155</TD><TD>                        Map element2Provider = (Map) o;</TD></TR><TR CLASS="z"><TD CLASS="l">156</TD><TD>                        Iterator it = element2Provider.keySet().iterator();</TD></TR><TR CLASS="z"><TD CLASS="l">157</TD><TD>                        IConfigurationElement element = null;</TD></TR><TR CLASS="z"><TD CLASS="l">158</TD><TD>                        String classname = null;</TD></TR><TR CLASS="z"><TD CLASS="l">159</TD><TD>                        Object existing = null;</TD></TR><TR CLASS="z"><TD CLASS="l">160</TD><TD>                        AdapterFactoryProvider p = null;</TD></TR><TR CLASS="z"><TD CLASS="l">161</TD><TD>                        while (it.hasNext()) {</TD></TR><TR CLASS="z"><TD CLASS="l">162</TD><TD>                                element = (IConfigurationElement) it.next();</TD></TR><TR CLASS="z"><TD CLASS="l">163</TD><TD>                                o = element2Provider.get(element);</TD></TR><TR CLASS="z"><TD CLASS="l">164</TD><TD>                                if (o != null) {</TD></TR><TR><TD CLASS="l">165</TD><TD>                                        // this provider has already been created</TD></TR><TR CLASS="z"><TD CLASS="l">166</TD><TD>                                        if (DEBUG)</TD></TR><TR CLASS="z"><TD CLASS="l">167</TD><TD>                                                System.out.println(&#34;already created: &#34; + element.getAttribute(ATT_CLASS)); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">168</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">169</TD><TD>                                        results.add(o);</TD></TR><TR><TD CLASS="l">170</TD><TD>                                }</TD></TR><TR><TD CLASS="l">171</TD><TD>                                else {</TD></TR><TR><TD CLASS="l">172</TD><TD>                                        // need to create the provider</TD></TR><TR><TD CLASS="l">173</TD><TD>                                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">174</TD><TD>                                                classname = element.getAttribute(ATT_CLASS);</TD></TR><TR><TD CLASS="l">175</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">176</TD><TD>                                                if (DEBUG)</TD></TR><TR CLASS="z"><TD CLASS="l">177</TD><TD>                                                        System.out.println(&#34;about to create: &#34; + classname); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">178</TD><TD> </TD></TR><TR><TD CLASS="l">179</TD><TD>                                                // check if we created one already</TD></TR><TR CLASS="z"><TD CLASS="l">180</TD><TD>                                                existing = this.adapterProviders.get(classname);</TD></TR><TR CLASS="z"><TD CLASS="l">181</TD><TD>                                                if (existing == null) {</TD></TR><TR><TD CLASS="l">182</TD><TD>                                                        // this is the only place</TD></TR><TR><TD CLASS="l">183</TD><TD>                                                        // AdapterFactoryProviders</TD></TR><TR><TD CLASS="l">184</TD><TD>                                                        // are created</TD></TR><TR CLASS="z"><TD CLASS="l">185</TD><TD>                                                        p = (AdapterFactoryProvider) element.createExecutableExtension(ATT_CLASS); // $NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">186</TD><TD>                                                        this.adapterProviders.put(classname, p);</TD></TR><TR><TD CLASS="l">187</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">188</TD><TD>                                                else {</TD></TR><TR CLASS="z"><TD CLASS="l">189</TD><TD>                                                        p = (AdapterFactoryProvider) existing;</TD></TR><TR><TD CLASS="l">190</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">191</TD><TD> </TD></TR><TR><TD CLASS="l">192</TD><TD>                                                // add to element2Provider for this contentType</TD></TR><TR CLASS="z"><TD CLASS="l">193</TD><TD>                                                element2Provider.put(element, p);</TD></TR><TR><TD CLASS="l">194</TD><TD>                                                // add to results to return for this method</TD></TR><TR CLASS="z"><TD CLASS="l">195</TD><TD>                                                results.add(p);</TD></TR><TR><TD CLASS="l">196</TD><TD> </TD></TR><TR><TD CLASS="l">197</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">198</TD><TD>                                        catch (CoreException e) {</TD></TR><TR><TD CLASS="l">199</TD><TD>                                                // if the provider throws any exception, just log</TD></TR><TR><TD CLASS="l">200</TD><TD>                                                // and</TD></TR><TR><TD CLASS="l">201</TD><TD>                                                // continue</TD></TR><TR CLASS="z"><TD CLASS="l">202</TD><TD>                                                Logger.logException(e);</TD></TR><TR><TD CLASS="l">203</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">204</TD><TD>                                }</TD></TR><TR><TD CLASS="l">205</TD><TD>                        }</TD></TR><TR><TD CLASS="l">206</TD><TD>                }</TD></TR><TR><TD CLASS="l">207</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">208</TD><TD>                return results;</TD></TR><TR><TD CLASS="l">209</TD><TD>        }</TD></TR><TR><TD CLASS="l">210</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="19.html">org.eclipse.wst.sse.ui.internal.provisional.registry</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/136.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/136.html
deleted file mode 100644
index fea342e..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/136.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="19.html">org.eclipse.wst.sse.ui.internal.provisional.registry</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">AdapterFactoryRegistryReader.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>AdapterFactoryRegistryReader.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/152)</TD><TD CLASS="h">0%   (0/39)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">AdapterFactoryRegistryReader</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/152)</TD><TD CLASS="h">0%   (0/39)</TD></TR><TR><TD CLASS="f"><A HREF="#0">&lt;static initializer&gt;</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">AdapterFactoryRegistryReader (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#3">addElementForContentType (HashMap, String, IConfigurationElement): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/60)</TD><TD CLASS="h">0%   (0/12)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">readElement (IConfigurationElement, HashMap): AdapterFactoryProvider</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/56)</TD><TD CLASS="h">0%   (0/15)</TD></TR><TR><TD CLASS="f"><A HREF="#5">readRegistry (HashMap): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/27)</TD><TD CLASS="h">0%   (0/7)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2005 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.provisional.registry;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.util.HashMap;</TD></TR><TR><TD CLASS="l">16</TD><TD> </TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.core.runtime.IConfigurationElement;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.core.runtime.IExtensionPoint;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.core.runtime.IExtensionRegistry;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.core.runtime.Platform;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.wst.sse.ui.internal.Logger;</TD></TR><TR><TD CLASS="l">22</TD><TD> </TD></TR><TR><TD CLASS="l">23</TD><TD> </TD></TR><TR><TD CLASS="l">24</TD><TD>/**</TD></TR><TR><TD CLASS="l">25</TD><TD> * This class just converts what's in the plugins registry into a form more</TD></TR><TR><TD CLASS="l">26</TD><TD> * easily useable by others, the ContentTypeRegistry.</TD></TR><TR><TD CLASS="l">27</TD><TD> */</TD></TR><TR CLASS="z"><TD CLASS="l">28</TD><TD>class AdapterFactoryRegistryReader {</TD></TR><TR><TD CLASS="l"><A NAME="0">29</A></TD><TD>        protected final static String ATT_CLASS = &#34;class&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">30</TD><TD> </TD></TR><TR><TD CLASS="l">31</TD><TD>        protected final static String ATT_ID = &#34;id&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">32</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">33</TD><TD>        private static boolean DEBUG = false;</TD></TR><TR><TD CLASS="l">34</TD><TD>        protected final static String EXTENSION_POINT_ID = &#34;adapterFactoryDescription&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">35</TD><TD>        //</TD></TR><TR><TD CLASS="l">36</TD><TD>        protected final static String PLUGIN_ID = &#34;org.eclipse.wst.sse.ui&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">37</TD><TD>        protected final static String TAG_CONTENT_TYPE = &#34;contentType&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">38</TD><TD> </TD></TR><TR><TD CLASS="l">39</TD><TD>        protected final static String TAG_NAME = &#34;adapterFactoryDescription&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">40</TD><TD> </TD></TR><TR><TD CLASS="l">41</TD><TD>        public final static String UNKNOWN_CONTENT_TYPE = &#34;unknown&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">42</TD><TD> </TD></TR><TR><TD CLASS="l">43</TD><TD>        /**</TD></TR><TR><TD CLASS="l">44</TD><TD>         * adds configuration element to contentTypeId map [contentTypeId -&gt;</TD></TR><TR><TD CLASS="l">45</TD><TD>         * element2providerMap] | V [element -&gt; provider]</TD></TR><TR><TD CLASS="l">46</TD><TD>         * </TD></TR><TR><TD CLASS="l">47</TD><TD>         * NOTE: this doesn't create the provider yet, that must be done on demand</TD></TR><TR><TD CLASS="l">48</TD><TD>         * and stored in the appropriate element2provider</TD></TR><TR><TD CLASS="l">49</TD><TD>         * </TD></TR><TR><TD CLASS="l">50</TD><TD>         * @param map</TD></TR><TR><TD CLASS="l">51</TD><TD>         * @param contentTypeId</TD></TR><TR><TD CLASS="l"><A NAME="3">52</A></TD><TD>         * @param element</TD></TR><TR><TD CLASS="l">53</TD><TD>         */</TD></TR><TR><TD CLASS="l">54</TD><TD>        private static void addElementForContentType(HashMap map, String contentTypeId, IConfigurationElement element) {</TD></TR><TR><TD CLASS="l">55</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>                Object o = map.get(contentTypeId);</TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>                if (o == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>                        HashMap element2provider = new HashMap();</TD></TR><TR><TD CLASS="l">59</TD><TD>                        // don't create the executable extension yet</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                        element2provider.put(element, null);</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                        map.put(contentTypeId, element2provider);</TD></TR><TR><TD CLASS="l">62</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>                        if (DEBUG)</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                                System.out.println(&#34;added &#34; + element.getAttribute(ATT_CLASS) + &#34;, but didn't create exec extension&#34;); //$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR><TD CLASS="l">65</TD><TD>                } else {</TD></TR><TR><TD CLASS="l">66</TD><TD>                        // add element to unknown list (not executable ext yet...)</TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>                        HashMap element2provider = (HashMap) o;</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>                        element2provider.put(element, null);</TD></TR><TR><TD CLASS="l">69</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">70</TD><TD>                        if (DEBUG)</TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>                                System.out.println(&#34;added &#34; + element.getAttribute(ATT_CLASS) + &#34; to unknown list, but didn't create exec extension&#34;); //$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR><TD CLASS="l">72</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">73</TD><TD>        }</TD></TR><TR><TD CLASS="l">74</TD><TD> </TD></TR><TR><TD CLASS="l">75</TD><TD>        /**</TD></TR><TR><TD CLASS="l">76</TD><TD>         * the map passed in: [contentTypeId -&gt; element2providerMap] | V [element -&gt;</TD></TR><TR><TD CLASS="l">77</TD><TD>         * provider]</TD></TR><TR><TD CLASS="l">78</TD><TD>         * </TD></TR><TR><TD CLASS="l">79</TD><TD>         * @param element</TD></TR><TR><TD CLASS="l">80</TD><TD>         * @param map</TD></TR><TR><TD CLASS="l"><A NAME="4">81</A></TD><TD>         * @return</TD></TR><TR><TD CLASS="l">82</TD><TD>         */</TD></TR><TR><TD CLASS="l">83</TD><TD>        protected static AdapterFactoryProvider readElement(IConfigurationElement element, HashMap map) {</TD></TR><TR><TD CLASS="l">84</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>                AdapterFactoryProvider adapterFactoryProvider = null;</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                if (element.getName().equals(TAG_NAME)) {</TD></TR><TR><TD CLASS="l">87</TD><TD>                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">88</TD><TD>                                IConfigurationElement[] children = element.getChildren();</TD></TR><TR CLASS="z"><TD CLASS="l">89</TD><TD>                                boolean specifiedContentType = false;</TD></TR><TR CLASS="z"><TD CLASS="l">90</TD><TD>                                if (children != null &amp;&amp; children.length &gt; 0) {</TD></TR><TR><TD CLASS="l">91</TD><TD>                                        // content types are specified</TD></TR><TR CLASS="z"><TD CLASS="l">92</TD><TD>                                        for (int i = 0; i &lt; children.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">93</TD><TD>                                                if (children[i].getName().equals(TAG_CONTENT_TYPE)) {</TD></TR><TR><TD CLASS="l">94</TD><TD>                                                        // it's possible to have non-contentType childrent</TD></TR><TR CLASS="z"><TD CLASS="l">95</TD><TD>                                                        specifiedContentType = true;</TD></TR><TR CLASS="z"><TD CLASS="l">96</TD><TD>                                                        String contentType = children[i].getAttribute(ATT_ID);</TD></TR><TR CLASS="z"><TD CLASS="l">97</TD><TD>                                                        addElementForContentType(map, contentType, element);</TD></TR><TR><TD CLASS="l">98</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">99</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">100</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">101</TD><TD>                                if (!specifiedContentType) {</TD></TR><TR><TD CLASS="l">102</TD><TD>                                        // no content type association</TD></TR><TR CLASS="z"><TD CLASS="l">103</TD><TD>                                        addElementForContentType(map, UNKNOWN_CONTENT_TYPE, element);</TD></TR><TR><TD CLASS="l">104</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">105</TD><TD>                        } catch (Exception e) {</TD></TR><TR><TD CLASS="l">106</TD><TD>                                // if the provider throws any exception, just log and continue</TD></TR><TR CLASS="z"><TD CLASS="l">107</TD><TD>                                Logger.logException(e);</TD></TR><TR><TD CLASS="l">108</TD><TD>                        }</TD></TR><TR><TD CLASS="l">109</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">110</TD><TD>                return adapterFactoryProvider;</TD></TR><TR><TD CLASS="l">111</TD><TD>        }</TD></TR><TR><TD CLASS="l">112</TD><TD> </TD></TR><TR><TD CLASS="l">113</TD><TD>        /**</TD></TR><TR><TD CLASS="l"><A NAME="5">114</A></TD><TD>         * We simply require an 'add' method, of what ever it is we are to read</TD></TR><TR><TD CLASS="l">115</TD><TD>         * into</TD></TR><TR><TD CLASS="l">116</TD><TD>         */</TD></TR><TR><TD CLASS="l">117</TD><TD>        static void readRegistry(HashMap map) {</TD></TR><TR CLASS="z"><TD CLASS="l">118</TD><TD>                IExtensionRegistry registry = Platform.getExtensionRegistry();</TD></TR><TR CLASS="z"><TD CLASS="l">119</TD><TD>                IExtensionPoint point = registry.getExtensionPoint(PLUGIN_ID, EXTENSION_POINT_ID);</TD></TR><TR CLASS="z"><TD CLASS="l">120</TD><TD>                if (point != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">121</TD><TD>                        IConfigurationElement[] elements = point.getConfigurationElements();</TD></TR><TR CLASS="z"><TD CLASS="l">122</TD><TD>                        for (int i = 0; i &lt; elements.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">123</TD><TD>                                readElement(elements[i], map);</TD></TR><TR><TD CLASS="l">124</TD><TD>                        }</TD></TR><TR><TD CLASS="l">125</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">126</TD><TD>        }</TD></TR><TR><TD CLASS="l">127</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">128</TD><TD>        protected IConfigurationElement configElement = null;</TD></TR><TR><TD CLASS="l">129</TD><TD> </TD></TR><TR><TD CLASS="l">130</TD><TD>        //    protected final static String ADAPTER_CLASS = &#34;adapterClass&#34;;</TD></TR><TR><TD CLASS="l">131</TD><TD>        // //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">132</TD><TD>        //    protected final static String DOC_TYPE_ID = &#34;docTypeId&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">133</TD><TD>        //    protected final static String MIME_TYPE_LIST = &#34;mimeTypeList&#34;;</TD></TR><TR><TD CLASS="l">134</TD><TD>        // //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">135</TD><TD>        //</TD></TR><TR><TD CLASS="l"><A NAME="2">136</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">137</TD><TD>         * ContentTypeRegistryReader constructor comment.</TD></TR><TR><TD CLASS="l">138</TD><TD>         */</TD></TR><TR><TD CLASS="l">139</TD><TD>        AdapterFactoryRegistryReader() {</TD></TR><TR CLASS="z"><TD CLASS="l">140</TD><TD>                super();</TD></TR><TR CLASS="z"><TD CLASS="l">141</TD><TD>        }</TD></TR><TR><TD CLASS="l">142</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="19.html">org.eclipse.wst.sse.ui.internal.provisional.registry</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/137.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/137.html
deleted file mode 100644
index 04d37bc..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/137.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="1a.html">org.eclipse.wst.sse.ui.internal.search</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">BasicSearchLabelProvider.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>BasicSearchLabelProvider.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/53)</TD><TD CLASS="h">0%   (0/18)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">BasicSearchLabelProvider</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/53)</TD><TD CLASS="h">0%   (0/18)</TD></TR><TR><TD CLASS="f"><A HREF="#0">BasicSearchLabelProvider (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">addListener (ILabelProviderListener): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#3">dispose (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">getImage (Object): Image</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#5">getText (Object): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/41)</TD><TD CLASS="h">0%   (0/12)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">isLabelProperty (Object, String): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#7">removeListener (ILabelProviderListener): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2004 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.search;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.core.resources.IMarker;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.core.runtime.CoreException;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.jface.viewers.ILabelProvider;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.jface.viewers.ILabelProviderListener;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.search.ui.text.Match;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.swt.graphics.Image;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.wst.sse.ui.internal.Logger;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.wst.sse.ui.internal.editor.EditorPluginImageHelper;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.wst.sse.ui.internal.editor.EditorPluginImages;</TD></TR><TR><TD CLASS="l">24</TD><TD> </TD></TR><TR><TD CLASS="l">25</TD><TD> </TD></TR><TR><TD CLASS="l">26</TD><TD> </TD></TR><TR><TD CLASS="l">27</TD><TD>/**</TD></TR><TR><TD CLASS="l"><A NAME="0">28</A></TD><TD> * Basic label provider that just provides an image and default text.</TD></TR><TR><TD CLASS="l">29</TD><TD> * </TD></TR><TR><TD CLASS="l">30</TD><TD> * @author pavery</TD></TR><TR><TD CLASS="l">31</TD><TD> */</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">32</A></TD><TD>public class BasicSearchLabelProvider implements ILabelProvider {</TD></TR><TR><TD CLASS="l">33</TD><TD> </TD></TR><TR><TD CLASS="l">34</TD><TD>        public void addListener(ILabelProviderListener listener) {</TD></TR><TR><TD CLASS="l">35</TD><TD>                // do nothing</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">36</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">37</TD><TD> </TD></TR><TR><TD CLASS="l">38</TD><TD>        public void dispose() {</TD></TR><TR><TD CLASS="l"><A NAME="4">39</A></TD><TD>                // do nothing</TD></TR><TR CLASS="z"><TD CLASS="l">40</TD><TD>        }</TD></TR><TR><TD CLASS="l">41</TD><TD> </TD></TR><TR><TD CLASS="l">42</TD><TD>        public Image getImage(Object element) {</TD></TR><TR CLASS="z"><TD CLASS="l">43</TD><TD>                return EditorPluginImageHelper.getInstance().getImage(EditorPluginImages.IMG_OBJ_OCC_MATCH);</TD></TR><TR><TD CLASS="l"><A NAME="5">44</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">45</TD><TD> </TD></TR><TR><TD CLASS="l">46</TD><TD>        public String getText(Object element) {</TD></TR><TR><TD CLASS="l">47</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">48</TD><TD>                StringBuffer text = new StringBuffer();</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>                if (element instanceof Match) {</TD></TR><TR CLASS="z"><TD CLASS="l">50</TD><TD>                        Match m = (Match) element;</TD></TR><TR><TD CLASS="l">51</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                        IMarker marker = (IMarker) m.getElement();</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>                        if (marker.exists()) {</TD></TR><TR CLASS="z"><TD CLASS="l">54</TD><TD>                                String resultText = &#34;&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">55</TD><TD>                                try {</TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>                                        resultText = (String) marker.getAttribute(IMarker.MESSAGE);</TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>                                } catch (CoreException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>                                        Logger.logException(e);</TD></TR><TR><TD CLASS="l">59</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                                text.append(resultText);</TD></TR><TR><TD CLASS="l">61</TD><TD>                        }</TD></TR><TR><TD CLASS="l">62</TD><TD>                } else {</TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>                        text.append(element.toString());</TD></TR><TR><TD CLASS="l">64</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="6">65</A></TD><TD>                return text.toString();</TD></TR><TR><TD CLASS="l">66</TD><TD>        }</TD></TR><TR><TD CLASS="l">67</TD><TD> </TD></TR><TR><TD CLASS="l">68</TD><TD>        public boolean isLabelProperty(Object element, String property) {</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                return false;</TD></TR><TR><TD CLASS="l"><A NAME="7">70</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">71</TD><TD> </TD></TR><TR><TD CLASS="l">72</TD><TD>        public void removeListener(ILabelProviderListener listener) {</TD></TR><TR><TD CLASS="l">73</TD><TD>                // do nothing</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>        }</TD></TR><TR><TD CLASS="l">75</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="1a.html">org.eclipse.wst.sse.ui.internal.search</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/138.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/138.html
deleted file mode 100644
index aec1008..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/138.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="1a.html">org.eclipse.wst.sse.ui.internal.search</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">BasicSearchQuery.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>BasicSearchQuery.java</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/18)</TD><TD CLASS="h">0%   (0/259)</TD><TD CLASS="h">0%   (0/66)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">BasicSearchQuery</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/16)</TD><TD CLASS="h">0%   (0/234)</TD><TD CLASS="h">0%   (0/62)</TD></TR><TR><TD CLASS="f"><A HREF="#0">&lt;static initializer&gt;</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">BasicSearchQuery (IFile): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/17)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#3">addMatch (IDocument, int, int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/44)</TD><TD CLASS="h">0%   (0/9)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">addMatch (Match): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#5">canRerun (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">canRunInBackground (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#7">clearMatches (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">createSearchMarker (int, int, int, String): IMarker</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/60)</TD><TD CLASS="h">0%   (0/15)</TD></TR><TR><TD CLASS="f"><A HREF="#9">deleteOccurrencesMarkers (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/63)</TD><TD CLASS="h">0%   (0/13)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">doQuery (): IStatus</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#b">getFile (): IFile</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#c">getLabel (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#d">getMatches (): Match []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/18)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#e">getSearchResult (): ISearchResult</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#f">getSearchText (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#10">run (IProgressMonitor): IStatus</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#11">BasicSearchQuery$1</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/25)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#11">BasicSearchQuery$1 (BasicSearchQuery, List): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#13">run (IProgressMonitor): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/16)</TD><TD CLASS="h">0%   (0/3)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR CLASS="z"><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.search;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.util.ArrayList;</TD></TR><TR><TD CLASS="l">16</TD><TD>import java.util.HashMap;</TD></TR><TR><TD CLASS="l">17</TD><TD>import java.util.List;</TD></TR><TR><TD CLASS="l">18</TD><TD> </TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.core.resources.IFile;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.core.resources.IMarker;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.core.resources.IResource;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.core.resources.IWorkspace;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.core.resources.IWorkspaceRunnable;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.core.resources.ResourcesPlugin;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.core.runtime.CoreException;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.core.runtime.IProgressMonitor;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.core.runtime.IStatus;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.core.runtime.Status;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.core.runtime.jobs.ISchedulingRule;</TD></TR><TR><TD CLASS="l">30</TD><TD>import org.eclipse.jface.text.BadLocationException;</TD></TR><TR><TD CLASS="l">31</TD><TD>import org.eclipse.jface.text.IDocument;</TD></TR><TR><TD CLASS="l">32</TD><TD>import org.eclipse.search.ui.ISearchQuery;</TD></TR><TR><TD CLASS="l">33</TD><TD>import org.eclipse.search.ui.ISearchResult;</TD></TR><TR><TD CLASS="l">34</TD><TD>import org.eclipse.search.ui.NewSearchUI;</TD></TR><TR><TD CLASS="l">35</TD><TD>import org.eclipse.search.ui.text.Match;</TD></TR><TR><TD CLASS="l">36</TD><TD>import org.eclipse.ui.texteditor.MarkerUtilities;</TD></TR><TR><TD CLASS="l">37</TD><TD>import org.eclipse.wst.sse.ui.internal.Logger;</TD></TR><TR><TD CLASS="l">38</TD><TD> </TD></TR><TR><TD CLASS="l">39</TD><TD> </TD></TR><TR><TD CLASS="l">40</TD><TD>/**</TD></TR><TR><TD CLASS="l">41</TD><TD> * @author pavery</TD></TR><TR><TD CLASS="l">42</TD><TD> */</TD></TR><TR CLASS="z"><TD CLASS="l">43</TD><TD>public class BasicSearchQuery implements ISearchQuery {</TD></TR><TR><TD CLASS="l"><A NAME="0">44</A></TD><TD> </TD></TR><TR><TD CLASS="l">45</TD><TD>        /** attribute to identify markers added by find occurrences */</TD></TR><TR><TD CLASS="l">46</TD><TD>        public static final String ATTR_OCCURRENCES_MARKER = &#34;occurrences_marker&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">47</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">48</TD><TD>        private static int LINE_LENGTH_LIMIT = 200;</TD></TR><TR><TD CLASS="l">49</TD><TD> </TD></TR><TR><TD CLASS="l">50</TD><TD>        /** the file we're searching * */</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">51</A></TD><TD>        private IFile fFile = null;</TD></TR><TR><TD CLASS="l">52</TD><TD>        /** occurrence search matches * */</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>        private List fMatches = null;</TD></TR><TR><TD CLASS="l">54</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>        public BasicSearchQuery(IFile file) {</TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>                this.fFile = file;</TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>                this.fMatches = new ArrayList();</TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="3">59</A></TD><TD> </TD></TR><TR><TD CLASS="l">60</TD><TD>        public void addMatch(IDocument document, int matchStart, int matchEnd) {</TD></TR><TR><TD CLASS="l">61</TD><TD> </TD></TR><TR><TD CLASS="l">62</TD><TD>                try {</TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>                        int lineNumber = document.getLineOfOffset(matchStart);</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                        int lineStart = document.getLineOffset(lineNumber);</TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>                        int lineLength = document.getLineLength(lineNumber);</TD></TR><TR><TD CLASS="l">66</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>                        String searchResultString = document.get().substring(lineStart, lineStart + lineLength).trim();</TD></TR><TR><TD CLASS="l">68</TD><TD> </TD></TR><TR><TD CLASS="l">69</TD><TD>                        // create search marker (so annotations show up in editor)</TD></TR><TR CLASS="z"><TD CLASS="l">70</TD><TD>                        IMarker marker = createSearchMarker(matchStart, matchEnd, lineNumber, searchResultString);</TD></TR><TR><TD CLASS="l">71</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>                        addMatch(new Match(marker, Match.UNIT_CHARACTER, matchStart, matchStart + matchEnd));</TD></TR><TR><TD CLASS="l">73</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>                } catch (BadLocationException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>                        Logger.logException(e);</TD></TR><TR><TD CLASS="l"><A NAME="4">76</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>        }</TD></TR><TR><TD CLASS="l">78</TD><TD> </TD></TR><TR><TD CLASS="l">79</TD><TD>        private void addMatch(Match match) {</TD></TR><TR CLASS="z"><TD CLASS="l">80</TD><TD>                if (match != null)</TD></TR><TR CLASS="z"><TD CLASS="l">81</TD><TD>                        this.fMatches.add(match);</TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>        }</TD></TR><TR><TD CLASS="l">83</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="5">84</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">85</TD><TD>         * @see org.eclipse.search.ui.ISearchQuery#canRerun()</TD></TR><TR><TD CLASS="l">86</TD><TD>         */</TD></TR><TR><TD CLASS="l">87</TD><TD>        public boolean canRerun() {</TD></TR><TR CLASS="z"><TD CLASS="l">88</TD><TD>                return false;</TD></TR><TR><TD CLASS="l">89</TD><TD>        }</TD></TR><TR><TD CLASS="l">90</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="6">91</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">92</TD><TD>         * @see org.eclipse.search.ui.ISearchQuery#canRunInBackground()</TD></TR><TR><TD CLASS="l">93</TD><TD>         */</TD></TR><TR><TD CLASS="l">94</TD><TD>        public boolean canRunInBackground() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="7">95</A></TD><TD>                return true;</TD></TR><TR><TD CLASS="l">96</TD><TD>        }</TD></TR><TR><TD CLASS="l">97</TD><TD> </TD></TR><TR><TD CLASS="l">98</TD><TD>        public void clearMatches() {</TD></TR><TR CLASS="z"><TD CLASS="l">99</TD><TD>                this.fMatches.clear();</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="8">100</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">101</TD><TD> </TD></TR><TR><TD CLASS="l">102</TD><TD>        protected IMarker createSearchMarker(int matchStart, int matchEnd, int lineNumber, String searchResultString) {</TD></TR><TR><TD CLASS="l">103</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">104</TD><TD>                IMarker marker = null;</TD></TR><TR><TD CLASS="l">105</TD><TD>                try {</TD></TR><TR CLASS="z"><TD CLASS="l">106</TD><TD>                        if (getFile() != null) {</TD></TR><TR><TD CLASS="l">107</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">108</TD><TD>                                marker = getFile().createMarker(NewSearchUI.SEARCH_MARKER);</TD></TR><TR CLASS="z"><TD CLASS="l">109</TD><TD>                                HashMap attributes = new HashMap(6);</TD></TR><TR><TD CLASS="l">110</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">111</TD><TD>                                MarkerUtilities.setCharStart(attributes, matchStart);</TD></TR><TR CLASS="z"><TD CLASS="l">112</TD><TD>                                MarkerUtilities.setCharEnd(attributes, matchEnd);</TD></TR><TR CLASS="z"><TD CLASS="l">113</TD><TD>                                MarkerUtilities.setLineNumber(attributes, lineNumber);</TD></TR><TR><TD CLASS="l">114</TD><TD> </TD></TR><TR><TD CLASS="l">115</TD><TD>                                // this might be bad if line of text is VERY long?</TD></TR><TR CLASS="z"><TD CLASS="l">116</TD><TD>                                if (searchResultString.length() &gt; LINE_LENGTH_LIMIT)</TD></TR><TR CLASS="z"><TD CLASS="l">117</TD><TD>                                        searchResultString = searchResultString.substring(0, LINE_LENGTH_LIMIT) + &#34;...&#34;; //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">118</TD><TD>                                MarkerUtilities.setMessage(attributes, searchResultString);</TD></TR><TR><TD CLASS="l">119</TD><TD> </TD></TR><TR><TD CLASS="l">120</TD><TD>                                // so we can remove them later</TD></TR><TR CLASS="z"><TD CLASS="l">121</TD><TD>                                attributes.put(ATTR_OCCURRENCES_MARKER, new Boolean(true));</TD></TR><TR><TD CLASS="l">122</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">123</TD><TD>                                marker.setAttributes(attributes);</TD></TR><TR><TD CLASS="l">124</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">125</TD><TD>                } catch (CoreException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">126</TD><TD>                        Logger.logException(e);</TD></TR><TR><TD CLASS="l">127</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">128</TD><TD>                return marker;</TD></TR><TR><TD CLASS="l"><A NAME="9">129</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">130</TD><TD> </TD></TR><TR><TD CLASS="l">131</TD><TD>        private void deleteOccurrencesMarkers() {</TD></TR><TR><TD CLASS="l">132</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">133</TD><TD>                final List removals = new ArrayList();</TD></TR><TR><TD CLASS="l">134</TD><TD>                try {</TD></TR><TR><TD CLASS="l">135</TD><TD>                        // clear all old find occurrences markers</TD></TR><TR CLASS="z"><TD CLASS="l">136</TD><TD>                        IMarker[] searchMarkers = fFile.findMarkers(NewSearchUI.SEARCH_MARKER, false, IResource.DEPTH_ZERO);</TD></TR><TR CLASS="z"><TD CLASS="l">137</TD><TD>                        for (int i = 0; i &lt; searchMarkers.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">138</TD><TD>                                Object o = searchMarkers[i].getAttribute(BasicSearchQuery.ATTR_OCCURRENCES_MARKER);</TD></TR><TR CLASS="z"><TD CLASS="l">139</TD><TD>                                if (o != null &amp;&amp; ((Boolean) o).booleanValue() == true)</TD></TR><TR CLASS="z"><TD CLASS="l">140</TD><TD>                                        removals.add(searchMarkers[i]);</TD></TR><TR><TD CLASS="l"><A NAME="11">141</A></TD><TD> </TD></TR><TR><TD CLASS="l">142</TD><TD>                        }</TD></TR><TR><TD CLASS="l"><A NAME="13">143</A></TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">144</TD><TD>                        if (removals.size() &gt; 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">145</TD><TD>                                IWorkspaceRunnable runnable = new IWorkspaceRunnable() {</TD></TR><TR><TD CLASS="l">146</TD><TD>                                        public void run(IProgressMonitor monitor) throws CoreException {</TD></TR><TR CLASS="z"><TD CLASS="l">147</TD><TD>                                                for (int i = 0; i &lt; removals.size(); i++)</TD></TR><TR CLASS="z"><TD CLASS="l">148</TD><TD>                                                        ((IMarker) removals.get(i)).delete();</TD></TR><TR CLASS="z"><TD CLASS="l">149</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">150</TD><TD>                                };</TD></TR><TR><TD CLASS="l">151</TD><TD>                                // BUG158846 - deadlock if lock up entire workspace, so only lock</TD></TR><TR><TD CLASS="l">152</TD><TD>                                // up the file we are searching on</TD></TR><TR CLASS="z"><TD CLASS="l">153</TD><TD>                                ISchedulingRule markerRule = ResourcesPlugin.getWorkspace().getRuleFactory().markerRule(fFile);</TD></TR><TR CLASS="z"><TD CLASS="l">154</TD><TD>                                ResourcesPlugin.getWorkspace().run(runnable, markerRule, IWorkspace.AVOID_UPDATE, null); </TD></TR><TR><TD CLASS="l">155</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">156</TD><TD>                } catch (CoreException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">157</TD><TD>                        Logger.logException(e);</TD></TR><TR><TD CLASS="l">158</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">159</TD><TD>        }</TD></TR><TR><TD CLASS="l">160</TD><TD> </TD></TR><TR><TD CLASS="l">161</TD><TD>        /**</TD></TR><TR><TD CLASS="l">162</TD><TD>         * The acutal work of the query. Will be run in a background Job</TD></TR><TR><TD CLASS="l">163</TD><TD>         * automatically if canRunInBackground(..) returns true.</TD></TR><TR><TD CLASS="l"><A NAME="a">164</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">165</TD><TD>         * @return</TD></TR><TR><TD CLASS="l">166</TD><TD>         */</TD></TR><TR><TD CLASS="l">167</TD><TD>        protected IStatus doQuery() {</TD></TR><TR CLASS="z"><TD CLASS="l">168</TD><TD>                return Status.OK_STATUS;</TD></TR><TR><TD CLASS="l">169</TD><TD>        }</TD></TR><TR><TD CLASS="l">170</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="b">171</A></TD><TD>        /*</TD></TR><TR><TD CLASS="l">172</TD><TD>         * public to avoid synthetic method access from inner class</TD></TR><TR><TD CLASS="l">173</TD><TD>         */</TD></TR><TR><TD CLASS="l">174</TD><TD>        public IFile getFile() {</TD></TR><TR CLASS="z"><TD CLASS="l">175</TD><TD>                return this.fFile;</TD></TR><TR><TD CLASS="l">176</TD><TD>        }</TD></TR><TR><TD CLASS="l">177</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="c">178</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">179</TD><TD>         * @see org.eclipse.search.ui.ISearchQuery#getLabel()</TD></TR><TR><TD CLASS="l">180</TD><TD>         */</TD></TR><TR><TD CLASS="l">181</TD><TD>        public String getLabel() {</TD></TR><TR CLASS="z"><TD CLASS="l">182</TD><TD>                return &#34;&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l"><A NAME="d">183</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">184</TD><TD> </TD></TR><TR><TD CLASS="l">185</TD><TD>        public Match[] getMatches() {</TD></TR><TR><TD CLASS="l">186</TD><TD>                // get rid of the old markers</TD></TR><TR CLASS="z"><TD CLASS="l">187</TD><TD>                if(fFile.exists()) {</TD></TR><TR CLASS="z"><TD CLASS="l">188</TD><TD>                        deleteOccurrencesMarkers();</TD></TR><TR CLASS="z"><TD CLASS="l">189</TD><TD>                        doQuery();</TD></TR><TR><TD CLASS="l">190</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">191</TD><TD>                return (Match[]) this.fMatches.toArray(new Match[this.fMatches.size()]);</TD></TR><TR><TD CLASS="l">192</TD><TD>        }</TD></TR><TR><TD CLASS="l">193</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="e">194</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">195</TD><TD>         * @see org.eclipse.search.ui.ISearchQuery#getSearchResult()</TD></TR><TR><TD CLASS="l">196</TD><TD>         */</TD></TR><TR><TD CLASS="l">197</TD><TD>        public ISearchResult getSearchResult() {</TD></TR><TR CLASS="z"><TD CLASS="l">198</TD><TD>                return null;</TD></TR><TR><TD CLASS="l">199</TD><TD>        }</TD></TR><TR><TD CLASS="l">200</TD><TD> </TD></TR><TR><TD CLASS="l">201</TD><TD>        /**</TD></TR><TR><TD CLASS="l">202</TD><TD>         * used in search result display labels</TD></TR><TR><TD CLASS="l"><A NAME="f">203</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">204</TD><TD>         * @return</TD></TR><TR><TD CLASS="l">205</TD><TD>         */</TD></TR><TR><TD CLASS="l">206</TD><TD>        protected String getSearchText() {</TD></TR><TR CLASS="z"><TD CLASS="l">207</TD><TD>                return &#34;&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">208</TD><TD>        }</TD></TR><TR><TD CLASS="l">209</TD><TD> </TD></TR><TR><TD CLASS="l">210</TD><TD>        /**</TD></TR><TR><TD CLASS="l"><A NAME="10">211</A></TD><TD>         * @see org.eclipse.search.ui.ISearchQuery#run(org.eclipse.core.runtime.IProgressMonitor)</TD></TR><TR><TD CLASS="l">212</TD><TD>         */</TD></TR><TR><TD CLASS="l">213</TD><TD>        public IStatus run(IProgressMonitor monitor) {</TD></TR><TR><TD CLASS="l">214</TD><TD>                // defer to &#34;get(...)&#34;</TD></TR><TR CLASS="z"><TD CLASS="l">215</TD><TD>                return Status.OK_STATUS;</TD></TR><TR><TD CLASS="l">216</TD><TD>        }</TD></TR><TR><TD CLASS="l">217</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="1a.html">org.eclipse.wst.sse.ui.internal.search</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/139.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/139.html
deleted file mode 100644
index 9ceb68d..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/139.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="1a.html">org.eclipse.wst.sse.ui.internal.search</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">FindOccurrencesActionDelegate.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>FindOccurrencesActionDelegate.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/189)</TD><TD CLASS="h">0%   (0/57)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">FindOccurrencesActionDelegate</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/189)</TD><TD CLASS="h">0%   (0/57)</TD></TR><TR><TD CLASS="f"><A HREF="#0">FindOccurrencesActionDelegate (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">dispose (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#3">getPartition (IDocument, ITextSelection): ITypedRegion</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">getProcessorForCurrentSelection (IDocument, ITextSelection): FindOccurrencesP...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/79)</TD><TD CLASS="h">0%   (0/16)</TD></TR><TR><TD CLASS="f"><A HREF="#5">getTextSelection (ITextEditor): ITextSelection</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/17)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">init (IAction): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#7">init (IViewPart): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">run (IAction): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/54)</TD><TD CLASS="h">0%   (0/17)</TD></TR><TR><TD CLASS="f"><A HREF="#9">runWithEvent (IAction, Event): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">selectionChanged (IAction, ISelection): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#b">setActiveEditor (IAction, IEditorPart): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2005 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     </TD></TR><TR><TD CLASS="l">11</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">12</TD><TD> </TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.search;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.util.Iterator;</TD></TR><TR><TD CLASS="l">16</TD><TD>import java.util.List;</TD></TR><TR><TD CLASS="l">17</TD><TD> </TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.core.resources.IFile;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.jface.action.IAction;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.jface.text.BadLocationException;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.jface.text.IDocument;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.jface.text.ITextSelection;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.jface.text.ITypedRegion;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.jface.viewers.ISelection;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.swt.widgets.Event;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.ui.IActionDelegate2;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.ui.IEditorActionDelegate;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.ui.IEditorPart;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.ui.IFileEditorInput;</TD></TR><TR><TD CLASS="l">30</TD><TD>import org.eclipse.ui.IViewActionDelegate;</TD></TR><TR><TD CLASS="l">31</TD><TD>import org.eclipse.ui.IViewPart;</TD></TR><TR><TD CLASS="l">32</TD><TD>import org.eclipse.ui.texteditor.ITextEditor;</TD></TR><TR><TD CLASS="l">33</TD><TD>import org.eclipse.wst.sse.ui.internal.ExtendedConfigurationBuilder;</TD></TR><TR><TD CLASS="l">34</TD><TD>import org.eclipse.wst.sse.ui.internal.SSEUIMessages;</TD></TR><TR><TD CLASS="l">35</TD><TD>import org.eclipse.wst.sse.ui.internal.util.PlatformStatusLineUtil;</TD></TR><TR><TD CLASS="l">36</TD><TD> </TD></TR><TR><TD CLASS="l">37</TD><TD>/**</TD></TR><TR><TD CLASS="l">38</TD><TD> * Performs the appropriate FindOccurrencesProcessor action call based on</TD></TR><TR><TD CLASS="l"><A NAME="0">39</A></TD><TD> * selection. Clients can add processors for different partitions via</TD></TR><TR><TD CLASS="l">40</TD><TD> * &lt;code&gt;getProcessors&lt;/code&gt;</TD></TR><TR><TD CLASS="l">41</TD><TD> * </TD></TR><TR><TD CLASS="l">42</TD><TD> */</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="b">43</A></TD><TD>abstract public class FindOccurrencesActionDelegate implements IEditorActionDelegate, IActionDelegate2, IViewActionDelegate {</TD></TR><TR><TD CLASS="l">44</TD><TD>        private IEditorPart fEditor;</TD></TR><TR><TD CLASS="l">45</TD><TD> </TD></TR><TR><TD CLASS="l">46</TD><TD>        public void setActiveEditor(IAction action, IEditorPart targetEditor) {</TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>                fEditor = targetEditor;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">48</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">49</TD><TD> </TD></TR><TR><TD CLASS="l">50</TD><TD>        public void dispose() {</TD></TR><TR><TD CLASS="l">51</TD><TD>                // nulling out just in case</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="6">52</A></TD><TD>                fEditor = null;</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>        }</TD></TR><TR><TD CLASS="l">54</TD><TD> </TD></TR><TR><TD CLASS="l">55</TD><TD>        public void init(IAction action) {</TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>                if (action != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>                        action.setText(SSEUIMessages.FindOccurrences_label);</TD></TR><TR><TD CLASS="l"><A NAME="9">58</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>        }</TD></TR><TR><TD CLASS="l">60</TD><TD> </TD></TR><TR><TD CLASS="l">61</TD><TD>        public void runWithEvent(IAction action, Event event) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="8">62</A></TD><TD>                run(action);</TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>        }</TD></TR><TR><TD CLASS="l">64</TD><TD> </TD></TR><TR><TD CLASS="l">65</TD><TD>        public void run(IAction action) {</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                boolean okay = false;</TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>                if (fEditor instanceof ITextEditor) {</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>                        ITextEditor textEditor = (ITextEditor) fEditor;</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                        IDocument document = textEditor.getDocumentProvider().getDocument(textEditor.getEditorInput());</TD></TR><TR CLASS="z"><TD CLASS="l">70</TD><TD>                        if (document != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>                                ITextSelection textSelection = getTextSelection(textEditor);</TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>                                FindOccurrencesProcessor findOccurrenceProcessor = getProcessorForCurrentSelection(document, textSelection);</TD></TR><TR CLASS="z"><TD CLASS="l">73</TD><TD>                                if (findOccurrenceProcessor != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>                                        if (textEditor.getEditorInput() instanceof IFileEditorInput) {</TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>                                                IFile file = ((IFileEditorInput) textEditor.getEditorInput()).getFile();</TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>                                                okay = findOccurrenceProcessor.findOccurrences(document, textSelection, file);</TD></TR><TR><TD CLASS="l">77</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">78</TD><TD>                                }</TD></TR><TR><TD CLASS="l">79</TD><TD>                        }</TD></TR><TR><TD CLASS="l">80</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">81</TD><TD>                if (okay) {</TD></TR><TR><TD CLASS="l">82</TD><TD>                        // clear status message</TD></TR><TR CLASS="z"><TD CLASS="l">83</TD><TD>                        PlatformStatusLineUtil.clearStatusLine();</TD></TR><TR><TD CLASS="l">84</TD><TD>                }</TD></TR><TR><TD CLASS="l">85</TD><TD>                else {</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                        String errorMessage = SSEUIMessages.FindOccurrencesActionProvider_0; //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>                        PlatformStatusLineUtil.displayErrorMessage(errorMessage);</TD></TR><TR CLASS="z"><TD CLASS="l">88</TD><TD>                        PlatformStatusLineUtil.addOneTimeClearListener();</TD></TR><TR><TD CLASS="l">89</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="7">90</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">91</TD><TD> </TD></TR><TR><TD CLASS="l">92</TD><TD>        public void init(IViewPart view) {</TD></TR><TR><TD CLASS="l">93</TD><TD>                // do nothing</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="a">94</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">95</TD><TD> </TD></TR><TR><TD CLASS="l">96</TD><TD>        public void selectionChanged(IAction action, ISelection selection) {</TD></TR><TR><TD CLASS="l">97</TD><TD>                // clear status message</TD></TR><TR CLASS="z"><TD CLASS="l">98</TD><TD>                PlatformStatusLineUtil.clearStatusLine();</TD></TR><TR CLASS="z"><TD CLASS="l">99</TD><TD>        }</TD></TR><TR><TD CLASS="l">100</TD><TD> </TD></TR><TR><TD CLASS="l">101</TD><TD>        /**</TD></TR><TR><TD CLASS="l">102</TD><TD>         * Get the appropriate find occurrences processor</TD></TR><TR><TD CLASS="l">103</TD><TD>         * </TD></TR><TR><TD CLASS="l">104</TD><TD>         * @param document -</TD></TR><TR><TD CLASS="l">105</TD><TD>         *            assumes not null</TD></TR><TR><TD CLASS="l">106</TD><TD>         * @param textSelection</TD></TR><TR><TD CLASS="l"><A NAME="4">107</A></TD><TD>         * @return</TD></TR><TR><TD CLASS="l">108</TD><TD>         */</TD></TR><TR><TD CLASS="l">109</TD><TD>        private FindOccurrencesProcessor getProcessorForCurrentSelection(IDocument document, ITextSelection textSelection) {</TD></TR><TR><TD CLASS="l">110</TD><TD>                // check if we have an action that's enabled on the current partition</TD></TR><TR CLASS="z"><TD CLASS="l">111</TD><TD>                ITypedRegion tr = getPartition(document, textSelection);</TD></TR><TR CLASS="z"><TD CLASS="l">112</TD><TD>                String partition = tr != null ? tr.getType() : &#34;&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">113</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">114</TD><TD>                Iterator it = getProcessors().iterator();</TD></TR><TR CLASS="z"><TD CLASS="l">115</TD><TD>                FindOccurrencesProcessor processor = null;</TD></TR><TR CLASS="z"><TD CLASS="l">116</TD><TD>                while (it.hasNext()) {</TD></TR><TR CLASS="z"><TD CLASS="l">117</TD><TD>                        processor = (FindOccurrencesProcessor) it.next();</TD></TR><TR><TD CLASS="l">118</TD><TD>                        // we just choose the first action that can handle the partition</TD></TR><TR CLASS="z"><TD CLASS="l">119</TD><TD>                        if (processor.enabledForParitition(partition))</TD></TR><TR CLASS="z"><TD CLASS="l">120</TD><TD>                                return processor;</TD></TR><TR><TD CLASS="l">121</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">122</TD><TD>                List extendedFindOccurrencesProcessors = ExtendedConfigurationBuilder.getInstance().getConfigurations(FindOccurrencesProcessor.class.getName(), partition);</TD></TR><TR CLASS="z"><TD CLASS="l">123</TD><TD>                for (int i = 0; i &lt; extendedFindOccurrencesProcessors.size(); i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">124</TD><TD>                        Object o = extendedFindOccurrencesProcessors.get(i);</TD></TR><TR CLASS="z"><TD CLASS="l">125</TD><TD>                        if (o instanceof FindOccurrencesProcessor) {</TD></TR><TR><TD CLASS="l">126</TD><TD>                                /*</TD></TR><TR><TD CLASS="l">127</TD><TD>                                 * We just choose the first registered processor that</TD></TR><TR><TD CLASS="l">128</TD><TD>                                 * explicitly says it can handle the partition</TD></TR><TR><TD CLASS="l">129</TD><TD>                                 */</TD></TR><TR CLASS="z"><TD CLASS="l">130</TD><TD>                                processor = (FindOccurrencesProcessor) it.next();</TD></TR><TR CLASS="z"><TD CLASS="l">131</TD><TD>                                if (processor.enabledForParitition(partition))</TD></TR><TR CLASS="z"><TD CLASS="l">132</TD><TD>                                        return processor;</TD></TR><TR><TD CLASS="l">133</TD><TD>                        }</TD></TR><TR><TD CLASS="l">134</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">135</A></TD><TD>                return null;</TD></TR><TR><TD CLASS="l">136</TD><TD>        }</TD></TR><TR><TD CLASS="l">137</TD><TD> </TD></TR><TR><TD CLASS="l">138</TD><TD>        private ITypedRegion getPartition(IDocument document, ITextSelection textSelection) {</TD></TR><TR CLASS="z"><TD CLASS="l">139</TD><TD>                ITypedRegion region = null;</TD></TR><TR CLASS="z"><TD CLASS="l">140</TD><TD>                if (textSelection != null) {</TD></TR><TR><TD CLASS="l">141</TD><TD>                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">142</TD><TD>                                region = document.getPartition(textSelection.getOffset());</TD></TR><TR><TD CLASS="l">143</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">144</TD><TD>                        catch (BadLocationException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">145</TD><TD>                                region = null;</TD></TR><TR><TD CLASS="l">146</TD><TD>                        }</TD></TR><TR><TD CLASS="l">147</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="5">148</A></TD><TD>                return region;</TD></TR><TR><TD CLASS="l">149</TD><TD>        }</TD></TR><TR><TD CLASS="l">150</TD><TD> </TD></TR><TR><TD CLASS="l">151</TD><TD>        private ITextSelection getTextSelection(ITextEditor textEditor) {</TD></TR><TR CLASS="z"><TD CLASS="l">152</TD><TD>                ITextSelection textSelection = null;</TD></TR><TR CLASS="z"><TD CLASS="l">153</TD><TD>                ISelection selection = textEditor.getSelectionProvider().getSelection();</TD></TR><TR CLASS="z"><TD CLASS="l">154</TD><TD>                if (selection instanceof ITextSelection &amp;&amp; !selection.isEmpty()) {</TD></TR><TR CLASS="z"><TD CLASS="l">155</TD><TD>                        textSelection = (ITextSelection) selection;</TD></TR><TR><TD CLASS="l">156</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">157</TD><TD>                return textSelection;</TD></TR><TR><TD CLASS="l">158</TD><TD>        }</TD></TR><TR><TD CLASS="l">159</TD><TD> </TD></TR><TR><TD CLASS="l">160</TD><TD>        abstract protected List getProcessors();</TD></TR><TR><TD CLASS="l">161</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="1a.html">org.eclipse.wst.sse.ui.internal.search</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/13a.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/13a.html
deleted file mode 100644
index 862dcb6..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/13a.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="1a.html">org.eclipse.wst.sse.ui.internal.search</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">FindOccurrencesProcessor.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>FindOccurrencesProcessor.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/116)</TD><TD CLASS="h">0%   (0/31)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">FindOccurrencesProcessor</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/116)</TD><TD CLASS="h">0%   (0/31)</TD></TR><TR><TD CLASS="f"><A HREF="#0">FindOccurrencesProcessor (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">enabledForParitition (String): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/21)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#3">enabledForRegionType (String): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/21)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">findOccurrences (IDocument, ITextSelection, IFile): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/63)</TD><TD CLASS="h">0%   (0/19)</TD></TR><TR><TD CLASS="f"><A HREF="#5">getSearchQuery (IFile, IStructuredDocument, String, String, ITextSelection): ...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/1)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2005 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     </TD></TR><TR><TD CLASS="l">11</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">12</TD><TD> </TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.search;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.core.resources.IFile;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.jface.text.IDocument;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.jface.text.ITextSelection;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.search.ui.ISearchQuery;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.search.ui.NewSearchUI;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;</TD></TR><TR><TD CLASS="l">23</TD><TD> </TD></TR><TR><TD CLASS="l">24</TD><TD>/**</TD></TR><TR><TD CLASS="l">25</TD><TD> * &lt;p&gt;</TD></TR><TR><TD CLASS="l">26</TD><TD> * Finds occurrences of a specified region type w/ region text in an</TD></TR><TR><TD CLASS="l">27</TD><TD> * IStructuredDocument. Clients must implement getPartitionTypes() and</TD></TR><TR><TD CLASS="l">28</TD><TD> * getRegionTypes() to indicate which partition types and region types it can</TD></TR><TR><TD CLASS="l">29</TD><TD> * operate on.</TD></TR><TR><TD CLASS="l">30</TD><TD> * &lt;/p&gt;</TD></TR><TR><TD CLASS="l">31</TD><TD> * </TD></TR><TR><TD CLASS="l">32</TD><TD> * &lt;p&gt;</TD></TR><TR><TD CLASS="l">33</TD><TD> * Clients should override &lt;code&gt;getSearchQuery()&lt;/code&gt; in order to provide</TD></TR><TR><TD CLASS="l">34</TD><TD> * their own type of &#34;search&#34; (eg. searching for XML start tags, searching for</TD></TR><TR><TD CLASS="l"><A NAME="0">35</A></TD><TD> * Java elements, etc...)</TD></TR><TR><TD CLASS="l">36</TD><TD> * &lt;/p&gt;</TD></TR><TR><TD CLASS="l"><A NAME="4">37</A></TD><TD> * </TD></TR><TR><TD CLASS="l">38</TD><TD> */</TD></TR><TR CLASS="z"><TD CLASS="l">39</TD><TD>abstract public class FindOccurrencesProcessor {</TD></TR><TR><TD CLASS="l">40</TD><TD>        public boolean findOccurrences(IDocument document, ITextSelection textSelection, IFile file) {</TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>                boolean findOccurrences = false;</TD></TR><TR><TD CLASS="l">42</TD><TD> </TD></TR><TR><TD CLASS="l">43</TD><TD>                // determine if action should be enabled or not</TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>                if (document instanceof IStructuredDocument) {</TD></TR><TR CLASS="z"><TD CLASS="l">45</TD><TD>                        IStructuredDocument structuredDocument = (IStructuredDocument) document;</TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>                        IStructuredDocumentRegion sdRegion = structuredDocument.getRegionAtCharacterOffset(textSelection.getOffset());</TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>                        if (sdRegion != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">48</TD><TD>                                ITextRegion r = sdRegion.getRegionAtCharacterOffset(textSelection.getOffset());</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>                                if (r != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">50</TD><TD>                                        String type = r.getType();</TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>                                        if (enabledForRegionType(type)) {</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                                                String matchText = sdRegion.getText(r);</TD></TR><TR><TD CLASS="l">53</TD><TD> </TD></TR><TR><TD CLASS="l">54</TD><TD>                                                // first of all activate the view</TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                                                NewSearchUI.activateSearchResultView();</TD></TR><TR><TD CLASS="l">56</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>                                                if (matchText != null &amp;&amp; type != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>                                                        ISearchQuery searchQuery = getSearchQuery(file, structuredDocument, matchText, type, textSelection);</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>                                                        if (searchQuery != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                                                                if (searchQuery.canRunInBackground())</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                                                                        NewSearchUI.runQueryInBackground(searchQuery);</TD></TR><TR><TD CLASS="l">62</TD><TD>                                                                else</TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>                                                                        NewSearchUI.runQueryInForeground(null, searchQuery);</TD></TR><TR><TD CLASS="l">64</TD><TD>                                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>                                                        findOccurrences = true;</TD></TR><TR><TD CLASS="l">66</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">67</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">68</TD><TD>                                }</TD></TR><TR><TD CLASS="l">69</TD><TD>                        }</TD></TR><TR><TD CLASS="l">70</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>                return findOccurrences;</TD></TR><TR><TD CLASS="l">72</TD><TD>        }</TD></TR><TR><TD CLASS="l">73</TD><TD> </TD></TR><TR><TD CLASS="l">74</TD><TD>        /**</TD></TR><TR><TD CLASS="l">75</TD><TD>         * @param regionType</TD></TR><TR><TD CLASS="l">76</TD><TD>         * @return &lt;code&gt;true&lt;/code&gt; if this action can operate on this region</TD></TR><TR><TD CLASS="l"><A NAME="3">77</A></TD><TD>         *         type (ITextRegion), otherwise false.</TD></TR><TR><TD CLASS="l">78</TD><TD>         */</TD></TR><TR><TD CLASS="l">79</TD><TD>        private boolean enabledForRegionType(String regionType) {</TD></TR><TR><TD CLASS="l">80</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">81</TD><TD>                String[] accept = getRegionTypes();</TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>                for (int i = 0; i &lt; accept.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">83</TD><TD>                        if (regionType.equals(accept[i]))</TD></TR><TR CLASS="z"><TD CLASS="l">84</TD><TD>                                return true;</TD></TR><TR><TD CLASS="l">85</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                return false;</TD></TR><TR><TD CLASS="l">87</TD><TD>        }</TD></TR><TR><TD CLASS="l">88</TD><TD> </TD></TR><TR><TD CLASS="l">89</TD><TD>        /**</TD></TR><TR><TD CLASS="l">90</TD><TD>         * Clients should override this to enable find occurrences on certain</TD></TR><TR><TD CLASS="l">91</TD><TD>         * partition(s).</TD></TR><TR><TD CLASS="l">92</TD><TD>         */</TD></TR><TR><TD CLASS="l">93</TD><TD>        abstract protected String[] getPartitionTypes();</TD></TR><TR><TD CLASS="l">94</TD><TD> </TD></TR><TR><TD CLASS="l">95</TD><TD>        /**</TD></TR><TR><TD CLASS="l">96</TD><TD>         * Clients should override this to enable find occurrences on different</TD></TR><TR><TD CLASS="l">97</TD><TD>         * region type(s).</TD></TR><TR><TD CLASS="l">98</TD><TD>         */</TD></TR><TR><TD CLASS="l">99</TD><TD>        abstract protected String[] getRegionTypes();</TD></TR><TR><TD CLASS="l">100</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="5">101</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">102</TD><TD>         * Clients should override to provide their own search for the file.</TD></TR><TR><TD CLASS="l">103</TD><TD>         */</TD></TR><TR><TD CLASS="l">104</TD><TD>        protected ISearchQuery getSearchQuery(IFile file, IStructuredDocument document, String regionText, String regionType, ITextSelection textSelection) {</TD></TR><TR CLASS="z"><TD CLASS="l">105</TD><TD>                return new OccurrencesSearchQuery(file, document, regionText, regionType);</TD></TR><TR><TD CLASS="l">106</TD><TD>        }</TD></TR><TR><TD CLASS="l">107</TD><TD> </TD></TR><TR><TD CLASS="l">108</TD><TD>        /**</TD></TR><TR><TD CLASS="l">109</TD><TD>         * @param partitionType</TD></TR><TR><TD CLASS="l"><A NAME="2">110</A></TD><TD>         * @return &lt;code&gt;true&lt;/code&gt; if this action can operate on this type of</TD></TR><TR><TD CLASS="l">111</TD><TD>         *         partition, otherwise &lt;code&gt;false&lt;/code&gt;.</TD></TR><TR><TD CLASS="l">112</TD><TD>         */</TD></TR><TR><TD CLASS="l">113</TD><TD>        public boolean enabledForParitition(String partitionType) {</TD></TR><TR CLASS="z"><TD CLASS="l">114</TD><TD>                String[] accept = getPartitionTypes();</TD></TR><TR CLASS="z"><TD CLASS="l">115</TD><TD>                for (int i = 0; i &lt; accept.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">116</TD><TD>                        if (partitionType.equals(accept[i]))</TD></TR><TR CLASS="z"><TD CLASS="l">117</TD><TD>                                return true;</TD></TR><TR><TD CLASS="l">118</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">119</TD><TD>                return false;</TD></TR><TR><TD CLASS="l">120</TD><TD>        }</TD></TR><TR><TD CLASS="l">121</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="1a.html">org.eclipse.wst.sse.ui.internal.search</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/13b.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/13b.html
deleted file mode 100644
index 884abdc..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/13b.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="1a.html">org.eclipse.wst.sse.ui.internal.search</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">OccurrencesContentProvider.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>OccurrencesContentProvider.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/103)</TD><TD CLASS="h">0%   (0/30)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">OccurrencesContentProvider</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/103)</TD><TD CLASS="h">0%   (0/30)</TD></TR><TR><TD CLASS="f"><A HREF="#0">OccurrencesContentProvider (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">clear (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#3">dispose (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">elementsChanged (Object []): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/49)</TD><TD CLASS="h">0%   (0/11)</TD></TR><TR><TD CLASS="f"><A HREF="#5">getElements (Object): Object []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">inputChanged (Viewer, Object, Object): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#7">refresh (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/3)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2004 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.search;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.jface.viewers.IStructuredContentProvider;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.jface.viewers.TableViewer;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.jface.viewers.Viewer;</TD></TR><TR><TD CLASS="l"><A NAME="0">18</A></TD><TD> </TD></TR><TR><TD CLASS="l">19</TD><TD>/**</TD></TR><TR><TD CLASS="l">20</TD><TD> * @author pavery</TD></TR><TR><TD CLASS="l">21</TD><TD> */</TD></TR><TR CLASS="z"><TD CLASS="l">22</TD><TD>public class OccurrencesContentProvider implements IStructuredContentProvider {</TD></TR><TR><TD CLASS="l">23</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">24</TD><TD>        protected final Object[] EMPTY_ARRAY = new Object[0];</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">25</A></TD><TD>        private OccurrencesSearchResult fResult = null;</TD></TR><TR CLASS="z"><TD CLASS="l">26</TD><TD>        private TableViewer fTableViewer = null;</TD></TR><TR><TD CLASS="l">27</TD><TD> </TD></TR><TR><TD CLASS="l">28</TD><TD>        public void clear() {</TD></TR><TR CLASS="z"><TD CLASS="l">29</TD><TD>                if (this.fResult != null)</TD></TR><TR CLASS="z"><TD CLASS="l">30</TD><TD>                        this.fResult.clearMatches();</TD></TR><TR CLASS="z"><TD CLASS="l">31</TD><TD>                if (this.fTableViewer != null)</TD></TR><TR CLASS="z"><TD CLASS="l">32</TD><TD>                        this.fTableViewer.refresh();</TD></TR><TR CLASS="z"><TD CLASS="l">33</TD><TD>        }</TD></TR><TR><TD CLASS="l">34</TD><TD> </TD></TR><TR><TD CLASS="l">35</TD><TD>        /*</TD></TR><TR><TD CLASS="l">36</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l">37</TD><TD>         * </TD></TR><TR><TD CLASS="l"><A NAME="3">38</A></TD><TD>         * @see org.eclipse.jface.viewers.IContentProvider#dispose()</TD></TR><TR><TD CLASS="l">39</TD><TD>         */</TD></TR><TR><TD CLASS="l">40</TD><TD>        public void dispose() {</TD></TR><TR><TD CLASS="l">41</TD><TD>                // do nothing</TD></TR><TR CLASS="z"><TD CLASS="l">42</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="4">43</A></TD><TD> </TD></TR><TR><TD CLASS="l">44</TD><TD>        public void elementsChanged(Object[] updatedElements) {</TD></TR><TR><TD CLASS="l">45</TD><TD> </TD></TR><TR><TD CLASS="l">46</TD><TD>                //TODO: copied from JavaSearchTableContentProvider</TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>                int addCount = 0;</TD></TR><TR CLASS="z"><TD CLASS="l">48</TD><TD>                int removeCount = 0;</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>                for (int i = 0; i &lt; updatedElements.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">50</TD><TD>                        if (this.fResult.getMatchCount(updatedElements[i]) &gt; 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>                                if (this.fTableViewer.testFindItem(updatedElements[i]) != null)</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                                        this.fTableViewer.refresh(updatedElements[i]);</TD></TR><TR><TD CLASS="l">53</TD><TD>                                else</TD></TR><TR CLASS="z"><TD CLASS="l">54</TD><TD>                                        this.fTableViewer.add(updatedElements[i]);</TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                                addCount++;</TD></TR><TR><TD CLASS="l">56</TD><TD>                        } else {</TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>                                this.fTableViewer.remove(updatedElements[i]);</TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>                                removeCount++;</TD></TR><TR><TD CLASS="l">59</TD><TD>                        }</TD></TR><TR><TD CLASS="l">60</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>        }</TD></TR><TR><TD CLASS="l">62</TD><TD> </TD></TR><TR><TD CLASS="l">63</TD><TD> </TD></TR><TR><TD CLASS="l">64</TD><TD>        /**</TD></TR><TR><TD CLASS="l"><A NAME="5">65</A></TD><TD>         * @see org.eclipse.jface.viewers.IStructuredContentProvider#getElements(java.lang.Object)</TD></TR><TR><TD CLASS="l">66</TD><TD>         */</TD></TR><TR><TD CLASS="l">67</TD><TD>        public Object[] getElements(Object inputElement) {</TD></TR><TR><TD CLASS="l">68</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                this.fResult = (OccurrencesSearchResult) inputElement;</TD></TR><TR CLASS="z"><TD CLASS="l">70</TD><TD>                return this.fResult.getMatches();</TD></TR><TR><TD CLASS="l">71</TD><TD>        }</TD></TR><TR><TD CLASS="l">72</TD><TD> </TD></TR><TR><TD CLASS="l">73</TD><TD>        /**</TD></TR><TR><TD CLASS="l">74</TD><TD>         * @see org.eclipse.jface.viewers.IContentProvider#inputChanged(org.eclipse.jface.viewers.Viewer,</TD></TR><TR><TD CLASS="l"><A NAME="6">75</A></TD><TD>         *      java.lang.Object, java.lang.Object)</TD></TR><TR><TD CLASS="l">76</TD><TD>         */</TD></TR><TR><TD CLASS="l">77</TD><TD>        public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {</TD></TR><TR><TD CLASS="l">78</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">79</TD><TD>                if (viewer instanceof TableViewer)</TD></TR><TR CLASS="z"><TD CLASS="l">80</TD><TD>                        this.fTableViewer = (TableViewer) viewer;</TD></TR><TR CLASS="z"><TD CLASS="l">81</TD><TD>                this.fResult = (OccurrencesSearchResult) newInput;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="7">82</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">83</TD><TD> </TD></TR><TR><TD CLASS="l">84</TD><TD>        public void refresh() {</TD></TR><TR><TD CLASS="l">85</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                if (this.fTableViewer != null)</TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>                        this.fTableViewer.refresh();</TD></TR><TR CLASS="z"><TD CLASS="l">88</TD><TD>        }</TD></TR><TR><TD CLASS="l">89</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="1a.html">org.eclipse.wst.sse.ui.internal.search</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/13c.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/13c.html
deleted file mode 100644
index 9e574ca..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/13c.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="1a.html">org.eclipse.wst.sse.ui.internal.search</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">OccurrencesSearchQuery.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>OccurrencesSearchQuery.java</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/237)</TD><TD CLASS="h">0%   (0/60)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">OccurrencesSearchQuery</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/114)</TD><TD CLASS="h">0%   (0/29)</TD></TR><TR><TD CLASS="f"><A HREF="#0">OccurrencesSearchQuery (IFile, IStructuredDocument, String, String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/22)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">canRerun (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#3">canRunInBackground (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">doQuery (): IStatus</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/40)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR><TD CLASS="f"><A HREF="#5">getFilename (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">getLabel (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/24)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#7">getOccurrencesCountText (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">getSearchResult (): ISearchResult</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#9">getSearchText (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#a">OccurrencesSearchQuery$FindRegions</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/123)</TD><TD CLASS="h">0%   (0/31)</TD></TR><TR><TD CLASS="f"><A HREF="#a">OccurrencesSearchQuery$FindRegions (OccurrencesSearchQuery, IStructuredDocume...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/24)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#c">findOccurrences (IProgressMonitor): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/82)</TD><TD CLASS="h">0%   (0/18)</TD></TR><TR><TD CLASS="f"><A HREF="#d">isCanceled (IProgressMonitor): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#e">run (IProgressMonitor): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/4)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.search;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.text.MessageFormat;</TD></TR><TR><TD CLASS="l">16</TD><TD> </TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.core.resources.IFile;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.core.resources.IWorkspace;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.core.resources.IWorkspaceRunnable;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.core.resources.ResourcesPlugin;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.core.runtime.CoreException;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.core.runtime.IProgressMonitor;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.core.runtime.IStatus;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.core.runtime.Status;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.core.runtime.jobs.ISchedulingRule;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.search.ui.ISearchResult;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;</TD></TR><TR><TD CLASS="l">30</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionList;</TD></TR><TR><TD CLASS="l">31</TD><TD>import org.eclipse.wst.sse.ui.internal.Logger;</TD></TR><TR><TD CLASS="l">32</TD><TD>import org.eclipse.wst.sse.ui.internal.SSEUIMessages;</TD></TR><TR><TD CLASS="l">33</TD><TD>import org.eclipse.wst.sse.ui.internal.SSEUIPlugin;</TD></TR><TR><TD CLASS="l">34</TD><TD> </TD></TR><TR><TD CLASS="l">35</TD><TD>/**</TD></TR><TR><TD CLASS="l">36</TD><TD> * Basic ISearchQuery that finds matches of region type and region text.</TD></TR><TR><TD CLASS="l">37</TD><TD> * </TD></TR><TR><TD CLASS="l">38</TD><TD> * @author pavery</TD></TR><TR><TD CLASS="l">39</TD><TD> */</TD></TR><TR><TD CLASS="l">40</TD><TD>public class OccurrencesSearchQuery extends BasicSearchQuery {</TD></TR><TR><TD CLASS="l">41</TD><TD> </TD></TR><TR><TD CLASS="l">42</TD><TD>        /**</TD></TR><TR><TD CLASS="l">43</TD><TD>         * We need a runnable so that the search markers show up in the live</TD></TR><TR><TD CLASS="l">44</TD><TD>         * document.</TD></TR><TR><TD CLASS="l">45</TD><TD>         */</TD></TR><TR><TD CLASS="l">46</TD><TD>        private class FindRegions implements IWorkspaceRunnable {</TD></TR><TR><TD CLASS="l">47</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="a">48</A></TD><TD>                private IStructuredDocument fFindRegionsDocument = null;</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>                private String fMatchName = null;</TD></TR><TR CLASS="z"><TD CLASS="l">50</TD><TD>                private String fMatchRegionType = null;</TD></TR><TR><TD CLASS="l">51</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                public FindRegions(IStructuredDocument document, String matchText, String matchRegionType) {</TD></TR><TR><TD CLASS="l">53</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">54</TD><TD>                        this.fFindRegionsDocument = document;</TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                        this.fMatchName = matchText;</TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>                        this.fMatchRegionType = matchRegionType;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="c">57</A></TD><TD>                }</TD></TR><TR><TD CLASS="l">58</TD><TD> </TD></TR><TR><TD CLASS="l">59</TD><TD>                private void findOccurrences(IProgressMonitor monitor) {</TD></TR><TR><TD CLASS="l">60</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                        if (!isCanceled(monitor)) {</TD></TR><TR><TD CLASS="l">62</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>                                int matchStart = -1;</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                                int matchEnd = -1;</TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>                                String findRegionText = &#34;&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">66</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>                                ITextRegion r = null;</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>                                ITextRegionList regions = null;</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                                IStructuredDocumentRegion current = this.fFindRegionsDocument.getFirstStructuredDocumentRegion();</TD></TR><TR><TD CLASS="l">70</TD><TD> </TD></TR><TR><TD CLASS="l">71</TD><TD>                                // this is the main loop that iterates the document</TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>                                while (current != null &amp;&amp; !isCanceled(monitor)) {</TD></TR><TR CLASS="z"><TD CLASS="l">73</TD><TD>                                        regions = current.getRegions();</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>                                        for (int i = 0; i &lt; regions.size() &amp;&amp; !isCanceled(monitor); i++) {</TD></TR><TR><TD CLASS="l">75</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>                                                r = regions.get(i);</TD></TR><TR><TD CLASS="l">77</TD><TD> </TD></TR><TR><TD CLASS="l">78</TD><TD>                                                // maybe this is the equals check where some valid</TD></TR><TR><TD CLASS="l">79</TD><TD>                                                // matches are failing (like searching on end tag)</TD></TR><TR CLASS="z"><TD CLASS="l">80</TD><TD>                                                if (r.getType().equals(this.fMatchRegionType) &amp;&amp; current.getText(r).equals(this.fMatchName)) {</TD></TR><TR><TD CLASS="l">81</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>                                                        findRegionText = current.getText(r);</TD></TR><TR><TD CLASS="l">83</TD><TD> </TD></TR><TR><TD CLASS="l">84</TD><TD>                                                        // region found</TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>                                                        matchStart = current.getStartOffset(r);</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                                                        matchEnd = matchStart + findRegionText.trim().length();</TD></TR><TR><TD CLASS="l">87</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">88</TD><TD>                                                        addMatch(this.fFindRegionsDocument, matchStart, matchEnd);</TD></TR><TR><TD CLASS="l">89</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">90</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">91</TD><TD>                                        current = current.getNext();</TD></TR><TR><TD CLASS="l">92</TD><TD>                                }</TD></TR><TR><TD CLASS="l"><A NAME="d">93</A></TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">94</TD><TD>                }</TD></TR><TR><TD CLASS="l">95</TD><TD> </TD></TR><TR><TD CLASS="l">96</TD><TD>                private boolean isCanceled(IProgressMonitor monitor) {</TD></TR><TR CLASS="z"><TD CLASS="l">97</TD><TD>                        return monitor != null &amp;&amp; monitor.isCanceled();</TD></TR><TR><TD CLASS="l">98</TD><TD>                }</TD></TR><TR><TD CLASS="l"><A NAME="e">99</A></TD><TD> </TD></TR><TR><TD CLASS="l">100</TD><TD>                public void run(IProgressMonitor monitor) throws CoreException {</TD></TR><TR><TD CLASS="l">101</TD><TD> </TD></TR><TR><TD CLASS="l">102</TD><TD>                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">103</TD><TD>                                findOccurrences(monitor);</TD></TR><TR CLASS="z"><TD CLASS="l">104</TD><TD>                        } catch (Exception e) {</TD></TR><TR CLASS="z"><TD CLASS="l">105</TD><TD>                                Logger.logException(e);</TD></TR><TR><TD CLASS="l">106</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">107</TD><TD>                }</TD></TR><TR><TD CLASS="l">108</TD><TD>        }</TD></TR><TR><TD CLASS="l">109</TD><TD> </TD></TR><TR><TD CLASS="l">110</TD><TD>        // end inner class FindRegions</TD></TR><TR><TD CLASS="l">111</TD><TD> </TD></TR><TR><TD CLASS="l">112</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">113</TD><TD>        private IStructuredDocument fDocument = null;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="0">114</A></TD><TD>        private String fRegionText = null;</TD></TR><TR CLASS="z"><TD CLASS="l">115</TD><TD>        private String fRegionType = null;</TD></TR><TR><TD CLASS="l">116</TD><TD> </TD></TR><TR><TD CLASS="l">117</TD><TD>        public OccurrencesSearchQuery(IFile file, IStructuredDocument document, String regionText, String regionType) {</TD></TR><TR CLASS="z"><TD CLASS="l">118</TD><TD>                super(file);</TD></TR><TR CLASS="z"><TD CLASS="l">119</TD><TD>                this.fDocument = document;</TD></TR><TR CLASS="z"><TD CLASS="l">120</TD><TD>                this.fRegionText = regionText;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">121</A></TD><TD>                this.fRegionType = regionType;</TD></TR><TR CLASS="z"><TD CLASS="l">122</TD><TD>        }</TD></TR><TR><TD CLASS="l">123</TD><TD> </TD></TR><TR><TD CLASS="l">124</TD><TD>        public boolean canRerun() {</TD></TR><TR CLASS="z"><TD CLASS="l">125</TD><TD>                return false;</TD></TR><TR><TD CLASS="l"><A NAME="3">126</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">127</TD><TD> </TD></TR><TR><TD CLASS="l">128</TD><TD>        public boolean canRunInBackground() {</TD></TR><TR><TD CLASS="l">129</TD><TD>                // pa_TODO investigate what is required to do this safely</TD></TR><TR CLASS="z"><TD CLASS="l">130</TD><TD>                return false;</TD></TR><TR><TD CLASS="l">131</TD><TD>        }</TD></TR><TR><TD CLASS="l">132</TD><TD> </TD></TR><TR><TD CLASS="l">133</TD><TD>        /*</TD></TR><TR><TD CLASS="l">134</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l">135</TD><TD>         * </TD></TR><TR><TD CLASS="l"><A NAME="4">136</A></TD><TD>         * @see org.eclipse.wst.sse.ui.internal.search.BasicSearchQuery#doQuery()</TD></TR><TR><TD CLASS="l">137</TD><TD>         */</TD></TR><TR><TD CLASS="l">138</TD><TD>        protected IStatus doQuery() {</TD></TR><TR><TD CLASS="l">139</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">140</TD><TD>                clearMatches();</TD></TR><TR><TD CLASS="l">141</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">142</TD><TD>                IStatus status = Status.OK_STATUS;</TD></TR><TR CLASS="z"><TD CLASS="l">143</TD><TD>                FindRegions findRegions = new FindRegions(this.fDocument, this.fRegionText, this.fRegionType);</TD></TR><TR><TD CLASS="l">144</TD><TD>                try {</TD></TR><TR><TD CLASS="l">145</TD><TD>                        // BUG158846 - deadlock if lock up entire workspace, so only lock</TD></TR><TR><TD CLASS="l">146</TD><TD>                        // up the file we are searching on</TD></TR><TR CLASS="z"><TD CLASS="l">147</TD><TD>                        ISchedulingRule markerRule = ResourcesPlugin.getWorkspace().getRuleFactory().markerRule(getFile());</TD></TR><TR CLASS="z"><TD CLASS="l">148</TD><TD>                        ResourcesPlugin.getWorkspace().run(findRegions, markerRule, IWorkspace.AVOID_UPDATE, null);</TD></TR><TR CLASS="z"><TD CLASS="l">149</TD><TD>                } catch (CoreException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">150</TD><TD>                        status = new Status(IStatus.ERROR, SSEUIPlugin.ID, IStatus.OK, &#34;&#34;, null); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">151</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="5">152</A></TD><TD>                return status;</TD></TR><TR><TD CLASS="l">153</TD><TD>        }</TD></TR><TR><TD CLASS="l">154</TD><TD> </TD></TR><TR><TD CLASS="l">155</TD><TD>        private String getFilename() {</TD></TR><TR CLASS="z"><TD CLASS="l">156</TD><TD>                String filename = SSEUIMessages.OccurrencesSearchQuery_2; //$NON-NLS-1$ &#34;file&#34;</TD></TR><TR CLASS="z"><TD CLASS="l">157</TD><TD>                if (getFile() != null)</TD></TR><TR CLASS="z"><TD CLASS="l">158</TD><TD>                        filename = getFile().getName().toString();</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="6">159</A></TD><TD>                return filename;</TD></TR><TR><TD CLASS="l">160</TD><TD>        }</TD></TR><TR><TD CLASS="l">161</TD><TD> </TD></TR><TR><TD CLASS="l">162</TD><TD>        public String getLabel() {</TD></TR><TR CLASS="z"><TD CLASS="l">163</TD><TD>                String label = SSEUIMessages.OccurrencesSearchQuery_0; //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">164</TD><TD>                String[] args = {getSearchText(), getOccurrencesCountText(), getFilename()};</TD></TR><TR CLASS="z"><TD CLASS="l">165</TD><TD>                return MessageFormat.format(label, args);</TD></TR><TR><TD CLASS="l">166</TD><TD>        }</TD></TR><TR><TD CLASS="l">167</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="7">168</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">169</TD><TD>         * @return</TD></TR><TR><TD CLASS="l">170</TD><TD>         */</TD></TR><TR><TD CLASS="l">171</TD><TD>        private String getOccurrencesCountText() {</TD></TR><TR CLASS="z"><TD CLASS="l">172</TD><TD>                String count = &#34;&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">173</TD><TD>                // pa_TODO dynamically change count</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="8">174</A></TD><TD>                return count;</TD></TR><TR><TD CLASS="l">175</TD><TD>        }</TD></TR><TR><TD CLASS="l">176</TD><TD> </TD></TR><TR><TD CLASS="l">177</TD><TD>        public ISearchResult getSearchResult() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="9">178</A></TD><TD>                return new OccurrencesSearchResult(this);</TD></TR><TR><TD CLASS="l">179</TD><TD>        }</TD></TR><TR><TD CLASS="l">180</TD><TD> </TD></TR><TR><TD CLASS="l">181</TD><TD>        protected String getSearchText() {</TD></TR><TR CLASS="z"><TD CLASS="l">182</TD><TD>                return this.fRegionText;</TD></TR><TR><TD CLASS="l">183</TD><TD>        }</TD></TR><TR><TD CLASS="l">184</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="1a.html">org.eclipse.wst.sse.ui.internal.search</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/13d.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/13d.html
deleted file mode 100644
index 4cf058e..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/13d.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="1a.html">org.eclipse.wst.sse.ui.internal.search</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">OccurrencesSearchResult.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>OccurrencesSearchResult.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/85)</TD><TD CLASS="h">0%   (0/28)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">OccurrencesSearchResult</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/85)</TD><TD CLASS="h">0%   (0/28)</TD></TR><TR><TD CLASS="f"><A HREF="#0">OccurrencesSearchResult (ISearchQuery): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">clearMatches (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#3">computeContainedMatches (AbstractTextSearchResult, IEditorPart): Match []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/18)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">computeContainedMatches (AbstractTextSearchResult, IFile): Match []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#5">getEditorMatchAdapter (): IEditorMatchAdapter</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">getFile (Object): IFile</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/17)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#7">getFileMatchAdapter (): IFileMatchAdapter</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">getImageDescriptor (): ImageDescriptor</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#9">getLabel (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">getMatches (): Match []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#b">getQuery (): ISearchQuery</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#c">getTooltip (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#d">isShownInEditor (Match, IEditorPart): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2004 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.search;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.core.resources.IFile;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.core.resources.IMarker;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.core.resources.IResource;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.jface.resource.ImageDescriptor;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.search.ui.ISearchQuery;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.search.ui.text.AbstractTextSearchResult;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.search.ui.text.IEditorMatchAdapter;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.search.ui.text.IFileMatchAdapter;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.search.ui.text.Match;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.ui.IEditorInput;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.ui.IEditorPart;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.ui.IFileEditorInput;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.wst.sse.ui.internal.editor.EditorPluginImageHelper;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.wst.sse.ui.internal.editor.EditorPluginImages;</TD></TR><TR><TD CLASS="l">29</TD><TD> </TD></TR><TR><TD CLASS="l">30</TD><TD> </TD></TR><TR><TD CLASS="l">31</TD><TD>/**</TD></TR><TR><TD CLASS="l">32</TD><TD> * @author pavery</TD></TR><TR><TD CLASS="l">33</TD><TD> */</TD></TR><TR><TD CLASS="l">34</TD><TD>public class OccurrencesSearchResult extends AbstractTextSearchResult implements IEditorMatchAdapter, IFileMatchAdapter {</TD></TR><TR><TD CLASS="l"><A NAME="0">35</A></TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">36</TD><TD>        private ISearchQuery fQuery = null;</TD></TR><TR CLASS="z"><TD CLASS="l">37</TD><TD>        private final Match[] NO_MATCHES = new Match[0];</TD></TR><TR><TD CLASS="l">38</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">39</TD><TD>        public OccurrencesSearchResult(ISearchQuery query) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">40</A></TD><TD>                this.fQuery = query;</TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>        }</TD></TR><TR><TD CLASS="l">42</TD><TD> </TD></TR><TR><TD CLASS="l">43</TD><TD>        public void clearMatches() {</TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>                if (getQuery() instanceof OccurrencesSearchQuery)</TD></TR><TR CLASS="z"><TD CLASS="l">45</TD><TD>                        ((OccurrencesSearchQuery) getQuery()).clearMatches();</TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>        }</TD></TR><TR><TD CLASS="l">47</TD><TD> </TD></TR><TR><TD CLASS="l">48</TD><TD>        /**</TD></TR><TR><TD CLASS="l">49</TD><TD>         * @see org.eclipse.search.ui.text.IEditorMatchAdapter#computeContainedMatches(org.eclipse.search.ui.text.AbstractTextSearchResult,</TD></TR><TR><TD CLASS="l"><A NAME="3">50</A></TD><TD>         *      org.eclipse.ui.IEditorPart)</TD></TR><TR><TD CLASS="l">51</TD><TD>         */</TD></TR><TR><TD CLASS="l">52</TD><TD>        public Match[] computeContainedMatches(AbstractTextSearchResult result, IEditorPart editor) {</TD></TR><TR><TD CLASS="l">53</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">54</TD><TD>                IEditorInput editorInput = editor.getEditorInput();</TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                if (editorInput instanceof IFileEditorInput) {</TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>                        IFileEditorInput fileEditorInput = (IFileEditorInput) editorInput;</TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>                        return computeContainedMatches(result, fileEditorInput.getFile());</TD></TR><TR><TD CLASS="l">58</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>                return this.NO_MATCHES;</TD></TR><TR><TD CLASS="l">60</TD><TD>        }</TD></TR><TR><TD CLASS="l">61</TD><TD> </TD></TR><TR><TD CLASS="l">62</TD><TD>        /**</TD></TR><TR><TD CLASS="l"><A NAME="4">63</A></TD><TD>         * @see org.eclipse.search.ui.text.IFileMatchAdapter#computeContainedMatches(org.eclipse.search.ui.text.AbstractTextSearchResult,</TD></TR><TR><TD CLASS="l">64</TD><TD>         *      org.eclipse.core.resources.IFile)</TD></TR><TR><TD CLASS="l">65</TD><TD>         */</TD></TR><TR><TD CLASS="l">66</TD><TD>        public Match[] computeContainedMatches(AbstractTextSearchResult result, IFile file) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="5">67</A></TD><TD>                return getMatches();</TD></TR><TR><TD CLASS="l">68</TD><TD>        }</TD></TR><TR><TD CLASS="l">69</TD><TD> </TD></TR><TR><TD CLASS="l">70</TD><TD>        public IEditorMatchAdapter getEditorMatchAdapter() {</TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>                return this;</TD></TR><TR><TD CLASS="l">72</TD><TD>        }</TD></TR><TR><TD CLASS="l">73</TD><TD> </TD></TR><TR><TD CLASS="l">74</TD><TD>        /**</TD></TR><TR><TD CLASS="l"><A NAME="6">75</A></TD><TD>         * @see org.eclipse.search.ui.text.IFileMatchAdapter#getFile(java.lang.Object)</TD></TR><TR><TD CLASS="l">76</TD><TD>         */</TD></TR><TR><TD CLASS="l">77</TD><TD>        public IFile getFile(Object element) {</TD></TR><TR><TD CLASS="l">78</TD><TD>                // return the file for the match</TD></TR><TR CLASS="z"><TD CLASS="l">79</TD><TD>                IFile file = null;</TD></TR><TR><TD CLASS="l">80</TD><TD>                //System.out.println(&#34;get file for:&#34;+element);</TD></TR><TR CLASS="z"><TD CLASS="l">81</TD><TD>                if (element instanceof IMarker) {</TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>                        IResource r = ((IMarker) element).getResource();</TD></TR><TR CLASS="z"><TD CLASS="l">83</TD><TD>                        if (r instanceof IFile) {</TD></TR><TR CLASS="z"><TD CLASS="l">84</TD><TD>                                file = (IFile) r;</TD></TR><TR><TD CLASS="l">85</TD><TD>                        }</TD></TR><TR><TD CLASS="l">86</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="7">87</A></TD><TD>                return file;</TD></TR><TR><TD CLASS="l">88</TD><TD>        }</TD></TR><TR><TD CLASS="l">89</TD><TD> </TD></TR><TR><TD CLASS="l">90</TD><TD>        public IFileMatchAdapter getFileMatchAdapter() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="8">91</A></TD><TD>                return this;</TD></TR><TR><TD CLASS="l">92</TD><TD>        }</TD></TR><TR><TD CLASS="l">93</TD><TD> </TD></TR><TR><TD CLASS="l">94</TD><TD>        public ImageDescriptor getImageDescriptor() {</TD></TR><TR CLASS="z"><TD CLASS="l">95</TD><TD>                return EditorPluginImageHelper.getInstance().getImageDescriptor(EditorPluginImages.IMG_OBJ_OCC_MATCH);</TD></TR><TR><TD CLASS="l">96</TD><TD>        }</TD></TR><TR><TD CLASS="l">97</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="9">98</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">99</TD><TD>         * This label shows up in the search history</TD></TR><TR><TD CLASS="l">100</TD><TD>         */</TD></TR><TR><TD CLASS="l">101</TD><TD>        public String getLabel() {</TD></TR><TR CLASS="z"><TD CLASS="l">102</TD><TD>                return getQuery().getLabel();</TD></TR><TR><TD CLASS="l"><A NAME="a">103</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">104</TD><TD> </TD></TR><TR><TD CLASS="l">105</TD><TD>        public Match[] getMatches() {</TD></TR><TR><TD CLASS="l">106</TD><TD>                // ensure that query is done running</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="b">107</A></TD><TD>                return ((OccurrencesSearchQuery) getQuery()).getMatches();</TD></TR><TR><TD CLASS="l">108</TD><TD>        }</TD></TR><TR><TD CLASS="l">109</TD><TD> </TD></TR><TR><TD CLASS="l">110</TD><TD>        public ISearchQuery getQuery() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="c">111</A></TD><TD>                return this.fQuery;</TD></TR><TR><TD CLASS="l">112</TD><TD>        }</TD></TR><TR><TD CLASS="l">113</TD><TD> </TD></TR><TR><TD CLASS="l">114</TD><TD>        public String getTooltip() {</TD></TR><TR CLASS="z"><TD CLASS="l">115</TD><TD>                return getLabel();</TD></TR><TR><TD CLASS="l">116</TD><TD>        }</TD></TR><TR><TD CLASS="l">117</TD><TD> </TD></TR><TR><TD CLASS="l">118</TD><TD>        /*</TD></TR><TR><TD CLASS="l">119</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l">120</TD><TD>         * </TD></TR><TR><TD CLASS="l"><A NAME="d">121</A></TD><TD>         * @see org.eclipse.search.ui.text.IEditorMatchAdapter#isShownInEditor(org.eclipse.search.ui.text.Match,</TD></TR><TR><TD CLASS="l">122</TD><TD>         *      org.eclipse.ui.IEditorPart)</TD></TR><TR><TD CLASS="l">123</TD><TD>         */</TD></TR><TR><TD CLASS="l">124</TD><TD>        public boolean isShownInEditor(Match match, IEditorPart editor) {</TD></TR><TR CLASS="z"><TD CLASS="l">125</TD><TD>                return true;</TD></TR><TR><TD CLASS="l">126</TD><TD>        }</TD></TR><TR><TD CLASS="l">127</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="1a.html">org.eclipse.wst.sse.ui.internal.search</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/13e.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/13e.html
deleted file mode 100644
index db6ca2f..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/13e.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="1a.html">org.eclipse.wst.sse.ui.internal.search</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">OccurrencesSearchViewPage.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>OccurrencesSearchViewPage.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/127)</TD><TD CLASS="h">0%   (0/40)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">OccurrencesSearchViewPage</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/127)</TD><TD CLASS="h">0%   (0/40)</TD></TR><TR><TD CLASS="f"><A HREF="#0">OccurrencesSearchViewPage (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">clear (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#3">configureTableViewer (TableViewer): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">configureTreeViewer (TreeViewer): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#5">elementsChanged (Object []): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">forceRefresh (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#7">getActivePage (): IWorkbenchPage</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">getDisplayedMatches (Object): Match []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#9">show (IMarker): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/53)</TD><TD CLASS="h">0%   (0/14)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">showMatch (Match, int, int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/4)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2004 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.search;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.core.resources.IMarker;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.core.resources.IResource;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.jface.viewers.TableViewer;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.jface.viewers.TreeViewer;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.search.ui.text.AbstractTextSearchViewPage;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.search.ui.text.Match;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.ui.IEditorPart;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.ui.IWorkbench;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.ui.IWorkbenchPage;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.ui.IWorkbenchWindow;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.ui.PartInitException;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.ui.PlatformUI;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.ui.ide.IDE;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.ui.ide.IGotoMarker;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.wst.sse.ui.internal.Logger;</TD></TR><TR><TD CLASS="l">30</TD><TD> </TD></TR><TR><TD CLASS="l">31</TD><TD> </TD></TR><TR><TD CLASS="l">32</TD><TD>/**</TD></TR><TR><TD CLASS="l">33</TD><TD> * Base page for Occurrences in file search results.</TD></TR><TR><TD CLASS="l">34</TD><TD> * </TD></TR><TR><TD CLASS="l">35</TD><TD> * @author pavery</TD></TR><TR><TD CLASS="l">36</TD><TD> */</TD></TR><TR><TD CLASS="l">37</TD><TD>public class OccurrencesSearchViewPage extends AbstractTextSearchViewPage {</TD></TR><TR><TD CLASS="l"><A NAME="0">38</A></TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">39</TD><TD>        private OccurrencesContentProvider fContentProvider = null;</TD></TR><TR><TD CLASS="l">40</TD><TD> </TD></TR><TR><TD CLASS="l">41</TD><TD>        public OccurrencesSearchViewPage() {</TD></TR><TR CLASS="z"><TD CLASS="l">42</TD><TD>                super(AbstractTextSearchViewPage.FLAG_LAYOUT_FLAT);</TD></TR><TR CLASS="z"><TD CLASS="l">43</TD><TD>        }</TD></TR><TR><TD CLASS="l">44</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="2">45</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">46</TD><TD>         * @see org.eclipse.search.ui.text.AbstractTextSearchViewPage#clear()</TD></TR><TR><TD CLASS="l">47</TD><TD>         */</TD></TR><TR><TD CLASS="l">48</TD><TD>        protected void clear() {</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>                if (this.fContentProvider != null)</TD></TR><TR CLASS="z"><TD CLASS="l">50</TD><TD>                        this.fContentProvider.clear();</TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>        }</TD></TR><TR><TD CLASS="l">52</TD><TD> </TD></TR><TR><TD CLASS="l">53</TD><TD>        /**</TD></TR><TR><TD CLASS="l">54</TD><TD>         * @see org.eclipse.search.ui.text.AbstractTextSearchViewPage#configureTableViewer(org.eclipse.jface.viewers.TableViewer)</TD></TR><TR><TD CLASS="l"><A NAME="3">55</A></TD><TD>         */</TD></TR><TR><TD CLASS="l">56</TD><TD>        protected void configureTableViewer(TableViewer viewer) {</TD></TR><TR><TD CLASS="l">57</TD><TD> </TD></TR><TR><TD CLASS="l">58</TD><TD>                // pa_TODO need sorter?</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>                viewer.setLabelProvider(new BasicSearchLabelProvider());</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                this.fContentProvider = new OccurrencesContentProvider();</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                viewer.setContentProvider(this.fContentProvider);</TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>        }</TD></TR><TR><TD CLASS="l">63</TD><TD> </TD></TR><TR><TD CLASS="l">64</TD><TD>        /**</TD></TR><TR><TD CLASS="l"><A NAME="4">65</A></TD><TD>         * @see org.eclipse.search.ui.text.AbstractTextSearchViewPage#configureTreeViewer(org.eclipse.jface.viewers.TreeViewer)</TD></TR><TR><TD CLASS="l">66</TD><TD>         */</TD></TR><TR><TD CLASS="l">67</TD><TD>        protected void configureTreeViewer(TreeViewer viewer) {</TD></TR><TR><TD CLASS="l">68</TD><TD>                // not supported at the moment</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>        }</TD></TR><TR><TD CLASS="l">70</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="5">71</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">72</TD><TD>         * @see org.eclipse.search.ui.text.AbstractTextSearchViewPage#elementsChanged(java.lang.Object[])</TD></TR><TR><TD CLASS="l">73</TD><TD>         */</TD></TR><TR><TD CLASS="l">74</TD><TD>        protected void elementsChanged(Object[] objects) {</TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>                if (this.fContentProvider != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>                        this.fContentProvider.elementsChanged(objects);</TD></TR><TR><TD CLASS="l"><A NAME="6">77</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">78</TD><TD>        }</TD></TR><TR><TD CLASS="l">79</TD><TD> </TD></TR><TR><TD CLASS="l">80</TD><TD>        public void forceRefresh() {</TD></TR><TR CLASS="z"><TD CLASS="l">81</TD><TD>                this.fContentProvider.refresh();</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="7">82</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">83</TD><TD> </TD></TR><TR><TD CLASS="l">84</TD><TD>        private IWorkbenchPage getActivePage() {</TD></TR><TR><TD CLASS="l">85</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                IWorkbench workbench = PlatformUI.getWorkbench();</TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>                IWorkbenchWindow window = workbench.getActiveWorkbenchWindow();</TD></TR><TR CLASS="z"><TD CLASS="l">88</TD><TD>                if (window == null)</TD></TR><TR CLASS="z"><TD CLASS="l">89</TD><TD>                        return null;</TD></TR><TR CLASS="z"><TD CLASS="l">90</TD><TD>                return workbench.getActiveWorkbenchWindow().getActivePage();</TD></TR><TR><TD CLASS="l">91</TD><TD>        }</TD></TR><TR><TD CLASS="l">92</TD><TD> </TD></TR><TR><TD CLASS="l">93</TD><TD>        /**</TD></TR><TR><TD CLASS="l">94</TD><TD>         * @see org.eclipse.search.ui.text.AbstractTextSearchViewPage#getDisplayedMatches(java.lang.Object)</TD></TR><TR><TD CLASS="l">95</TD><TD>         */</TD></TR><TR><TD CLASS="l"><A NAME="8">96</A></TD><TD>        public Match[] getDisplayedMatches(Object element) {</TD></TR><TR><TD CLASS="l">97</TD><TD>                // https://w3.opensource.ibm.com/bugzilla/show_bug.cgi?id=2640</TD></TR><TR><TD CLASS="l">98</TD><TD>                // we only ever show one at a time, the element passed in is the match</TD></TR><TR><TD CLASS="l">99</TD><TD>                // super was returning null</TD></TR><TR CLASS="z"><TD CLASS="l">100</TD><TD>                return new Match[]{(Match) element};</TD></TR><TR><TD CLASS="l"><A NAME="9">101</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">102</TD><TD> </TD></TR><TR><TD CLASS="l">103</TD><TD>        private void show(IMarker marker) {</TD></TR><TR><TD CLASS="l">104</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">105</TD><TD>                IResource resource = marker.getResource();</TD></TR><TR CLASS="z"><TD CLASS="l">106</TD><TD>                if (resource == null || !resource.exists())</TD></TR><TR CLASS="z"><TD CLASS="l">107</TD><TD>                        return;</TD></TR><TR><TD CLASS="l">108</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">109</TD><TD>                IWorkbenchPage activePage = getActivePage();</TD></TR><TR><TD CLASS="l">110</TD><TD>                try {</TD></TR><TR CLASS="z"><TD CLASS="l">111</TD><TD>                        if (activePage != null) {</TD></TR><TR><TD CLASS="l">112</TD><TD> </TD></TR><TR><TD CLASS="l">113</TD><TD>                                // open editor if needed</TD></TR><TR CLASS="z"><TD CLASS="l">114</TD><TD>                                IDE.openEditor(getActivePage(), marker);</TD></TR><TR><TD CLASS="l">115</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">116</TD><TD>                                IEditorPart editor = activePage.getActiveEditor();</TD></TR><TR CLASS="z"><TD CLASS="l">117</TD><TD>                                if (editor != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">118</TD><TD>                                        IGotoMarker gotoMarker = (IGotoMarker) editor.getAdapter(IGotoMarker.class);</TD></TR><TR CLASS="z"><TD CLASS="l">119</TD><TD>                                        if (gotoMarker != null)</TD></TR><TR CLASS="z"><TD CLASS="l">120</TD><TD>                                                gotoMarker.gotoMarker(marker);</TD></TR><TR><TD CLASS="l">121</TD><TD>                                }</TD></TR><TR><TD CLASS="l">122</TD><TD> </TD></TR><TR><TD CLASS="l">123</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">124</TD><TD>                } catch (PartInitException e) {</TD></TR><TR><TD CLASS="l">125</TD><TD>                        // possible exception trying to open editor</TD></TR><TR CLASS="z"><TD CLASS="l">126</TD><TD>                        Logger.logException(e);</TD></TR><TR><TD CLASS="l">127</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">128</TD><TD>        }</TD></TR><TR><TD CLASS="l">129</TD><TD> </TD></TR><TR><TD CLASS="l">130</TD><TD>        /**</TD></TR><TR><TD CLASS="l"><A NAME="a">131</A></TD><TD>         * @see org.eclipse.search.ui.text.AbstractTextSearchViewPage#showMatch(org.eclipse.search.ui.text.Match,</TD></TR><TR><TD CLASS="l">132</TD><TD>         *      int, int)</TD></TR><TR><TD CLASS="l">133</TD><TD>         */</TD></TR><TR><TD CLASS="l">134</TD><TD>        protected void showMatch(Match match, int currentOffset, int currentLength) throws PartInitException {</TD></TR><TR CLASS="z"><TD CLASS="l">135</TD><TD>                Object o = match.getElement();</TD></TR><TR CLASS="z"><TD CLASS="l">136</TD><TD>                if (o instanceof IMarker) {</TD></TR><TR CLASS="z"><TD CLASS="l">137</TD><TD>                        show((IMarker) o);</TD></TR><TR><TD CLASS="l">138</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">139</TD><TD>        }</TD></TR><TR><TD CLASS="l">140</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="1a.html">org.eclipse.wst.sse.ui.internal.search</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/13f.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/13f.html
deleted file mode 100644
index 0ef83c6..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/13f.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="1b.html">org.eclipse.wst.sse.ui.internal.selection</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">SelectionHistory.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>SelectionHistory.java</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/195)</TD><TD CLASS="h">0%   (0/54)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">SelectionHistory</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/181)</TD><TD CLASS="h">0%   (0/50)</TD></TR><TR><TD CLASS="f"><A HREF="#0">SelectionHistory (ITextEditor): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/26)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">dispose (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/30)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR><TD CLASS="f"><A HREF="#3">flush (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">getLast (): IRegion</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/21)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#5">ignoreSelectionChanges (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">isEmpty (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#7">listenToSelectionChanges (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">remember (IRegion): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#9">setHistoryAction (IAction): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/35)</TD><TD CLASS="h">0%   (0/9)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">updateHistoryAction (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/32)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#b">SelectionHistory$1</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/14)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#b">SelectionHistory$1 (SelectionHistory): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#d">selectionChanged (SelectionChangedEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/3)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR CLASS="z"><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2005 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.selection;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.util.ArrayList;</TD></TR><TR><TD CLASS="l">16</TD><TD>import java.util.Iterator;</TD></TR><TR><TD CLASS="l">17</TD><TD>import java.util.List;</TD></TR><TR><TD CLASS="l">18</TD><TD> </TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.jface.action.IAction;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.jface.text.IRegion;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.jface.util.Assert;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.jface.viewers.ISelectionChangedListener;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.jface.viewers.SelectionChangedEvent;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.ui.texteditor.ITextEditor;</TD></TR><TR><TD CLASS="l">25</TD><TD> </TD></TR><TR><TD CLASS="l">26</TD><TD>public class SelectionHistory {</TD></TR><TR><TD CLASS="l">27</TD><TD>        private ITextEditor fEditor;</TD></TR><TR><TD CLASS="l">28</TD><TD>        private List fHistory;</TD></TR><TR><TD CLASS="l"><A NAME="0">29</A></TD><TD>        private List fHistoryActions;</TD></TR><TR><TD CLASS="l">30</TD><TD>        private int fSelectionChangeListenerCounter;</TD></TR><TR><TD CLASS="l">31</TD><TD>        private ISelectionChangedListener fSelectionListener;</TD></TR><TR><TD CLASS="l">32</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="b">33</A></TD><TD>        public SelectionHistory(ITextEditor editor) {</TD></TR><TR CLASS="z"><TD CLASS="l">34</TD><TD>                Assert.isNotNull(editor);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="d">35</A></TD><TD>                fEditor = editor;</TD></TR><TR CLASS="z"><TD CLASS="l">36</TD><TD>                fHistory = new ArrayList(3);</TD></TR><TR CLASS="z"><TD CLASS="l">37</TD><TD>                fSelectionListener = new ISelectionChangedListener() {</TD></TR><TR><TD CLASS="l">38</TD><TD>                        public void selectionChanged(SelectionChangedEvent event) {</TD></TR><TR CLASS="z"><TD CLASS="l">39</TD><TD>                                if (fSelectionChangeListenerCounter == 0)</TD></TR><TR CLASS="z"><TD CLASS="l">40</TD><TD>                                        flush();</TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>                        }</TD></TR><TR><TD CLASS="l">42</TD><TD>                };</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">43</A></TD><TD>                fEditor.getSelectionProvider().addSelectionChangedListener(fSelectionListener);</TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>        }</TD></TR><TR><TD CLASS="l">45</TD><TD> </TD></TR><TR><TD CLASS="l">46</TD><TD>        public void dispose() {</TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>                fEditor.getSelectionProvider().removeSelectionChangedListener(fSelectionListener);</TD></TR><TR CLASS="z"><TD CLASS="l">48</TD><TD>                fEditor = null;</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>                if (fHistory != null &amp;&amp; !fHistory.isEmpty()) {</TD></TR><TR CLASS="z"><TD CLASS="l">50</TD><TD>                        fHistory.clear();</TD></TR><TR><TD CLASS="l">51</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                if (fHistoryActions != null &amp;&amp; !fHistoryActions.isEmpty()) {</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>                        fHistoryActions.clear();</TD></TR><TR><TD CLASS="l"><A NAME="3">54</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>        }</TD></TR><TR><TD CLASS="l">56</TD><TD> </TD></TR><TR><TD CLASS="l">57</TD><TD>        public void flush() {</TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>                if (fHistory.isEmpty())</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>                        return;</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                fHistory.clear();</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">61</A></TD><TD>                updateHistoryAction();</TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>        }</TD></TR><TR><TD CLASS="l">63</TD><TD> </TD></TR><TR><TD CLASS="l">64</TD><TD>        public IRegion getLast() {</TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>                if (isEmpty())</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                        return null;</TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>                int size = fHistory.size();</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>                IRegion result = (IRegion) fHistory.remove(size - 1);</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                updateHistoryAction();</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="5">70</A></TD><TD>                return result;</TD></TR><TR><TD CLASS="l">71</TD><TD>        }</TD></TR><TR><TD CLASS="l">72</TD><TD> </TD></TR><TR><TD CLASS="l">73</TD><TD>        public void ignoreSelectionChanges() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="6">74</A></TD><TD>                fSelectionChangeListenerCounter++;</TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>        }</TD></TR><TR><TD CLASS="l">76</TD><TD> </TD></TR><TR><TD CLASS="l">77</TD><TD>        public boolean isEmpty() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="7">78</A></TD><TD>                return fHistory.isEmpty();</TD></TR><TR><TD CLASS="l">79</TD><TD>        }</TD></TR><TR><TD CLASS="l">80</TD><TD> </TD></TR><TR><TD CLASS="l">81</TD><TD>        public void listenToSelectionChanges() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="8">82</A></TD><TD>                fSelectionChangeListenerCounter--;</TD></TR><TR CLASS="z"><TD CLASS="l">83</TD><TD>        }</TD></TR><TR><TD CLASS="l">84</TD><TD> </TD></TR><TR><TD CLASS="l">85</TD><TD>        public void remember(IRegion region) {</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                fHistory.add(region);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="9">87</A></TD><TD>                updateHistoryAction();</TD></TR><TR CLASS="z"><TD CLASS="l">88</TD><TD>        }</TD></TR><TR><TD CLASS="l">89</TD><TD> </TD></TR><TR><TD CLASS="l">90</TD><TD>        public void setHistoryAction(IAction action) {</TD></TR><TR CLASS="z"><TD CLASS="l">91</TD><TD>                Assert.isNotNull(action);</TD></TR><TR><TD CLASS="l">92</TD><TD>                </TD></TR><TR CLASS="z"><TD CLASS="l">93</TD><TD>                if (fHistoryActions == null)</TD></TR><TR CLASS="z"><TD CLASS="l">94</TD><TD>                        fHistoryActions = new ArrayList();</TD></TR><TR CLASS="z"><TD CLASS="l">95</TD><TD>                if (!fHistoryActions.contains(action))</TD></TR><TR CLASS="z"><TD CLASS="l">96</TD><TD>                        fHistoryActions.add(action);</TD></TR><TR><TD CLASS="l">97</TD><TD>                </TD></TR><TR><TD CLASS="l">98</TD><TD>                // update action</TD></TR><TR CLASS="z"><TD CLASS="l">99</TD><TD>                if (fHistory != null &amp;&amp; !fHistory.isEmpty())</TD></TR><TR CLASS="z"><TD CLASS="l">100</TD><TD>                        action.setEnabled(true);</TD></TR><TR><TD CLASS="l">101</TD><TD>                else</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="a">102</A></TD><TD>                        action.setEnabled(false);</TD></TR><TR CLASS="z"><TD CLASS="l">103</TD><TD>        }</TD></TR><TR><TD CLASS="l">104</TD><TD> </TD></TR><TR><TD CLASS="l">105</TD><TD>        private void updateHistoryAction() {</TD></TR><TR CLASS="z"><TD CLASS="l">106</TD><TD>                if (fHistoryActions != null &amp;&amp; !fHistoryActions.isEmpty()) {</TD></TR><TR CLASS="z"><TD CLASS="l">107</TD><TD>                        boolean enabled = false;</TD></TR><TR CLASS="z"><TD CLASS="l">108</TD><TD>                        if (fHistory != null &amp;&amp; !fHistory.isEmpty())</TD></TR><TR CLASS="z"><TD CLASS="l">109</TD><TD>                                enabled = true;</TD></TR><TR><TD CLASS="l">110</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">111</TD><TD>                        Iterator iter = fHistoryActions.iterator();</TD></TR><TR CLASS="z"><TD CLASS="l">112</TD><TD>                        while (iter.hasNext()) {</TD></TR><TR CLASS="z"><TD CLASS="l">113</TD><TD>                                ((IAction)iter.next()).setEnabled(enabled);</TD></TR><TR><TD CLASS="l">114</TD><TD>                        }</TD></TR><TR><TD CLASS="l">115</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">116</TD><TD>        }</TD></TR><TR><TD CLASS="l">117</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="1b.html">org.eclipse.wst.sse.ui.internal.selection</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/14.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/14.html
deleted file mode 100644
index 5d47202..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/14.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR PACKAGE [<SPAN CLASS="in">org.eclipse.wst.sse.ui.internal.hyperlink</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>org.eclipse.wst.sse.ui.internal.hyperlink</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/29)</TD><TD CLASS="h">0%   (0/908)</TD><TD CLASS="h">0%   (0/237)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY SOURCE FILE</H3><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR CLASS="o"><TD><A HREF="125.html">HighlighterHyperlinkPresenter.java</A></TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/24)</TD><TD CLASS="h">0%   (0/763)</TD><TD CLASS="h">0%   (0/205)</TD></TR><TR><TD><A HREF="126.html">OpenHyperlinkAction.java</A></TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/145)</TD><TD CLASS="h">0%   (0/32)</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/140.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/140.html
deleted file mode 100644
index 093366c..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/140.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="1b.html">org.eclipse.wst.sse.ui.internal.selection</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">StructureSelectAction.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>StructureSelectAction.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/220)</TD><TD CLASS="h">0%   (0/47)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">StructureSelectAction</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/220)</TD><TD CLASS="h">0%   (0/47)</TD></TR><TR><TD CLASS="f"><A HREF="#0">StructureSelectAction (StructuredTextEditor): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/48)</TD><TD CLASS="h">0%   (0/11)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">getIndexedRegion (int): IndexedRegion</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/44)</TD><TD CLASS="h">0%   (0/13)</TD></TR><TR><TD CLASS="f"><A HREF="#3">run (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/128)</TD><TD CLASS="h">0%   (0/23)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.selection;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.jface.action.Action;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.jface.text.IDocument;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.jface.text.Region;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.jface.util.Assert;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.wst.sse.core.StructuredModelManager;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.wst.sse.ui.StructuredTextEditor;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.wst.sse.ui.internal.StructuredTextViewer;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.w3c.dom.Node;</TD></TR><TR><TD CLASS="l">25</TD><TD> </TD></TR><TR><TD CLASS="l">26</TD><TD>/**</TD></TR><TR><TD CLASS="l">27</TD><TD> * @deprecated use StructuredSelectActionDelegate instead</TD></TR><TR><TD CLASS="l">28</TD><TD> */</TD></TR><TR><TD CLASS="l">29</TD><TD> </TD></TR><TR><TD CLASS="l">30</TD><TD>public abstract class StructureSelectAction extends Action {</TD></TR><TR CLASS="z"><TD CLASS="l">31</TD><TD>        protected StructuredTextEditor fEditor = null;</TD></TR><TR><TD CLASS="l">32</TD><TD>        protected SelectionHistory fHistory;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="0">33</A></TD><TD>        protected IStructuredModel fModel = null;</TD></TR><TR CLASS="z"><TD CLASS="l">34</TD><TD>        protected StructuredTextViewer fViewer = null;</TD></TR><TR><TD CLASS="l">35</TD><TD> </TD></TR><TR><TD CLASS="l">36</TD><TD>        public StructureSelectAction(StructuredTextEditor editor) {</TD></TR><TR CLASS="z"><TD CLASS="l">37</TD><TD>                super();</TD></TR><TR><TD CLASS="l">38</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">39</TD><TD>                Assert.isNotNull(editor);</TD></TR><TR CLASS="z"><TD CLASS="l">40</TD><TD>                fEditor = editor;</TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>                fHistory = (SelectionHistory) editor.getAdapter(SelectionHistory.class);</TD></TR><TR CLASS="z"><TD CLASS="l">42</TD><TD>                fViewer = editor.getTextViewer();</TD></TR><TR CLASS="z"><TD CLASS="l">43</TD><TD>                fModel = editor.getModel();</TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>                Assert.isNotNull(fViewer);</TD></TR><TR CLASS="z"><TD CLASS="l">45</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="2">46</A></TD><TD> </TD></TR><TR><TD CLASS="l">47</TD><TD>        abstract protected IndexedRegion getCursorIndexedRegion();</TD></TR><TR><TD CLASS="l">48</TD><TD> </TD></TR><TR><TD CLASS="l">49</TD><TD>        protected IndexedRegion getIndexedRegion(int offset) {</TD></TR><TR CLASS="z"><TD CLASS="l">50</TD><TD>                IndexedRegion indexedRegion = null;</TD></TR><TR><TD CLASS="l">51</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                int lastOffset = offset;</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>                IDocument document = fEditor.getDocumentProvider().getDocument(fEditor.getEditorInput());</TD></TR><TR CLASS="z"><TD CLASS="l">54</TD><TD>                IStructuredModel model = StructuredModelManager.getModelManager().getExistingModelForRead(document);</TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                if (model != null) {</TD></TR><TR><TD CLASS="l">56</TD><TD>                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>                                indexedRegion = model.getIndexedRegion(lastOffset);</TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>                                while (indexedRegion == null &amp;&amp; lastOffset &gt;= 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>                                        lastOffset--;</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                                        indexedRegion = model.getIndexedRegion(lastOffset);</TD></TR><TR><TD CLASS="l">61</TD><TD>                                }</TD></TR><TR><TD CLASS="l">62</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>                        finally {</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                                model.releaseFromRead();</TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>                        }</TD></TR><TR><TD CLASS="l">66</TD><TD>                }</TD></TR><TR><TD CLASS="l">67</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>                return indexedRegion;</TD></TR><TR><TD CLASS="l">69</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="3">70</A></TD><TD> </TD></TR><TR><TD CLASS="l">71</TD><TD>        abstract protected Region getNewSelectionRegion(Node node, Region region);</TD></TR><TR><TD CLASS="l">72</TD><TD> </TD></TR><TR><TD CLASS="l">73</TD><TD>        public void run() {</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>                Region currentRegion = new Region(fViewer.getSelectedRange().x, fViewer.getSelectedRange().y);</TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>                if (currentRegion.getLength() == fViewer.getDocument().getLength())</TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>                        return;</TD></TR><TR><TD CLASS="l">77</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">78</TD><TD>                IndexedRegion cursorIndexedRegion = getCursorIndexedRegion();</TD></TR><TR CLASS="z"><TD CLASS="l">79</TD><TD>                if (cursorIndexedRegion instanceof Node) {</TD></TR><TR CLASS="z"><TD CLASS="l">80</TD><TD>                        Node cursorNode = (Node) cursorIndexedRegion;</TD></TR><TR><TD CLASS="l">81</TD><TD> </TD></TR><TR><TD CLASS="l">82</TD><TD>                        // use parent node for empty text node</TD></TR><TR CLASS="z"><TD CLASS="l">83</TD><TD>                        if (cursorNode.getNodeType() == Node.TEXT_NODE &amp;&amp; cursorNode.getNodeValue().trim().length() == 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">84</TD><TD>                                cursorNode = cursorNode.getParentNode();</TD></TR><TR><TD CLASS="l">85</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                                if (cursorNode instanceof IndexedRegion)</TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>                                        cursorIndexedRegion = (IndexedRegion) cursorNode;</TD></TR><TR><TD CLASS="l">88</TD><TD>                        }</TD></TR><TR><TD CLASS="l">89</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">90</TD><TD>                        Region cursorNodeRegion = new Region(cursorIndexedRegion.getStartOffset(), cursorIndexedRegion.getEndOffset() - cursorIndexedRegion.getStartOffset());</TD></TR><TR><TD CLASS="l">91</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">92</TD><TD>                        Region newRegion = null;</TD></TR><TR CLASS="z"><TD CLASS="l">93</TD><TD>                        if (cursorNodeRegion.getOffset() &gt;= currentRegion.getOffset() &amp;&amp; cursorNodeRegion.getOffset() &lt;= currentRegion.getOffset() + currentRegion.getLength() &amp;&amp; cursorNodeRegion.getOffset() + cursorNodeRegion.getLength() &gt;= currentRegion.getOffset() &amp;&amp; cursorNodeRegion.getOffset() + cursorNodeRegion.getLength() &lt;= currentRegion.getOffset() + currentRegion.getLength())</TD></TR><TR CLASS="z"><TD CLASS="l">94</TD><TD>                                newRegion = getNewSelectionRegion(cursorNode, currentRegion);</TD></TR><TR><TD CLASS="l">95</TD><TD>                        else</TD></TR><TR CLASS="z"><TD CLASS="l">96</TD><TD>                                newRegion = cursorNodeRegion;</TD></TR><TR><TD CLASS="l">97</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">98</TD><TD>                        if (newRegion != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">99</TD><TD>                                fHistory.remember(currentRegion);</TD></TR><TR><TD CLASS="l">100</TD><TD>                                try {</TD></TR><TR CLASS="z"><TD CLASS="l">101</TD><TD>                                        fHistory.ignoreSelectionChanges();</TD></TR><TR CLASS="z"><TD CLASS="l">102</TD><TD>                                        fEditor.selectAndReveal(newRegion.getOffset(), newRegion.getLength());</TD></TR><TR><TD CLASS="l">103</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">104</TD><TD>                                finally {</TD></TR><TR CLASS="z"><TD CLASS="l">105</TD><TD>                                        fHistory.listenToSelectionChanges();</TD></TR><TR CLASS="z"><TD CLASS="l">106</TD><TD>                                }</TD></TR><TR><TD CLASS="l">107</TD><TD>                        }</TD></TR><TR><TD CLASS="l">108</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">109</TD><TD>        }</TD></TR><TR><TD CLASS="l">110</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="1b.html">org.eclipse.wst.sse.ui.internal.selection</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/141.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/141.html
deleted file mode 100644
index bff2104..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/141.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="1b.html">org.eclipse.wst.sse.ui.internal.selection</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">StructureSelectHistoryAction.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>StructureSelectHistoryAction.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/57)</TD><TD CLASS="h">0%   (0/18)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">StructureSelectHistoryAction</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/57)</TD><TD CLASS="h">0%   (0/18)</TD></TR><TR><TD CLASS="f"><A HREF="#0">StructureSelectHistoryAction (StructuredTextEditor): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">getCursorIndexedRegion (): IndexedRegion</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#3">getNewSelectionRegion (Node, Region): Region</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">run (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/28)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR><TD CLASS="f"><A HREF="#5">update (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/2)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2005 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.selection;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.jface.text.IRegion;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.jface.text.Region;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.ui.texteditor.IUpdate;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.wst.sse.ui.StructuredTextEditor;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.wst.sse.ui.internal.SSEUIMessages;</TD></TR><TR><TD CLASS="l"><A NAME="0">21</A></TD><TD>import org.w3c.dom.Node;</TD></TR><TR><TD CLASS="l">22</TD><TD> </TD></TR><TR><TD CLASS="l">23</TD><TD>public class StructureSelectHistoryAction extends StructureSelectAction implements IUpdate {</TD></TR><TR><TD CLASS="l">24</TD><TD>        public StructureSelectHistoryAction(StructuredTextEditor editor) {</TD></TR><TR CLASS="z"><TD CLASS="l">25</TD><TD>                super(editor);</TD></TR><TR CLASS="z"><TD CLASS="l">26</TD><TD>                setText(SSEUIMessages.StructureSelectHistory_label); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">27</TD><TD>                setToolTipText(SSEUIMessages.StructureSelectHistory_tooltip); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">28</TD><TD>                setDescription(SSEUIMessages.StructureSelectHistory_description); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">29</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">30</A></TD><TD>                update();</TD></TR><TR CLASS="z"><TD CLASS="l">31</TD><TD>        }</TD></TR><TR><TD CLASS="l">32</TD><TD> </TD></TR><TR><TD CLASS="l">33</TD><TD>        protected IndexedRegion getCursorIndexedRegion() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">34</A></TD><TD>                return null;</TD></TR><TR><TD CLASS="l">35</TD><TD>        }</TD></TR><TR><TD CLASS="l">36</TD><TD> </TD></TR><TR><TD CLASS="l">37</TD><TD>        protected Region getNewSelectionRegion(Node node, Region region) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">38</A></TD><TD>                return null;</TD></TR><TR><TD CLASS="l">39</TD><TD>        }</TD></TR><TR><TD CLASS="l">40</TD><TD> </TD></TR><TR><TD CLASS="l">41</TD><TD>        public void run() {</TD></TR><TR CLASS="z"><TD CLASS="l">42</TD><TD>                IRegion old = fHistory.getLast();</TD></TR><TR CLASS="z"><TD CLASS="l">43</TD><TD>                if (old != null) {</TD></TR><TR><TD CLASS="l">44</TD><TD>                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">45</TD><TD>                                fHistory.ignoreSelectionChanges();</TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>                                fEditor.selectAndReveal(old.getOffset(), old.getLength());</TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>                        } finally {</TD></TR><TR CLASS="z"><TD CLASS="l">48</TD><TD>                                fHistory.listenToSelectionChanges();</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>                        }</TD></TR><TR><TD CLASS="l"><A NAME="5">50</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>        }</TD></TR><TR><TD CLASS="l">52</TD><TD> </TD></TR><TR><TD CLASS="l">53</TD><TD>        public void update() {</TD></TR><TR CLASS="z"><TD CLASS="l">54</TD><TD>                setEnabled(!fHistory.isEmpty());</TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>        }</TD></TR><TR><TD CLASS="l">56</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="1b.html">org.eclipse.wst.sse.ui.internal.selection</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/142.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/142.html
deleted file mode 100644
index 2258dac..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/142.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="1b.html">org.eclipse.wst.sse.ui.internal.selection</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">StructuredSelectActionDelegate.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>StructuredSelectActionDelegate.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/158)</TD><TD CLASS="h">0%   (0/42)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">StructuredSelectActionDelegate</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/158)</TD><TD CLASS="h">0%   (0/42)</TD></TR><TR><TD CLASS="f"><A HREF="#0">StructuredSelectActionDelegate (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">dispose (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#3">getIndexedRegion (IDocument, int): IndexedRegion</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/36)</TD><TD CLASS="h">0%   (0/12)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">init (IViewPart): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#5">run (IAction): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/74)</TD><TD CLASS="h">0%   (0/17)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">runWithEvent (IAction, Event): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#7">selectionChanged (IAction, ISelection): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">setActiveEditor (IAction, IEditorPart): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/32)</TD><TD CLASS="h">0%   (0/5)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2005, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     </TD></TR><TR><TD CLASS="l">11</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">12</TD><TD> </TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.selection;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.jface.action.IAction;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.jface.text.IDocument;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.jface.text.ITextSelection;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.jface.text.Region;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.jface.viewers.ISelection;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.swt.widgets.Event;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.ui.IActionDelegate2;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.ui.IEditorActionDelegate;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.ui.IEditorPart;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.ui.IViewActionDelegate;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.ui.IViewPart;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.ui.texteditor.ITextEditor;</TD></TR><TR><TD CLASS="l"><A NAME="0">27</A></TD><TD>import org.eclipse.wst.sse.core.StructuredModelManager;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;</TD></TR><TR><TD CLASS="l">30</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">31</TD><TD>abstract public class StructuredSelectActionDelegate implements IEditorActionDelegate, IActionDelegate2, IViewActionDelegate {</TD></TR><TR><TD CLASS="l"><A NAME="2">32</A></TD><TD>        private IEditorPart fEditor;</TD></TR><TR><TD CLASS="l">33</TD><TD>        private SelectionHistory fHistory;</TD></TR><TR><TD CLASS="l">34</TD><TD> </TD></TR><TR><TD CLASS="l">35</TD><TD>        public void dispose() {</TD></TR><TR CLASS="z"><TD CLASS="l">36</TD><TD>                fEditor = null;</TD></TR><TR CLASS="z"><TD CLASS="l">37</TD><TD>                fHistory = null;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">38</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">39</TD><TD> </TD></TR><TR><TD CLASS="l">40</TD><TD>        public void init(IViewPart view) {</TD></TR><TR><TD CLASS="l"><A NAME="6">41</A></TD><TD>                // do nothing</TD></TR><TR CLASS="z"><TD CLASS="l">42</TD><TD>        }</TD></TR><TR><TD CLASS="l">43</TD><TD> </TD></TR><TR><TD CLASS="l">44</TD><TD>        public void runWithEvent(IAction action, Event event) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="5">45</A></TD><TD>                run(action);</TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>        }</TD></TR><TR><TD CLASS="l">47</TD><TD> </TD></TR><TR><TD CLASS="l">48</TD><TD>        public void run(IAction action) {</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>                if (fEditor instanceof ITextEditor) {</TD></TR><TR CLASS="z"><TD CLASS="l">50</TD><TD>                        ITextEditor textEditor = (ITextEditor) fEditor;</TD></TR><TR><TD CLASS="l">51</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                        ISelection selection = textEditor.getSelectionProvider().getSelection();</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>                        IDocument document = textEditor.getDocumentProvider().getDocument(textEditor.getEditorInput());</TD></TR><TR><TD CLASS="l">54</TD><TD>                        // determine current text selection</TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                        if (selection instanceof ITextSelection &amp;&amp; document != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>                                ITextSelection textSelection = (ITextSelection) selection;</TD></TR><TR><TD CLASS="l">57</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>                                if (textSelection.getLength() &lt; document.getLength()) {</TD></TR><TR><TD CLASS="l">59</TD><TD>                                        // get current indexed region</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                                        IndexedRegion cursorIndexedRegion = getCursorIndexedRegion(document, textSelection);</TD></TR><TR><TD CLASS="l">61</TD><TD> </TD></TR><TR><TD CLASS="l">62</TD><TD>                                        // determine new selection based on current indexed region</TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>                                        Region newSelectionRegion = getNewSelectionRegion(cursorIndexedRegion, textSelection);</TD></TR><TR><TD CLASS="l">64</TD><TD> </TD></TR><TR><TD CLASS="l">65</TD><TD>                                        // select new selection</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                                        if (newSelectionRegion != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>                                                fHistory.remember(new Region(textSelection.getOffset(), textSelection.getLength()));</TD></TR><TR><TD CLASS="l">68</TD><TD>                                                try {</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                                                        fHistory.ignoreSelectionChanges();</TD></TR><TR CLASS="z"><TD CLASS="l">70</TD><TD>                                                        textEditor.selectAndReveal(newSelectionRegion.getOffset(), newSelectionRegion.getLength());</TD></TR><TR><TD CLASS="l">71</TD><TD>                                                }</TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>                                                finally {</TD></TR><TR CLASS="z"><TD CLASS="l">73</TD><TD>                                                        fHistory.listenToSelectionChanges();</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">75</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">76</TD><TD>                                }</TD></TR><TR><TD CLASS="l">77</TD><TD>                        }</TD></TR><TR><TD CLASS="l">78</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="7">79</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">80</TD><TD> </TD></TR><TR><TD CLASS="l">81</TD><TD>        public void selectionChanged(IAction action, ISelection selection) {</TD></TR><TR><TD CLASS="l"><A NAME="8">82</A></TD><TD>                // do nothing</TD></TR><TR CLASS="z"><TD CLASS="l">83</TD><TD>        }</TD></TR><TR><TD CLASS="l">84</TD><TD> </TD></TR><TR><TD CLASS="l">85</TD><TD>        public void setActiveEditor(IAction action, IEditorPart targetEditor) {</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                fEditor = targetEditor;</TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>                if (fEditor != null)</TD></TR><TR CLASS="z"><TD CLASS="l">88</TD><TD>                        fHistory = (SelectionHistory) fEditor.getAdapter(SelectionHistory.class);</TD></TR><TR><TD CLASS="l">89</TD><TD>                else</TD></TR><TR CLASS="z"><TD CLASS="l">90</TD><TD>                        fHistory = null;</TD></TR><TR CLASS="z"><TD CLASS="l">91</TD><TD>        }</TD></TR><TR><TD CLASS="l">92</TD><TD>        </TD></TR><TR><TD CLASS="l">93</TD><TD>        abstract protected IndexedRegion getCursorIndexedRegion(IDocument document, ITextSelection textSelection);</TD></TR><TR><TD CLASS="l">94</TD><TD>        </TD></TR><TR><TD CLASS="l">95</TD><TD>        abstract protected Region getNewSelectionRegion(IndexedRegion indexedRegion, ITextSelection textSelection);</TD></TR><TR><TD CLASS="l">96</TD><TD>        </TD></TR><TR><TD CLASS="l">97</TD><TD>        /**</TD></TR><TR><TD CLASS="l">98</TD><TD>         * This method will probably be removed and replaced by using new selection provider</TD></TR><TR><TD CLASS="l">99</TD><TD>         * @param document</TD></TR><TR><TD CLASS="l"><A NAME="3">100</A></TD><TD>         * @param offset</TD></TR><TR><TD CLASS="l">101</TD><TD>         * @return</TD></TR><TR><TD CLASS="l">102</TD><TD>         */</TD></TR><TR><TD CLASS="l">103</TD><TD>        protected IndexedRegion getIndexedRegion(IDocument document, int offset) {</TD></TR><TR CLASS="z"><TD CLASS="l">104</TD><TD>                IndexedRegion indexedRegion = null;</TD></TR><TR><TD CLASS="l">105</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">106</TD><TD>                int lastOffset = offset;</TD></TR><TR CLASS="z"><TD CLASS="l">107</TD><TD>                IStructuredModel model = StructuredModelManager.getModelManager().getExistingModelForRead(document);</TD></TR><TR CLASS="z"><TD CLASS="l">108</TD><TD>                if (model != null) {</TD></TR><TR><TD CLASS="l">109</TD><TD>                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">110</TD><TD>                                indexedRegion = model.getIndexedRegion(lastOffset);</TD></TR><TR CLASS="z"><TD CLASS="l">111</TD><TD>                                while (indexedRegion == null &amp;&amp; lastOffset &gt;= 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">112</TD><TD>                                        lastOffset--;</TD></TR><TR CLASS="z"><TD CLASS="l">113</TD><TD>                                        indexedRegion = model.getIndexedRegion(lastOffset);</TD></TR><TR><TD CLASS="l">114</TD><TD>                                }</TD></TR><TR><TD CLASS="l">115</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">116</TD><TD>                        finally {</TD></TR><TR CLASS="z"><TD CLASS="l">117</TD><TD>                                model.releaseFromRead();</TD></TR><TR CLASS="z"><TD CLASS="l">118</TD><TD>                        }</TD></TR><TR><TD CLASS="l">119</TD><TD>                }</TD></TR><TR><TD CLASS="l">120</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">121</TD><TD>                return indexedRegion;</TD></TR><TR><TD CLASS="l">122</TD><TD>        }</TD></TR><TR><TD CLASS="l">123</TD><TD> </TD></TR><TR><TD CLASS="l">124</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="1b.html">org.eclipse.wst.sse.ui.internal.selection</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/143.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/143.html
deleted file mode 100644
index add4b69..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/143.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="1b.html">org.eclipse.wst.sse.ui.internal.selection</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">StructuredSelectHistoryActionDelegate.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>StructuredSelectHistoryActionDelegate.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/100)</TD><TD CLASS="h">0%   (0/29)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">StructuredSelectHistoryActionDelegate</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/100)</TD><TD CLASS="h">0%   (0/29)</TD></TR><TR><TD CLASS="f"><A HREF="#0">StructuredSelectHistoryActionDelegate (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">dispose (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#3">init (IAction): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">init (IViewPart): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#5">run (IAction): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/33)</TD><TD CLASS="h">0%   (0/9)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">runWithEvent (IAction, Event): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#7">selectionChanged (IAction, ISelection): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">setActiveEditor (IAction, IEditorPart): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/39)</TD><TD CLASS="h">0%   (0/7)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2005 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     </TD></TR><TR><TD CLASS="l">11</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">12</TD><TD> </TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.selection;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.jface.action.IAction;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.jface.text.IRegion;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.jface.viewers.ISelection;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.swt.widgets.Event;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.ui.IActionDelegate2;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.ui.IEditorActionDelegate;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.ui.IEditorPart;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.ui.IViewActionDelegate;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.ui.IViewPart;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.ui.texteditor.ITextEditor;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.wst.sse.ui.internal.SSEUIMessages;</TD></TR><TR><TD CLASS="l"><A NAME="0">26</A></TD><TD> </TD></TR><TR><TD CLASS="l">27</TD><TD>/**</TD></TR><TR><TD CLASS="l">28</TD><TD> * Selection history action delegate. Keeps track of selection within editor.</TD></TR><TR><TD CLASS="l">29</TD><TD> */</TD></TR><TR CLASS="z"><TD CLASS="l">30</TD><TD>public class StructuredSelectHistoryActionDelegate implements IEditorActionDelegate, IActionDelegate2, IViewActionDelegate {</TD></TR><TR><TD CLASS="l"><A NAME="2">31</A></TD><TD>        private IEditorPart fEditor;</TD></TR><TR><TD CLASS="l">32</TD><TD>        private SelectionHistory fHistory;</TD></TR><TR><TD CLASS="l">33</TD><TD> </TD></TR><TR><TD CLASS="l">34</TD><TD>        public void dispose() {</TD></TR><TR CLASS="z"><TD CLASS="l">35</TD><TD>                fEditor = null;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">36</A></TD><TD>                fHistory = null;</TD></TR><TR CLASS="z"><TD CLASS="l">37</TD><TD>        }</TD></TR><TR><TD CLASS="l">38</TD><TD> </TD></TR><TR><TD CLASS="l">39</TD><TD>        public void init(IAction action) {</TD></TR><TR CLASS="z"><TD CLASS="l">40</TD><TD>                if (action != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>                        action.setText(SSEUIMessages.StructureSelectHistory_label);</TD></TR><TR CLASS="z"><TD CLASS="l">42</TD><TD>                        action.setToolTipText(SSEUIMessages.StructureSelectHistory_tooltip);</TD></TR><TR CLASS="z"><TD CLASS="l">43</TD><TD>                        action.setDescription(SSEUIMessages.StructureSelectHistory_description);</TD></TR><TR><TD CLASS="l">44</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">45</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">46</TD><TD> </TD></TR><TR><TD CLASS="l">47</TD><TD>        public void init(IViewPart view) {</TD></TR><TR><TD CLASS="l"><A NAME="5">48</A></TD><TD>                // do nothing</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>        }</TD></TR><TR><TD CLASS="l">50</TD><TD> </TD></TR><TR><TD CLASS="l">51</TD><TD>        public void run(IAction action) {</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                IRegion old = fHistory.getLast();</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>                if (old != null) {</TD></TR><TR><TD CLASS="l">54</TD><TD>                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                                fHistory.ignoreSelectionChanges();</TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>                                if (fEditor instanceof ITextEditor)</TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>                                        ((ITextEditor) fEditor).selectAndReveal(old.getOffset(), old.getLength());</TD></TR><TR><TD CLASS="l">58</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>                        finally {</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                                fHistory.listenToSelectionChanges();</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                        }</TD></TR><TR><TD CLASS="l"><A NAME="6">62</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>        }</TD></TR><TR><TD CLASS="l">64</TD><TD> </TD></TR><TR><TD CLASS="l">65</TD><TD>        public void runWithEvent(IAction action, Event event) {</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                run(action);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="7">67</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">68</TD><TD> </TD></TR><TR><TD CLASS="l">69</TD><TD>        public void selectionChanged(IAction action, ISelection selection) {</TD></TR><TR><TD CLASS="l"><A NAME="8">70</A></TD><TD>                // do nothing</TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>        }</TD></TR><TR><TD CLASS="l">72</TD><TD> </TD></TR><TR><TD CLASS="l">73</TD><TD>        public void setActiveEditor(IAction action, IEditorPart targetEditor) {</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>                fEditor = targetEditor;</TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>                if (fEditor != null)</TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>                        fHistory = (SelectionHistory) fEditor.getAdapter(SelectionHistory.class);</TD></TR><TR><TD CLASS="l">77</TD><TD>                else</TD></TR><TR CLASS="z"><TD CLASS="l">78</TD><TD>                        fHistory = null;</TD></TR><TR CLASS="z"><TD CLASS="l">79</TD><TD>                if (fHistory != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">80</TD><TD>                        fHistory.setHistoryAction(action);</TD></TR><TR><TD CLASS="l">81</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>        }</TD></TR><TR><TD CLASS="l">83</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="1b.html">org.eclipse.wst.sse.ui.internal.selection</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/144.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/144.html
deleted file mode 100644
index 0c0b2fe..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/144.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="1c.html">org.eclipse.wst.sse.ui.internal.text</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">DocumentRegionEdgeMatcher.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>DocumentRegionEdgeMatcher.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/259)</TD><TD CLASS="h">0%   (0/53)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">DocumentRegionEdgeMatcher</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/259)</TD><TD CLASS="h">0%   (0/53)</TD></TR><TR><TD CLASS="f"><A HREF="#0">DocumentRegionEdgeMatcher (String [], ICharacterPairMatcher): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">clear (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#3">dispose (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">getAnchor (): int</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#5">match (IDocument, int): IRegion</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/222)</TD><TD CLASS="h">0%   (0/40)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2008 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.text;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.util.Arrays;</TD></TR><TR><TD CLASS="l">16</TD><TD>import java.util.List;</TD></TR><TR><TD CLASS="l">17</TD><TD> </TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.jface.text.BadLocationException;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.jface.text.IDocument;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.jface.text.IRegion;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.jface.text.Region;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.jface.text.source.ICharacterPairMatcher;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;</TD></TR><TR><TD CLASS="l">26</TD><TD> </TD></TR><TR><TD CLASS="l">27</TD><TD> </TD></TR><TR><TD CLASS="l">28</TD><TD>/**</TD></TR><TR><TD CLASS="l">29</TD><TD> * Matches the start and ending characters of IStructuredDocumentRegions with</TD></TR><TR><TD CLASS="l">30</TD><TD> * the given allowed types. Note that Eclipse R3M8 only paints single</TD></TR><TR><TD CLASS="l">31</TD><TD> * character-wide matches and this isn't true pair matching behavior. See RFE</TD></TR><TR><TD CLASS="l">32</TD><TD> * #56836 at https://bugs.eclipse.org/bugs/show_bug.cgi?id=56836.</TD></TR><TR><TD CLASS="l">33</TD><TD> */</TD></TR><TR><TD CLASS="l">34</TD><TD>public class DocumentRegionEdgeMatcher implements ICharacterPairMatcher {</TD></TR><TR><TD CLASS="l">35</TD><TD> </TD></TR><TR><TD CLASS="l">36</TD><TD>        public static final String ID = &#34;characterpairmatcher&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">37</TD><TD> </TD></TR><TR><TD CLASS="l">38</TD><TD>        protected int fAnchor;</TD></TR><TR><TD CLASS="l">39</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="0">40</A></TD><TD>        protected ICharacterPairMatcher fNextMatcher;</TD></TR><TR><TD CLASS="l">41</TD><TD> </TD></TR><TR><TD CLASS="l">42</TD><TD>        protected List fRegionTypes;</TD></TR><TR><TD CLASS="l">43</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>        public DocumentRegionEdgeMatcher(String[] validContexts, ICharacterPairMatcher nextMatcher) {</TD></TR><TR CLASS="z"><TD CLASS="l">45</TD><TD>                fRegionTypes = Arrays.asList(validContexts);</TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>                fNextMatcher = nextMatcher;</TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>        }</TD></TR><TR><TD CLASS="l">48</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="2">49</A></TD><TD>        /*</TD></TR><TR><TD CLASS="l">50</TD><TD>         * @see org.eclipse.jface.text.source.ICharacterPairMatcher#clear()</TD></TR><TR><TD CLASS="l">51</TD><TD>         */</TD></TR><TR><TD CLASS="l">52</TD><TD>        public void clear() {</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>                if (fNextMatcher != null)</TD></TR><TR CLASS="z"><TD CLASS="l">54</TD><TD>                        fNextMatcher.clear();</TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>        }</TD></TR><TR><TD CLASS="l">56</TD><TD> </TD></TR><TR><TD CLASS="l">57</TD><TD>        /*</TD></TR><TR><TD CLASS="l">58</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="3">59</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">60</TD><TD>         * @see org.eclipse.jface.text.source.ICharacterPairMatcher#dispose()</TD></TR><TR><TD CLASS="l">61</TD><TD>         */</TD></TR><TR><TD CLASS="l">62</TD><TD>        public void dispose() {</TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>                if (fNextMatcher != null)</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                        fNextMatcher.dispose();</TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>        }</TD></TR><TR><TD CLASS="l">66</TD><TD> </TD></TR><TR><TD CLASS="l">67</TD><TD>        /*</TD></TR><TR><TD CLASS="l">68</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="4">69</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">70</TD><TD>         * @see org.eclipse.jface.text.source.ICharacterPairMatcher#getAnchor()</TD></TR><TR><TD CLASS="l">71</TD><TD>         */</TD></TR><TR><TD CLASS="l">72</TD><TD>        public int getAnchor() {</TD></TR><TR CLASS="z"><TD CLASS="l">73</TD><TD>                if (fAnchor &lt; 0 &amp;&amp; fNextMatcher != null)</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>                        return fNextMatcher.getAnchor();</TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>                return fAnchor;</TD></TR><TR><TD CLASS="l">76</TD><TD>        }</TD></TR><TR><TD CLASS="l">77</TD><TD> </TD></TR><TR><TD CLASS="l">78</TD><TD>        /*</TD></TR><TR><TD CLASS="l">79</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l">80</TD><TD>         * </TD></TR><TR><TD CLASS="l"><A NAME="5">81</A></TD><TD>         * @see org.eclipse.jface.text.source.ICharacterPairMatcher#match(org.eclipse.jface.text.IDocument,</TD></TR><TR><TD CLASS="l">82</TD><TD>         *      int)</TD></TR><TR><TD CLASS="l">83</TD><TD>         */</TD></TR><TR><TD CLASS="l">84</TD><TD>        public IRegion match(IDocument document, int offset) {</TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>                if (offset &lt; 0 || offset &gt;= document.getLength())</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                        return null;</TD></TR><TR><TD CLASS="l">87</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">88</TD><TD>                IRegion match = null;</TD></TR><TR CLASS="z"><TD CLASS="l">89</TD><TD>                if (!fRegionTypes.isEmpty() &amp;&amp; document instanceof IStructuredDocument) {</TD></TR><TR CLASS="z"><TD CLASS="l">90</TD><TD>                        IStructuredDocumentRegion docRegion = ((IStructuredDocument) document).getRegionAtCharacterOffset(offset);</TD></TR><TR CLASS="z"><TD CLASS="l">91</TD><TD>                        if (docRegion != null) {</TD></TR><TR><TD CLASS="l">92</TD><TD>                                // look at the previous document region first since its end ==</TD></TR><TR><TD CLASS="l">93</TD><TD>                                // this one's start</TD></TR><TR CLASS="z"><TD CLASS="l">94</TD><TD>                                if (docRegion.getPrevious() != null &amp;&amp; docRegion.getPrevious().getEndOffset() == offset &amp;&amp; fRegionTypes.contains(docRegion.getPrevious().getType())) {</TD></TR><TR CLASS="z"><TD CLASS="l">95</TD><TD>                                        fAnchor = ICharacterPairMatcher.RIGHT;</TD></TR><TR CLASS="z"><TD CLASS="l">96</TD><TD>                                        match = new Region(docRegion.getPrevious().getStartOffset(), 1);</TD></TR><TR><TD CLASS="l">97</TD><TD>                                }</TD></TR><TR><TD CLASS="l">98</TD><TD>                                // check for offset in the last text region for a match to</TD></TR><TR><TD CLASS="l">99</TD><TD>                                // document region start offset</TD></TR><TR CLASS="z"><TD CLASS="l">100</TD><TD>                                else if (fRegionTypes.contains(docRegion.getType()) &amp;&amp; docRegion.getStartOffset(docRegion.getLastRegion()) &lt;= offset &amp;&amp; offset &lt;= docRegion.getEndOffset(docRegion.getLastRegion())) {</TD></TR><TR CLASS="z"><TD CLASS="l">101</TD><TD>                                        fAnchor = ICharacterPairMatcher.RIGHT;</TD></TR><TR CLASS="z"><TD CLASS="l">102</TD><TD>                                        match = new Region(docRegion.getStartOffset(), 1);</TD></TR><TR><TD CLASS="l">103</TD><TD>                                }</TD></TR><TR><TD CLASS="l">104</TD><TD>                                // check for offset in the first text region for a match to</TD></TR><TR><TD CLASS="l">105</TD><TD>                                // document region end offset</TD></TR><TR CLASS="z"><TD CLASS="l">106</TD><TD>                                else if (fRegionTypes.contains(docRegion.getType())) {</TD></TR><TR CLASS="z"><TD CLASS="l">107</TD><TD>                                        if (docRegion.getStartOffset(docRegion.getFirstRegion()) &lt;= offset &amp;&amp; offset &lt;= docRegion.getEndOffset(docRegion.getFirstRegion())) {</TD></TR><TR CLASS="z"><TD CLASS="l">108</TD><TD>                                                fAnchor = ICharacterPairMatcher.LEFT;</TD></TR><TR CLASS="z"><TD CLASS="l">109</TD><TD>                                                match = new Region(docRegion.getEndOffset() - 1, 1);</TD></TR><TR><TD CLASS="l">110</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">111</TD><TD>                                }</TD></TR><TR><TD CLASS="l">112</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">113</TD><TD>                                if (match == null) {</TD></TR><TR><TD CLASS="l">114</TD><TD>                                        /* Now check the text region */</TD></TR><TR CLASS="z"><TD CLASS="l">115</TD><TD>                                        ITextRegion currentTextRegion = docRegion.getRegionAtCharacterOffset(offset);</TD></TR><TR CLASS="z"><TD CLASS="l">116</TD><TD>                                        if (currentTextRegion != null &amp;&amp; currentTextRegion.getTextLength() &gt; 1) {</TD></TR><TR CLASS="z"><TD CLASS="l">117</TD><TD>                                                int offsetAtNearEdge = offset;</TD></TR><TR CLASS="z"><TD CLASS="l">118</TD><TD>                                                if (offset == docRegion.getTextEndOffset(currentTextRegion)) {</TD></TR><TR CLASS="z"><TD CLASS="l">119</TD><TD>                                                        offsetAtNearEdge = offset-1;</TD></TR><TR><TD CLASS="l">120</TD><TD>                                                }</TD></TR><TR CLASS="z"><TD CLASS="l">121</TD><TD>                                                else if (offset == docRegion.getStartOffset(currentTextRegion)+1) {</TD></TR><TR CLASS="z"><TD CLASS="l">122</TD><TD>                                                        offsetAtNearEdge = offset-1;</TD></TR><TR><TD CLASS="l">123</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">124</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">125</TD><TD>                                                if (offsetAtNearEdge == docRegion.getStartOffset(currentTextRegion)) {</TD></TR><TR CLASS="z"><TD CLASS="l">126</TD><TD>                                                        int end = docRegion.getTextEndOffset(currentTextRegion);</TD></TR><TR><TD CLASS="l">127</TD><TD>                                                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">128</TD><TD>                                                                if (document.getChar(offsetAtNearEdge) == document.getChar(end - 1)) {</TD></TR><TR CLASS="z"><TD CLASS="l">129</TD><TD>                                                                        fAnchor = ICharacterPairMatcher.LEFT;</TD></TR><TR CLASS="z"><TD CLASS="l">130</TD><TD>                                                                        match = new Region(end - 1, 1);</TD></TR><TR><TD CLASS="l">131</TD><TD>                                                                }</TD></TR><TR><TD CLASS="l">132</TD><TD>                                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">133</TD><TD>                                                        catch (BadLocationException e) {</TD></TR><TR><TD CLASS="l">134</TD><TD>                                                                // nothing, not important enough</TD></TR><TR><TD CLASS="l">135</TD><TD>                                                        }</TD></TR><TR><TD CLASS="l">136</TD><TD>                                                }</TD></TR><TR CLASS="z"><TD CLASS="l">137</TD><TD>                                                else if (offsetAtNearEdge == docRegion.getTextEndOffset(currentTextRegion)-1) {</TD></TR><TR CLASS="z"><TD CLASS="l">138</TD><TD>                                                        int start = docRegion.getStartOffset(currentTextRegion);</TD></TR><TR><TD CLASS="l">139</TD><TD>                                                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">140</TD><TD>                                                                if (document.getChar(offsetAtNearEdge) == document.getChar(start)) {</TD></TR><TR CLASS="z"><TD CLASS="l">141</TD><TD>                                                                        fAnchor = ICharacterPairMatcher.RIGHT;</TD></TR><TR CLASS="z"><TD CLASS="l">142</TD><TD>                                                                        match = new Region(start, 1);</TD></TR><TR><TD CLASS="l">143</TD><TD>                                                                }</TD></TR><TR><TD CLASS="l">144</TD><TD>                                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">145</TD><TD>                                                        catch (BadLocationException e) {</TD></TR><TR><TD CLASS="l">146</TD><TD>                                                                // nothing, not important enough</TD></TR><TR><TD CLASS="l">147</TD><TD>                                                        }</TD></TR><TR><TD CLASS="l">148</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">149</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">150</TD><TD>                                }</TD></TR><TR><TD CLASS="l">151</TD><TD>                        }</TD></TR><TR><TD CLASS="l">152</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">153</TD><TD>                if (match == null &amp;&amp; fNextMatcher != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">154</TD><TD>                        fAnchor = -1;</TD></TR><TR CLASS="z"><TD CLASS="l">155</TD><TD>                        match = fNextMatcher.match(document, offset);</TD></TR><TR><TD CLASS="l">156</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">157</TD><TD>                return match;</TD></TR><TR><TD CLASS="l">158</TD><TD>        }</TD></TR><TR><TD CLASS="l">159</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="1c.html">org.eclipse.wst.sse.ui.internal.text</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/145.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/145.html
deleted file mode 100644
index 47762e8..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/145.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="1d.html">org.eclipse.wst.sse.ui.internal.ui</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">OffsetStatusLineContributionItem.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>OffsetStatusLineContributionItem.java</TD><TD CLASS="h">0%   (0/23)</TD><TD CLASS="h">0%   (0/86)</TD><TD CLASS="h">0%   (0/3611)</TD><TD CLASS="h">0%   (0/672)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">OffsetStatusLineContributionItem</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/42)</TD><TD CLASS="h">0%   (0/11)</TD></TR><TR><TD CLASS="f"><A HREF="#0">OffsetStatusLineContributionItem (String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/16)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">OffsetStatusLineContributionItem (String, boolean, int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/18)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#3">setActiveEditor (ITextEditor): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#4">OffsetStatusLineContributionItem$1</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/28)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR><TD CLASS="f"><A HREF="#4">OffsetStatusLineContributionItem$1 (OffsetStatusLineContributionItem$Informat...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">compare (Object, Object): int</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/22)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#7">OffsetStatusLineContributionItem$10</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/51)</TD><TD CLASS="h">0%   (0/11)</TD></TR><TR><TD CLASS="f"><A HREF="#7">OffsetStatusLineContributionItem$10 (OffsetStatusLineContributionItem$Informa...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#9">selectionChanged (SelectionChangedEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/42)</TD><TD CLASS="h">0%   (0/9)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#a">OffsetStatusLineContributionItem$11</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/155)</TD><TD CLASS="h">0%   (0/28)</TD></TR><TR><TD CLASS="f"><A HREF="#a">OffsetStatusLineContributionItem$11 (OffsetStatusLineContributionItem$Informa...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/21)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#c">dispose (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#d">getChildren (Object): Object []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/103)</TD><TD CLASS="h">0%   (0/17)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#e">getElements (Object): Object []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#f">getParent (Object): Object</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/18)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#10">hasChildren (Object): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#11">inputChanged (Viewer, Object, Object): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#12">OffsetStatusLineContributionItem$12</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/132)</TD><TD CLASS="h">0%   (0/21)</TD></TR><TR><TD CLASS="f"><A HREF="#12">OffsetStatusLineContributionItem$12 (OffsetStatusLineContributionItem$Informa...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#14">getText (Object): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/126)</TD><TD CLASS="h">0%   (0/19)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#15">OffsetStatusLineContributionItem$13</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/75)</TD><TD CLASS="h">0%   (0/16)</TD></TR><TR><TD CLASS="f"><A HREF="#15">OffsetStatusLineContributionItem$13 (OffsetStatusLineContributionItem$Informa...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#17">selectionChanged (SelectionChangedEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/66)</TD><TD CLASS="h">0%   (0/14)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#18">OffsetStatusLineContributionItem$14</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/17)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#18">OffsetStatusLineContributionItem$14 (OffsetStatusLineContributionItem$Informa...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#1a">category (Object): int</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#1b">OffsetStatusLineContributionItem$15</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/82)</TD><TD CLASS="h">0%   (0/23)</TD></TR><TR><TD CLASS="f"><A HREF="#1b">OffsetStatusLineContributionItem$15 (OffsetStatusLineContributionItem$Informa...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#1d">addListener (ILabelProviderListener): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#1e">dispose (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#1f">getColumnImage (Object, int): Image</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/39)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#20">getColumnText (Object, int): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/29)</TD><TD CLASS="h">0%   (0/11)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#21">isLabelProperty (Object, String): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#22">removeListener (ILabelProviderListener): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#23">OffsetStatusLineContributionItem$16</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/137)</TD><TD CLASS="h">0%   (0/19)</TD></TR><TR><TD CLASS="f"><A HREF="#23">OffsetStatusLineContributionItem$16 (OffsetStatusLineContributionItem$Informa...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#25">getImage (Object): Image</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/47)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#26">getText (Object): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/81)</TD><TD CLASS="h">0%   (0/11)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#27">OffsetStatusLineContributionItem$17</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/92)</TD><TD CLASS="h">0%   (0/19)</TD></TR><TR><TD CLASS="f"><A HREF="#27">OffsetStatusLineContributionItem$17 (OffsetStatusLineContributionItem$Informa...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#29">dispose (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#2a">getChildren (Object): Object []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2b">getElements (Object): Object []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/66)</TD><TD CLASS="h">0%   (0/10)</TD></TR><TR><TD CLASS="f"><A HREF="#2c">getParent (Object): Object</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2d">hasChildren (Object): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#2e">inputChanged (Viewer, Object, Object): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#2f">OffsetStatusLineContributionItem$18</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/39)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR><TD CLASS="f"><A HREF="#2f">OffsetStatusLineContributionItem$18 (OffsetStatusLineContributionItem$Informa...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#31">selectionChanged (SelectionChangedEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/27)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#32">OffsetStatusLineContributionItem$2</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/118)</TD><TD CLASS="h">0%   (0/40)</TD></TR><TR><TD CLASS="f"><A HREF="#32">OffsetStatusLineContributionItem$2 (OffsetStatusLineContributionItem$Informat...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#34">addListener (ILabelProviderListener): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#35">dispose (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#36">getColumnImage (Object, int): Image</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#37">getColumnText (Object, int): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/37)</TD><TD CLASS="h">0%   (0/15)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#38">getOwner (Annotation): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/36)</TD><TD CLASS="h">0%   (0/11)</TD></TR><TR><TD CLASS="f"><A HREF="#39">getType (Annotation): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/32)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#3a">isLabelProperty (Object, String): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#3b">removeListener (ILabelProviderListener): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#3c">OffsetStatusLineContributionItem$3</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/22)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#3c">OffsetStatusLineContributionItem$3 (OffsetStatusLineContributionItem$Informat...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#3e">getPropertySource (Object): IPropertySource</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/16)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#3f">OffsetStatusLineContributionItem$4</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/16)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#3f">OffsetStatusLineContributionItem$4 (OffsetStatusLineContributionItem$Informat...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#41">selectionChanged (SelectionChangedEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#42">OffsetStatusLineContributionItem$5</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/25)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#42">OffsetStatusLineContributionItem$5 (OffsetStatusLineContributionItem$Informat...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#44">handleEvent (Event): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#45">OffsetStatusLineContributionItem$6</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/90)</TD><TD CLASS="h">0%   (0/11)</TD></TR><TR><TD CLASS="f"><A HREF="#45">OffsetStatusLineContributionItem$6 (OffsetStatusLineContributionItem$Informat...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/19)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#47">run (IProgressMonitor): IStatus</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/71)</TD><TD CLASS="h">0%   (0/9)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#48">OffsetStatusLineContributionItem$7</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/56)</TD><TD CLASS="h">0%   (0/9)</TD></TR><TR><TD CLASS="f"><A HREF="#48">OffsetStatusLineContributionItem$7 (OffsetStatusLineContributionItem$6, Text,...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4a">run (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/41)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#4b">OffsetStatusLineContributionItem$8</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/39)</TD><TD CLASS="h">0%   (0/18)</TD></TR><TR><TD CLASS="f"><A HREF="#4b">OffsetStatusLineContributionItem$8 (OffsetStatusLineContributionItem$Informat...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4d">addListener (ILabelProviderListener): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#4e">dispose (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4f">getColumnImage (Object, int): Image</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#50">getColumnText (Object, int): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/26)</TD><TD CLASS="h">0%   (0/11)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#51">isLabelProperty (Object, String): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#52">removeListener (ILabelProviderListener): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#53">OffsetStatusLineContributionItem$9</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/90)</TD><TD CLASS="h">0%   (0/10)</TD></TR><TR><TD CLASS="f"><A HREF="#53">OffsetStatusLineContributionItem$9 (OffsetStatusLineContributionItem$Informat...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#55">widgetSelected (SelectionEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/75)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#56">OffsetStatusLineContributionItem$AnnotationPropertySource</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/378)</TD><TD CLASS="h">0%   (0/79)</TD></TR><TR><TD CLASS="f"><A HREF="#56">OffsetStatusLineContributionItem$AnnotationPropertySource (OffsetStatusLineCo...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/43)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#58">getEditableValue (): Object</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#59">getPropertyDescriptors (): IPropertyDescriptor []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/109)</TD><TD CLASS="h">0%   (0/21)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#5a">getPropertyValue (Object): Object</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/178)</TD><TD CLASS="h">0%   (0/38)</TD></TR><TR><TD CLASS="f"><A HREF="#5b">isPropertySet (Object): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#5c">resetPropertyValue (Object): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/22)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#5d">setPropertyValue (Object, Object): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/22)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#5e">OffsetStatusLineContributionItem$InformationDialog</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/1881)</TD><TD CLASS="h">0%   (0/348)</TD></TR><TR><TD CLASS="f"><A HREF="#5e">OffsetStatusLineContributionItem$InformationDialog (OffsetStatusLineContribut...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/22)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#60">createAnnotationTabContents (Composite): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/363)</TD><TD CLASS="h">0%   (0/59)</TD></TR><TR><TD CLASS="f"><A HREF="#61">createDialogArea (Composite): Control</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/615)</TD><TD CLASS="h">0%   (0/115)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#62">createPartitionTabContents (SashForm): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/367)</TD><TD CLASS="h">0%   (0/59)</TD></TR><TR><TD CLASS="f"><A HREF="#63">createRegionTabContents (SashForm): Composite</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/112)</TD><TD CLASS="h">0%   (0/26)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#64">fillSelectionTabContents (Composite, List, String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/214)</TD><TD CLASS="h">0%   (0/40)</TD></TR><TR><TD CLASS="f"><A HREF="#65">getBOMText (IEditorInput): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/99)</TD><TD CLASS="h">0%   (0/24)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#66">getIndexedRegions (ITextSelection): List</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/43)</TD><TD CLASS="h">0%   (0/11)</TD></TR><TR><TD CLASS="f"><A HREF="#67">getLineNumber (Annotation): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/46)</TD><TD CLASS="h">0%   (0/10)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#68">OffsetStatusLineContributionItem$KeyValuePair</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#68">OffsetStatusLineContributionItem$KeyValuePair (Object, String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#6a">OffsetStatusLineContributionItem$ShowEditorInformationAction</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/37)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#6a">OffsetStatusLineContributionItem$ShowEditorInformationAction (OffsetStatusLin...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6c">run (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/31)</TD><TD CLASS="h">0%   (0/3)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR CLASS="z"><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2007 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     </TD></TR><TR><TD CLASS="l">11</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">12</TD><TD>package org.eclipse.wst.sse.ui.internal.ui;</TD></TR><TR><TD CLASS="l">13</TD><TD> </TD></TR><TR><TD CLASS="l">14</TD><TD>import java.io.IOException;</TD></TR><TR><TD CLASS="l">15</TD><TD>import java.io.InputStream;</TD></TR><TR><TD CLASS="l">16</TD><TD>import java.util.ArrayList;</TD></TR><TR><TD CLASS="l">17</TD><TD>import java.util.Arrays;</TD></TR><TR><TD CLASS="l">18</TD><TD>import java.util.Collection;</TD></TR><TR><TD CLASS="l">19</TD><TD>import java.util.Comparator;</TD></TR><TR><TD CLASS="l">20</TD><TD>import java.util.HashSet;</TD></TR><TR><TD CLASS="l">21</TD><TD>import java.util.Iterator;</TD></TR><TR><TD CLASS="l">22</TD><TD>import java.util.List;</TD></TR><TR><TD CLASS="l">23</TD><TD>import java.util.Map;</TD></TR><TR><TD CLASS="l">24</TD><TD>import java.util.Set;</TD></TR><TR><TD CLASS="l">25</TD><TD> </TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.core.resources.IFile;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.core.runtime.CoreException;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.core.runtime.IProgressMonitor;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.core.runtime.IStatus;</TD></TR><TR><TD CLASS="l">30</TD><TD>import org.eclipse.core.runtime.Status;</TD></TR><TR><TD CLASS="l">31</TD><TD>import org.eclipse.core.runtime.jobs.Job;</TD></TR><TR><TD CLASS="l">32</TD><TD>import org.eclipse.jface.action.Action;</TD></TR><TR><TD CLASS="l">33</TD><TD>import org.eclipse.jface.action.IAction;</TD></TR><TR><TD CLASS="l">34</TD><TD>import org.eclipse.jface.dialogs.Dialog;</TD></TR><TR><TD CLASS="l">35</TD><TD>import org.eclipse.jface.text.BadLocationException;</TD></TR><TR><TD CLASS="l">36</TD><TD>import org.eclipse.jface.text.IDocument;</TD></TR><TR><TD CLASS="l">37</TD><TD>import org.eclipse.jface.text.IDocumentExtension3;</TD></TR><TR><TD CLASS="l">38</TD><TD>import org.eclipse.jface.text.IRegion;</TD></TR><TR><TD CLASS="l">39</TD><TD>import org.eclipse.jface.text.ITextSelection;</TD></TR><TR><TD CLASS="l">40</TD><TD>import org.eclipse.jface.text.ITypedRegion;</TD></TR><TR><TD CLASS="l">41</TD><TD>import org.eclipse.jface.text.Position;</TD></TR><TR><TD CLASS="l">42</TD><TD>import org.eclipse.jface.text.Region;</TD></TR><TR><TD CLASS="l">43</TD><TD>import org.eclipse.jface.text.TextUtilities;</TD></TR><TR><TD CLASS="l">44</TD><TD>import org.eclipse.jface.text.reconciler.IReconcileStep;</TD></TR><TR><TD CLASS="l">45</TD><TD>import org.eclipse.jface.text.source.Annotation;</TD></TR><TR><TD CLASS="l">46</TD><TD>import org.eclipse.jface.text.source.IAnnotationModel;</TD></TR><TR><TD CLASS="l">47</TD><TD>import org.eclipse.jface.viewers.ArrayContentProvider;</TD></TR><TR><TD CLASS="l">48</TD><TD>import org.eclipse.jface.viewers.CellEditor;</TD></TR><TR><TD CLASS="l">49</TD><TD>import org.eclipse.jface.viewers.ColumnWeightData;</TD></TR><TR><TD CLASS="l">50</TD><TD>import org.eclipse.jface.viewers.ILabelProviderListener;</TD></TR><TR><TD CLASS="l">51</TD><TD>import org.eclipse.jface.viewers.ISelection;</TD></TR><TR><TD CLASS="l">52</TD><TD>import org.eclipse.jface.viewers.ISelectionChangedListener;</TD></TR><TR><TD CLASS="l">53</TD><TD>import org.eclipse.jface.viewers.IStructuredSelection;</TD></TR><TR><TD CLASS="l">54</TD><TD>import org.eclipse.jface.viewers.ITableLabelProvider;</TD></TR><TR><TD CLASS="l">55</TD><TD>import org.eclipse.jface.viewers.ITreeContentProvider;</TD></TR><TR><TD CLASS="l">56</TD><TD>import org.eclipse.jface.viewers.LabelProvider;</TD></TR><TR><TD CLASS="l">57</TD><TD>import org.eclipse.jface.viewers.SelectionChangedEvent;</TD></TR><TR><TD CLASS="l">58</TD><TD>import org.eclipse.jface.viewers.TableLayout;</TD></TR><TR><TD CLASS="l">59</TD><TD>import org.eclipse.jface.viewers.TableViewer;</TD></TR><TR><TD CLASS="l">60</TD><TD>import org.eclipse.jface.viewers.TreeViewer;</TD></TR><TR><TD CLASS="l">61</TD><TD>import org.eclipse.jface.viewers.Viewer;</TD></TR><TR><TD CLASS="l">62</TD><TD>import org.eclipse.jface.viewers.ViewerComparator;</TD></TR><TR><TD CLASS="l">63</TD><TD>import org.eclipse.jface.viewers.ViewerSorter;</TD></TR><TR><TD CLASS="l">64</TD><TD>import org.eclipse.swt.SWT;</TD></TR><TR><TD CLASS="l">65</TD><TD>import org.eclipse.swt.custom.SashForm;</TD></TR><TR><TD CLASS="l">66</TD><TD>import org.eclipse.swt.custom.StyledText;</TD></TR><TR><TD CLASS="l">67</TD><TD>import org.eclipse.swt.events.SelectionAdapter;</TD></TR><TR><TD CLASS="l">68</TD><TD>import org.eclipse.swt.events.SelectionEvent;</TD></TR><TR><TD CLASS="l">69</TD><TD>import org.eclipse.swt.graphics.Image;</TD></TR><TR><TD CLASS="l">70</TD><TD>import org.eclipse.swt.layout.FormAttachment;</TD></TR><TR><TD CLASS="l">71</TD><TD>import org.eclipse.swt.layout.FormData;</TD></TR><TR><TD CLASS="l">72</TD><TD>import org.eclipse.swt.layout.FormLayout;</TD></TR><TR><TD CLASS="l">73</TD><TD>import org.eclipse.swt.layout.GridData;</TD></TR><TR><TD CLASS="l">74</TD><TD>import org.eclipse.swt.layout.GridLayout;</TD></TR><TR><TD CLASS="l">75</TD><TD>import org.eclipse.swt.widgets.Combo;</TD></TR><TR><TD CLASS="l">76</TD><TD>import org.eclipse.swt.widgets.Composite;</TD></TR><TR><TD CLASS="l">77</TD><TD>import org.eclipse.swt.widgets.Control;</TD></TR><TR><TD CLASS="l">78</TD><TD>import org.eclipse.swt.widgets.Display;</TD></TR><TR><TD CLASS="l">79</TD><TD>import org.eclipse.swt.widgets.Event;</TD></TR><TR><TD CLASS="l">80</TD><TD>import org.eclipse.swt.widgets.Label;</TD></TR><TR><TD CLASS="l">81</TD><TD>import org.eclipse.swt.widgets.Sash;</TD></TR><TR><TD CLASS="l">82</TD><TD>import org.eclipse.swt.widgets.Shell;</TD></TR><TR><TD CLASS="l">83</TD><TD>import org.eclipse.swt.widgets.TabFolder;</TD></TR><TR><TD CLASS="l">84</TD><TD>import org.eclipse.swt.widgets.TabItem;</TD></TR><TR><TD CLASS="l">85</TD><TD>import org.eclipse.swt.widgets.TableColumn;</TD></TR><TR><TD CLASS="l">86</TD><TD>import org.eclipse.swt.widgets.Text;</TD></TR><TR><TD CLASS="l">87</TD><TD>import org.eclipse.ui.IEditorInput;</TD></TR><TR><TD CLASS="l">88</TD><TD>import org.eclipse.ui.IEditorSite;</TD></TR><TR><TD CLASS="l">89</TD><TD>import org.eclipse.ui.ISelectionService;</TD></TR><TR><TD CLASS="l">90</TD><TD>import org.eclipse.ui.IWorkbenchWindow;</TD></TR><TR><TD CLASS="l">91</TD><TD>import org.eclipse.ui.texteditor.ITextEditor;</TD></TR><TR><TD CLASS="l">92</TD><TD>import org.eclipse.ui.texteditor.MarkerAnnotation;</TD></TR><TR><TD CLASS="l">93</TD><TD>import org.eclipse.ui.texteditor.MarkerUtilities;</TD></TR><TR><TD CLASS="l">94</TD><TD>import org.eclipse.ui.texteditor.SimpleMarkerAnnotation;</TD></TR><TR><TD CLASS="l">95</TD><TD>import org.eclipse.ui.texteditor.StatusLineContributionItem;</TD></TR><TR><TD CLASS="l">96</TD><TD>import org.eclipse.ui.views.properties.IPropertyDescriptor;</TD></TR><TR><TD CLASS="l">97</TD><TD>import org.eclipse.ui.views.properties.IPropertySource;</TD></TR><TR><TD CLASS="l">98</TD><TD>import org.eclipse.ui.views.properties.IPropertySourceProvider;</TD></TR><TR><TD CLASS="l">99</TD><TD>import org.eclipse.ui.views.properties.PropertySheetPage;</TD></TR><TR><TD CLASS="l">100</TD><TD>import org.eclipse.ui.views.properties.TextPropertyDescriptor;</TD></TR><TR><TD CLASS="l">101</TD><TD>import org.eclipse.wst.sse.core.StructuredModelManager;</TD></TR><TR><TD CLASS="l">102</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.INodeAdapter;</TD></TR><TR><TD CLASS="l">103</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;</TD></TR><TR><TD CLASS="l">104</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;</TD></TR><TR><TD CLASS="l">105</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;</TD></TR><TR><TD CLASS="l">106</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;</TD></TR><TR><TD CLASS="l">107</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;</TD></TR><TR><TD CLASS="l">108</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredPartitioning;</TD></TR><TR><TD CLASS="l">109</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;</TD></TR><TR><TD CLASS="l">110</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionCollection;</TD></TR><TR><TD CLASS="l">111</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionContainer;</TD></TR><TR><TD CLASS="l">112</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionList;</TD></TR><TR><TD CLASS="l">113</TD><TD>import org.eclipse.wst.sse.core.internal.util.Utilities;</TD></TR><TR><TD CLASS="l">114</TD><TD>import org.eclipse.wst.sse.core.utils.StringUtils;</TD></TR><TR><TD CLASS="l">115</TD><TD>import org.eclipse.wst.sse.ui.internal.SSEUIMessages;</TD></TR><TR><TD CLASS="l">116</TD><TD>import org.eclipse.wst.sse.ui.internal.contentoutline.IJFaceNodeAdapter;</TD></TR><TR><TD CLASS="l">117</TD><TD>import org.eclipse.wst.sse.ui.internal.reconcile.ReconcileAnnotationKey;</TD></TR><TR><TD CLASS="l">118</TD><TD>import org.eclipse.wst.sse.ui.internal.reconcile.TemporaryAnnotation;</TD></TR><TR><TD CLASS="l">119</TD><TD> </TD></TR><TR><TD CLASS="l">120</TD><TD>import com.ibm.icu.text.NumberFormat;</TD></TR><TR><TD CLASS="l">121</TD><TD> </TD></TR><TR><TD CLASS="l">122</TD><TD>/**</TD></TR><TR><TD CLASS="l">123</TD><TD> * @author nsd A Status Line contribution intended to display the selected</TD></TR><TR><TD CLASS="l">124</TD><TD> *         offsets in an editor. Double-clicking shows information about</TD></TR><TR><TD CLASS="l">125</TD><TD> *         partitions, document regions, annotations, and selection.</TD></TR><TR><TD CLASS="l">126</TD><TD> */</TD></TR><TR><TD CLASS="l">127</TD><TD>public class OffsetStatusLineContributionItem extends StatusLineContributionItem {</TD></TR><TR><TD CLASS="l">128</TD><TD> </TD></TR><TR><TD CLASS="l">129</TD><TD>        class AnnotationPropertySource implements IPropertySource {</TD></TR><TR CLASS="z"><TD CLASS="l">130</TD><TD>                Annotation fAnnotation = null;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="56">131</A></TD><TD>                IPropertyDescriptor[] fDescriptors = null;</TD></TR><TR CLASS="z"><TD CLASS="l">132</TD><TD>                String[] TEMPORARY_ANNOTATION_KEYS = new String[]{&#34;Partition Type&#34;, &#34;Step&#34;, &#34;Scope&#34;, &#34;Offset&#34;, &#34;Length&#34;, &#34;Description&#34;}; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$ //$NON-NLS-6$</TD></TR><TR><TD CLASS="l">133</TD><TD> </TD></TR><TR><TD CLASS="l">134</TD><TD>                public AnnotationPropertySource(Annotation annotation) {</TD></TR><TR CLASS="z"><TD CLASS="l">135</TD><TD>                        super();</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="58">136</A></TD><TD>                        fAnnotation = annotation;</TD></TR><TR CLASS="z"><TD CLASS="l">137</TD><TD>                }</TD></TR><TR><TD CLASS="l">138</TD><TD> </TD></TR><TR><TD CLASS="l">139</TD><TD>                public Object getEditableValue() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="59">140</A></TD><TD>                        return null;</TD></TR><TR><TD CLASS="l">141</TD><TD>                }</TD></TR><TR><TD CLASS="l">142</TD><TD> </TD></TR><TR><TD CLASS="l">143</TD><TD>                public IPropertyDescriptor[] getPropertyDescriptors() {</TD></TR><TR CLASS="z"><TD CLASS="l">144</TD><TD>                        if (fDescriptors == null) {</TD></TR><TR><TD CLASS="l">145</TD><TD>                                try {</TD></TR><TR CLASS="z"><TD CLASS="l">146</TD><TD>                                        if (fAnnotation instanceof SimpleMarkerAnnotation) {</TD></TR><TR CLASS="z"><TD CLASS="l">147</TD><TD>                                                Map attrs = ((SimpleMarkerAnnotation) fAnnotation).getMarker().getAttributes();</TD></TR><TR CLASS="z"><TD CLASS="l">148</TD><TD>                                                Object[] keys = attrs.keySet().toArray();</TD></TR><TR><TD CLASS="l">149</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">150</TD><TD>                                                fDescriptors = new IPropertyDescriptor[keys.length];</TD></TR><TR CLASS="z"><TD CLASS="l">151</TD><TD>                                                for (int i = 0; i &lt; keys.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">152</TD><TD>                                                        TextPropertyDescriptor descriptor = new TextPropertyDescriptor(keys[i].toString(), keys[i].toString());</TD></TR><TR CLASS="z"><TD CLASS="l">153</TD><TD>                                                        fDescriptors[i] = descriptor;</TD></TR><TR><TD CLASS="l">154</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">155</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">156</TD><TD>                                        else if (fAnnotation instanceof TemporaryAnnotation) {</TD></TR><TR CLASS="z"><TD CLASS="l">157</TD><TD>                                                Object key = ((TemporaryAnnotation) fAnnotation).getKey();</TD></TR><TR CLASS="z"><TD CLASS="l">158</TD><TD>                                                if (key != null &amp;&amp; key instanceof ReconcileAnnotationKey) {</TD></TR><TR CLASS="z"><TD CLASS="l">159</TD><TD>                                                        String[] keys = TEMPORARY_ANNOTATION_KEYS;</TD></TR><TR CLASS="z"><TD CLASS="l">160</TD><TD>                                                        fDescriptors = new IPropertyDescriptor[keys.length];</TD></TR><TR CLASS="z"><TD CLASS="l">161</TD><TD>                                                        for (int i = 0; i &lt; keys.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">162</TD><TD>                                                                TextPropertyDescriptor descriptor = new TextPropertyDescriptor(keys[i].toString(), keys[i].toString());</TD></TR><TR CLASS="z"><TD CLASS="l">163</TD><TD>                                                                fDescriptors[i] = descriptor;</TD></TR><TR><TD CLASS="l">164</TD><TD>                                                        }</TD></TR><TR><TD CLASS="l">165</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">166</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">167</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">168</TD><TD>                                catch (CoreException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">169</TD><TD>                                        e.printStackTrace();</TD></TR><TR><TD CLASS="l">170</TD><TD>                                }</TD></TR><TR><TD CLASS="l">171</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">172</TD><TD>                        if (fDescriptors == null)</TD></TR><TR CLASS="z"><TD CLASS="l">173</TD><TD>                                fDescriptors = new IPropertyDescriptor[0];</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="5a">174</A></TD><TD>                        return fDescriptors;</TD></TR><TR><TD CLASS="l">175</TD><TD>                }</TD></TR><TR><TD CLASS="l">176</TD><TD> </TD></TR><TR><TD CLASS="l">177</TD><TD>                public Object getPropertyValue(Object id) {</TD></TR><TR CLASS="z"><TD CLASS="l">178</TD><TD>                        String value = null;</TD></TR><TR CLASS="z"><TD CLASS="l">179</TD><TD>                        if (fAnnotation instanceof SimpleMarkerAnnotation) {</TD></TR><TR><TD CLASS="l">180</TD><TD>                                Object o;</TD></TR><TR><TD CLASS="l">181</TD><TD>                                try {</TD></TR><TR CLASS="z"><TD CLASS="l">182</TD><TD>                                        o = ((SimpleMarkerAnnotation) fAnnotation).getMarker().getAttributes().get(id);</TD></TR><TR CLASS="z"><TD CLASS="l">183</TD><TD>                                        if (o != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">184</TD><TD>                                                value = o.toString();</TD></TR><TR><TD CLASS="l">185</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">186</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">187</TD><TD>                                catch (CoreException e) {</TD></TR><TR><TD CLASS="l">188</TD><TD>                                }</TD></TR><TR><TD CLASS="l">189</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">190</TD><TD>                        else if (fAnnotation instanceof TemporaryAnnotation) {</TD></TR><TR CLASS="z"><TD CLASS="l">191</TD><TD>                                if (TEMPORARY_ANNOTATION_KEYS[0].equals(id)) {</TD></TR><TR CLASS="z"><TD CLASS="l">192</TD><TD>                                        Object key = ((TemporaryAnnotation) fAnnotation).getKey();</TD></TR><TR CLASS="z"><TD CLASS="l">193</TD><TD>                                        if (key != null &amp;&amp; key instanceof ReconcileAnnotationKey) {</TD></TR><TR CLASS="z"><TD CLASS="l">194</TD><TD>                                                value = ((ReconcileAnnotationKey) key).getPartitionType();</TD></TR><TR><TD CLASS="l">195</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">196</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">197</TD><TD>                                else if (TEMPORARY_ANNOTATION_KEYS[1].equals(id)) {</TD></TR><TR CLASS="z"><TD CLASS="l">198</TD><TD>                                        Object key = ((TemporaryAnnotation) fAnnotation).getKey();</TD></TR><TR CLASS="z"><TD CLASS="l">199</TD><TD>                                        if (key != null &amp;&amp; key instanceof ReconcileAnnotationKey) {</TD></TR><TR CLASS="z"><TD CLASS="l">200</TD><TD>                                                IReconcileStep step = ((ReconcileAnnotationKey) key).getStep();</TD></TR><TR CLASS="z"><TD CLASS="l">201</TD><TD>                                                if (step != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">202</TD><TD>                                                        value = step.toString();</TD></TR><TR><TD CLASS="l">203</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">204</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">205</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">206</TD><TD>                                else if (TEMPORARY_ANNOTATION_KEYS[2].equals(id)) {</TD></TR><TR CLASS="z"><TD CLASS="l">207</TD><TD>                                        Object key = ((TemporaryAnnotation) fAnnotation).getKey();</TD></TR><TR CLASS="z"><TD CLASS="l">208</TD><TD>                                        if (key != null &amp;&amp; key instanceof ReconcileAnnotationKey) {</TD></TR><TR CLASS="z"><TD CLASS="l">209</TD><TD>                                                int scope = ((ReconcileAnnotationKey) key).getScope();</TD></TR><TR CLASS="z"><TD CLASS="l">210</TD><TD>                                                if (scope == ReconcileAnnotationKey.PARTIAL) {</TD></TR><TR CLASS="z"><TD CLASS="l">211</TD><TD>                                                        value = &#34;PARTIAL&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">212</TD><TD>                                                }</TD></TR><TR CLASS="z"><TD CLASS="l">213</TD><TD>                                                if (scope == ReconcileAnnotationKey.TOTAL) {</TD></TR><TR CLASS="z"><TD CLASS="l">214</TD><TD>                                                        value = &#34;TOTAL&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">215</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">216</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">217</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">218</TD><TD>                                else if (TEMPORARY_ANNOTATION_KEYS[3].equals(id)) {</TD></TR><TR CLASS="z"><TD CLASS="l">219</TD><TD>                                        IAnnotationModel annotationModel = fTextEditor.getDocumentProvider().getAnnotationModel(fTextEditor.getEditorInput());</TD></TR><TR CLASS="z"><TD CLASS="l">220</TD><TD>                                        Position p = annotationModel.getPosition(fAnnotation);</TD></TR><TR CLASS="z"><TD CLASS="l">221</TD><TD>                                        if (p != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">222</TD><TD>                                                value = String.valueOf(p.getOffset());</TD></TR><TR><TD CLASS="l">223</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">224</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">225</TD><TD>                                else if (TEMPORARY_ANNOTATION_KEYS[4].equals(id)) {</TD></TR><TR CLASS="z"><TD CLASS="l">226</TD><TD>                                        IAnnotationModel annotationModel = fTextEditor.getDocumentProvider().getAnnotationModel(fTextEditor.getEditorInput());</TD></TR><TR CLASS="z"><TD CLASS="l">227</TD><TD>                                        Position p = annotationModel.getPosition(fAnnotation);</TD></TR><TR CLASS="z"><TD CLASS="l">228</TD><TD>                                        if (p != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">229</TD><TD>                                                value = String.valueOf(p.getLength());</TD></TR><TR><TD CLASS="l">230</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">231</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">232</TD><TD>                                else if (TEMPORARY_ANNOTATION_KEYS[5].equals(id)) {</TD></TR><TR CLASS="z"><TD CLASS="l">233</TD><TD>                                        value = ((TemporaryAnnotation) fAnnotation).getDescription();</TD></TR><TR><TD CLASS="l">234</TD><TD>                                }</TD></TR><TR><TD CLASS="l">235</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="5b">236</A></TD><TD>                        return value;</TD></TR><TR><TD CLASS="l">237</TD><TD>                }</TD></TR><TR><TD CLASS="l">238</TD><TD> </TD></TR><TR><TD CLASS="l">239</TD><TD>                public boolean isPropertySet(Object id) {</TD></TR><TR CLASS="z"><TD CLASS="l">240</TD><TD>                        return false;</TD></TR><TR><TD CLASS="l"><A NAME="5c">241</A></TD><TD>                }</TD></TR><TR><TD CLASS="l">242</TD><TD> </TD></TR><TR><TD CLASS="l">243</TD><TD>                public void resetPropertyValue(Object id) {</TD></TR><TR><TD CLASS="l">244</TD><TD>                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">245</TD><TD>                                if (fAnnotation instanceof SimpleMarkerAnnotation) {</TD></TR><TR CLASS="z"><TD CLASS="l">246</TD><TD>                                        ((SimpleMarkerAnnotation) fAnnotation).getMarker().getAttributes().remove(id);</TD></TR><TR><TD CLASS="l">247</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">248</TD><TD>                                else if (fAnnotation instanceof TemporaryAnnotation) {</TD></TR><TR><TD CLASS="l">249</TD><TD>                                }</TD></TR><TR><TD CLASS="l">250</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">251</TD><TD>                        catch (CoreException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">252</TD><TD>                                e.printStackTrace();</TD></TR><TR><TD CLASS="l">253</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="5d">254</A></TD><TD>                }</TD></TR><TR><TD CLASS="l">255</TD><TD> </TD></TR><TR><TD CLASS="l">256</TD><TD>                public void setPropertyValue(Object id, Object value) {</TD></TR><TR><TD CLASS="l">257</TD><TD>                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">258</TD><TD>                                if (fAnnotation instanceof SimpleMarkerAnnotation) {</TD></TR><TR CLASS="z"><TD CLASS="l">259</TD><TD>                                        ((MarkerAnnotation) fAnnotation).getMarker().setAttribute(id.toString(), value);</TD></TR><TR><TD CLASS="l">260</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">261</TD><TD>                                else if (fAnnotation instanceof TemporaryAnnotation) {</TD></TR><TR><TD CLASS="l">262</TD><TD>                                }</TD></TR><TR><TD CLASS="l">263</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">264</TD><TD>                        catch (CoreException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">265</TD><TD>                                e.printStackTrace();</TD></TR><TR><TD CLASS="l">266</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">267</TD><TD>                }</TD></TR><TR><TD CLASS="l">268</TD><TD>        }</TD></TR><TR><TD CLASS="l">269</TD><TD> </TD></TR><TR><TD CLASS="l">270</TD><TD>        class InformationDialog extends Dialog {</TD></TR><TR><TD CLASS="l"><A NAME="5e">271</A></TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">272</TD><TD>                IDocument fDocument = fTextEditor.getDocumentProvider().getDocument(fTextEditor.getEditorInput());</TD></TR><TR><TD CLASS="l">273</TD><TD> </TD></TR><TR><TD CLASS="l">274</TD><TD>                public InformationDialog(Shell parentShell) {</TD></TR><TR CLASS="z"><TD CLASS="l">275</TD><TD>                        super(parentShell);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="60">276</A></TD><TD>                        setShellStyle(getShellStyle() | SWT.RESIZE);</TD></TR><TR CLASS="z"><TD CLASS="l">277</TD><TD>                }</TD></TR><TR><TD CLASS="l">278</TD><TD> </TD></TR><TR><TD CLASS="l">279</TD><TD>                private void createAnnotationTabContents(Composite annotationsTabComposite) {</TD></TR><TR CLASS="z"><TD CLASS="l">280</TD><TD>                        annotationsTabComposite.setLayout(new GridLayout());</TD></TR><TR CLASS="z"><TD CLASS="l">281</TD><TD>                        annotationsTabComposite.setLayoutData(new GridData());</TD></TR><TR><TD CLASS="l">282</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">283</A></TD><TD>                        final Composite annotationsComposite = new Composite(annotationsTabComposite, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">284</TD><TD>                        annotationsComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));</TD></TR><TR><TD CLASS="l"><A NAME="6">285</A></TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">286</TD><TD>                        final TableViewer annotationsTable = new TableViewer(annotationsComposite, SWT.SINGLE | SWT.FULL_SELECTION | SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER);</TD></TR><TR CLASS="z"><TD CLASS="l">287</TD><TD>                        annotationsTable.setComparator(new ViewerComparator(new Comparator() {</TD></TR><TR><TD CLASS="l">288</TD><TD>                                public int compare(Object o1, Object o2) {</TD></TR><TR CLASS="z"><TD CLASS="l">289</TD><TD>                                        Annotation annotation1 = (Annotation) o1;</TD></TR><TR CLASS="z"><TD CLASS="l">290</TD><TD>                                        Annotation annotation2 = (Annotation) o2;</TD></TR><TR CLASS="z"><TD CLASS="l">291</TD><TD>                                        String line1 = getLineNumber(annotation1);</TD></TR><TR CLASS="z"><TD CLASS="l">292</TD><TD>                                        String line2 = getLineNumber(annotation2);</TD></TR><TR CLASS="z"><TD CLASS="l">293</TD><TD>                                        return Integer.parseInt(line1) - Integer.parseInt(line2);</TD></TR><TR><TD CLASS="l">294</TD><TD>                                }</TD></TR><TR><TD CLASS="l">295</TD><TD>                        }));</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="32">296</A></TD><TD>                        annotationsTable.setContentProvider(new ArrayContentProvider());</TD></TR><TR CLASS="z"><TD CLASS="l">297</TD><TD>                        annotationsTable.getTable().setHeaderVisible(true);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="34">298</A></TD><TD>                        annotationsTable.getTable().setLinesVisible(true);</TD></TR><TR CLASS="z"><TD CLASS="l">299</TD><TD>                        String[] columns = new String[]{&#34;Line&#34;, &#34;Owner&#34;, &#34;Type&#34;, &#34;Class&#34;, &#34;Message&#34;}; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$</TD></TR><TR CLASS="z"><TD CLASS="l">300</TD><TD>                        annotationsTable.setLabelProvider(new ITableLabelProvider() {</TD></TR><TR><TD CLASS="l"><A NAME="35">301</A></TD><TD>                                public void addListener(ILabelProviderListener listener) {</TD></TR><TR CLASS="z"><TD CLASS="l">302</TD><TD>                                }</TD></TR><TR><TD CLASS="l">303</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="36">304</A></TD><TD>                                public void dispose() {</TD></TR><TR CLASS="z"><TD CLASS="l">305</TD><TD>                                }</TD></TR><TR><TD CLASS="l">306</TD><TD> </TD></TR><TR><TD CLASS="l">307</TD><TD>                                public Image getColumnImage(Object element, int columnIndex) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="37">308</A></TD><TD>                                        return null;</TD></TR><TR><TD CLASS="l">309</TD><TD>                                }</TD></TR><TR><TD CLASS="l">310</TD><TD> </TD></TR><TR><TD CLASS="l">311</TD><TD>                                public String getColumnText(Object element, int columnIndex) {</TD></TR><TR CLASS="z"><TD CLASS="l">312</TD><TD>                                        Annotation annotation = (Annotation) element;</TD></TR><TR CLASS="z"><TD CLASS="l">313</TD><TD>                                        String text = null;</TD></TR><TR CLASS="z"><TD CLASS="l">314</TD><TD>                                        switch (columnIndex) {</TD></TR><TR><TD CLASS="l">315</TD><TD>                                                case 0 :</TD></TR><TR CLASS="z"><TD CLASS="l">316</TD><TD>                                                        text = getLineNumber(annotation);</TD></TR><TR CLASS="z"><TD CLASS="l">317</TD><TD>                                                        break;</TD></TR><TR><TD CLASS="l">318</TD><TD>                                                case 1 :</TD></TR><TR CLASS="z"><TD CLASS="l">319</TD><TD>                                                        text = getOwner(annotation);</TD></TR><TR CLASS="z"><TD CLASS="l">320</TD><TD>                                                        break;</TD></TR><TR><TD CLASS="l">321</TD><TD>                                                case 2 :</TD></TR><TR CLASS="z"><TD CLASS="l">322</TD><TD>                                                        text = getType(annotation); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">323</TD><TD>                                                        break;</TD></TR><TR><TD CLASS="l">324</TD><TD>                                                case 3 :</TD></TR><TR CLASS="z"><TD CLASS="l">325</TD><TD>                                                        text = annotation.getClass().getName();</TD></TR><TR CLASS="z"><TD CLASS="l">326</TD><TD>                                                        break;</TD></TR><TR><TD CLASS="l">327</TD><TD>                                                case 4 :</TD></TR><TR CLASS="z"><TD CLASS="l">328</TD><TD>                                                        text = annotation.getText();</TD></TR><TR><TD CLASS="l">329</TD><TD>                                                        break;</TD></TR><TR><TD CLASS="l">330</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">331</TD><TD>                                        if (text == null)</TD></TR><TR CLASS="z"><TD CLASS="l">332</TD><TD>                                                text = &#34;&#34;; //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">333</TD><TD>                                        return text;</TD></TR><TR><TD CLASS="l"><A NAME="38">334</A></TD><TD>                                }</TD></TR><TR><TD CLASS="l">335</TD><TD> </TD></TR><TR><TD CLASS="l">336</TD><TD> </TD></TR><TR><TD CLASS="l">337</TD><TD>                                private String getOwner(Annotation annotation) {</TD></TR><TR CLASS="z"><TD CLASS="l">338</TD><TD>                                        String owner = null;</TD></TR><TR CLASS="z"><TD CLASS="l">339</TD><TD>                                        if (annotation instanceof MarkerAnnotation) {</TD></TR><TR CLASS="z"><TD CLASS="l">340</TD><TD>                                                owner = ((MarkerAnnotation) annotation).getMarker().getAttribute(&#34;owner&#34;, &#34;&#34;); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$                                </TD></TR><TR><TD CLASS="l">341</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">342</TD><TD>                                        else if (annotation instanceof TemporaryAnnotation) {</TD></TR><TR CLASS="z"><TD CLASS="l">343</TD><TD>                                                Object key = ((TemporaryAnnotation) annotation).getKey();</TD></TR><TR CLASS="z"><TD CLASS="l">344</TD><TD>                                                if (key != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">345</TD><TD>                                                        if (key instanceof ReconcileAnnotationKey) {</TD></TR><TR CLASS="z"><TD CLASS="l">346</TD><TD>                                                                key = key.getClass().getName();</TD></TR><TR><TD CLASS="l">347</TD><TD>                                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">348</TD><TD>                                                        if (key != null)</TD></TR><TR CLASS="z"><TD CLASS="l">349</TD><TD>                                                                owner = key.toString();</TD></TR><TR><TD CLASS="l">350</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">351</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="39">352</A></TD><TD>                                        return owner;</TD></TR><TR><TD CLASS="l">353</TD><TD>                                }</TD></TR><TR><TD CLASS="l">354</TD><TD> </TD></TR><TR><TD CLASS="l">355</TD><TD>                                private String getType(Annotation annotation) {</TD></TR><TR CLASS="z"><TD CLASS="l">356</TD><TD>                                        String type = null;</TD></TR><TR CLASS="z"><TD CLASS="l">357</TD><TD>                                        if (annotation instanceof MarkerAnnotation) {</TD></TR><TR CLASS="z"><TD CLASS="l">358</TD><TD>                                                type = &#34;M:&#34;+MarkerUtilities.getMarkerType(((MarkerAnnotation) annotation).getMarker()); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">359</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">360</TD><TD>                                        else {</TD></TR><TR CLASS="z"><TD CLASS="l">361</TD><TD>                                                type = &#34;A:&#34;+annotation.getType(); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">362</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">363</TD><TD>                                        if (type == null)</TD></TR><TR CLASS="z"><TD CLASS="l">364</TD><TD>                                                type = &#34;&#34;; //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3a">365</A></TD><TD>                                        return type;</TD></TR><TR><TD CLASS="l">366</TD><TD>                                }</TD></TR><TR><TD CLASS="l">367</TD><TD> </TD></TR><TR><TD CLASS="l">368</TD><TD>                                public boolean isLabelProperty(Object element, String property) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3b">369</A></TD><TD>                                        return true;</TD></TR><TR><TD CLASS="l">370</TD><TD>                                }</TD></TR><TR><TD CLASS="l">371</TD><TD> </TD></TR><TR><TD CLASS="l">372</TD><TD>                                public void removeListener(ILabelProviderListener listener) {</TD></TR><TR CLASS="z"><TD CLASS="l">373</TD><TD>                                }</TD></TR><TR><TD CLASS="l">374</TD><TD>                        });</TD></TR><TR><TD CLASS="l">375</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">376</TD><TD>                        TableLayout tlayout = new TableLayout();</TD></TR><TR CLASS="z"><TD CLASS="l">377</TD><TD>                        CellEditor[] cellEditors = new CellEditor[columns.length];</TD></TR><TR CLASS="z"><TD CLASS="l">378</TD><TD>                        int columnWidths[] = new int[]{Display.getCurrent().getBounds().width / 14, Display.getCurrent().getBounds().width / 7, Display.getCurrent().getBounds().width / 7, Display.getCurrent().getBounds().width / 14, Display.getCurrent().getBounds().width / 7};</TD></TR><TR CLASS="z"><TD CLASS="l">379</TD><TD>                        for (int i = 0; i &lt; columns.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">380</TD><TD>                                tlayout.addColumnData(new ColumnWeightData(1));</TD></TR><TR CLASS="z"><TD CLASS="l">381</TD><TD>                                TableColumn tc = new TableColumn(annotationsTable.getTable(), SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">382</TD><TD>                                tc.setText(columns[i]);</TD></TR><TR CLASS="z"><TD CLASS="l">383</TD><TD>                                tc.setResizable(true);</TD></TR><TR CLASS="z"><TD CLASS="l">384</TD><TD>                                tc.setWidth(columnWidths[i]);</TD></TR><TR><TD CLASS="l">385</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">386</TD><TD>                        annotationsTable.setCellEditors(cellEditors);</TD></TR><TR CLASS="z"><TD CLASS="l">387</TD><TD>                        annotationsTable.setColumnProperties(columns);</TD></TR><TR CLASS="z"><TD CLASS="l">388</TD><TD>                        List matchingAnnotations = new ArrayList(0);</TD></TR><TR CLASS="z"><TD CLASS="l">389</TD><TD>                        if (fTextEditor != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">390</TD><TD>                                IAnnotationModel annotationModel = fTextEditor.getDocumentProvider().getAnnotationModel(fTextEditor.getEditorInput());</TD></TR><TR CLASS="z"><TD CLASS="l">391</TD><TD>                                if (annotationModel != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">392</TD><TD>                                        Iterator iterator = annotationModel.getAnnotationIterator();</TD></TR><TR CLASS="z"><TD CLASS="l">393</TD><TD>                                        while (iterator.hasNext()) {</TD></TR><TR CLASS="z"><TD CLASS="l">394</TD><TD>                                                Annotation element = (Annotation) iterator.next();</TD></TR><TR><TD CLASS="l">395</TD><TD>                                                if (true) {</TD></TR><TR CLASS="z"><TD CLASS="l">396</TD><TD>                                                        matchingAnnotations.add(element);</TD></TR><TR><TD CLASS="l">397</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">398</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">399</TD><TD>                                }</TD></TR><TR><TD CLASS="l">400</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">401</TD><TD>                        annotationsTable.setSorter(new ViewerSorter());</TD></TR><TR CLASS="z"><TD CLASS="l">402</TD><TD>                        annotationsTable.setInput(matchingAnnotations);</TD></TR><TR><TD CLASS="l">403</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3c">404</A></TD><TD>                        final Sash sash = new Sash(annotationsComposite, SWT.HORIZONTAL);</TD></TR><TR><TD CLASS="l">405</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3e">406</A></TD><TD>                        final PropertySheetPage propertySheet = new PropertySheetPage();</TD></TR><TR CLASS="z"><TD CLASS="l">407</TD><TD>                        propertySheet.createControl(annotationsComposite);</TD></TR><TR CLASS="z"><TD CLASS="l">408</TD><TD>                        propertySheet.setPropertySourceProvider(new IPropertySourceProvider() {</TD></TR><TR><TD CLASS="l">409</TD><TD>                                public IPropertySource getPropertySource(Object object) {</TD></TR><TR CLASS="z"><TD CLASS="l">410</TD><TD>                                        if (object instanceof Annotation) {</TD></TR><TR CLASS="z"><TD CLASS="l">411</TD><TD>                                                IPropertySource annotationPropertySource = new AnnotationPropertySource(((Annotation) object));</TD></TR><TR CLASS="z"><TD CLASS="l">412</TD><TD>                                                return annotationPropertySource;</TD></TR><TR><TD CLASS="l">413</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3f">414</A></TD><TD>                                        return null;</TD></TR><TR><TD CLASS="l">415</TD><TD>                                }</TD></TR><TR><TD CLASS="l"><A NAME="41">416</A></TD><TD>                        });</TD></TR><TR><TD CLASS="l">417</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">418</TD><TD>                        annotationsTable.addSelectionChangedListener(new ISelectionChangedListener() {</TD></TR><TR><TD CLASS="l">419</TD><TD>                                public void selectionChanged(SelectionChangedEvent event) {</TD></TR><TR CLASS="z"><TD CLASS="l">420</TD><TD>                                        propertySheet.selectionChanged(null, event.getSelection());</TD></TR><TR CLASS="z"><TD CLASS="l">421</TD><TD>                                }</TD></TR><TR><TD CLASS="l">422</TD><TD>                        });</TD></TR><TR><TD CLASS="l">423</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">424</TD><TD>                        final FormLayout form = new FormLayout();</TD></TR><TR CLASS="z"><TD CLASS="l">425</TD><TD>                        annotationsComposite.setLayout(form);</TD></TR><TR><TD CLASS="l">426</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">427</TD><TD>                        FormData tableData = new FormData();</TD></TR><TR CLASS="z"><TD CLASS="l">428</TD><TD>                        tableData.top = new FormAttachment(0, 0);</TD></TR><TR CLASS="z"><TD CLASS="l">429</TD><TD>                        tableData.bottom = new FormAttachment(sash, 2);</TD></TR><TR CLASS="z"><TD CLASS="l">430</TD><TD>                        tableData.left = new FormAttachment(0, 0);</TD></TR><TR CLASS="z"><TD CLASS="l">431</TD><TD>                        tableData.right = new FormAttachment(100, 0);</TD></TR><TR CLASS="z"><TD CLASS="l">432</TD><TD>                        annotationsTable.getControl().setLayoutData(tableData);</TD></TR><TR><TD CLASS="l">433</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">434</TD><TD>                        FormData propertiesData = new FormData();</TD></TR><TR CLASS="z"><TD CLASS="l">435</TD><TD>                        propertiesData.top = new FormAttachment(sash, 2);</TD></TR><TR CLASS="z"><TD CLASS="l">436</TD><TD>                        propertiesData.left = new FormAttachment(0, 0);</TD></TR><TR CLASS="z"><TD CLASS="l">437</TD><TD>                        propertiesData.right = new FormAttachment(100, 0);</TD></TR><TR CLASS="z"><TD CLASS="l">438</TD><TD>                        propertiesData.bottom = new FormAttachment(100, 0);</TD></TR><TR CLASS="z"><TD CLASS="l">439</TD><TD>                        propertySheet.getControl().setLayoutData(propertiesData);</TD></TR><TR><TD CLASS="l">440</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">441</TD><TD>                        final FormData sashData = new FormData();</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="42">442</A></TD><TD>                        sashData.top = new FormAttachment(60, 0);</TD></TR><TR CLASS="z"><TD CLASS="l">443</TD><TD>                        sashData.left = new FormAttachment(0, 0);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="44">444</A></TD><TD>                        sashData.right = new FormAttachment(100, 0);</TD></TR><TR CLASS="z"><TD CLASS="l">445</TD><TD>                        sash.setLayoutData(sashData);</TD></TR><TR CLASS="z"><TD CLASS="l">446</TD><TD>                        sash.addListener(SWT.Selection, new org.eclipse.swt.widgets.Listener() {</TD></TR><TR><TD CLASS="l">447</TD><TD>                                public void handleEvent(Event e) {</TD></TR><TR CLASS="z"><TD CLASS="l">448</TD><TD>                                        sashData.top = new FormAttachment(0, e.y);</TD></TR><TR CLASS="z"><TD CLASS="l">449</TD><TD>                                        annotationsComposite.layout();</TD></TR><TR CLASS="z"><TD CLASS="l">450</TD><TD>                                }</TD></TR><TR><TD CLASS="l">451</TD><TD>                        });</TD></TR><TR CLASS="z"><TD CLASS="l">452</TD><TD>                        annotationsComposite.pack(true);</TD></TR><TR CLASS="z"><TD CLASS="l">453</TD><TD>                }</TD></TR><TR><TD CLASS="l">454</TD><TD> </TD></TR><TR><TD CLASS="l">455</TD><TD>                /*</TD></TR><TR><TD CLASS="l">456</TD><TD>                 * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="61">457</A></TD><TD>                 * </TD></TR><TR><TD CLASS="l">458</TD><TD>                 * @see org.eclipse.jface.dialogs.Dialog#createDialogArea(org.eclipse.swt.widgets.Composite)</TD></TR><TR><TD CLASS="l">459</TD><TD>                 */</TD></TR><TR><TD CLASS="l">460</TD><TD>                protected Control createDialogArea(Composite parent) {</TD></TR><TR CLASS="z"><TD CLASS="l">461</TD><TD>                        ISelection selection = fTextEditor.getSelectionProvider().getSelection();</TD></TR><TR CLASS="z"><TD CLASS="l">462</TD><TD>                        ITextSelection textSelection = (ITextSelection) selection;</TD></TR><TR CLASS="z"><TD CLASS="l">463</TD><TD>                        IStructuredSelection structuredSelection = null;</TD></TR><TR CLASS="z"><TD CLASS="l">464</TD><TD>                        if (selection instanceof IStructuredSelection)</TD></TR><TR CLASS="z"><TD CLASS="l">465</TD><TD>                                structuredSelection = (IStructuredSelection) selection;</TD></TR><TR><TD CLASS="l">466</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">467</TD><TD>                        parent.getShell().setText(SSEUIMessages.OffsetStatusLineContributionItem_0 + textSelection.getOffset() + &#34;-&#34; + (textSelection.getOffset() + textSelection.getLength())); //$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR CLASS="z"><TD CLASS="l">468</TD><TD>                        Composite composite = (Composite) super.createDialogArea(parent);</TD></TR><TR><TD CLASS="l">469</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">470</TD><TD>                        Text documentTypeLabel = new Text(composite, SWT.SINGLE | SWT.READ_ONLY);</TD></TR><TR CLASS="z"><TD CLASS="l">471</TD><TD>                        GridData gd = new GridData(SWT.FILL, SWT.FILL, true, false);</TD></TR><TR CLASS="z"><TD CLASS="l">472</TD><TD>                        gd.horizontalSpan = 2;</TD></TR><TR CLASS="z"><TD CLASS="l">473</TD><TD>                        documentTypeLabel.setLayoutData(gd);</TD></TR><TR CLASS="z"><TD CLASS="l">474</TD><TD>                        documentTypeLabel.setText(SSEUIMessages.OffsetStatusLineContributionItem_6 + fDocument.getClass().getName()); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">475</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">476</TD><TD>                        Text documentProviderLabel = new Text(composite, SWT.SINGLE | SWT.READ_ONLY);</TD></TR><TR CLASS="z"><TD CLASS="l">477</TD><TD>                        gd = new GridData(SWT.FILL, SWT.FILL, true, false);</TD></TR><TR CLASS="z"><TD CLASS="l">478</TD><TD>                        gd.horizontalSpan = 2;</TD></TR><TR CLASS="z"><TD CLASS="l">479</TD><TD>                        documentProviderLabel.setLayoutData(gd);</TD></TR><TR CLASS="z"><TD CLASS="l">480</TD><TD>                        documentProviderLabel.setText(SSEUIMessages.OffsetStatusLineContributionItem_7 + fTextEditor.getDocumentProvider().getClass().getName()); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">481</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">482</TD><TD>                        Text editorInputLabel = new Text(composite, SWT.SINGLE | SWT.READ_ONLY);</TD></TR><TR CLASS="z"><TD CLASS="l">483</TD><TD>                        gd = new GridData(SWT.FILL, SWT.FILL, true, false);</TD></TR><TR CLASS="z"><TD CLASS="l">484</TD><TD>                        gd.horizontalSpan = 2;</TD></TR><TR CLASS="z"><TD CLASS="l">485</TD><TD>                        editorInputLabel.setLayoutData(gd);</TD></TR><TR CLASS="z"><TD CLASS="l">486</TD><TD>                        editorInputLabel.setText(SSEUIMessages.OffsetStatusLineContributionItem_12 + fTextEditor.getEditorInput().getClass().getName()); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">487</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">488</TD><TD>                        final Text bomLabel = new Text(composite, SWT.SINGLE | SWT.READ_ONLY);</TD></TR><TR CLASS="z"><TD CLASS="l">489</TD><TD>                        gd = new GridData(SWT.FILL, SWT.FILL, true, false);</TD></TR><TR CLASS="z"><TD CLASS="l">490</TD><TD>                        gd.horizontalSpan = 2;</TD></TR><TR CLASS="z"><TD CLASS="l">491</TD><TD>                        bomLabel.setLayoutData(gd);</TD></TR><TR CLASS="z"><TD CLASS="l">492</TD><TD>                        bomLabel.setEnabled(false);</TD></TR><TR CLASS="z"><TD CLASS="l">493</TD><TD>                        bomLabel.setText(&#34;Byte Order Mark: &#34;);</TD></TR><TR><TD CLASS="l">494</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">495</TD><TD>                        IStructuredModel model = StructuredModelManager.getModelManager().getExistingModelForRead(fDocument);</TD></TR><TR CLASS="z"><TD CLASS="l">496</TD><TD>                        if (model != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">497</TD><TD>                                Text modelIdLabel = new Text(composite, SWT.SINGLE | SWT.READ_ONLY);</TD></TR><TR CLASS="z"><TD CLASS="l">498</TD><TD>                                gd = new GridData(SWT.FILL, SWT.FILL, true, false);</TD></TR><TR CLASS="z"><TD CLASS="l">499</TD><TD>                                gd.horizontalSpan = 2;</TD></TR><TR CLASS="z"><TD CLASS="l">500</TD><TD>                                modelIdLabel.setLayoutData(gd);</TD></TR><TR CLASS="z"><TD CLASS="l">501</TD><TD>                                modelIdLabel.setText(&#34;ID: &#34; + model.getId()); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">502</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">503</TD><TD>                                Text modelBaseLocationLabel = new Text(composite, SWT.SINGLE | SWT.READ_ONLY);</TD></TR><TR CLASS="z"><TD CLASS="l">504</TD><TD>                                gd = new GridData(SWT.FILL, SWT.FILL, true, false);</TD></TR><TR CLASS="z"><TD CLASS="l">505</TD><TD>                                gd.horizontalSpan = 2;</TD></TR><TR CLASS="z"><TD CLASS="l">506</TD><TD>                                modelBaseLocationLabel.setLayoutData(gd);</TD></TR><TR CLASS="z"><TD CLASS="l">507</TD><TD>                                modelBaseLocationLabel.setText(&#34;Base Location: &#34; + model.getBaseLocation()); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">508</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">509</TD><TD>                                Text modelContentTypeLabel = new Text(composite, SWT.SINGLE | SWT.READ_ONLY);</TD></TR><TR CLASS="z"><TD CLASS="l">510</TD><TD>                                gd = new GridData(SWT.FILL, SWT.FILL, true, false);</TD></TR><TR CLASS="z"><TD CLASS="l">511</TD><TD>                                gd.horizontalSpan = 2;</TD></TR><TR CLASS="z"><TD CLASS="l">512</TD><TD>                                modelContentTypeLabel.setLayoutData(gd);</TD></TR><TR CLASS="z"><TD CLASS="l">513</TD><TD>                                modelContentTypeLabel.setText(SSEUIMessages.OffsetStatusLineContributionItem_4 + model.getContentTypeIdentifier()); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">514</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">515</TD><TD>                                Text modelHandlerContentTypeLabel = new Text(composite, SWT.MULTI | SWT.WRAP | SWT.READ_ONLY);</TD></TR><TR CLASS="z"><TD CLASS="l">516</TD><TD>                                gd = new GridData(SWT.FILL, SWT.FILL, true, false);</TD></TR><TR CLASS="z"><TD CLASS="l">517</TD><TD>                                gd.horizontalSpan = 2;</TD></TR><TR CLASS="z"><TD CLASS="l">518</TD><TD>                                modelHandlerContentTypeLabel.setLayoutData(gd);</TD></TR><TR CLASS="z"><TD CLASS="l">519</TD><TD>                                modelHandlerContentTypeLabel.setText(SSEUIMessages.OffsetStatusLineContributionItem_5 + model.getModelHandler().getAssociatedContentTypeId() + &#34; (&#34; + model.getModelHandler() + &#34;)&#34;); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$</TD></TR><TR><TD CLASS="l">520</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">521</TD><TD>                                final Text counts = new Text(composite, SWT.MULTI | SWT.WRAP | SWT.READ_ONLY);</TD></TR><TR CLASS="z"><TD CLASS="l">522</TD><TD>                                gd = new GridData(SWT.FILL, SWT.FILL, true, false);</TD></TR><TR CLASS="z"><TD CLASS="l">523</TD><TD>                                gd.horizontalSpan = 2;</TD></TR><TR CLASS="z"><TD CLASS="l">524</TD><TD>                                counts.setLayoutData(gd);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="45">525</A></TD><TD>                                counts.setText(&#34;Counting...&#34;);</TD></TR><TR CLASS="z"><TD CLASS="l">526</TD><TD>                                counts.setEnabled(false);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="47">527</A></TD><TD>                                final IStructuredModel finalModel = model;</TD></TR><TR CLASS="z"><TD CLASS="l">528</TD><TD>                                final Display display = Display.getCurrent();</TD></TR><TR CLASS="z"><TD CLASS="l">529</TD><TD>                                Job counter = new Job(&#34;Counting regions&#34;) {</TD></TR><TR><TD CLASS="l">530</TD><TD>                                        protected IStatus run(IProgressMonitor monitor) {</TD></TR><TR CLASS="z"><TD CLASS="l">531</TD><TD>                                                IStructuredDocumentRegion[] structuredDocumentRegions = finalModel.getStructuredDocument().getStructuredDocumentRegions();</TD></TR><TR CLASS="z"><TD CLASS="l">532</TD><TD>                                                int length = finalModel.getStructuredDocument().getLength();</TD></TR><TR CLASS="z"><TD CLASS="l">533</TD><TD>                                                int regionCount = 0;</TD></TR><TR CLASS="z"><TD CLASS="l">534</TD><TD>                                                for (int i = 0; i &lt; structuredDocumentRegions.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="48">535</A></TD><TD>                                                        regionCount += structuredDocumentRegions[i].getNumberOfRegions();</TD></TR><TR><TD CLASS="l">536</TD><TD>                                                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4a">537</A></TD><TD>                                                NumberFormat formatter = NumberFormat.getIntegerInstance();</TD></TR><TR CLASS="z"><TD CLASS="l">538</TD><TD>                                                final String regioncount = &#34;Count: &#34; + formatter.format(structuredDocumentRegions.length) + &#34; document regions containing &#34; + formatter.format(regionCount) + &#34; text regions representing &#34; + formatter.format(length) + &#34; characters&#34;;//$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$</TD></TR><TR CLASS="z"><TD CLASS="l">539</TD><TD>                                                display.asyncExec(new Runnable() {</TD></TR><TR><TD CLASS="l">540</TD><TD>                                                        public void run() {</TD></TR><TR CLASS="z"><TD CLASS="l">541</TD><TD>                                                                if (!counts.isDisposed()) {</TD></TR><TR CLASS="z"><TD CLASS="l">542</TD><TD>                                                                        counts.setText(regioncount);</TD></TR><TR CLASS="z"><TD CLASS="l">543</TD><TD>                                                                        counts.setEnabled(true);</TD></TR><TR><TD CLASS="l">544</TD><TD>                                                                }</TD></TR><TR CLASS="z"><TD CLASS="l">545</TD><TD>                                                                if (!bomLabel.isDisposed()) {</TD></TR><TR CLASS="z"><TD CLASS="l">546</TD><TD>                                                                        bomLabel.setText(&#34;Byte Order Mark: &#34; + getBOMText(fTextEditor.getEditorInput())); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">547</TD><TD>                                                                        bomLabel.setEnabled(true);</TD></TR><TR><TD CLASS="l">548</TD><TD>                                                                }</TD></TR><TR CLASS="z"><TD CLASS="l">549</TD><TD>                                                        }</TD></TR><TR><TD CLASS="l">550</TD><TD>                                                });</TD></TR><TR CLASS="z"><TD CLASS="l">551</TD><TD>                                                return Status.OK_STATUS;</TD></TR><TR><TD CLASS="l">552</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">553</TD><TD>                                };</TD></TR><TR CLASS="z"><TD CLASS="l">554</TD><TD>                                counter.schedule(1000);</TD></TR><TR><TD CLASS="l">555</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">556</TD><TD>                                Label blankRow = new Label(composite, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">557</TD><TD>                                gd = new GridData(SWT.FILL, SWT.FILL, true, false);</TD></TR><TR CLASS="z"><TD CLASS="l">558</TD><TD>                                gd.horizontalSpan = 2;</TD></TR><TR CLASS="z"><TD CLASS="l">559</TD><TD>                                blankRow.setLayoutData(gd);</TD></TR><TR><TD CLASS="l">560</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">561</TD><TD>                        if (model != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">562</TD><TD>                                model.releaseFromRead();</TD></TR><TR><TD CLASS="l">563</TD><TD>                        }</TD></TR><TR><TD CLASS="l">564</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">565</TD><TD>                        TabFolder tabfolder = new TabFolder(composite, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">566</TD><TD>                        tabfolder.setLayoutData(new GridData(GridData.FILL_BOTH));</TD></TR><TR><TD CLASS="l">567</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">568</TD><TD>                        TabItem partitionTab = new TabItem(tabfolder, SWT.BORDER);</TD></TR><TR CLASS="z"><TD CLASS="l">569</TD><TD>                        partitionTab.setText(SSEUIMessages.OffsetStatusLineContributionItem_2); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">570</TD><TD>                        SashForm partitions = new SashForm(tabfolder, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">571</TD><TD>                        partitions.setOrientation(SWT.VERTICAL);</TD></TR><TR CLASS="z"><TD CLASS="l">572</TD><TD>                        partitionTab.setControl(partitions);</TD></TR><TR CLASS="z"><TD CLASS="l">573</TD><TD>                        createPartitionTabContents(partitions);</TD></TR><TR CLASS="z"><TD CLASS="l">574</TD><TD>                        partitions.setWeights(new int[]{2, 1});</TD></TR><TR><TD CLASS="l">575</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">576</TD><TD>                        TabItem annotationsTab = new TabItem(tabfolder, SWT.BORDER);</TD></TR><TR CLASS="z"><TD CLASS="l">577</TD><TD>                        annotationsTab.setText(&#34;Annotations&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">578</TD><TD>                        Composite annotations = new Composite(tabfolder, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">579</TD><TD>                        annotationsTab.setControl(annotations);</TD></TR><TR CLASS="z"><TD CLASS="l">580</TD><TD>                        createAnnotationTabContents(annotations);</TD></TR><TR><TD CLASS="l">581</TD><TD> </TD></TR><TR><TD CLASS="l">582</TD><TD>                        // only create the ITextRegions tab for IStructuredDocuments</TD></TR><TR CLASS="z"><TD CLASS="l">583</TD><TD>                        if (fDocument instanceof IStructuredDocument) {</TD></TR><TR CLASS="z"><TD CLASS="l">584</TD><TD>                                TabItem regionTab = new TabItem(tabfolder, SWT.BORDER);</TD></TR><TR CLASS="z"><TD CLASS="l">585</TD><TD>                                regionTab.setText(SSEUIMessages.OffsetStatusLineContributionItem_3); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">586</TD><TD>                                SashForm regions = new SashForm(tabfolder, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">587</TD><TD>                                regions.setOrientation(SWT.HORIZONTAL);</TD></TR><TR CLASS="z"><TD CLASS="l">588</TD><TD>                                regionTab.setControl(regions);</TD></TR><TR CLASS="z"><TD CLASS="l">589</TD><TD>                                createRegionTabContents(regions);</TD></TR><TR CLASS="z"><TD CLASS="l">590</TD><TD>                                regions.setWeights(new int[]{3, 2});</TD></TR><TR><TD CLASS="l">591</TD><TD>                        }</TD></TR><TR><TD CLASS="l">592</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">593</TD><TD>                        if (structuredSelection != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">594</TD><TD>                                TabItem editorSelectionTab = new TabItem(tabfolder, SWT.BORDER);</TD></TR><TR CLASS="z"><TD CLASS="l">595</TD><TD>                                editorSelectionTab.setText(SSEUIMessages.OffsetStatusLineContributionItem_14);</TD></TR><TR CLASS="z"><TD CLASS="l">596</TD><TD>                                Composite editorSelectionComposite = new Composite(tabfolder, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">597</TD><TD>                                editorSelectionTab.setControl(editorSelectionComposite);</TD></TR><TR CLASS="z"><TD CLASS="l">598</TD><TD>                                fillSelectionTabContents(editorSelectionComposite, structuredSelection.toList(), &#34;Class: &#34; + structuredSelection.getClass().getName()); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">599</TD><TD>                        }</TD></TR><TR><TD CLASS="l">600</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">601</TD><TD>                        model = StructuredModelManager.getModelManager().getExistingModelForRead(fDocument);</TD></TR><TR CLASS="z"><TD CLASS="l">602</TD><TD>                        if (model != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">603</TD><TD>                                TabItem overlappingIndexedRegionsTab = new TabItem(tabfolder, SWT.BORDER);</TD></TR><TR CLASS="z"><TD CLASS="l">604</TD><TD>                                overlappingIndexedRegionsTab.setText(SSEUIMessages.OffsetStatusLineContributionItem_20);</TD></TR><TR CLASS="z"><TD CLASS="l">605</TD><TD>                                Composite overlappingIndexedRegionsTabComposite = new Composite(tabfolder, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">606</TD><TD>                                overlappingIndexedRegionsTab.setControl(overlappingIndexedRegionsTabComposite);</TD></TR><TR CLASS="z"><TD CLASS="l">607</TD><TD>                                fillSelectionTabContents(overlappingIndexedRegionsTabComposite, getIndexedRegions(textSelection), &#34;All IndexedRegions overlapping text selection&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">608</TD><TD>                                model.releaseFromRead();</TD></TR><TR><TD CLASS="l">609</TD><TD>                        }</TD></TR><TR><TD CLASS="l">610</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">611</TD><TD>                        IEditorSite site = fTextEditor.getEditorSite();</TD></TR><TR CLASS="z"><TD CLASS="l">612</TD><TD>                        if (site != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">613</TD><TD>                                IWorkbenchWindow window = site.getWorkbenchWindow();</TD></TR><TR CLASS="z"><TD CLASS="l">614</TD><TD>                                if (window != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">615</TD><TD>                                        ISelectionService service = window.getSelectionService();</TD></TR><TR CLASS="z"><TD CLASS="l">616</TD><TD>                                        ISelection selectionFromService = service.getSelection();</TD></TR><TR CLASS="z"><TD CLASS="l">617</TD><TD>                                        if (service != null &amp;&amp; !selectionFromService.equals(structuredSelection) &amp;&amp; selectionFromService instanceof IStructuredSelection) {</TD></TR><TR CLASS="z"><TD CLASS="l">618</TD><TD>                                                TabItem selectionServiceTab = new TabItem(tabfolder, SWT.BORDER);</TD></TR><TR CLASS="z"><TD CLASS="l">619</TD><TD>                                                selectionServiceTab.setText(SSEUIMessages.OffsetStatusLineContributionItem_19);</TD></TR><TR CLASS="z"><TD CLASS="l">620</TD><TD>                                                Composite selectionServiceComposite = new Composite(tabfolder, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">621</TD><TD>                                                selectionServiceTab.setControl(selectionServiceComposite);</TD></TR><TR CLASS="z"><TD CLASS="l">622</TD><TD>                                                fillSelectionTabContents(selectionServiceComposite, ((IStructuredSelection) selectionFromService).toList(), &#34;Class: &#34; + selectionFromService.getClass().getName()); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">623</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">624</TD><TD>                                }</TD></TR><TR><TD CLASS="l">625</TD><TD>                        }</TD></TR><TR><TD CLASS="l">626</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">627</TD><TD>                        return composite;</TD></TR><TR><TD CLASS="l">628</TD><TD>                }</TD></TR><TR><TD CLASS="l">629</TD><TD> </TD></TR><TR><TD CLASS="l">630</TD><TD>                /**</TD></TR><TR><TD CLASS="l"><A NAME="65">631</A></TD><TD>                 * @param editorInput</TD></TR><TR><TD CLASS="l">632</TD><TD>                 * @return</TD></TR><TR><TD CLASS="l">633</TD><TD>                 */</TD></TR><TR><TD CLASS="l">634</TD><TD>                private String getBOMText(IEditorInput editorInput) {</TD></TR><TR CLASS="z"><TD CLASS="l">635</TD><TD>                        IFile file = (IFile) editorInput.getAdapter(IFile.class);</TD></TR><TR CLASS="z"><TD CLASS="l">636</TD><TD>                        String detectedBOM = &#34;none&#34;; //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">637</TD><TD>                        if (file != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">638</TD><TD>                                InputStream s = null;</TD></TR><TR><TD CLASS="l">639</TD><TD>                                try {</TD></TR><TR CLASS="z"><TD CLASS="l">640</TD><TD>                                        s = file.getContents(true);</TD></TR><TR CLASS="z"><TD CLASS="l">641</TD><TD>                                        if (s != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">642</TD><TD>                                                int b1 = s.read() &amp; 0xFF;</TD></TR><TR CLASS="z"><TD CLASS="l">643</TD><TD>                                                int b2 = s.read() &amp; 0xFF;</TD></TR><TR CLASS="z"><TD CLASS="l">644</TD><TD>                                                if (b1 == 0xFE &amp;&amp; b2 == 0xFF) {</TD></TR><TR CLASS="z"><TD CLASS="l">645</TD><TD>                                                        detectedBOM = &#34;FE FF (UTF-16BE)&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">646</TD><TD>                                                }</TD></TR><TR CLASS="z"><TD CLASS="l">647</TD><TD>                                                else if (b1 == 0xFF &amp;&amp; b2 == 0xFE) {</TD></TR><TR CLASS="z"><TD CLASS="l">648</TD><TD>                                                        detectedBOM = &#34;FF FE (UTF-16LE)&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">649</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">650</TD><TD>                                                else {</TD></TR><TR CLASS="z"><TD CLASS="l">651</TD><TD>                                                        int b3 = s.read() &amp; 0xFF;</TD></TR><TR CLASS="z"><TD CLASS="l">652</TD><TD>                                                        if (b1 == 0xEF &amp;&amp; b2 == 0xBB &amp;&amp; b3 == 0xBF) {</TD></TR><TR CLASS="z"><TD CLASS="l">653</TD><TD>                                                                detectedBOM = &#34;EF BB BF (UTF-8)&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">654</TD><TD>                                                        }</TD></TR><TR><TD CLASS="l">655</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">656</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">657</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">658</TD><TD>                                catch (Exception e) {</TD></TR><TR CLASS="z"><TD CLASS="l">659</TD><TD>                                        detectedBOM = e.getMessage();</TD></TR><TR><TD CLASS="l">660</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">661</TD><TD>                                finally {</TD></TR><TR CLASS="z"><TD CLASS="l">662</TD><TD>                                        if (s != null)</TD></TR><TR><TD CLASS="l">663</TD><TD>                                                try {</TD></TR><TR CLASS="z"><TD CLASS="l">664</TD><TD>                                                        s.close();</TD></TR><TR><TD CLASS="l">665</TD><TD>                                                }</TD></TR><TR CLASS="z"><TD CLASS="l">666</TD><TD>                                                catch (IOException e) {</TD></TR><TR><TD CLASS="l">667</TD><TD>                                                }</TD></TR><TR CLASS="z"><TD CLASS="l">668</TD><TD>                                }</TD></TR><TR><TD CLASS="l">669</TD><TD>                        }</TD></TR><TR><TD CLASS="l">670</TD><TD>                        else {</TD></TR><TR CLASS="z"><TD CLASS="l">671</TD><TD>                                detectedBOM = &#34;N/A&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">672</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="66">673</A></TD><TD>                        return detectedBOM;</TD></TR><TR><TD CLASS="l">674</TD><TD>                }</TD></TR><TR><TD CLASS="l">675</TD><TD> </TD></TR><TR><TD CLASS="l">676</TD><TD>                private List getIndexedRegions(ITextSelection textSelection) {</TD></TR><TR CLASS="z"><TD CLASS="l">677</TD><TD>                        Set overlappingIndexedRegions = new HashSet(2);</TD></TR><TR CLASS="z"><TD CLASS="l">678</TD><TD>                        int start = textSelection.getOffset();</TD></TR><TR CLASS="z"><TD CLASS="l">679</TD><TD>                        int end = start + textSelection.getLength();</TD></TR><TR CLASS="z"><TD CLASS="l">680</TD><TD>                        IStructuredModel model = StructuredModelManager.getModelManager().getExistingModelForRead(fDocument);</TD></TR><TR CLASS="z"><TD CLASS="l">681</TD><TD>                        if (model != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">682</TD><TD>                                for (int i = start; i &lt;= end; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">683</TD><TD>                                        IndexedRegion r = model.getIndexedRegion(i);</TD></TR><TR CLASS="z"><TD CLASS="l">684</TD><TD>                                        if (r != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">685</TD><TD>                                                overlappingIndexedRegions.add(r);</TD></TR><TR><TD CLASS="l">686</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">687</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">688</TD><TD>                                model.releaseFromRead();</TD></TR><TR><TD CLASS="l">689</TD><TD>                        }</TD></TR><TR><TD CLASS="l">690</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">691</TD><TD>                        return Arrays.asList(overlappingIndexedRegions.toArray());</TD></TR><TR><TD CLASS="l">692</TD><TD>                }</TD></TR><TR><TD CLASS="l">693</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="62">694</A></TD><TD>                /**</TD></TR><TR><TD CLASS="l">695</TD><TD>                 * @param sash</TD></TR><TR><TD CLASS="l">696</TD><TD>                 */</TD></TR><TR><TD CLASS="l">697</TD><TD>                private void createPartitionTabContents(SashForm sash) {</TD></TR><TR CLASS="z"><TD CLASS="l">698</TD><TD>                        Composite partioningComposite = new Composite(sash, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">699</TD><TD>                        partioningComposite.setLayout(new GridLayout(2, false));</TD></TR><TR CLASS="z"><TD CLASS="l">700</TD><TD>                        partioningComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));</TD></TR><TR><TD CLASS="l">701</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">702</TD><TD>                        Label label = new Label(partioningComposite, SWT.SINGLE);</TD></TR><TR CLASS="z"><TD CLASS="l">703</TD><TD>                        label.setText(SSEUIMessages.OffsetStatusLineContributionItem_8); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">704</TD><TD>                        label.setLayoutData(new GridData(SWT.FILL, SWT.FILL, false, false));</TD></TR><TR CLASS="z"><TD CLASS="l">705</TD><TD>                        final Combo partitioningCombo = new Combo(partioningComposite, SWT.READ_ONLY);</TD></TR><TR CLASS="z"><TD CLASS="l">706</TD><TD>                        partitioningCombo.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false));</TD></TR><TR><TD CLASS="l">707</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">708</TD><TD>                        final Label partitionerInstanceLabel = new Label(partioningComposite, SWT.SINGLE);</TD></TR><TR CLASS="z"><TD CLASS="l">709</TD><TD>                        GridData gd = new GridData(SWT.FILL, SWT.FILL, true, false);</TD></TR><TR CLASS="z"><TD CLASS="l">710</TD><TD>                        gd.horizontalSpan = 2;</TD></TR><TR CLASS="z"><TD CLASS="l">711</TD><TD>                        partitionerInstanceLabel.setLayoutData(gd);</TD></TR><TR><TD CLASS="l">712</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">713</TD><TD>                        final TableViewer fPartitionTable = new TableViewer(partioningComposite, SWT.FULL_SELECTION);</TD></TR><TR CLASS="z"><TD CLASS="l">714</TD><TD>                        gd = new GridData(SWT.FILL, SWT.FILL, true, true);</TD></TR><TR CLASS="z"><TD CLASS="l">715</TD><TD>                        gd.horizontalSpan = 2;</TD></TR><TR CLASS="z"><TD CLASS="l">716</TD><TD>                        fPartitionTable.getControl().setLayoutData(gd);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4b">717</A></TD><TD>                        fPartitionTable.setContentProvider(new ArrayContentProvider());</TD></TR><TR CLASS="z"><TD CLASS="l">718</TD><TD>                        fPartitionTable.getTable().setHeaderVisible(true);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4d">719</A></TD><TD>                        fPartitionTable.getTable().setLinesVisible(true);</TD></TR><TR CLASS="z"><TD CLASS="l">720</TD><TD>                        String[] columns = new String[]{SSEUIMessages.OffsetStatusLineContributionItem_9, SSEUIMessages.OffsetStatusLineContributionItem_10, SSEUIMessages.OffsetStatusLineContributionItem_11}; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$</TD></TR><TR CLASS="z"><TD CLASS="l">721</TD><TD>                        fPartitionTable.setLabelProvider(new ITableLabelProvider() {</TD></TR><TR><TD CLASS="l"><A NAME="4e">722</A></TD><TD>                                public void addListener(ILabelProviderListener listener) {</TD></TR><TR CLASS="z"><TD CLASS="l">723</TD><TD>                                }</TD></TR><TR><TD CLASS="l">724</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="4f">725</A></TD><TD>                                public void dispose() {</TD></TR><TR CLASS="z"><TD CLASS="l">726</TD><TD>                                }</TD></TR><TR><TD CLASS="l">727</TD><TD> </TD></TR><TR><TD CLASS="l">728</TD><TD>                                public Image getColumnImage(Object element, int columnIndex) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="50">729</A></TD><TD>                                        return null;</TD></TR><TR><TD CLASS="l">730</TD><TD>                                }</TD></TR><TR><TD CLASS="l">731</TD><TD> </TD></TR><TR><TD CLASS="l">732</TD><TD>                                public String getColumnText(Object element, int columnIndex) {</TD></TR><TR CLASS="z"><TD CLASS="l">733</TD><TD>                                        ITypedRegion partition = (ITypedRegion) element;</TD></TR><TR CLASS="z"><TD CLASS="l">734</TD><TD>                                        String text = null;</TD></TR><TR CLASS="z"><TD CLASS="l">735</TD><TD>                                        switch (columnIndex) {</TD></TR><TR><TD CLASS="l">736</TD><TD>                                                case 0 :</TD></TR><TR CLASS="z"><TD CLASS="l">737</TD><TD>                                                        text = Integer.toString(partition.getOffset());</TD></TR><TR CLASS="z"><TD CLASS="l">738</TD><TD>                                                        break;</TD></TR><TR><TD CLASS="l">739</TD><TD>                                                case 1 :</TD></TR><TR CLASS="z"><TD CLASS="l">740</TD><TD>                                                        text = Integer.toString(partition.getLength());</TD></TR><TR CLASS="z"><TD CLASS="l">741</TD><TD>                                                        break;</TD></TR><TR><TD CLASS="l">742</TD><TD>                                                case 2 :</TD></TR><TR CLASS="z"><TD CLASS="l">743</TD><TD>                                                        text = partition.getType();</TD></TR><TR><TD CLASS="l">744</TD><TD>                                                        break;</TD></TR><TR><TD CLASS="l">745</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">746</TD><TD>                                        if (text == null)</TD></TR><TR CLASS="z"><TD CLASS="l">747</TD><TD>                                                text = &#34;&#34;; //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="51">748</A></TD><TD>                                        return text;</TD></TR><TR><TD CLASS="l">749</TD><TD>                                }</TD></TR><TR><TD CLASS="l">750</TD><TD> </TD></TR><TR><TD CLASS="l">751</TD><TD>                                public boolean isLabelProperty(Object element, String property) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="52">752</A></TD><TD>                                        return false;</TD></TR><TR><TD CLASS="l">753</TD><TD>                                }</TD></TR><TR><TD CLASS="l">754</TD><TD> </TD></TR><TR><TD CLASS="l">755</TD><TD>                                public void removeListener(ILabelProviderListener listener) {</TD></TR><TR CLASS="z"><TD CLASS="l">756</TD><TD>                                }</TD></TR><TR><TD CLASS="l">757</TD><TD>                        });</TD></TR><TR CLASS="z"><TD CLASS="l">758</TD><TD>                        TableLayout tlayout = new TableLayout();</TD></TR><TR CLASS="z"><TD CLASS="l">759</TD><TD>                        CellEditor[] cellEditors = new CellEditor[columns.length];</TD></TR><TR CLASS="z"><TD CLASS="l">760</TD><TD>                        int columnWidths[] = new int[]{Display.getCurrent().getBounds().width / 14, Display.getCurrent().getBounds().width / 14, Display.getCurrent().getBounds().width / 5};</TD></TR><TR CLASS="z"><TD CLASS="l">761</TD><TD>                        for (int i = 0; i &lt; columns.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">762</TD><TD>                                tlayout.addColumnData(new ColumnWeightData(1));</TD></TR><TR CLASS="z"><TD CLASS="l">763</TD><TD>                                TableColumn tc = new TableColumn(fPartitionTable.getTable(), SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">764</TD><TD>                                tc.setText(columns[i]);</TD></TR><TR CLASS="z"><TD CLASS="l">765</TD><TD>                                tc.setResizable(true);</TD></TR><TR CLASS="z"><TD CLASS="l">766</TD><TD>                                tc.setWidth(columnWidths[i]);</TD></TR><TR><TD CLASS="l">767</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="53">768</A></TD><TD>                        fPartitionTable.setCellEditors(cellEditors);</TD></TR><TR CLASS="z"><TD CLASS="l">769</TD><TD>                        fPartitionTable.setColumnProperties(columns);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="55">770</A></TD><TD>                        final String[] partitionings = (fDocument instanceof IDocumentExtension3) ? ((IDocumentExtension3) fDocument).getPartitionings() : new String[]{IDocumentExtension3.DEFAULT_PARTITIONING};</TD></TR><TR CLASS="z"><TD CLASS="l">771</TD><TD>                        partitioningCombo.setItems(partitionings);</TD></TR><TR CLASS="z"><TD CLASS="l">772</TD><TD>                        partitioningCombo.addSelectionListener(new SelectionAdapter() {</TD></TR><TR><TD CLASS="l">773</TD><TD>                                public void widgetSelected(SelectionEvent e) {</TD></TR><TR CLASS="z"><TD CLASS="l">774</TD><TD>                                        ISelection sel = fTextEditor.getSelectionProvider().getSelection();</TD></TR><TR CLASS="z"><TD CLASS="l">775</TD><TD>                                        ITextSelection textSelection = (ITextSelection) sel;</TD></TR><TR><TD CLASS="l">776</TD><TD>                                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">777</TD><TD>                                                String partitionerText = fDocument instanceof IDocumentExtension3 ? ((IDocumentExtension3) fDocument).getDocumentPartitioner(partitioningCombo.getItem(partitioningCombo.getSelectionIndex())).toString() : (&#34;&#34; + fDocument.getDocumentPartitioner()); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">778</TD><TD>                                                partitionerInstanceLabel.setText(SSEUIMessages.OffsetStatusLineContributionItem_13 + partitionerText); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">779</TD><TD>                                                fPartitionTable.setInput(TextUtilities.computePartitioning(fDocument, partitioningCombo.getItem(partitioningCombo.getSelectionIndex()), textSelection.getOffset(), textSelection.getLength(), true));</TD></TR><TR><TD CLASS="l">780</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">781</TD><TD>                                        catch (BadLocationException e1) {</TD></TR><TR CLASS="z"><TD CLASS="l">782</TD><TD>                                                fPartitionTable.setInput(new ITypedRegion[0]);</TD></TR><TR><TD CLASS="l">783</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">784</TD><TD>                                }</TD></TR><TR><TD CLASS="l">785</TD><TD>                        });</TD></TR><TR><TD CLASS="l">786</TD><TD>                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">787</TD><TD>                                if (partitionings.length &gt; 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">788</TD><TD>                                        String selectedPartitioning = partitioningCombo.getItem(0);</TD></TR><TR CLASS="z"><TD CLASS="l">789</TD><TD>                                        if (Utilities.contains(partitionings, IStructuredPartitioning.DEFAULT_STRUCTURED_PARTITIONING)) {</TD></TR><TR CLASS="z"><TD CLASS="l">790</TD><TD>                                                selectedPartitioning = IStructuredPartitioning.DEFAULT_STRUCTURED_PARTITIONING;</TD></TR><TR CLASS="z"><TD CLASS="l">791</TD><TD>                                                for (int i = 0; i &lt; partitionings.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">792</TD><TD>                                                        if (partitionings[i].equals(IStructuredPartitioning.DEFAULT_STRUCTURED_PARTITIONING)) {</TD></TR><TR CLASS="z"><TD CLASS="l">793</TD><TD>                                                                partitioningCombo.select(i);</TD></TR><TR><TD CLASS="l">794</TD><TD>                                                        }</TD></TR><TR><TD CLASS="l">795</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">796</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">797</TD><TD>                                        else {</TD></TR><TR CLASS="z"><TD CLASS="l">798</TD><TD>                                                partitioningCombo.select(0);</TD></TR><TR><TD CLASS="l">799</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">800</TD><TD>                                        ISelection sel = fTextEditor.getSelectionProvider().getSelection();</TD></TR><TR CLASS="z"><TD CLASS="l">801</TD><TD>                                        ITextSelection textSelection = (ITextSelection) sel;</TD></TR><TR CLASS="z"><TD CLASS="l">802</TD><TD>                                        ITypedRegion[] partitions = TextUtilities.computePartitioning(fDocument, selectedPartitioning, textSelection.getOffset(), textSelection.getLength(), true);</TD></TR><TR CLASS="z"><TD CLASS="l">803</TD><TD>                                        fPartitionTable.setInput(partitions);</TD></TR><TR CLASS="z"><TD CLASS="l">804</TD><TD>                                        String partitionerText = fDocument instanceof IDocumentExtension3 ? ((IDocumentExtension3) fDocument).getDocumentPartitioner(partitioningCombo.getItem(partitioningCombo.getSelectionIndex())).toString() : (&#34;&#34; + fDocument.getDocumentPartitioner()); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">805</TD><TD>                                        partitionerInstanceLabel.setText(SSEUIMessages.OffsetStatusLineContributionItem_13 + partitionerText); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">806</TD><TD>                                }</TD></TR><TR><TD CLASS="l">807</TD><TD>                                else {</TD></TR><TR CLASS="z"><TD CLASS="l">808</TD><TD>                                        ISelection sel = fTextEditor.getSelectionProvider().getSelection();</TD></TR><TR CLASS="z"><TD CLASS="l">809</TD><TD>                                        ITextSelection textSelection = (ITextSelection) sel;</TD></TR><TR CLASS="z"><TD CLASS="l">810</TD><TD>                                        fPartitionTable.setInput(fDocument.computePartitioning(textSelection.getOffset(), textSelection.getLength()));</TD></TR><TR><TD CLASS="l">811</TD><TD>                                }</TD></TR><TR><TD CLASS="l">812</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">813</TD><TD>                        catch (BadLocationException e1) {</TD></TR><TR CLASS="z"><TD CLASS="l">814</TD><TD>                                fPartitionTable.setInput(new ITypedRegion[0]);</TD></TR><TR><TD CLASS="l">815</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="7">816</A></TD><TD>                        partitioningCombo.setFocus();</TD></TR><TR><TD CLASS="l">817</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="9">818</A></TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">819</TD><TD>                        final StyledText text = new StyledText(sash, SWT.MULTI | SWT.READ_ONLY);</TD></TR><TR CLASS="z"><TD CLASS="l">820</TD><TD>                        fPartitionTable.addSelectionChangedListener(new ISelectionChangedListener() {</TD></TR><TR><TD CLASS="l">821</TD><TD>                                public void selectionChanged(SelectionChangedEvent event) {</TD></TR><TR CLASS="z"><TD CLASS="l">822</TD><TD>                                        if (event.getSelection() instanceof IStructuredSelection) {</TD></TR><TR CLASS="z"><TD CLASS="l">823</TD><TD>                                                IRegion partition = (IRegion) ((IStructuredSelection) event.getSelection()).getFirstElement();</TD></TR><TR CLASS="z"><TD CLASS="l">824</TD><TD>                                                IDocument document = fTextEditor.getDocumentProvider().getDocument(fTextEditor.getEditorInput());</TD></TR><TR><TD CLASS="l">825</TD><TD>                                                String source;</TD></TR><TR><TD CLASS="l">826</TD><TD>                                                try {</TD></TR><TR CLASS="z"><TD CLASS="l">827</TD><TD>                                                        source = document.get(partition.getOffset(), partition.getLength());</TD></TR><TR CLASS="z"><TD CLASS="l">828</TD><TD>                                                        text.setEnabled(true);</TD></TR><TR CLASS="z"><TD CLASS="l">829</TD><TD>                                                        text.setText(source);</TD></TR><TR><TD CLASS="l">830</TD><TD>                                                }</TD></TR><TR CLASS="z"><TD CLASS="l">831</TD><TD>                                                catch (BadLocationException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">832</TD><TD>                                                        e.printStackTrace();</TD></TR><TR><TD CLASS="l">833</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">834</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">835</TD><TD>                                }</TD></TR><TR><TD CLASS="l">836</TD><TD>                        });</TD></TR><TR CLASS="z"><TD CLASS="l">837</TD><TD>                        text.setEnabled(false);</TD></TR><TR CLASS="z"><TD CLASS="l">838</TD><TD>                }</TD></TR><TR><TD CLASS="l">839</TD><TD> </TD></TR><TR><TD CLASS="l">840</TD><TD>                /**</TD></TR><TR><TD CLASS="l"><A NAME="63">841</A></TD><TD>                 * @param composite</TD></TR><TR><TD CLASS="l">842</TD><TD>                 * @return</TD></TR><TR><TD CLASS="l">843</TD><TD>                 */</TD></TR><TR><TD CLASS="l">844</TD><TD>                private Composite createRegionTabContents(SashForm sashForm) {</TD></TR><TR CLASS="z"><TD CLASS="l">845</TD><TD>                        ISelection sel = fTextEditor.getSelectionProvider().getSelection();</TD></TR><TR CLASS="z"><TD CLASS="l">846</TD><TD>                        final ITextSelection textSelection = (ITextSelection) sel;</TD></TR><TR CLASS="z"><TD CLASS="l">847</TD><TD>                        final List documentRegions = new ArrayList();</TD></TR><TR CLASS="z"><TD CLASS="l">848</TD><TD>                        if (fDocument instanceof IStructuredDocument) {</TD></TR><TR CLASS="z"><TD CLASS="l">849</TD><TD>                                IStructuredDocument structuredDocument = (IStructuredDocument) fDocument;</TD></TR><TR CLASS="z"><TD CLASS="l">850</TD><TD>                                int pos = textSelection.getOffset();</TD></TR><TR CLASS="z"><TD CLASS="l">851</TD><TD>                                int end = textSelection.getOffset() + textSelection.getLength();</TD></TR><TR CLASS="z"><TD CLASS="l">852</TD><TD>                                IStructuredDocumentRegion docRegion = structuredDocument.getRegionAtCharacterOffset(pos);</TD></TR><TR CLASS="z"><TD CLASS="l">853</TD><TD>                                IStructuredDocumentRegion endRegion = structuredDocument.getRegionAtCharacterOffset(end);</TD></TR><TR CLASS="z"><TD CLASS="l">854</TD><TD>                                if (pos &lt; end) {</TD></TR><TR CLASS="z"><TD CLASS="l">855</TD><TD>                                        while (docRegion != endRegion) {</TD></TR><TR CLASS="z"><TD CLASS="l">856</TD><TD>                                                documentRegions.add(docRegion);</TD></TR><TR CLASS="z"><TD CLASS="l">857</TD><TD>                                                docRegion = docRegion.getNext();</TD></TR><TR><TD CLASS="l">858</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">859</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">860</TD><TD>                                documentRegions.add(docRegion);</TD></TR><TR><TD CLASS="l">861</TD><TD>                        }</TD></TR><TR><TD CLASS="l">862</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">863</TD><TD>                        final TreeViewer tree = new TreeViewer(sashForm, SWT.V_SCROLL | SWT.H_SCROLL);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="a">864</A></TD><TD>                        final String START = SSEUIMessages.OffsetStatusLineContributionItem_15; //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">865</TD><TD>                        final String LENGTH = SSEUIMessages.OffsetStatusLineContributionItem_16; //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="c">866</A></TD><TD>                        final String TEXTLENGTH = SSEUIMessages.OffsetStatusLineContributionItem_17; //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">867</TD><TD>                        final String CONTEXT = SSEUIMessages.OffsetStatusLineContributionItem_18; //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">868</TD><TD>                        tree.setContentProvider(new ITreeContentProvider() {</TD></TR><TR><TD CLASS="l"><A NAME="d">869</A></TD><TD>                                public void dispose() {</TD></TR><TR CLASS="z"><TD CLASS="l">870</TD><TD>                                }</TD></TR><TR><TD CLASS="l">871</TD><TD> </TD></TR><TR><TD CLASS="l">872</TD><TD>                                public Object[] getChildren(Object parentElement) {</TD></TR><TR CLASS="z"><TD CLASS="l">873</TD><TD>                                        List children = new ArrayList(0);</TD></TR><TR CLASS="z"><TD CLASS="l">874</TD><TD>                                        if (parentElement instanceof ITextSelection) {</TD></TR><TR CLASS="z"><TD CLASS="l">875</TD><TD>                                                children.addAll(documentRegions);</TD></TR><TR><TD CLASS="l">876</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">877</TD><TD>                                        if (parentElement instanceof ITextRegionCollection) {</TD></TR><TR CLASS="z"><TD CLASS="l">878</TD><TD>                                                children.add(((ITextRegionCollection) parentElement).getRegions().toArray());</TD></TR><TR><TD CLASS="l">879</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">880</TD><TD>                                        if (parentElement instanceof ITextRegion) {</TD></TR><TR CLASS="z"><TD CLASS="l">881</TD><TD>                                                children.add(new KeyValuePair(CONTEXT, ((ITextRegion) parentElement).getType()));</TD></TR><TR CLASS="z"><TD CLASS="l">882</TD><TD>                                                children.add(new KeyValuePair(START, Integer.toString(((ITextRegion) parentElement).getStart())));</TD></TR><TR CLASS="z"><TD CLASS="l">883</TD><TD>                                                children.add(new KeyValuePair(TEXTLENGTH, Integer.toString(((ITextRegion) parentElement).getTextLength())));</TD></TR><TR CLASS="z"><TD CLASS="l">884</TD><TD>                                                children.add(new KeyValuePair(LENGTH, Integer.toString(((ITextRegion) parentElement).getLength())));</TD></TR><TR><TD CLASS="l">885</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">886</TD><TD>                                        if (parentElement instanceof ITextRegionList) {</TD></TR><TR CLASS="z"><TD CLASS="l">887</TD><TD>                                                children.add(Arrays.asList(((ITextRegionList) parentElement).toArray()));</TD></TR><TR><TD CLASS="l">888</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">889</TD><TD>                                        if (parentElement instanceof Collection) {</TD></TR><TR CLASS="z"><TD CLASS="l">890</TD><TD>                                                children.addAll((Collection) parentElement);</TD></TR><TR><TD CLASS="l">891</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">892</TD><TD>                                        if (parentElement instanceof Object[]) {</TD></TR><TR CLASS="z"><TD CLASS="l">893</TD><TD>                                                children.addAll(Arrays.asList((Object[]) parentElement));</TD></TR><TR><TD CLASS="l">894</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="e">895</A></TD><TD>                                        return children.toArray();</TD></TR><TR><TD CLASS="l">896</TD><TD>                                }</TD></TR><TR><TD CLASS="l">897</TD><TD> </TD></TR><TR><TD CLASS="l">898</TD><TD>                                public Object[] getElements(Object inputElement) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="f">899</A></TD><TD>                                        return documentRegions.toArray();</TD></TR><TR><TD CLASS="l">900</TD><TD>                                }</TD></TR><TR><TD CLASS="l">901</TD><TD> </TD></TR><TR><TD CLASS="l">902</TD><TD>                                public Object getParent(Object element) {</TD></TR><TR CLASS="z"><TD CLASS="l">903</TD><TD>                                        if (element instanceof IStructuredDocumentRegion)</TD></TR><TR CLASS="z"><TD CLASS="l">904</TD><TD>                                                return ((IStructuredDocumentRegion) element).getParentDocument();</TD></TR><TR CLASS="z"><TD CLASS="l">905</TD><TD>                                        if (element instanceof ITextRegionContainer) {</TD></TR><TR CLASS="z"><TD CLASS="l">906</TD><TD>                                                return ((ITextRegionContainer) element).getParent();</TD></TR><TR><TD CLASS="l">907</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="10">908</A></TD><TD>                                        return fDocument;</TD></TR><TR><TD CLASS="l">909</TD><TD>                                }</TD></TR><TR><TD CLASS="l">910</TD><TD> </TD></TR><TR><TD CLASS="l">911</TD><TD>                                public boolean hasChildren(Object element) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="11">912</A></TD><TD>                                        return !(element instanceof KeyValuePair);</TD></TR><TR><TD CLASS="l">913</TD><TD>                                }</TD></TR><TR><TD CLASS="l"><A NAME="12">914</A></TD><TD> </TD></TR><TR><TD CLASS="l">915</TD><TD>                                public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="14">916</A></TD><TD>                                }</TD></TR><TR><TD CLASS="l">917</TD><TD>                        });</TD></TR><TR CLASS="z"><TD CLASS="l">918</TD><TD>                        tree.setLabelProvider(new LabelProvider() {</TD></TR><TR><TD CLASS="l">919</TD><TD>                                public String getText(Object element) {</TD></TR><TR CLASS="z"><TD CLASS="l">920</TD><TD>                                        if (element instanceof KeyValuePair)</TD></TR><TR CLASS="z"><TD CLASS="l">921</TD><TD>                                                return ((KeyValuePair) element).fKey.toString().toLowerCase() + &#34;: &#34; + ((KeyValuePair) element).fValue; //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">922</TD><TD>                                        if (element instanceof IStructuredDocumentRegion) {</TD></TR><TR CLASS="z"><TD CLASS="l">923</TD><TD>                                                IStructuredDocumentRegion documentRegion = (IStructuredDocumentRegion) element;</TD></TR><TR CLASS="z"><TD CLASS="l">924</TD><TD>                                                int packageNameLength = documentRegion.getClass().getPackage().getName().length();</TD></TR><TR CLASS="z"><TD CLASS="l">925</TD><TD>                                                if (packageNameLength &gt; 0)</TD></TR><TR CLASS="z"><TD CLASS="l">926</TD><TD>                                                        packageNameLength++;</TD></TR><TR CLASS="z"><TD CLASS="l">927</TD><TD>                                                String name = documentRegion.getClass().getName().substring(packageNameLength);</TD></TR><TR CLASS="z"><TD CLASS="l">928</TD><TD>                                                String text = &#34;[&#34; + documentRegion.getStartOffset() + &#34;-&#34; + documentRegion.getEndOffset() + &#34;] &#34; + name + &#34;@&#34; + element.hashCode() + &#34; &#34; + documentRegion.getType(); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$</TD></TR><TR CLASS="z"><TD CLASS="l">929</TD><TD>                                                return text;</TD></TR><TR><TD CLASS="l">930</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">931</TD><TD>                                        if (element instanceof ITextRegion) {</TD></TR><TR CLASS="z"><TD CLASS="l">932</TD><TD>                                                ITextRegion textRegion = (ITextRegion) element;</TD></TR><TR CLASS="z"><TD CLASS="l">933</TD><TD>                                                int packageNameLength = textRegion.getClass().getPackage().getName().length();</TD></TR><TR CLASS="z"><TD CLASS="l">934</TD><TD>                                                if (packageNameLength &gt; 0)</TD></TR><TR CLASS="z"><TD CLASS="l">935</TD><TD>                                                        packageNameLength++;</TD></TR><TR CLASS="z"><TD CLASS="l">936</TD><TD>                                                String name = textRegion.getClass().getName().substring(packageNameLength);</TD></TR><TR CLASS="z"><TD CLASS="l">937</TD><TD>                                                String text = &#34;[&#34; + textRegion.getStart() + &#34;-&#34; + textRegion.getEnd() + &#34;] &#34; + name + &#34;@&#34; + element.hashCode() + &#34; &#34; + textRegion.getType(); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$</TD></TR><TR CLASS="z"><TD CLASS="l">938</TD><TD>                                                return text;</TD></TR><TR><TD CLASS="l">939</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">940</TD><TD>                                        return super.getText(element);</TD></TR><TR><TD CLASS="l">941</TD><TD>                                }</TD></TR><TR><TD CLASS="l">942</TD><TD>                        });</TD></TR><TR CLASS="z"><TD CLASS="l">943</TD><TD>                        tree.setInput(fDocument);</TD></TR><TR><TD CLASS="l"><A NAME="15">944</A></TD><TD> </TD></TR><TR><TD CLASS="l">945</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="17">946</A></TD><TD>                        final Text displayText = new Text(sashForm, SWT.V_SCROLL | SWT.H_SCROLL | SWT.READ_ONLY | SWT.BORDER);</TD></TR><TR CLASS="z"><TD CLASS="l">947</TD><TD>                        displayText.setBackground(sashForm.getDisplay().getSystemColor(SWT.COLOR_LIST_BACKGROUND));</TD></TR><TR CLASS="z"><TD CLASS="l">948</TD><TD>                        tree.addSelectionChangedListener(new ISelectionChangedListener() {</TD></TR><TR><TD CLASS="l">949</TD><TD>                                public void selectionChanged(SelectionChangedEvent event) {</TD></TR><TR CLASS="z"><TD CLASS="l">950</TD><TD>                                        if (event.getSelection() instanceof IStructuredSelection) {</TD></TR><TR CLASS="z"><TD CLASS="l">951</TD><TD>                                                Object o = ((IStructuredSelection) event.getSelection()).getFirstElement();</TD></TR><TR CLASS="z"><TD CLASS="l">952</TD><TD>                                                if (o instanceof KeyValuePair)</TD></TR><TR CLASS="z"><TD CLASS="l">953</TD><TD>                                                        displayText.setText(((KeyValuePair) o).fValue.toString());</TD></TR><TR CLASS="z"><TD CLASS="l">954</TD><TD>                                                else if (o instanceof ITextSelection) {</TD></TR><TR CLASS="z"><TD CLASS="l">955</TD><TD>                                                        ITextSelection text = (ITextSelection) o;</TD></TR><TR><TD CLASS="l">956</TD><TD>                                                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">957</TD><TD>                                                                displayText.setText(fDocument.get(text.getOffset(), text.getLength()));</TD></TR><TR><TD CLASS="l">958</TD><TD>                                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">959</TD><TD>                                                        catch (BadLocationException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">960</TD><TD>                                                                displayText.setText(&#34;&#34;); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">961</TD><TD>                                                        }</TD></TR><TR><TD CLASS="l">962</TD><TD>                                                }</TD></TR><TR CLASS="z"><TD CLASS="l">963</TD><TD>                                                else if (o instanceof ITextRegionCollection) {</TD></TR><TR CLASS="z"><TD CLASS="l">964</TD><TD>                                                        ITextRegionCollection region = (ITextRegionCollection) o;</TD></TR><TR CLASS="z"><TD CLASS="l">965</TD><TD>                                                        displayText.setText(region.getFullText());</TD></TR><TR><TD CLASS="l">966</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">967</TD><TD>                                                else</TD></TR><TR CLASS="z"><TD CLASS="l">968</TD><TD>                                                        displayText.setText(&#34;&#34; + o); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">969</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">970</TD><TD>                                }</TD></TR><TR><TD CLASS="l">971</TD><TD>                        });</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="64">972</A></TD><TD>                        return sashForm;</TD></TR><TR><TD CLASS="l">973</TD><TD>                }</TD></TR><TR><TD CLASS="l">974</TD><TD> </TD></TR><TR><TD CLASS="l">975</TD><TD>                private void fillSelectionTabContents(Composite area, List selection, String description) {</TD></TR><TR CLASS="z"><TD CLASS="l">976</TD><TD>                        area.setLayout(new GridLayout());</TD></TR><TR CLASS="z"><TD CLASS="l">977</TD><TD>                        area.setLayoutData(new GridData());</TD></TR><TR><TD CLASS="l">978</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">979</TD><TD>                        Label typeName = new Label(area, SWT.WRAP);</TD></TR><TR CLASS="z"><TD CLASS="l">980</TD><TD>                        typeName.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false));</TD></TR><TR CLASS="z"><TD CLASS="l">981</TD><TD>                        typeName.setText(description); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">982</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">983</TD><TD>                        (new Label(area, SWT.NONE)).setLayoutData(new GridData(SWT.FILL, SWT.FILL, false, false));</TD></TR><TR CLASS="z"><TD CLASS="l">984</TD><TD>                        SashForm structuredSashForm = new SashForm(area, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">985</TD><TD>                        structuredSashForm.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));</TD></TR><TR CLASS="z"><TD CLASS="l">986</TD><TD>                        structuredSashForm.setOrientation(SWT.VERTICAL);</TD></TR><TR><TD CLASS="l">987</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="18">988</A></TD><TD>                        final TableViewer structuredSelectionTable = new TableViewer(structuredSashForm, SWT.FULL_SELECTION | SWT.SINGLE | SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER);</TD></TR><TR><TD CLASS="l">989</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="1a">990</A></TD><TD>                        structuredSelectionTable.getTable().setHeaderVisible(true);</TD></TR><TR CLASS="z"><TD CLASS="l">991</TD><TD>                        structuredSelectionTable.getTable().setLinesVisible(true);</TD></TR><TR CLASS="z"><TD CLASS="l">992</TD><TD>                        structuredSelectionTable.setSorter(new ViewerSorter() {</TD></TR><TR><TD CLASS="l">993</TD><TD>                                public int category(Object element) {</TD></TR><TR CLASS="z"><TD CLASS="l">994</TD><TD>                                        if (element instanceof IndexedRegion)</TD></TR><TR CLASS="z"><TD CLASS="l">995</TD><TD>                                                return ((IndexedRegion) element).getStartOffset();</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="1b">996</A></TD><TD>                                        return super.category(element);</TD></TR><TR><TD CLASS="l">997</TD><TD>                                }</TD></TR><TR><TD CLASS="l"><A NAME="1d">998</A></TD><TD>                        });</TD></TR><TR><TD CLASS="l">999</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">1000</TD><TD>                        structuredSelectionTable.setLabelProvider(new ITableLabelProvider() {</TD></TR><TR><TD CLASS="l"><A NAME="1e">1001</A></TD><TD>                                public void addListener(ILabelProviderListener listener) {</TD></TR><TR CLASS="z"><TD CLASS="l">1002</TD><TD>                                }</TD></TR><TR><TD CLASS="l">1003</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="1f">1004</A></TD><TD>                                public void dispose() {</TD></TR><TR CLASS="z"><TD CLASS="l">1005</TD><TD>                                }</TD></TR><TR><TD CLASS="l">1006</TD><TD> </TD></TR><TR><TD CLASS="l">1007</TD><TD>                                public Image getColumnImage(Object element, int columnIndex) {</TD></TR><TR CLASS="z"><TD CLASS="l">1008</TD><TD>                                        if (element instanceof INodeNotifier) {</TD></TR><TR CLASS="z"><TD CLASS="l">1009</TD><TD>                                                INodeAdapter adapterFor = ((INodeNotifier) element).getAdapterFor(IJFaceNodeAdapter.class);</TD></TR><TR CLASS="z"><TD CLASS="l">1010</TD><TD>                                                if (columnIndex == 2 &amp;&amp; adapterFor != null &amp;&amp; adapterFor instanceof IJFaceNodeAdapter) {</TD></TR><TR CLASS="z"><TD CLASS="l">1011</TD><TD>                                                        IJFaceNodeAdapter adapter = (IJFaceNodeAdapter) adapterFor;</TD></TR><TR CLASS="z"><TD CLASS="l">1012</TD><TD>                                                        return adapter.getLabelImage((element));</TD></TR><TR><TD CLASS="l">1013</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">1014</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="20">1015</A></TD><TD>                                        return null;</TD></TR><TR><TD CLASS="l">1016</TD><TD>                                }</TD></TR><TR><TD CLASS="l">1017</TD><TD> </TD></TR><TR><TD CLASS="l">1018</TD><TD>                                public String getColumnText(Object element, int columnIndex) {</TD></TR><TR CLASS="z"><TD CLASS="l">1019</TD><TD>                                        String text = null;</TD></TR><TR CLASS="z"><TD CLASS="l">1020</TD><TD>                                        if (element != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">1021</TD><TD>                                                switch (columnIndex) {</TD></TR><TR><TD CLASS="l">1022</TD><TD>                                                        case 0 : {</TD></TR><TR CLASS="z"><TD CLASS="l">1023</TD><TD>                                                                text = String.valueOf(((List) structuredSelectionTable.getInput()).indexOf(element));</TD></TR><TR><TD CLASS="l">1024</TD><TD>                                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">1025</TD><TD>                                                                break;</TD></TR><TR><TD CLASS="l">1026</TD><TD>                                                        case 1 : {</TD></TR><TR CLASS="z"><TD CLASS="l">1027</TD><TD>                                                                text = element.getClass().getName();</TD></TR><TR><TD CLASS="l">1028</TD><TD>                                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">1029</TD><TD>                                                                break;</TD></TR><TR><TD CLASS="l">1030</TD><TD>                                                        case 2 : {</TD></TR><TR CLASS="z"><TD CLASS="l">1031</TD><TD>                                                                text = StringUtils.firstLineOf(element.toString());</TD></TR><TR><TD CLASS="l">1032</TD><TD>                                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">1033</TD><TD>                                                                break;</TD></TR><TR><TD CLASS="l">1034</TD><TD>                                                        default :</TD></TR><TR CLASS="z"><TD CLASS="l">1035</TD><TD>                                                                text = &#34;&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">1036</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">1037</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="21">1038</A></TD><TD>                                        return text;</TD></TR><TR><TD CLASS="l">1039</TD><TD>                                }</TD></TR><TR><TD CLASS="l">1040</TD><TD> </TD></TR><TR><TD CLASS="l">1041</TD><TD>                                public boolean isLabelProperty(Object element, String property) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="22">1042</A></TD><TD>                                        return false;</TD></TR><TR><TD CLASS="l">1043</TD><TD>                                }</TD></TR><TR><TD CLASS="l">1044</TD><TD> </TD></TR><TR><TD CLASS="l">1045</TD><TD>                                public void removeListener(ILabelProviderListener listener) {</TD></TR><TR CLASS="z"><TD CLASS="l">1046</TD><TD>                                }</TD></TR><TR><TD CLASS="l">1047</TD><TD>                        });</TD></TR><TR><TD CLASS="l">1048</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">1049</TD><TD>                        TableLayout tlayout = new TableLayout();</TD></TR><TR CLASS="z"><TD CLASS="l">1050</TD><TD>                        tlayout.addColumnData(new ColumnWeightData(7, true));</TD></TR><TR CLASS="z"><TD CLASS="l">1051</TD><TD>                        tlayout.addColumnData(new ColumnWeightData(28, true));</TD></TR><TR CLASS="z"><TD CLASS="l">1052</TD><TD>                        tlayout.addColumnData(new ColumnWeightData(50, true));</TD></TR><TR CLASS="z"><TD CLASS="l">1053</TD><TD>                        structuredSelectionTable.getTable().setLayout(tlayout);</TD></TR><TR><TD CLASS="l">1054</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">1055</TD><TD>                        TableColumn tc = new TableColumn(structuredSelectionTable.getTable(), SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">1056</TD><TD>                        tc.setText(&#34;Item&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">1057</TD><TD>                        tc.setResizable(true);</TD></TR><TR CLASS="z"><TD CLASS="l">1058</TD><TD>                        tc.setWidth(40);</TD></TR><TR><TD CLASS="l">1059</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">1060</TD><TD>                        tc = new TableColumn(structuredSelectionTable.getTable(), SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">1061</TD><TD>                        tc.setText(&#34;Class&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">1062</TD><TD>                        tc.setResizable(true);</TD></TR><TR CLASS="z"><TD CLASS="l">1063</TD><TD>                        tc.setWidth(40);</TD></TR><TR><TD CLASS="l">1064</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">1065</TD><TD>                        tc = new TableColumn(structuredSelectionTable.getTable(), SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">1066</TD><TD>                        tc.setText(&#34;Value&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">1067</TD><TD>                        tc.setResizable(true);</TD></TR><TR CLASS="z"><TD CLASS="l">1068</TD><TD>                        tc.setWidth(40);</TD></TR><TR><TD CLASS="l">1069</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">1070</TD><TD>                        structuredSelectionTable.setContentProvider(new ArrayContentProvider());</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="23">1071</A></TD><TD>                        final List input = selection;</TD></TR><TR CLASS="z"><TD CLASS="l">1072</TD><TD>                        structuredSelectionTable.setInput(input);</TD></TR><TR><TD CLASS="l"><A NAME="25">1073</A></TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">1074</TD><TD>                        final TreeViewer infoTree = new TreeViewer(structuredSashForm, SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER);</TD></TR><TR CLASS="z"><TD CLASS="l">1075</TD><TD>                        infoTree.setLabelProvider(new LabelProvider() {</TD></TR><TR><TD CLASS="l">1076</TD><TD>                                public Image getImage(Object element) {</TD></TR><TR CLASS="z"><TD CLASS="l">1077</TD><TD>                                        if (element instanceof TreeViewer &amp;&amp; infoTree.getInput() instanceof INodeNotifier) {</TD></TR><TR CLASS="z"><TD CLASS="l">1078</TD><TD>                                                INodeAdapter adapterFor = ((INodeNotifier) infoTree.getInput()).getAdapterFor(IJFaceNodeAdapter.class);</TD></TR><TR CLASS="z"><TD CLASS="l">1079</TD><TD>                                                if (adapterFor != null &amp;&amp; adapterFor instanceof IJFaceNodeAdapter) {</TD></TR><TR CLASS="z"><TD CLASS="l">1080</TD><TD>                                                        IJFaceNodeAdapter adapter = (IJFaceNodeAdapter) adapterFor;</TD></TR><TR CLASS="z"><TD CLASS="l">1081</TD><TD>                                                        return adapter.getLabelImage((infoTree.getInput()));</TD></TR><TR><TD CLASS="l">1082</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">1083</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="26">1084</A></TD><TD>                                        return super.getImage(element);</TD></TR><TR><TD CLASS="l">1085</TD><TD>                                }</TD></TR><TR><TD CLASS="l">1086</TD><TD> </TD></TR><TR><TD CLASS="l">1087</TD><TD>                                public String getText(Object element) {</TD></TR><TR CLASS="z"><TD CLASS="l">1088</TD><TD>                                        if (element instanceof Class) {</TD></TR><TR CLASS="z"><TD CLASS="l">1089</TD><TD>                                                return &#34;Class: &#34; + ((Class) element).getName(); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">1090</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">1091</TD><TD>                                        if (element instanceof Collection) {</TD></TR><TR CLASS="z"><TD CLASS="l">1092</TD><TD>                                                return &#34;Registered Adapters:&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">1093</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">1094</TD><TD>                                        if (element instanceof IRegion) {</TD></TR><TR CLASS="z"><TD CLASS="l">1095</TD><TD>                                                return &#34;Indexed Region offset span: [&#34; + ((IRegion) element).getOffset() + &#34;-&#34; + ((IRegion) element).getLength() + &#34;]&#34;; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$</TD></TR><TR><TD CLASS="l">1096</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">1097</TD><TD>                                        if (element instanceof TreeViewer &amp;&amp; infoTree.getInput() instanceof INodeNotifier) {</TD></TR><TR CLASS="z"><TD CLASS="l">1098</TD><TD>                                                IJFaceNodeAdapter adapter = (IJFaceNodeAdapter) ((INodeNotifier) infoTree.getInput()).getAdapterFor(IJFaceNodeAdapter.class);</TD></TR><TR CLASS="z"><TD CLASS="l">1099</TD><TD>                                                if (adapter != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">1100</TD><TD>                                                        return adapter.getLabelText((infoTree.getInput()));</TD></TR><TR><TD CLASS="l">1101</TD><TD>                                                }</TD></TR><TR><TD CLASS="l"><A NAME="27">1102</A></TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">1103</TD><TD>                                        return super.getText(element);</TD></TR><TR><TD CLASS="l"><A NAME="29">1104</A></TD><TD>                                }</TD></TR><TR><TD CLASS="l">1105</TD><TD>                        });</TD></TR><TR CLASS="z"><TD CLASS="l">1106</TD><TD>                        infoTree.setContentProvider(new ITreeContentProvider() {</TD></TR><TR><TD CLASS="l"><A NAME="2a">1107</A></TD><TD>                                public void dispose() {</TD></TR><TR CLASS="z"><TD CLASS="l">1108</TD><TD>                                }</TD></TR><TR><TD CLASS="l">1109</TD><TD> </TD></TR><TR><TD CLASS="l">1110</TD><TD>                                public Object[] getChildren(Object parentElement) {</TD></TR><TR CLASS="z"><TD CLASS="l">1111</TD><TD>                                        if (parentElement instanceof Collection)</TD></TR><TR CLASS="z"><TD CLASS="l">1112</TD><TD>                                                return ((Collection) parentElement).toArray();</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2b">1113</A></TD><TD>                                        return new Object[0];</TD></TR><TR><TD CLASS="l">1114</TD><TD>                                }</TD></TR><TR><TD CLASS="l">1115</TD><TD> </TD></TR><TR><TD CLASS="l">1116</TD><TD>                                public Object[] getElements(Object inputElement) {</TD></TR><TR CLASS="z"><TD CLASS="l">1117</TD><TD>                                        List elements = new ArrayList(4);</TD></TR><TR CLASS="z"><TD CLASS="l">1118</TD><TD>                                        if (inputElement != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">1119</TD><TD>                                                if (inputElement instanceof INodeNotifier &amp;&amp; ((INodeNotifier) inputElement).getAdapterFor(IJFaceNodeAdapter.class) != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">1120</TD><TD>                                                        elements.add(infoTree);</TD></TR><TR><TD CLASS="l">1121</TD><TD>                                                }</TD></TR><TR CLASS="z"><TD CLASS="l">1122</TD><TD>                                                elements.add(inputElement.getClass());</TD></TR><TR CLASS="z"><TD CLASS="l">1123</TD><TD>                                                if (inputElement instanceof IndexedRegion) {</TD></TR><TR CLASS="z"><TD CLASS="l">1124</TD><TD>                                                        elements.add(new Region(((IndexedRegion) inputElement).getStartOffset(), ((IndexedRegion) inputElement).getEndOffset()));</TD></TR><TR><TD CLASS="l">1125</TD><TD>                                                }</TD></TR><TR CLASS="z"><TD CLASS="l">1126</TD><TD>                                                if (inputElement instanceof INodeNotifier) {</TD></TR><TR CLASS="z"><TD CLASS="l">1127</TD><TD>                                                        elements.add(((INodeNotifier) inputElement).getAdapters());</TD></TR><TR><TD CLASS="l">1128</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">1129</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2c">1130</A></TD><TD>                                        return elements.toArray();</TD></TR><TR><TD CLASS="l">1131</TD><TD>                                }</TD></TR><TR><TD CLASS="l">1132</TD><TD> </TD></TR><TR><TD CLASS="l">1133</TD><TD>                                public Object getParent(Object element) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2d">1134</A></TD><TD>                                        return null;</TD></TR><TR><TD CLASS="l">1135</TD><TD>                                }</TD></TR><TR><TD CLASS="l">1136</TD><TD> </TD></TR><TR><TD CLASS="l">1137</TD><TD>                                public boolean hasChildren(Object element) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2e">1138</A></TD><TD>                                        return element instanceof Collection;</TD></TR><TR><TD CLASS="l">1139</TD><TD>                                }</TD></TR><TR><TD CLASS="l">1140</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="2f">1141</A></TD><TD>                                public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {</TD></TR><TR CLASS="z"><TD CLASS="l">1142</TD><TD>                                }</TD></TR><TR><TD CLASS="l"><A NAME="31">1143</A></TD><TD>                        });</TD></TR><TR><TD CLASS="l">1144</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">1145</TD><TD>                        structuredSelectionTable.addSelectionChangedListener(new ISelectionChangedListener() {</TD></TR><TR><TD CLASS="l">1146</TD><TD>                                public void selectionChanged(SelectionChangedEvent event) {</TD></TR><TR CLASS="z"><TD CLASS="l">1147</TD><TD>                                        int selectionIndex = structuredSelectionTable.getTable().getSelectionIndex();</TD></TR><TR CLASS="z"><TD CLASS="l">1148</TD><TD>                                        if (selectionIndex != -1) {</TD></TR><TR CLASS="z"><TD CLASS="l">1149</TD><TD>                                                infoTree.setInput(structuredSelectionTable.getElementAt(selectionIndex));</TD></TR><TR><TD CLASS="l">1150</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">1151</TD><TD>                                        else {</TD></TR><TR CLASS="z"><TD CLASS="l">1152</TD><TD>                                                infoTree.setInput(event.getSelectionProvider().getSelection());</TD></TR><TR><TD CLASS="l">1153</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">1154</TD><TD>                                        infoTree.expandToLevel(2);</TD></TR><TR CLASS="z"><TD CLASS="l">1155</TD><TD>                                }</TD></TR><TR><TD CLASS="l">1156</TD><TD>                        });</TD></TR><TR><TD CLASS="l">1157</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="67">1158</A></TD><TD>                        structuredSashForm.setWeights(new int[]{3, 2});</TD></TR><TR CLASS="z"><TD CLASS="l">1159</TD><TD>                }</TD></TR><TR><TD CLASS="l">1160</TD><TD> </TD></TR><TR><TD CLASS="l">1161</TD><TD>                private String getLineNumber(Annotation annotation) {</TD></TR><TR CLASS="z"><TD CLASS="l">1162</TD><TD>                        int line = -1;</TD></TR><TR CLASS="z"><TD CLASS="l">1163</TD><TD>                        if (annotation instanceof MarkerAnnotation) {</TD></TR><TR CLASS="z"><TD CLASS="l">1164</TD><TD>                                line = MarkerUtilities.getLineNumber(((MarkerAnnotation) annotation).getMarker());//$NON-NLS-1$</TD></TR><TR><TD CLASS="l">1165</TD><TD>                        }</TD></TR><TR><TD CLASS="l">1166</TD><TD>                        else {</TD></TR><TR CLASS="z"><TD CLASS="l">1167</TD><TD>                                IAnnotationModel annotationModel = fTextEditor.getDocumentProvider().getAnnotationModel(fTextEditor.getEditorInput());</TD></TR><TR CLASS="z"><TD CLASS="l">1168</TD><TD>                                Position p = annotationModel.getPosition(annotation);</TD></TR><TR CLASS="z"><TD CLASS="l">1169</TD><TD>                                if (p != null &amp;&amp; !p.isDeleted()) {</TD></TR><TR><TD CLASS="l">1170</TD><TD>                                        try {</TD></TR><TR><TD CLASS="l">1171</TD><TD>                                                // don't forget the +1</TD></TR><TR CLASS="z"><TD CLASS="l">1172</TD><TD>                                                line = fDocument.getLineOfOffset(p.getOffset()) + 1;</TD></TR><TR><TD CLASS="l">1173</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">1174</TD><TD>                                        catch (BadLocationException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">1175</TD><TD>                                                return e.getMessage();</TD></TR><TR><TD CLASS="l">1176</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">1177</TD><TD>                                }</TD></TR><TR><TD CLASS="l">1178</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">1179</TD><TD>                        return Integer.toString(line);</TD></TR><TR><TD CLASS="l">1180</TD><TD>                }</TD></TR><TR><TD CLASS="l">1181</TD><TD>        }</TD></TR><TR><TD CLASS="l">1182</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="68">1183</A></TD><TD>        static class KeyValuePair {</TD></TR><TR><TD CLASS="l">1184</TD><TD>                Object fKey;</TD></TR><TR><TD CLASS="l">1185</TD><TD>                String fValue;</TD></TR><TR><TD CLASS="l">1186</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">1187</TD><TD>                public KeyValuePair(Object key, String value) {</TD></TR><TR CLASS="z"><TD CLASS="l">1188</TD><TD>                        fKey = key;</TD></TR><TR CLASS="z"><TD CLASS="l">1189</TD><TD>                        fValue = value;</TD></TR><TR CLASS="z"><TD CLASS="l">1190</TD><TD>                }</TD></TR><TR><TD CLASS="l"><A NAME="6a">1191</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">1192</TD><TD> </TD></TR><TR><TD CLASS="l">1193</TD><TD>        class ShowEditorInformationAction extends Action {</TD></TR><TR><TD CLASS="l">1194</TD><TD>                public ShowEditorInformationAction() {</TD></TR><TR CLASS="z"><TD CLASS="l">1195</TD><TD>                        super();</TD></TR><TR CLASS="z"><TD CLASS="l">1196</TD><TD>                }</TD></TR><TR><TD CLASS="l">1197</TD><TD> </TD></TR><TR><TD CLASS="l">1198</TD><TD>                public void run() {</TD></TR><TR><TD CLASS="l">1199</TD><TD>                        /**</TD></TR><TR><TD CLASS="l"><A NAME="6c">1200</A></TD><TD>                         * TODO: Provide a more useful control, maybe a table where the</TD></TR><TR><TD CLASS="l">1201</TD><TD>                         * selection shows you the partition's text in a StyledText pane</TD></TR><TR><TD CLASS="l">1202</TD><TD>                         * beneath it.</TD></TR><TR><TD CLASS="l">1203</TD><TD>                         */</TD></TR><TR CLASS="z"><TD CLASS="l">1204</TD><TD>                        super.run();</TD></TR><TR CLASS="z"><TD CLASS="l">1205</TD><TD>                        new InformationDialog(((Control) fTextEditor.getAdapter(Control.class)).getShell()).open();</TD></TR><TR CLASS="z"><TD CLASS="l">1206</TD><TD>                }</TD></TR><TR><TD CLASS="l">1207</TD><TD>        }</TD></TR><TR><TD CLASS="l">1208</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">1209</TD><TD>        IAction fShowEditorInformationAction = new ShowEditorInformationAction();</TD></TR><TR><TD CLASS="l">1210</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">1211</TD><TD>        ITextEditor fTextEditor = null;</TD></TR><TR><TD CLASS="l">1212</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="0">1213</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">1214</TD><TD>         * @param id</TD></TR><TR><TD CLASS="l">1215</TD><TD>         */</TD></TR><TR><TD CLASS="l">1216</TD><TD>        public OffsetStatusLineContributionItem(String id) {</TD></TR><TR CLASS="z"><TD CLASS="l">1217</TD><TD>                super(id);</TD></TR><TR CLASS="z"><TD CLASS="l">1218</TD><TD>                setToolTipText(&#34;Double-click for more information&#34;);</TD></TR><TR CLASS="z"><TD CLASS="l">1219</TD><TD>        }</TD></TR><TR><TD CLASS="l">1220</TD><TD> </TD></TR><TR><TD CLASS="l">1221</TD><TD>        /**</TD></TR><TR><TD CLASS="l">1222</TD><TD>         * @param id</TD></TR><TR><TD CLASS="l"><A NAME="2">1223</A></TD><TD>         * @param visible</TD></TR><TR><TD CLASS="l">1224</TD><TD>         * @param widthInChars</TD></TR><TR><TD CLASS="l">1225</TD><TD>         */</TD></TR><TR><TD CLASS="l">1226</TD><TD>        public OffsetStatusLineContributionItem(String id, boolean visible, int widthInChars) {</TD></TR><TR CLASS="z"><TD CLASS="l">1227</TD><TD>                super(id, visible, widthInChars);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">1228</A></TD><TD>                setToolTipText(&#34;Double-click for more information&#34;);</TD></TR><TR CLASS="z"><TD CLASS="l">1229</TD><TD>        }</TD></TR><TR><TD CLASS="l">1230</TD><TD> </TD></TR><TR><TD CLASS="l">1231</TD><TD>        public void setActiveEditor(ITextEditor textEditor) {</TD></TR><TR CLASS="z"><TD CLASS="l">1232</TD><TD>                fTextEditor = textEditor;</TD></TR><TR CLASS="z"><TD CLASS="l">1233</TD><TD>                setActionHandler(fShowEditorInformationAction);</TD></TR><TR CLASS="z"><TD CLASS="l">1234</TD><TD>        }</TD></TR><TR><TD CLASS="l">1235</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="1d.html">org.eclipse.wst.sse.ui.internal.ui</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/146.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/146.html
deleted file mode 100644
index 06ee72d..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/146.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="1d.html">org.eclipse.wst.sse.ui.internal.ui</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">StructuredTextAnnotationImageProvider.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>StructuredTextAnnotationImageProvider.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/4)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">StructuredTextAnnotationImageProvider</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#0">StructuredTextAnnotationImageProvider (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">getImageDescriptor (String): ImageDescriptor</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#3">getImageDescriptorId (Annotation): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">getManagedImage (Annotation): Image</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2005 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.ui;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.jface.resource.ImageDescriptor;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.jface.text.source.Annotation;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.swt.graphics.Image;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.ui.texteditor.IAnnotationImageProvider;</TD></TR><TR><TD CLASS="l">19</TD><TD> </TD></TR><TR><TD CLASS="l">20</TD><TD>/**</TD></TR><TR><TD CLASS="l"><A NAME="0">21</A></TD><TD> * Image provider for structured text editor annotations.</TD></TR><TR><TD CLASS="l">22</TD><TD> * </TD></TR><TR><TD CLASS="l">23</TD><TD> * @author pavery</TD></TR><TR><TD CLASS="l">24</TD><TD> */</TD></TR><TR CLASS="z"><TD CLASS="l">25</TD><TD>public class StructuredTextAnnotationImageProvider implements IAnnotationImageProvider {</TD></TR><TR><TD CLASS="l">26</TD><TD> </TD></TR><TR><TD CLASS="l">27</TD><TD>        /*</TD></TR><TR><TD CLASS="l">28</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="2">29</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">30</TD><TD>         * @see org.eclipse.ui.texteditor.IAnnotationImageProvider#getImageDescriptor(java.lang.String)</TD></TR><TR><TD CLASS="l">31</TD><TD>         */</TD></TR><TR><TD CLASS="l">32</TD><TD>        public ImageDescriptor getImageDescriptor(String imageDescritporId) {</TD></TR><TR CLASS="z"><TD CLASS="l">33</TD><TD>                return null;</TD></TR><TR><TD CLASS="l">34</TD><TD>        }</TD></TR><TR><TD CLASS="l">35</TD><TD>        </TD></TR><TR><TD CLASS="l">36</TD><TD>        /*</TD></TR><TR><TD CLASS="l">37</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="3">38</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">39</TD><TD>         * @see org.eclipse.ui.texteditor.IAnnotationImageProvider#getImageDescriptorId(org.eclipse.jface.text.source.Annotation)</TD></TR><TR><TD CLASS="l">40</TD><TD>         */</TD></TR><TR><TD CLASS="l">41</TD><TD>        public String getImageDescriptorId(Annotation annotation) {</TD></TR><TR CLASS="z"><TD CLASS="l">42</TD><TD>        return null;</TD></TR><TR><TD CLASS="l">43</TD><TD>        }</TD></TR><TR><TD CLASS="l">44</TD><TD> </TD></TR><TR><TD CLASS="l">45</TD><TD>        /*</TD></TR><TR><TD CLASS="l">46</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l">47</TD><TD>         * </TD></TR><TR><TD CLASS="l">48</TD><TD>         * @see org.eclipse.ui.texteditor.IAnnotationImageProvider#getManagedImage(org.eclipse.jface.text.source.Annotation)</TD></TR><TR><TD CLASS="l"><A NAME="4">49</A></TD><TD>         */</TD></TR><TR><TD CLASS="l">50</TD><TD>        public Image getManagedImage(Annotation annotation) {</TD></TR><TR><TD CLASS="l">51</TD><TD>                // future return different types of managed images as JDT does</TD></TR><TR><TD CLASS="l">52</TD><TD>                // eg. overlay icon images, &#34;grayed&#34; images, quick fixable, etc...</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>                return null;</TD></TR><TR><TD CLASS="l">54</TD><TD>        }</TD></TR><TR><TD CLASS="l">55</TD><TD> </TD></TR><TR><TD CLASS="l">56</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="1d.html">org.eclipse.wst.sse.ui.internal.ui</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/147.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/147.html
deleted file mode 100644
index 0d7dd98..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/147.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="1e.html">org.eclipse.wst.sse.ui.internal.view.events</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">CaretEvent.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>CaretEvent.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/24)</TD><TD CLASS="h">0%   (0/9)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">CaretEvent</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/24)</TD><TD CLASS="h">0%   (0/9)</TD></TR><TR><TD CLASS="f"><A HREF="#0">CaretEvent (Object): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">CaretEvent (Object, int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#3">getPosition (): int</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">setPosition (int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2005 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.view.events;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>/**</TD></TR><TR><TD CLASS="l">16</TD><TD> * @deprecated - use base selection notification</TD></TR><TR><TD CLASS="l">17</TD><TD> * </TD></TR><TR><TD CLASS="l">18</TD><TD> * Simply holds data to be passed to CaretEventListeners</TD></TR><TR><TD CLASS="l">19</TD><TD> */</TD></TR><TR><TD CLASS="l">20</TD><TD>public class CaretEvent extends java.util.EventObject {</TD></TR><TR><TD CLASS="l">21</TD><TD> </TD></TR><TR><TD CLASS="l">22</TD><TD>        /**</TD></TR><TR><TD CLASS="l">23</TD><TD>         * Comment for &lt;code&gt;serialVersionUID&lt;/code&gt;</TD></TR><TR><TD CLASS="l">24</TD><TD>         */</TD></TR><TR><TD CLASS="l">25</TD><TD>        private static final long serialVersionUID = 1L;</TD></TR><TR><TD CLASS="l">26</TD><TD>        // initialize to impossible location</TD></TR><TR CLASS="z"><TD CLASS="l">27</TD><TD>        int fPosition = -1;</TD></TR><TR><TD CLASS="l">28</TD><TD> </TD></TR><TR><TD CLASS="l">29</TD><TD>        /**</TD></TR><TR><TD CLASS="l"><A NAME="0">30</A></TD><TD>         * doesnt't make sense to have a CaretEvent without the Caret postion, so</TD></TR><TR><TD CLASS="l">31</TD><TD>         * use other constructor</TD></TR><TR><TD CLASS="l">32</TD><TD>         */</TD></TR><TR><TD CLASS="l">33</TD><TD>        protected CaretEvent(Object source) {</TD></TR><TR CLASS="z"><TD CLASS="l">34</TD><TD>                super(source);</TD></TR><TR CLASS="z"><TD CLASS="l">35</TD><TD>        }</TD></TR><TR><TD CLASS="l">36</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="2">37</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">38</TD><TD>         * This is the preferred constructor.</TD></TR><TR><TD CLASS="l">39</TD><TD>         */</TD></TR><TR><TD CLASS="l">40</TD><TD>        public CaretEvent(Object source, int position) {</TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>                super(source);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">42</A></TD><TD>                setPosition(position);</TD></TR><TR CLASS="z"><TD CLASS="l">43</TD><TD>        }</TD></TR><TR><TD CLASS="l">44</TD><TD> </TD></TR><TR><TD CLASS="l">45</TD><TD>        public int getPosition() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">46</A></TD><TD>                return fPosition;</TD></TR><TR><TD CLASS="l">47</TD><TD>        }</TD></TR><TR><TD CLASS="l">48</TD><TD> </TD></TR><TR><TD CLASS="l">49</TD><TD>        void setPosition(int newPosition) {</TD></TR><TR CLASS="z"><TD CLASS="l">50</TD><TD>                fPosition = newPosition;</TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>        }</TD></TR><TR><TD CLASS="l">52</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="1e.html">org.eclipse.wst.sse.ui.internal.view.events</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/148.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/148.html
deleted file mode 100644
index bb90b67..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/148.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="1e.html">org.eclipse.wst.sse.ui.internal.view.events</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">NodeSelectionChangedEvent.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>NodeSelectionChangedEvent.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/16)</TD><TD CLASS="h">0%   (0/6)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">NodeSelectionChangedEvent</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/16)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#0">NodeSelectionChangedEvent (Object, List, int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">getCaretPosition (): int</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#3">getSelectedNodes (): List</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2005 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.view.events;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.util.List;</TD></TR><TR><TD CLASS="l">16</TD><TD> </TD></TR><TR><TD CLASS="l">17</TD><TD>/**</TD></TR><TR><TD CLASS="l">18</TD><TD> * @deprecated - use base selection notification</TD></TR><TR><TD CLASS="l">19</TD><TD> */</TD></TR><TR><TD CLASS="l">20</TD><TD>public class NodeSelectionChangedEvent extends java.util.EventObject {</TD></TR><TR><TD CLASS="l">21</TD><TD>        /**</TD></TR><TR><TD CLASS="l">22</TD><TD>         * Comment for &lt;code&gt;serialVersionUID&lt;/code&gt;</TD></TR><TR><TD CLASS="l">23</TD><TD>         */</TD></TR><TR><TD CLASS="l">24</TD><TD>        private static final long serialVersionUID = 1L;</TD></TR><TR><TD CLASS="l">25</TD><TD> </TD></TR><TR><TD CLASS="l">26</TD><TD>        int fCaretPosition;</TD></TR><TR><TD CLASS="l"><A NAME="0">27</A></TD><TD> </TD></TR><TR><TD CLASS="l">28</TD><TD>        List fSelectedNodes;</TD></TR><TR><TD CLASS="l">29</TD><TD> </TD></TR><TR><TD CLASS="l">30</TD><TD>        public NodeSelectionChangedEvent(Object source, List selectedNodes, int caretPosition) {</TD></TR><TR CLASS="z"><TD CLASS="l">31</TD><TD>                super(source);</TD></TR><TR CLASS="z"><TD CLASS="l">32</TD><TD>                fSelectedNodes = selectedNodes;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">33</A></TD><TD>                fCaretPosition = caretPosition;</TD></TR><TR CLASS="z"><TD CLASS="l">34</TD><TD>        }</TD></TR><TR><TD CLASS="l">35</TD><TD> </TD></TR><TR><TD CLASS="l">36</TD><TD>        public int getCaretPosition() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">37</A></TD><TD>                return fCaretPosition;</TD></TR><TR><TD CLASS="l">38</TD><TD>        }</TD></TR><TR><TD CLASS="l">39</TD><TD> </TD></TR><TR><TD CLASS="l">40</TD><TD>        public List getSelectedNodes() {</TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>                return fSelectedNodes;</TD></TR><TR><TD CLASS="l">42</TD><TD>        }</TD></TR><TR><TD CLASS="l">43</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="1e.html">org.eclipse.wst.sse.ui.internal.view.events</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/149.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/149.html
deleted file mode 100644
index eec1554..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/149.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="1e.html">org.eclipse.wst.sse.ui.internal.view.events</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">TextSelectionChangedEvent.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>TextSelectionChangedEvent.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/16)</TD><TD CLASS="h">0%   (0/6)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">TextSelectionChangedEvent</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/16)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#0">TextSelectionChangedEvent (Object, int, int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">getTextSelectionEnd (): int</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#3">getTextSelectionStart (): int</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2005 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.internal.view.events;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>/**</TD></TR><TR><TD CLASS="l">16</TD><TD> * @deprecated - use base selection notification</TD></TR><TR><TD CLASS="l">17</TD><TD> */</TD></TR><TR><TD CLASS="l">18</TD><TD>public class TextSelectionChangedEvent extends java.util.EventObject {</TD></TR><TR><TD CLASS="l">19</TD><TD>        /**</TD></TR><TR><TD CLASS="l">20</TD><TD>         * Comment for &lt;code&gt;serialVersionUID&lt;/code&gt;</TD></TR><TR><TD CLASS="l">21</TD><TD>         */</TD></TR><TR><TD CLASS="l">22</TD><TD>        private static final long serialVersionUID = 1L;</TD></TR><TR><TD CLASS="l">23</TD><TD> </TD></TR><TR><TD CLASS="l">24</TD><TD>        int fTextSelectionEnd;</TD></TR><TR><TD CLASS="l"><A NAME="0">25</A></TD><TD> </TD></TR><TR><TD CLASS="l">26</TD><TD>        int fTextSelectionStart;</TD></TR><TR><TD CLASS="l">27</TD><TD> </TD></TR><TR><TD CLASS="l">28</TD><TD>        public TextSelectionChangedEvent(Object source, int textSelectionStart, int textSelectionEnd) {</TD></TR><TR CLASS="z"><TD CLASS="l">29</TD><TD>                super(source);</TD></TR><TR CLASS="z"><TD CLASS="l">30</TD><TD>                fTextSelectionStart = textSelectionStart;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">31</A></TD><TD>                fTextSelectionEnd = textSelectionEnd;</TD></TR><TR CLASS="z"><TD CLASS="l">32</TD><TD>        }</TD></TR><TR><TD CLASS="l">33</TD><TD> </TD></TR><TR><TD CLASS="l">34</TD><TD>        public int getTextSelectionEnd() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">35</A></TD><TD>                return fTextSelectionEnd;</TD></TR><TR><TD CLASS="l">36</TD><TD>        }</TD></TR><TR><TD CLASS="l">37</TD><TD> </TD></TR><TR><TD CLASS="l">38</TD><TD>        public int getTextSelectionStart() {</TD></TR><TR CLASS="z"><TD CLASS="l">39</TD><TD>                return fTextSelectionStart;</TD></TR><TR><TD CLASS="l">40</TD><TD>        }</TD></TR><TR><TD CLASS="l">41</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="1e.html">org.eclipse.wst.sse.ui.internal.view.events</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/14a.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/14a.html
deleted file mode 100644
index b9e5298..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/14a.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="1f.html">org.eclipse.wst.sse.ui.views.contentoutline</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">ContentOutlineConfiguration.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>ContentOutlineConfiguration.java</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/20)</TD><TD CLASS="h">0%   (0/249)</TD><TD CLASS="h">0%   (0/65)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">ContentOutlineConfiguration</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/16)</TD><TD CLASS="h">0%   (0/185)</TD><TD CLASS="h">0%   (0/46)</TD></TR><TR><TD CLASS="f"><A HREF="#0">ContentOutlineConfiguration (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/35)</TD><TD CLASS="h">0%   (0/10)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">createMenuContributions (TreeViewer): IContributionItem []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/20)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#3">createToolbarContributions (TreeViewer): IContributionItem []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/18)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">getKeyListeners (TreeViewer): KeyListener []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#5">getLabelProvider (TreeViewer): ILabelProvider</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">getMenuContributions (TreeViewer): IContributionItem []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#7">getMenuListener (TreeViewer): IMenuListener</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">getPreferenceStore (): IPreferenceStore</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#9">getSelection (TreeViewer, ISelection): ISelection</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">getStatusLineLabelProvider (TreeViewer): ILabelProvider</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#b">getToolbarContributions (TreeViewer): IContributionItem []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#c">getTransferDragSourceListeners (TreeViewer): TransferDragSourceListener []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#d">getTransferDropTargetListeners (TreeViewer): TransferDropTargetListener []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#e">isLinkedWithEditor (TreeViewer): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#f">setLinkWithEditor (boolean): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#10">unconfigure (TreeViewer): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/55)</TD><TD CLASS="h">0%   (0/11)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#11">ContentOutlineConfiguration$CollapseTreeAction</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/32)</TD><TD CLASS="h">0%   (0/10)</TD></TR><TR><TD CLASS="f"><A HREF="#11">ContentOutlineConfiguration$CollapseTreeAction (ContentOutlineConfiguration, ...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/26)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#13">run (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#14">ContentOutlineConfiguration$ToggleLinkAction</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/32)</TD><TD CLASS="h">0%   (0/9)</TD></TR><TR><TD CLASS="f"><A HREF="#14">ContentOutlineConfiguration$ToggleLinkAction (ContentOutlineConfiguration, IP...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/24)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#16">update (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/3)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2007 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.views.contentoutline;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.jface.action.Action;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.jface.action.ActionContributionItem;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.jface.action.IContributionItem;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.jface.action.IMenuListener;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.jface.preference.IPreferenceStore;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.jface.resource.ImageDescriptor;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.jface.util.TransferDragSourceListener;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.jface.util.TransferDropTargetListener;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.jface.viewers.IContentProvider;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.jface.viewers.ILabelProvider;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.jface.viewers.ISelection;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.jface.viewers.LabelProvider;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.jface.viewers.TreeViewer;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.swt.events.KeyListener;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.wst.sse.ui.internal.SSEUIMessages;</TD></TR><TR><TD CLASS="l">30</TD><TD>import org.eclipse.wst.sse.ui.internal.SSEUIPlugin;</TD></TR><TR><TD CLASS="l">31</TD><TD>import org.eclipse.wst.sse.ui.internal.contentoutline.PropertyChangeUpdateAction;</TD></TR><TR><TD CLASS="l">32</TD><TD>import org.eclipse.wst.sse.ui.internal.contentoutline.PropertyChangeUpdateActionContributionItem;</TD></TR><TR><TD CLASS="l">33</TD><TD>import org.eclipse.wst.sse.ui.internal.editor.EditorPluginImageHelper;</TD></TR><TR><TD CLASS="l">34</TD><TD>import org.eclipse.wst.sse.ui.internal.editor.EditorPluginImages;</TD></TR><TR><TD CLASS="l">35</TD><TD> </TD></TR><TR><TD CLASS="l">36</TD><TD>/**</TD></TR><TR><TD CLASS="l">37</TD><TD> * Basic Configuration class for Outline Pages</TD></TR><TR><TD CLASS="l">38</TD><TD> * </TD></TR><TR><TD CLASS="l">39</TD><TD> * @since 1.0</TD></TR><TR><TD CLASS="l">40</TD><TD> */</TD></TR><TR><TD CLASS="l">41</TD><TD>public abstract class ContentOutlineConfiguration {</TD></TR><TR><TD CLASS="l">42</TD><TD>        /**</TD></TR><TR><TD CLASS="l">43</TD><TD>         * Add a collapse action to help with navigation.</TD></TR><TR><TD CLASS="l">44</TD><TD>         */</TD></TR><TR><TD CLASS="l"><A NAME="11">45</A></TD><TD>        private class CollapseTreeAction extends Action {</TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>                private TreeViewer fTreeViewer = null;</TD></TR><TR><TD CLASS="l">47</TD><TD> </TD></TR><TR><TD CLASS="l">48</TD><TD>                public CollapseTreeAction(TreeViewer viewer) {</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>                        super(SSEUIMessages.ContentOutlineConfiguration_0, AS_PUSH_BUTTON); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">50</TD><TD>                        setImageDescriptor(COLLAPSE_E);</TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>                        setDisabledImageDescriptor(COLLAPSE_D);</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                        setToolTipText(getText());</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="13">53</A></TD><TD>                        fTreeViewer = viewer;</TD></TR><TR CLASS="z"><TD CLASS="l">54</TD><TD>                }</TD></TR><TR><TD CLASS="l">55</TD><TD> </TD></TR><TR><TD CLASS="l">56</TD><TD>                public void run() {</TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>                        super.run();</TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>                        fTreeViewer.collapseAll();</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>                }</TD></TR><TR><TD CLASS="l">60</TD><TD>        }</TD></TR><TR><TD CLASS="l">61</TD><TD> </TD></TR><TR><TD CLASS="l">62</TD><TD>        /**</TD></TR><TR><TD CLASS="l"><A NAME="14">63</A></TD><TD>         * Toggles whether incoming selection notification affects us</TD></TR><TR><TD CLASS="l">64</TD><TD>         */</TD></TR><TR><TD CLASS="l">65</TD><TD>        private class ToggleLinkAction extends PropertyChangeUpdateAction {</TD></TR><TR><TD CLASS="l">66</TD><TD>                public ToggleLinkAction(IPreferenceStore store, String preference) {</TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>                        super(SSEUIMessages.ContentOutlineConfiguration_1, store, preference, true); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>                        setToolTipText(getText());</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                        setDisabledImageDescriptor(SYNCED_D);</TD></TR><TR CLASS="z"><TD CLASS="l">70</TD><TD>                        setImageDescriptor(SYNCED_E);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="16">71</A></TD><TD>                        update();</TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>                }</TD></TR><TR><TD CLASS="l">73</TD><TD> </TD></TR><TR><TD CLASS="l">74</TD><TD>                public void update() {</TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>                        super.update();</TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>                        setLinkWithEditor(isChecked());</TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>                }</TD></TR><TR><TD CLASS="l">78</TD><TD>        }</TD></TR><TR><TD CLASS="l">79</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">80</TD><TD>        ImageDescriptor COLLAPSE_D = EditorPluginImageHelper.getInstance().getImageDescriptor(EditorPluginImages.IMG_DLCL_COLLAPSEALL);</TD></TR><TR CLASS="z"><TD CLASS="l">81</TD><TD>        ImageDescriptor COLLAPSE_E = EditorPluginImageHelper.getInstance().getImageDescriptor(EditorPluginImages.IMG_ELCL_COLLAPSEALL);</TD></TR><TR><TD CLASS="l">82</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">83</TD><TD>        private boolean fIsLinkWithEditor = false;</TD></TR><TR><TD CLASS="l">84</TD><TD> </TD></TR><TR><TD CLASS="l">85</TD><TD>        private ILabelProvider fLabelProvider;</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>        private IContributionItem[] fMenuContributions = null;</TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>        private IContributionItem[] fToolbarContributions = null;</TD></TR><TR CLASS="z"><TD CLASS="l">88</TD><TD>        private final String OUTLINE_LINK_PREF = &#34;outline-link-editor&#34;; //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">89</TD><TD>        ImageDescriptor SYNCED_D = EditorPluginImageHelper.getInstance().getImageDescriptor(EditorPluginImages.IMG_DLCL_SYNCED);</TD></TR><TR CLASS="z"><TD CLASS="l">90</TD><TD>        ImageDescriptor SYNCED_E = EditorPluginImageHelper.getInstance().getImageDescriptor(EditorPluginImages.IMG_ELCL_SYNCED);</TD></TR><TR><TD CLASS="l">91</TD><TD> </TD></TR><TR><TD CLASS="l">92</TD><TD>        /**</TD></TR><TR><TD CLASS="l"><A NAME="0">93</A></TD><TD>         * Create new instance of ContentOutlineConfiguration</TD></TR><TR><TD CLASS="l">94</TD><TD>         */</TD></TR><TR><TD CLASS="l">95</TD><TD>        public ContentOutlineConfiguration() {</TD></TR><TR><TD CLASS="l">96</TD><TD>                // Must have empty constructor to createExecutableExtension</TD></TR><TR CLASS="z"><TD CLASS="l">97</TD><TD>                super();</TD></TR><TR CLASS="z"><TD CLASS="l">98</TD><TD>        }</TD></TR><TR><TD CLASS="l">99</TD><TD> </TD></TR><TR><TD CLASS="l">100</TD><TD>        /**</TD></TR><TR><TD CLASS="l">101</TD><TD>         * Creates the contributions for the view's local menu. Subclasses should</TD></TR><TR><TD CLASS="l">102</TD><TD>         * merge their contributions with these.</TD></TR><TR><TD CLASS="l">103</TD><TD>         * </TD></TR><TR><TD CLASS="l">104</TD><TD>         * @param viewer</TD></TR><TR><TD CLASS="l"><A NAME="2">105</A></TD><TD>         *            the TreeViewer associated with this configuration</TD></TR><TR><TD CLASS="l">106</TD><TD>         * @return menu contributions</TD></TR><TR><TD CLASS="l">107</TD><TD>         */</TD></TR><TR><TD CLASS="l">108</TD><TD>        protected IContributionItem[] createMenuContributions(TreeViewer viewer) {</TD></TR><TR CLASS="z"><TD CLASS="l">109</TD><TD>                IContributionItem toggleLinkItem = new PropertyChangeUpdateActionContributionItem(new ToggleLinkAction(getPreferenceStore(), OUTLINE_LINK_PREF));</TD></TR><TR CLASS="z"><TD CLASS="l">110</TD><TD>                IContributionItem[] items = new IContributionItem[]{toggleLinkItem};</TD></TR><TR CLASS="z"><TD CLASS="l">111</TD><TD>                return items;</TD></TR><TR><TD CLASS="l">112</TD><TD>        }</TD></TR><TR><TD CLASS="l">113</TD><TD> </TD></TR><TR><TD CLASS="l">114</TD><TD>        /**</TD></TR><TR><TD CLASS="l">115</TD><TD>         * Creates the toolbar contributions. Subclasses should merge their</TD></TR><TR><TD CLASS="l">116</TD><TD>         * contributions with these.</TD></TR><TR><TD CLASS="l">117</TD><TD>         * </TD></TR><TR><TD CLASS="l">118</TD><TD>         * @param viewer</TD></TR><TR><TD CLASS="l"><A NAME="3">119</A></TD><TD>         *            the TreeViewer associated with this configuration</TD></TR><TR><TD CLASS="l">120</TD><TD>         * @return toolbar contributions</TD></TR><TR><TD CLASS="l">121</TD><TD>         */</TD></TR><TR><TD CLASS="l">122</TD><TD>        protected IContributionItem[] createToolbarContributions(TreeViewer viewer) {</TD></TR><TR CLASS="z"><TD CLASS="l">123</TD><TD>                IContributionItem collapseAllItem = new ActionContributionItem(new CollapseTreeAction(viewer));</TD></TR><TR CLASS="z"><TD CLASS="l">124</TD><TD>                IContributionItem[] items = new IContributionItem[]{collapseAllItem};</TD></TR><TR CLASS="z"><TD CLASS="l">125</TD><TD>                return items;</TD></TR><TR><TD CLASS="l">126</TD><TD>        }</TD></TR><TR><TD CLASS="l">127</TD><TD> </TD></TR><TR><TD CLASS="l">128</TD><TD>        /**</TD></TR><TR><TD CLASS="l">129</TD><TD>         * Returns the ContentProvider to use with the given viewer.</TD></TR><TR><TD CLASS="l">130</TD><TD>         * </TD></TR><TR><TD CLASS="l">131</TD><TD>         * @param viewer</TD></TR><TR><TD CLASS="l">132</TD><TD>         *            the TreeViewer associated with this configuration</TD></TR><TR><TD CLASS="l">133</TD><TD>         * @return the IContentProvider to use with this viewer</TD></TR><TR><TD CLASS="l">134</TD><TD>         */</TD></TR><TR><TD CLASS="l">135</TD><TD>        public abstract IContentProvider getContentProvider(TreeViewer viewer);</TD></TR><TR><TD CLASS="l">136</TD><TD> </TD></TR><TR><TD CLASS="l">137</TD><TD>        /**</TD></TR><TR><TD CLASS="l">138</TD><TD>         * Returns an array of KeyListeners to attach to the given viewer's</TD></TR><TR><TD CLASS="l">139</TD><TD>         * control or null.</TD></TR><TR><TD CLASS="l">140</TD><TD>         * </TD></TR><TR><TD CLASS="l">141</TD><TD>         * @param viewer</TD></TR><TR><TD CLASS="l">142</TD><TD>         *            the TreeViewer associated with this configuration</TD></TR><TR><TD CLASS="l">143</TD><TD>         * @return an array of KeyListeners to attach to the TreeViewer's Control,</TD></TR><TR><TD CLASS="l">144</TD><TD>         *         or null. The listeners should adhere to the KeyEvent.doit field</TD></TR><TR><TD CLASS="l"><A NAME="4">145</A></TD><TD>         *         to ensure proper behaviors. Ordering of the event notifications</TD></TR><TR><TD CLASS="l">146</TD><TD>         *         is dependent on the Control in the TreeViewer.</TD></TR><TR><TD CLASS="l">147</TD><TD>         */</TD></TR><TR><TD CLASS="l">148</TD><TD>        public KeyListener[] getKeyListeners(TreeViewer viewer) {</TD></TR><TR CLASS="z"><TD CLASS="l">149</TD><TD>                return null;</TD></TR><TR><TD CLASS="l">150</TD><TD>        }</TD></TR><TR><TD CLASS="l">151</TD><TD> </TD></TR><TR><TD CLASS="l">152</TD><TD>        /**</TD></TR><TR><TD CLASS="l">153</TD><TD>         * Returns the LabelProvider for the items within the given viewer.</TD></TR><TR><TD CLASS="l">154</TD><TD>         * </TD></TR><TR><TD CLASS="l">155</TD><TD>         * @param viewer</TD></TR><TR><TD CLASS="l"><A NAME="5">156</A></TD><TD>         *            the TreeViewer associated with this configuration</TD></TR><TR><TD CLASS="l">157</TD><TD>         * @return the ILabelProvider for items within the viewer</TD></TR><TR><TD CLASS="l">158</TD><TD>         */</TD></TR><TR><TD CLASS="l">159</TD><TD>        public ILabelProvider getLabelProvider(TreeViewer viewer) {</TD></TR><TR CLASS="z"><TD CLASS="l">160</TD><TD>                if (fLabelProvider == null)</TD></TR><TR CLASS="z"><TD CLASS="l">161</TD><TD>                        fLabelProvider = new LabelProvider();</TD></TR><TR CLASS="z"><TD CLASS="l">162</TD><TD>                return fLabelProvider;</TD></TR><TR><TD CLASS="l">163</TD><TD>        }</TD></TR><TR><TD CLASS="l">164</TD><TD> </TD></TR><TR><TD CLASS="l">165</TD><TD>        /**</TD></TR><TR><TD CLASS="l">166</TD><TD>         * Returns the menu contribution items for the local menu in the outline.</TD></TR><TR><TD CLASS="l">167</TD><TD>         * </TD></TR><TR><TD CLASS="l">168</TD><TD>         * @param viewer</TD></TR><TR><TD CLASS="l"><A NAME="6">169</A></TD><TD>         *            the TreeViewer associated with this configuration</TD></TR><TR><TD CLASS="l">170</TD><TD>         * @return IContributionItem[] for the local menu</TD></TR><TR><TD CLASS="l">171</TD><TD>         */</TD></TR><TR><TD CLASS="l">172</TD><TD>        public final IContributionItem[] getMenuContributions(TreeViewer viewer) {</TD></TR><TR CLASS="z"><TD CLASS="l">173</TD><TD>                if (fMenuContributions == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">174</TD><TD>                        fMenuContributions = createMenuContributions(viewer);</TD></TR><TR><TD CLASS="l">175</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">176</TD><TD>                return fMenuContributions;</TD></TR><TR><TD CLASS="l">177</TD><TD>        }</TD></TR><TR><TD CLASS="l">178</TD><TD> </TD></TR><TR><TD CLASS="l">179</TD><TD>        /**</TD></TR><TR><TD CLASS="l">180</TD><TD>         * Returns the menu listener to notify when the given viewer's context</TD></TR><TR><TD CLASS="l">181</TD><TD>         * menu is about to be shown or null.</TD></TR><TR><TD CLASS="l">182</TD><TD>         * </TD></TR><TR><TD CLASS="l">183</TD><TD>         * @param viewer</TD></TR><TR><TD CLASS="l">184</TD><TD>         *            the TreeViewer associated with this configuration</TD></TR><TR><TD CLASS="l"><A NAME="7">185</A></TD><TD>         * @return the IMenuListener to notify when the viewer's context menu is</TD></TR><TR><TD CLASS="l">186</TD><TD>         *         about to be shown, or null</TD></TR><TR><TD CLASS="l">187</TD><TD>         */</TD></TR><TR><TD CLASS="l">188</TD><TD>        public IMenuListener getMenuListener(TreeViewer viewer) {</TD></TR><TR CLASS="z"><TD CLASS="l">189</TD><TD>                return null;</TD></TR><TR><TD CLASS="l">190</TD><TD>        }</TD></TR><TR><TD CLASS="l">191</TD><TD> </TD></TR><TR><TD CLASS="l">192</TD><TD>        /**</TD></TR><TR><TD CLASS="l">193</TD><TD>         * Returns the PreferenceStore to use for this configuration.</TD></TR><TR><TD CLASS="l">194</TD><TD>         * </TD></TR><TR><TD CLASS="l"><A NAME="8">195</A></TD><TD>         * @return the preference store in which to remember preferences (such as</TD></TR><TR><TD CLASS="l">196</TD><TD>         *         the link-with-editor toggle state)</TD></TR><TR><TD CLASS="l">197</TD><TD>         */</TD></TR><TR><TD CLASS="l">198</TD><TD>        protected IPreferenceStore getPreferenceStore() {</TD></TR><TR CLASS="z"><TD CLASS="l">199</TD><TD>                return SSEUIPlugin.getInstance().getPreferenceStore();</TD></TR><TR><TD CLASS="l">200</TD><TD>        }</TD></TR><TR><TD CLASS="l">201</TD><TD> </TD></TR><TR><TD CLASS="l">202</TD><TD>        /**</TD></TR><TR><TD CLASS="l">203</TD><TD>         * Returns the (filtered) selection from the given selection.</TD></TR><TR><TD CLASS="l">204</TD><TD>         * </TD></TR><TR><TD CLASS="l">205</TD><TD>         * @param selection</TD></TR><TR><TD CLASS="l">206</TD><TD>         *            model selection</TD></TR><TR><TD CLASS="l">207</TD><TD>         * @param viewer</TD></TR><TR><TD CLASS="l">208</TD><TD>         *            the TreeViewer associated with this configuration</TD></TR><TR><TD CLASS="l">209</TD><TD>         * @return The (filtered) selection from this event. Uses include mapping</TD></TR><TR><TD CLASS="l">210</TD><TD>         *         model selection onto elements provided by the content provider.</TD></TR><TR><TD CLASS="l"><A NAME="9">211</A></TD><TD>         *         Should only return elements that will be shown in the Tree</TD></TR><TR><TD CLASS="l">212</TD><TD>         *         Control.</TD></TR><TR><TD CLASS="l">213</TD><TD>         */</TD></TR><TR><TD CLASS="l">214</TD><TD>        public ISelection getSelection(TreeViewer viewer, ISelection selection) {</TD></TR><TR CLASS="z"><TD CLASS="l">215</TD><TD>                return selection;</TD></TR><TR><TD CLASS="l">216</TD><TD>        }</TD></TR><TR><TD CLASS="l">217</TD><TD> </TD></TR><TR><TD CLASS="l">218</TD><TD>        /**</TD></TR><TR><TD CLASS="l">219</TD><TD>         * @since 2.0</TD></TR><TR><TD CLASS="l"><A NAME="a">220</A></TD><TD>         * @param treeViewer</TD></TR><TR><TD CLASS="l">221</TD><TD>         * @return a label provider providing the status line contents</TD></TR><TR><TD CLASS="l">222</TD><TD>         */</TD></TR><TR><TD CLASS="l">223</TD><TD>        public ILabelProvider getStatusLineLabelProvider(TreeViewer treeViewer) {</TD></TR><TR CLASS="z"><TD CLASS="l">224</TD><TD>                return null;</TD></TR><TR><TD CLASS="l">225</TD><TD>        }</TD></TR><TR><TD CLASS="l">226</TD><TD> </TD></TR><TR><TD CLASS="l">227</TD><TD>        /**</TD></TR><TR><TD CLASS="l">228</TD><TD>         * Returns contribution items for the local toolbar in the outline.</TD></TR><TR><TD CLASS="l">229</TD><TD>         * </TD></TR><TR><TD CLASS="l">230</TD><TD>         * @param viewer</TD></TR><TR><TD CLASS="l"><A NAME="b">231</A></TD><TD>         *            the TreeViewer associated with this configuration</TD></TR><TR><TD CLASS="l">232</TD><TD>         * @return IContributionItem[] for the local toolbar</TD></TR><TR><TD CLASS="l">233</TD><TD>         */</TD></TR><TR><TD CLASS="l">234</TD><TD>        public final IContributionItem[] getToolbarContributions(TreeViewer viewer) {</TD></TR><TR CLASS="z"><TD CLASS="l">235</TD><TD>                if (fToolbarContributions == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">236</TD><TD>                        fToolbarContributions = createToolbarContributions(viewer);</TD></TR><TR><TD CLASS="l">237</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">238</TD><TD>                return fToolbarContributions;</TD></TR><TR><TD CLASS="l">239</TD><TD>        }</TD></TR><TR><TD CLASS="l">240</TD><TD> </TD></TR><TR><TD CLASS="l">241</TD><TD>        /**</TD></TR><TR><TD CLASS="l">242</TD><TD>         * Adopted since you can't easily removeDragSupport from</TD></TR><TR><TD CLASS="l">243</TD><TD>         * StructuredViewers.</TD></TR><TR><TD CLASS="l">244</TD><TD>         * </TD></TR><TR><TD CLASS="l">245</TD><TD>         * @param treeViewer</TD></TR><TR><TD CLASS="l"><A NAME="c">246</A></TD><TD>         *            the TreeViewer associated with this configuration</TD></TR><TR><TD CLASS="l">247</TD><TD>         * @return an array of TransferDragSourceListeners</TD></TR><TR><TD CLASS="l">248</TD><TD>         */</TD></TR><TR><TD CLASS="l">249</TD><TD>        public TransferDragSourceListener[] getTransferDragSourceListeners(TreeViewer treeViewer) {</TD></TR><TR CLASS="z"><TD CLASS="l">250</TD><TD>                return new TransferDragSourceListener[0];</TD></TR><TR><TD CLASS="l">251</TD><TD>        }</TD></TR><TR><TD CLASS="l">252</TD><TD> </TD></TR><TR><TD CLASS="l">253</TD><TD>        /**</TD></TR><TR><TD CLASS="l">254</TD><TD>         * Adopted since you can't easily removeDropSupport from</TD></TR><TR><TD CLASS="l">255</TD><TD>         * StructuredViewers.</TD></TR><TR><TD CLASS="l">256</TD><TD>         * </TD></TR><TR><TD CLASS="l">257</TD><TD>         * @param treeViewer</TD></TR><TR><TD CLASS="l"><A NAME="d">258</A></TD><TD>         *            the TreeViewer associated with this configuration</TD></TR><TR><TD CLASS="l">259</TD><TD>         * @return an array of TransferDropTargetListeners</TD></TR><TR><TD CLASS="l">260</TD><TD>         */</TD></TR><TR><TD CLASS="l">261</TD><TD>        public TransferDropTargetListener[] getTransferDropTargetListeners(TreeViewer treeViewer) {</TD></TR><TR CLASS="z"><TD CLASS="l">262</TD><TD>                return new TransferDropTargetListener[0];</TD></TR><TR><TD CLASS="l">263</TD><TD>        }</TD></TR><TR><TD CLASS="l">264</TD><TD> </TD></TR><TR><TD CLASS="l">265</TD><TD>        /**</TD></TR><TR><TD CLASS="l">266</TD><TD>         * Returns true if node selection changes affect selection in the</TD></TR><TR><TD CLASS="l">267</TD><TD>         * TreeViewer.</TD></TR><TR><TD CLASS="l">268</TD><TD>         * </TD></TR><TR><TD CLASS="l">269</TD><TD>         * @param treeViewer</TD></TR><TR><TD CLASS="l">270</TD><TD>         *            the TreeViewer associated with this configuration</TD></TR><TR><TD CLASS="l"><A NAME="e">271</A></TD><TD>         * @return true if outline is currently linked to selection in editor,</TD></TR><TR><TD CLASS="l">272</TD><TD>         *         false otherwise</TD></TR><TR><TD CLASS="l">273</TD><TD>         */</TD></TR><TR><TD CLASS="l">274</TD><TD>        public boolean isLinkedWithEditor(TreeViewer treeViewer) {</TD></TR><TR CLASS="z"><TD CLASS="l">275</TD><TD>                return fIsLinkWithEditor;</TD></TR><TR><TD CLASS="l">276</TD><TD>        }</TD></TR><TR><TD CLASS="l">277</TD><TD> </TD></TR><TR><TD CLASS="l">278</TD><TD>        /**</TD></TR><TR><TD CLASS="l">279</TD><TD>         * Sets whether or not outline view should be linked with selection in</TD></TR><TR><TD CLASS="l">280</TD><TD>         * editor.</TD></TR><TR><TD CLASS="l">281</TD><TD>         * </TD></TR><TR><TD CLASS="l"><A NAME="f">282</A></TD><TD>         * @param isLinkWithEditor</TD></TR><TR><TD CLASS="l">283</TD><TD>         *            The isLinkWithEditor to set.</TD></TR><TR><TD CLASS="l">284</TD><TD>         */</TD></TR><TR><TD CLASS="l">285</TD><TD>        void setLinkWithEditor(boolean isLinkWithEditor) {</TD></TR><TR CLASS="z"><TD CLASS="l">286</TD><TD>                fIsLinkWithEditor = isLinkWithEditor;</TD></TR><TR CLASS="z"><TD CLASS="l">287</TD><TD>        }</TD></TR><TR><TD CLASS="l">288</TD><TD> </TD></TR><TR><TD CLASS="l">289</TD><TD>        /**</TD></TR><TR><TD CLASS="l">290</TD><TD>         * General hook for resource releasing and listener removal when</TD></TR><TR><TD CLASS="l">291</TD><TD>         * configurations change or the viewer is disposed of. This implementation</TD></TR><TR><TD CLASS="l">292</TD><TD>         * stops of any remaining PropertyChangeUpdateActionContributionItem from</TD></TR><TR><TD CLASS="l">293</TD><TD>         * preference listening.</TD></TR><TR><TD CLASS="l">294</TD><TD>         * </TD></TR><TR><TD CLASS="l"><A NAME="10">295</A></TD><TD>         * @param viewer</TD></TR><TR><TD CLASS="l">296</TD><TD>         *            the TreeViewer associated with this configuration</TD></TR><TR><TD CLASS="l">297</TD><TD>         */</TD></TR><TR><TD CLASS="l">298</TD><TD>        public void unconfigure(TreeViewer viewer) {</TD></TR><TR CLASS="z"><TD CLASS="l">299</TD><TD>                if (fToolbarContributions != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">300</TD><TD>                        for (int i = 0; i &lt; fToolbarContributions.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">301</TD><TD>                                if (fToolbarContributions[i] instanceof PropertyChangeUpdateActionContributionItem) {</TD></TR><TR CLASS="z"><TD CLASS="l">302</TD><TD>                                        ((PropertyChangeUpdateActionContributionItem) fToolbarContributions[i]).disconnect();</TD></TR><TR><TD CLASS="l">303</TD><TD>                                }</TD></TR><TR><TD CLASS="l">304</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">305</TD><TD>                        fToolbarContributions = null;</TD></TR><TR><TD CLASS="l">306</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">307</TD><TD>                if (fMenuContributions != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">308</TD><TD>                        for (int i = 0; i &lt; fMenuContributions.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">309</TD><TD>                                if (fMenuContributions[i] instanceof PropertyChangeUpdateActionContributionItem) {</TD></TR><TR CLASS="z"><TD CLASS="l">310</TD><TD>                                        ((PropertyChangeUpdateActionContributionItem) fMenuContributions[i]).disconnect();</TD></TR><TR><TD CLASS="l">311</TD><TD>                                }</TD></TR><TR><TD CLASS="l">312</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">313</TD><TD>                        fMenuContributions = null;</TD></TR><TR><TD CLASS="l">314</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">315</TD><TD>        }</TD></TR><TR><TD CLASS="l">316</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="1f.html">org.eclipse.wst.sse.ui.views.contentoutline</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/14b.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/14b.html
deleted file mode 100644
index b8e95be..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/14b.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="20.html">org.eclipse.wst.sse.ui.views.properties</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">PropertySheetConfiguration.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>PropertySheetConfiguration.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/20)</TD><TD CLASS="h">0%   (0/10)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">PropertySheetConfiguration</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/20)</TD><TD CLASS="h">0%   (0/10)</TD></TR><TR><TD CLASS="f"><A HREF="#0">PropertySheetConfiguration (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">addContributions (IMenuManager, IToolBarManager, IStatusLineManager): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#3">getInputSelection (IWorkbenchPart, ISelection): ISelection</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/14)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">removeContributions (IMenuManager, IToolBarManager, IStatusLineManager): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#5">unconfigure (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2005 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.sse.ui.views.properties;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.jface.action.IMenuManager;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.jface.action.IStatusLineManager;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.jface.action.IToolBarManager;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.jface.viewers.ISelection;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.jface.viewers.IStructuredSelection;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.jface.viewers.StructuredSelection;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.ui.IWorkbenchPart;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.ui.views.properties.IPropertySheetPage;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.ui.views.properties.IPropertySourceProvider;</TD></TR><TR><TD CLASS="l">24</TD><TD> </TD></TR><TR><TD CLASS="l">25</TD><TD> </TD></TR><TR><TD CLASS="l">26</TD><TD>/**</TD></TR><TR><TD CLASS="l">27</TD><TD> * Configuration class for Property Sheet Pages. Not finalized.</TD></TR><TR><TD CLASS="l">28</TD><TD> * </TD></TR><TR><TD CLASS="l">29</TD><TD> * @since 1.0</TD></TR><TR><TD CLASS="l">30</TD><TD> */</TD></TR><TR><TD CLASS="l">31</TD><TD>public abstract class PropertySheetConfiguration {</TD></TR><TR><TD CLASS="l">32</TD><TD>        /**</TD></TR><TR><TD CLASS="l"><A NAME="0">33</A></TD><TD>         * Create new instance of PropertySheetConfiguration</TD></TR><TR><TD CLASS="l">34</TD><TD>         */</TD></TR><TR><TD CLASS="l">35</TD><TD>        public PropertySheetConfiguration() {</TD></TR><TR><TD CLASS="l">36</TD><TD>                // Must have empty constructor to createExecutableExtension</TD></TR><TR CLASS="z"><TD CLASS="l">37</TD><TD>                super();</TD></TR><TR CLASS="z"><TD CLASS="l">38</TD><TD>        }</TD></TR><TR><TD CLASS="l">39</TD><TD> </TD></TR><TR><TD CLASS="l">40</TD><TD>        /**</TD></TR><TR><TD CLASS="l">41</TD><TD>         * Adds contribution menu items to the given menuManager, toolbarManager,</TD></TR><TR><TD CLASS="l">42</TD><TD>         * statusLineManager.</TD></TR><TR><TD CLASS="l">43</TD><TD>         * </TD></TR><TR><TD CLASS="l">44</TD><TD>         * @param menuManager</TD></TR><TR><TD CLASS="l">45</TD><TD>         *            the local menu manager of the property sheet</TD></TR><TR><TD CLASS="l">46</TD><TD>         * @param toolBarManager</TD></TR><TR><TD CLASS="l">47</TD><TD>         *            the local toolbar manager of the property sheet</TD></TR><TR><TD CLASS="l">48</TD><TD>         * @param statusLineManager</TD></TR><TR><TD CLASS="l"><A NAME="2">49</A></TD><TD>         *            the status line manager of the property sheet</TD></TR><TR><TD CLASS="l">50</TD><TD>         */</TD></TR><TR><TD CLASS="l">51</TD><TD>        public void addContributions(IMenuManager menuManager, IToolBarManager toolBarManager, IStatusLineManager statusLineManager) {</TD></TR><TR><TD CLASS="l">52</TD><TD>                // do nothing</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>        }</TD></TR><TR><TD CLASS="l">54</TD><TD> </TD></TR><TR><TD CLASS="l">55</TD><TD>        /**</TD></TR><TR><TD CLASS="l">56</TD><TD>         * Allows for filteration of selection before being sent to the viewer.</TD></TR><TR><TD CLASS="l">57</TD><TD>         * </TD></TR><TR><TD CLASS="l">58</TD><TD>         * @param selectingPart</TD></TR><TR><TD CLASS="l">59</TD><TD>         *            may be null</TD></TR><TR><TD CLASS="l">60</TD><TD>         * @param selection</TD></TR><TR><TD CLASS="l"><A NAME="3">61</A></TD><TD>         *            model selection</TD></TR><TR><TD CLASS="l">62</TD><TD>         * @return the (filtered) selection to be sent to the viewer</TD></TR><TR><TD CLASS="l">63</TD><TD>         */</TD></TR><TR><TD CLASS="l">64</TD><TD>        public ISelection getInputSelection(IWorkbenchPart selectingPart, ISelection selection) {</TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>                ISelection preferredSelection = selection;</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                if (selection instanceof IStructuredSelection) {</TD></TR><TR><TD CLASS="l">67</TD><TD>                        // don't support more than one selected node</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>                        if (((IStructuredSelection) selection).size() &gt; 1)</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                                preferredSelection = StructuredSelection.EMPTY;</TD></TR><TR><TD CLASS="l">70</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>                return preferredSelection;</TD></TR><TR><TD CLASS="l">72</TD><TD>        }</TD></TR><TR><TD CLASS="l">73</TD><TD> </TD></TR><TR><TD CLASS="l">74</TD><TD>        /**</TD></TR><TR><TD CLASS="l">75</TD><TD>         * Returns the correct IPropertySourceProvider.</TD></TR><TR><TD CLASS="l">76</TD><TD>         * </TD></TR><TR><TD CLASS="l">77</TD><TD>         * @param page</TD></TR><TR><TD CLASS="l">78</TD><TD>         *            the page to be configured by this configuration</TD></TR><TR><TD CLASS="l">79</TD><TD>         * @return the IPropertySourceProvider for the given page</TD></TR><TR><TD CLASS="l">80</TD><TD>         */</TD></TR><TR><TD CLASS="l">81</TD><TD>        public abstract IPropertySourceProvider getPropertySourceProvider(IPropertySheetPage page);</TD></TR><TR><TD CLASS="l">82</TD><TD> </TD></TR><TR><TD CLASS="l">83</TD><TD>        /**</TD></TR><TR><TD CLASS="l">84</TD><TD>         * Removes contribution menu items from the given menuManager,</TD></TR><TR><TD CLASS="l">85</TD><TD>         * toolbarManager, statusLineManager.</TD></TR><TR><TD CLASS="l">86</TD><TD>         * </TD></TR><TR><TD CLASS="l">87</TD><TD>         * @param menuManager</TD></TR><TR><TD CLASS="l">88</TD><TD>         *            the local menu manager of the property sheet</TD></TR><TR><TD CLASS="l">89</TD><TD>         * @param toolBarManager</TD></TR><TR><TD CLASS="l">90</TD><TD>         *            the local toolbar manager of the property sheet</TD></TR><TR><TD CLASS="l">91</TD><TD>         * @param statusLineManager</TD></TR><TR><TD CLASS="l"><A NAME="4">92</A></TD><TD>         *            the status line manager of the property sheet</TD></TR><TR><TD CLASS="l">93</TD><TD>         */</TD></TR><TR><TD CLASS="l">94</TD><TD>        public void removeContributions(IMenuManager menuManager, IToolBarManager toolBarManager, IStatusLineManager statusLineManager) {</TD></TR><TR><TD CLASS="l">95</TD><TD>                // do nothing</TD></TR><TR CLASS="z"><TD CLASS="l">96</TD><TD>        }</TD></TR><TR><TD CLASS="l">97</TD><TD> </TD></TR><TR><TD CLASS="l">98</TD><TD>        /**</TD></TR><TR><TD CLASS="l"><A NAME="5">99</A></TD><TD>         * General hook for resource releasing and listener removal when</TD></TR><TR><TD CLASS="l">100</TD><TD>         * configurations change.</TD></TR><TR><TD CLASS="l">101</TD><TD>         */</TD></TR><TR><TD CLASS="l">102</TD><TD>        public void unconfigure() {</TD></TR><TR CLASS="z"><TD CLASS="l">103</TD><TD>        }</TD></TR><TR><TD CLASS="l">104</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="20.html">org.eclipse.wst.sse.ui.views.properties</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/14c.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/14c.html
deleted file mode 100644
index e57fd02..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/14c.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="21.html">org.eclipse.wst.xml.core.internal.cleanup</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">CleanupProcessorXML.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>CleanupProcessorXML.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/104)</TD><TD CLASS="h">0%   (0/29)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">CleanupProcessorXML</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/104)</TD><TD CLASS="h">0%   (0/29)</TD></TR><TR><TD CLASS="f"><A HREF="#0">CleanupProcessorXML (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">getCleanupHandler (Node): IStructuredCleanupHandler</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/27)</TD><TD CLASS="h">0%   (0/10)</TD></TR><TR><TD CLASS="f"><A HREF="#3">getCleanupPreferences (): IStructuredCleanupPreferences</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/58)</TD><TD CLASS="h">0%   (0/12)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">getContentType (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#5">getFormatProcessor (): IStructuredFormatProcessor</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">getModelPreferences (): Preferences</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#7">refreshCleanupPreferences (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2005 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.core.internal.cleanup;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.core.runtime.Preferences;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.wst.sse.core.internal.cleanup.AbstractStructuredCleanupProcessor;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.wst.sse.core.internal.cleanup.IStructuredCleanupHandler;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.wst.sse.core.internal.cleanup.IStructuredCleanupPreferences;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.wst.sse.core.internal.cleanup.StructuredCleanupPreferences;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.wst.sse.core.internal.format.IStructuredFormatProcessor;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.wst.xml.core.internal.XMLCorePlugin;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.wst.xml.core.internal.formatter.XMLFormatterFormatProcessor;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.wst.xml.core.internal.preferences.XMLCorePreferenceNames;</TD></TR><TR><TD CLASS="l"><A NAME="0">24</A></TD><TD>import org.eclipse.wst.xml.core.internal.provisional.contenttype.ContentTypeIdForXML;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.w3c.dom.Node;</TD></TR><TR><TD CLASS="l">26</TD><TD> </TD></TR><TR><TD CLASS="l">27</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">28</A></TD><TD>public class CleanupProcessorXML extends AbstractStructuredCleanupProcessor {</TD></TR><TR CLASS="z"><TD CLASS="l">29</TD><TD>        protected IStructuredCleanupPreferences fCleanupPreferences = null;</TD></TR><TR><TD CLASS="l">30</TD><TD> </TD></TR><TR><TD CLASS="l">31</TD><TD>        protected IStructuredCleanupHandler getCleanupHandler(Node node) {</TD></TR><TR CLASS="z"><TD CLASS="l">32</TD><TD>                short nodeType = node.getNodeType();</TD></TR><TR CLASS="z"><TD CLASS="l">33</TD><TD>                IStructuredCleanupHandler cleanupHandler = null;</TD></TR><TR CLASS="z"><TD CLASS="l">34</TD><TD>                switch (nodeType) {</TD></TR><TR><TD CLASS="l">35</TD><TD>                        case Node.ELEMENT_NODE : {</TD></TR><TR CLASS="z"><TD CLASS="l">36</TD><TD>                                cleanupHandler = new ElementNodeCleanupHandler();</TD></TR><TR CLASS="z"><TD CLASS="l">37</TD><TD>                                break;</TD></TR><TR><TD CLASS="l">38</TD><TD>                        }</TD></TR><TR><TD CLASS="l">39</TD><TD>                        case Node.TEXT_NODE : {</TD></TR><TR CLASS="z"><TD CLASS="l">40</TD><TD>                                cleanupHandler = new NodeCleanupHandler();</TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>                                break;</TD></TR><TR><TD CLASS="l">42</TD><TD>                        }</TD></TR><TR><TD CLASS="l">43</TD><TD>                        default : {</TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>                                cleanupHandler = new NodeCleanupHandler();</TD></TR><TR><TD CLASS="l">45</TD><TD>                        }</TD></TR><TR><TD CLASS="l">46</TD><TD>                }</TD></TR><TR><TD CLASS="l">47</TD><TD> </TD></TR><TR><TD CLASS="l">48</TD><TD>                // init CleanupPreferences</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>                cleanupHandler.setCleanupPreferences(getCleanupPreferences());</TD></TR><TR><TD CLASS="l">50</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">51</A></TD><TD>                return cleanupHandler;</TD></TR><TR><TD CLASS="l">52</TD><TD>        }</TD></TR><TR><TD CLASS="l">53</TD><TD> </TD></TR><TR><TD CLASS="l">54</TD><TD>        public IStructuredCleanupPreferences getCleanupPreferences() {</TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                if (fCleanupPreferences == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>                        fCleanupPreferences = new StructuredCleanupPreferences();</TD></TR><TR><TD CLASS="l">57</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>                        Preferences preferences = getModelPreferences();</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>                        if (preferences != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                                fCleanupPreferences.setCompressEmptyElementTags(preferences.getBoolean(XMLCorePreferenceNames.COMPRESS_EMPTY_ELEMENT_TAGS));</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                                fCleanupPreferences.setInsertRequiredAttrs(preferences.getBoolean(XMLCorePreferenceNames.INSERT_REQUIRED_ATTRS));</TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>                                fCleanupPreferences.setInsertMissingTags(preferences.getBoolean(XMLCorePreferenceNames.INSERT_MISSING_TAGS));</TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>                                fCleanupPreferences.setQuoteAttrValues(preferences.getBoolean(XMLCorePreferenceNames.QUOTE_ATTR_VALUES));</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                                fCleanupPreferences.setFormatSource(preferences.getBoolean(XMLCorePreferenceNames.FORMAT_SOURCE));</TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>                                fCleanupPreferences.setConvertEOLCodes(preferences.getBoolean(XMLCorePreferenceNames.CONVERT_EOL_CODES));</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                                fCleanupPreferences.setEOLCode(preferences.getString(XMLCorePreferenceNames.CLEANUP_EOL_CODE));</TD></TR><TR><TD CLASS="l">67</TD><TD>                        }</TD></TR><TR><TD CLASS="l">68</TD><TD>                }</TD></TR><TR><TD CLASS="l">69</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">70</A></TD><TD>                return fCleanupPreferences;</TD></TR><TR><TD CLASS="l">71</TD><TD>        }</TD></TR><TR><TD CLASS="l">72</TD><TD> </TD></TR><TR><TD CLASS="l">73</TD><TD>        protected String getContentType() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="5">74</A></TD><TD>                return ContentTypeIdForXML.ContentTypeID_XML;</TD></TR><TR><TD CLASS="l">75</TD><TD>        }</TD></TR><TR><TD CLASS="l">76</TD><TD> </TD></TR><TR><TD CLASS="l">77</TD><TD>        protected IStructuredFormatProcessor getFormatProcessor() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="6">78</A></TD><TD>                return new XMLFormatterFormatProcessor();</TD></TR><TR><TD CLASS="l">79</TD><TD>        }</TD></TR><TR><TD CLASS="l">80</TD><TD> </TD></TR><TR><TD CLASS="l">81</TD><TD>        protected Preferences getModelPreferences() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="7">82</A></TD><TD>                return XMLCorePlugin.getDefault().getPluginPreferences();</TD></TR><TR><TD CLASS="l">83</TD><TD>        }</TD></TR><TR><TD CLASS="l">84</TD><TD> </TD></TR><TR><TD CLASS="l">85</TD><TD>        protected void refreshCleanupPreferences() {</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                fCleanupPreferences = null;</TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>        }</TD></TR><TR><TD CLASS="l">88</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="21.html">org.eclipse.wst.xml.core.internal.cleanup</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/14d.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/14d.html
deleted file mode 100644
index f221971..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/14d.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="21.html">org.eclipse.wst.xml.core.internal.cleanup</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">ElementNodeCleanupHandler.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>ElementNodeCleanupHandler.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/19)</TD><TD CLASS="h">0%   (0/970)</TD><TD CLASS="h">0%   (0/253)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">ElementNodeCleanupHandler</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/19)</TD><TD CLASS="h">0%   (0/970)</TD><TD CLASS="h">0%   (0/253)</TD></TR><TR><TD CLASS="f"><A HREF="#0">ElementNodeCleanupHandler (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">cleanup (Node): Node</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/69)</TD><TD CLASS="h">0%   (0/17)</TD></TR><TR><TD CLASS="f"><A HREF="#3">cleanupChildren (Node): Node</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/26)</TD><TD CLASS="h">0%   (0/9)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">compressEmptyElementTag (IDOMNode): IDOMNode</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/105)</TD><TD CLASS="h">0%   (0/21)</TD></TR><TR><TD CLASS="f"><A HREF="#5">getCleanupHandler (Node): IStructuredCleanupHandler</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/27)</TD><TD CLASS="h">0%   (0/10)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">getModelQuery (Node): ModelQuery</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#7">getRequiredAttrs (Node): List</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/43)</TD><TD CLASS="h">0%   (0/13)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">insertEndTag (IDOMNode): IDOMNode</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/115)</TD><TD CLASS="h">0%   (0/27)</TD></TR><TR><TD CLASS="f"><A HREF="#9">insertMissingTags (IDOMNode): IDOMNode</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/62)</TD><TD CLASS="h">0%   (0/17)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">insertRequiredAttrs (IDOMNode): IDOMNode</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/183)</TD><TD CLASS="h">0%   (0/45)</TD></TR><TR><TD CLASS="f"><A HREF="#b">insertStartTag (IDOMNode): IDOMNode</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/40)</TD><TD CLASS="h">0%   (0/11)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#c">insertTagClose (IDOMModel, IStructuredDocumentRegion): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/38)</TD><TD CLASS="h">0%   (0/10)</TD></TR><TR><TD CLASS="f"><A HREF="#d">isCommentTag (Node): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#e">isEmptyElement (IDOMElement): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/30)</TD><TD CLASS="h">0%   (0/10)</TD></TR><TR><TD CLASS="f"><A HREF="#f">isEndTagRequired (IDOMNode): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#10">isImplicitTag (IDOMNode): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#11">isStartTagRequired (IDOMNode): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#12">isXMLType (IDOMModel): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/16)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#13">quoteAttrValue (IDOMNode): IDOMNode</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/167)</TD><TD CLASS="h">0%   (0/41)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.core.internal.cleanup;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.util.ArrayList;</TD></TR><TR><TD CLASS="l">16</TD><TD>import java.util.Iterator;</TD></TR><TR><TD CLASS="l">17</TD><TD>import java.util.List;</TD></TR><TR><TD CLASS="l">18</TD><TD> </TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.jface.text.BadLocationException;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.text.edits.InsertEdit;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.text.edits.MultiTextEdit;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.wst.sse.core.internal.cleanup.IStructuredCleanupHandler;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionList;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.wst.sse.core.utils.StringUtils;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.wst.xml.core.internal.Logger;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;</TD></TR><TR><TD CLASS="l">30</TD><TD>import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;</TD></TR><TR><TD CLASS="l">31</TD><TD>import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;</TD></TR><TR><TD CLASS="l">32</TD><TD>import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQuery;</TD></TR><TR><TD CLASS="l">33</TD><TD>import org.eclipse.wst.xml.core.internal.modelquery.ModelQueryUtil;</TD></TR><TR><TD CLASS="l">34</TD><TD>import org.eclipse.wst.xml.core.internal.provisional.document.IDOMAttr;</TD></TR><TR><TD CLASS="l">35</TD><TD>import org.eclipse.wst.xml.core.internal.provisional.document.IDOMDocument;</TD></TR><TR><TD CLASS="l">36</TD><TD>import org.eclipse.wst.xml.core.internal.provisional.document.IDOMElement;</TD></TR><TR><TD CLASS="l">37</TD><TD>import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;</TD></TR><TR><TD CLASS="l">38</TD><TD>import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;</TD></TR><TR><TD CLASS="l">39</TD><TD>import org.eclipse.wst.xml.core.internal.provisional.document.ISourceGenerator;</TD></TR><TR><TD CLASS="l">40</TD><TD>import org.eclipse.wst.xml.core.internal.regions.DOMRegionContext;</TD></TR><TR><TD CLASS="l">41</TD><TD>import org.w3c.dom.Document;</TD></TR><TR><TD CLASS="l">42</TD><TD>import org.w3c.dom.Element;</TD></TR><TR><TD CLASS="l">43</TD><TD>import org.w3c.dom.NamedNodeMap;</TD></TR><TR><TD CLASS="l"><A NAME="0">44</A></TD><TD>import org.w3c.dom.Node;</TD></TR><TR><TD CLASS="l">45</TD><TD>import org.w3c.dom.NodeList;</TD></TR><TR><TD CLASS="l">46</TD><TD> </TD></TR><TR><TD CLASS="l">47</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">48</TD><TD>public class ElementNodeCleanupHandler extends NodeCleanupHandler {</TD></TR><TR><TD CLASS="l">49</TD><TD>        protected static final char DOUBLE_QUOTE = '\&#34;'; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">50</TD><TD>        protected static final String DOUBLE_QUOTES = &#34;\&#34;\&#34;&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">51</TD><TD>        protected static final String EMPTY_TAG_CLOSE = &#34;/&gt;&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">52</TD><TD>        protected static final String END_TAG_OPEN = &#34;&lt;/&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">53</TD><TD>        protected static final char SINGLE_QUOTE = '\''; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">54</TD><TD>        protected static final String SINGLE_QUOTES = &#34;''&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">55</TD><TD> </TD></TR><TR><TD CLASS="l">56</TD><TD>        /** Non-NLS strings */</TD></TR><TR><TD CLASS="l"><A NAME="2">57</A></TD><TD>        protected static final String START_TAG_OPEN = &#34;&lt;&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">58</TD><TD>        protected static final String TAG_CLOSE = &#34;&gt;&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">59</TD><TD> </TD></TR><TR><TD CLASS="l">60</TD><TD>        public Node cleanup(Node node) {</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                Node newNode = cleanupChildren(node);</TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>                IDOMNode renamedNode = newNode instanceof IDOMNode ? (IDOMNode) newNode : null;</TD></TR><TR><TD CLASS="l">63</TD><TD> </TD></TR><TR><TD CLASS="l">64</TD><TD>                // call quoteAttrValue() first so it will close any unclosed attr</TD></TR><TR><TD CLASS="l">65</TD><TD>                // quoteAttrValue() will return the new start tag if there is a</TD></TR><TR><TD CLASS="l">66</TD><TD>                // structure change</TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>                renamedNode = quoteAttrValue(renamedNode);</TD></TR><TR><TD CLASS="l">68</TD><TD> </TD></TR><TR><TD CLASS="l">69</TD><TD>                // insert tag close if missing</TD></TR><TR><TD CLASS="l">70</TD><TD>                // if node is not comment tag</TD></TR><TR><TD CLASS="l">71</TD><TD>                // and not implicit tag</TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>                if (!isCommentTag(renamedNode) &amp;&amp; !isImplicitTag(renamedNode)) {</TD></TR><TR CLASS="z"><TD CLASS="l">73</TD><TD>                        IDOMModel structuredModel = renamedNode.getModel();</TD></TR><TR><TD CLASS="l">74</TD><TD> </TD></TR><TR><TD CLASS="l">75</TD><TD>                        // save start offset before insertTagClose()</TD></TR><TR><TD CLASS="l">76</TD><TD>                        // or else renamedNode.getStartOffset() will be zero if</TD></TR><TR><TD CLASS="l">77</TD><TD>                        // renamedNode replaced by insertTagClose()</TD></TR><TR CLASS="z"><TD CLASS="l">78</TD><TD>                        int startTagStartOffset = renamedNode.getStartOffset();</TD></TR><TR><TD CLASS="l">79</TD><TD> </TD></TR><TR><TD CLASS="l">80</TD><TD>                        // for start tag</TD></TR><TR CLASS="z"><TD CLASS="l">81</TD><TD>                        IStructuredDocumentRegion startTagStructuredDocumentRegion = renamedNode.getStartStructuredDocumentRegion();</TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>                        insertTagClose(structuredModel, startTagStructuredDocumentRegion);</TD></TR><TR><TD CLASS="l">83</TD><TD> </TD></TR><TR><TD CLASS="l">84</TD><TD>                        // update renamedNode and startTagStructuredDocumentRegion after</TD></TR><TR><TD CLASS="l">85</TD><TD>                        // insertTagClose()</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                        renamedNode = (IDOMNode) structuredModel.getIndexedRegion(startTagStartOffset);</TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>                        startTagStructuredDocumentRegion = renamedNode.getStartStructuredDocumentRegion();</TD></TR><TR><TD CLASS="l">88</TD><TD> </TD></TR><TR><TD CLASS="l">89</TD><TD>                        // for end tag</TD></TR><TR CLASS="z"><TD CLASS="l">90</TD><TD>                        IStructuredDocumentRegion endTagStructuredDocumentRegion = renamedNode.getEndStructuredDocumentRegion();</TD></TR><TR CLASS="z"><TD CLASS="l">91</TD><TD>                        if (endTagStructuredDocumentRegion != startTagStructuredDocumentRegion)</TD></TR><TR CLASS="z"><TD CLASS="l">92</TD><TD>                                insertTagClose(structuredModel, endTagStructuredDocumentRegion);</TD></TR><TR><TD CLASS="l">93</TD><TD>                }</TD></TR><TR><TD CLASS="l">94</TD><TD> </TD></TR><TR><TD CLASS="l">95</TD><TD>                // call insertMissingTags() next, it will generate implicit tags if</TD></TR><TR><TD CLASS="l">96</TD><TD>                // there are any</TD></TR><TR><TD CLASS="l">97</TD><TD>                // insertMissingTags() will return the new missing start tag if one is</TD></TR><TR><TD CLASS="l">98</TD><TD>                // missing</TD></TR><TR CLASS="z"><TD CLASS="l">99</TD><TD>                renamedNode = insertMissingTags(renamedNode);</TD></TR><TR><TD CLASS="l">100</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">101</TD><TD>                renamedNode = compressEmptyElementTag(renamedNode);</TD></TR><TR><TD CLASS="l">102</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">103</TD><TD>                renamedNode = insertRequiredAttrs(renamedNode);</TD></TR><TR><TD CLASS="l">104</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">105</A></TD><TD>                return renamedNode;</TD></TR><TR><TD CLASS="l">106</TD><TD>        }</TD></TR><TR><TD CLASS="l">107</TD><TD> </TD></TR><TR><TD CLASS="l">108</TD><TD>        protected Node cleanupChildren(Node node) {</TD></TR><TR CLASS="z"><TD CLASS="l">109</TD><TD>                Node parentNode = node;</TD></TR><TR><TD CLASS="l">110</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">111</TD><TD>                if (node != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">112</TD><TD>                        Node childNode = node.getFirstChild();</TD></TR><TR CLASS="z"><TD CLASS="l">113</TD><TD>                        while (childNode != null) {</TD></TR><TR><TD CLASS="l">114</TD><TD>                                // get cleanup handler</TD></TR><TR CLASS="z"><TD CLASS="l">115</TD><TD>                                IStructuredCleanupHandler cleanupHandler = getCleanupHandler(childNode);</TD></TR><TR><TD CLASS="l">116</TD><TD> </TD></TR><TR><TD CLASS="l">117</TD><TD>                                // cleanup each child</TD></TR><TR CLASS="z"><TD CLASS="l">118</TD><TD>                                childNode = cleanupHandler.cleanup(childNode);</TD></TR><TR><TD CLASS="l">119</TD><TD> </TD></TR><TR><TD CLASS="l">120</TD><TD>                                // get new parent node</TD></TR><TR CLASS="z"><TD CLASS="l">121</TD><TD>                                parentNode = childNode.getParentNode();</TD></TR><TR><TD CLASS="l">122</TD><TD> </TD></TR><TR><TD CLASS="l">123</TD><TD>                                // get next child node</TD></TR><TR CLASS="z"><TD CLASS="l">124</TD><TD>                                childNode = childNode.getNextSibling();</TD></TR><TR><TD CLASS="l">125</TD><TD>                        }</TD></TR><TR><TD CLASS="l">126</TD><TD>                }</TD></TR><TR><TD CLASS="l">127</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">128</A></TD><TD>                return parentNode;</TD></TR><TR><TD CLASS="l">129</TD><TD>        }</TD></TR><TR><TD CLASS="l">130</TD><TD> </TD></TR><TR><TD CLASS="l">131</TD><TD>        private IDOMNode compressEmptyElementTag(IDOMNode node) {</TD></TR><TR CLASS="z"><TD CLASS="l">132</TD><TD>                boolean compressEmptyElementTags = getCleanupPreferences().getCompressEmptyElementTags();</TD></TR><TR CLASS="z"><TD CLASS="l">133</TD><TD>                IDOMNode newNode = node;</TD></TR><TR><TD CLASS="l">134</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">135</TD><TD>                IStructuredDocumentRegion startTagStructuredDocumentRegion = newNode.getFirstStructuredDocumentRegion();</TD></TR><TR CLASS="z"><TD CLASS="l">136</TD><TD>                IStructuredDocumentRegion endTagStructuredDocumentRegion = newNode.getLastStructuredDocumentRegion();</TD></TR><TR><TD CLASS="l">137</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">138</TD><TD>                if (compressEmptyElementTags &amp;&amp; startTagStructuredDocumentRegion != endTagStructuredDocumentRegion &amp;&amp; startTagStructuredDocumentRegion != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">139</TD><TD>                        ITextRegionList regions = startTagStructuredDocumentRegion.getRegions();</TD></TR><TR CLASS="z"><TD CLASS="l">140</TD><TD>                        ITextRegion lastRegion = regions.get(regions.size() - 1);</TD></TR><TR><TD CLASS="l">141</TD><TD>                        // format children and end tag if not empty element tag</TD></TR><TR CLASS="z"><TD CLASS="l">142</TD><TD>                        if (lastRegion.getType() != DOMRegionContext.XML_EMPTY_TAG_CLOSE) {</TD></TR><TR CLASS="z"><TD CLASS="l">143</TD><TD>                                NodeList childNodes = newNode.getChildNodes();</TD></TR><TR CLASS="z"><TD CLASS="l">144</TD><TD>                                if (childNodes == null || childNodes.getLength() == 0 || (childNodes.getLength() == 1 &amp;&amp; (childNodes.item(0)).getNodeType() == Node.TEXT_NODE &amp;&amp; ((childNodes.item(0)).getNodeValue().trim().length() == 0))) {</TD></TR><TR CLASS="z"><TD CLASS="l">145</TD><TD>                                        IDOMModel structuredModel = newNode.getModel();</TD></TR><TR CLASS="z"><TD CLASS="l">146</TD><TD>                                        IStructuredDocument structuredDocument = structuredModel.getStructuredDocument();</TD></TR><TR><TD CLASS="l">147</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">148</TD><TD>                                        int startTagStartOffset = newNode.getStartOffset();</TD></TR><TR CLASS="z"><TD CLASS="l">149</TD><TD>                                        int offset = endTagStructuredDocumentRegion.getStart();</TD></TR><TR CLASS="z"><TD CLASS="l">150</TD><TD>                                        int length = endTagStructuredDocumentRegion.getLength();</TD></TR><TR CLASS="z"><TD CLASS="l">151</TD><TD>                                        structuredDocument.replaceText(structuredDocument, offset, length, &#34;&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">152</TD><TD>                                        newNode = (IDOMNode) structuredModel.getIndexedRegion(startTagStartOffset); // save</TD></TR><TR><TD CLASS="l">153</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">154</TD><TD>                                        offset = startTagStructuredDocumentRegion.getStart() + lastRegion.getStart();</TD></TR><TR CLASS="z"><TD CLASS="l">155</TD><TD>                                        structuredDocument.replaceText(structuredDocument, offset, 0, &#34;/&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">156</TD><TD>                                        newNode = (IDOMNode) structuredModel.getIndexedRegion(startTagStartOffset); // save</TD></TR><TR><TD CLASS="l">157</TD><TD>                                }</TD></TR><TR><TD CLASS="l">158</TD><TD>                        }</TD></TR><TR><TD CLASS="l">159</TD><TD>                }</TD></TR><TR><TD CLASS="l">160</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="5">161</A></TD><TD>                return newNode;</TD></TR><TR><TD CLASS="l">162</TD><TD>        }</TD></TR><TR><TD CLASS="l">163</TD><TD> </TD></TR><TR><TD CLASS="l">164</TD><TD>        protected IStructuredCleanupHandler getCleanupHandler(Node node) {</TD></TR><TR CLASS="z"><TD CLASS="l">165</TD><TD>                short nodeType = node.getNodeType();</TD></TR><TR CLASS="z"><TD CLASS="l">166</TD><TD>                IStructuredCleanupHandler cleanupHandler = null;</TD></TR><TR CLASS="z"><TD CLASS="l">167</TD><TD>                switch (nodeType) {</TD></TR><TR><TD CLASS="l">168</TD><TD>                        case org.w3c.dom.Node.ELEMENT_NODE : {</TD></TR><TR CLASS="z"><TD CLASS="l">169</TD><TD>                                cleanupHandler = new ElementNodeCleanupHandler();</TD></TR><TR CLASS="z"><TD CLASS="l">170</TD><TD>                                break;</TD></TR><TR><TD CLASS="l">171</TD><TD>                        }</TD></TR><TR><TD CLASS="l">172</TD><TD>                        case org.w3c.dom.Node.TEXT_NODE : {</TD></TR><TR CLASS="z"><TD CLASS="l">173</TD><TD>                                cleanupHandler = new NodeCleanupHandler();</TD></TR><TR CLASS="z"><TD CLASS="l">174</TD><TD>                                break;</TD></TR><TR><TD CLASS="l">175</TD><TD>                        }</TD></TR><TR><TD CLASS="l">176</TD><TD>                        default : {</TD></TR><TR CLASS="z"><TD CLASS="l">177</TD><TD>                                cleanupHandler = new NodeCleanupHandler();</TD></TR><TR><TD CLASS="l">178</TD><TD>                        }</TD></TR><TR><TD CLASS="l">179</TD><TD>                }</TD></TR><TR><TD CLASS="l">180</TD><TD> </TD></TR><TR><TD CLASS="l">181</TD><TD>                // init CleanupPreferences</TD></TR><TR CLASS="z"><TD CLASS="l">182</TD><TD>                cleanupHandler.setCleanupPreferences(getCleanupPreferences());</TD></TR><TR><TD CLASS="l">183</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">184</TD><TD>                return cleanupHandler;</TD></TR><TR><TD CLASS="l"><A NAME="6">185</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">186</TD><TD> </TD></TR><TR><TD CLASS="l">187</TD><TD> </TD></TR><TR><TD CLASS="l">188</TD><TD>        protected ModelQuery getModelQuery(Node node) {</TD></TR><TR CLASS="z"><TD CLASS="l">189</TD><TD>                if (node.getNodeType() == Node.DOCUMENT_NODE) {</TD></TR><TR CLASS="z"><TD CLASS="l">190</TD><TD>                        return ModelQueryUtil.getModelQuery((Document) node);</TD></TR><TR><TD CLASS="l">191</TD><TD>                } else {</TD></TR><TR CLASS="z"><TD CLASS="l">192</TD><TD>                        return ModelQueryUtil.getModelQuery(node.getOwnerDocument());</TD></TR><TR><TD CLASS="l"><A NAME="7">193</A></TD><TD>                }</TD></TR><TR><TD CLASS="l">194</TD><TD>        }</TD></TR><TR><TD CLASS="l">195</TD><TD> </TD></TR><TR><TD CLASS="l">196</TD><TD>        protected List getRequiredAttrs(Node node) {</TD></TR><TR CLASS="z"><TD CLASS="l">197</TD><TD>                List result = new ArrayList();</TD></TR><TR><TD CLASS="l">198</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">199</TD><TD>                ModelQuery modelQuery = getModelQuery(node);</TD></TR><TR CLASS="z"><TD CLASS="l">200</TD><TD>                if (modelQuery != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">201</TD><TD>                        CMElementDeclaration elementDecl = modelQuery.getCMElementDeclaration((Element) node);</TD></TR><TR CLASS="z"><TD CLASS="l">202</TD><TD>                        if (elementDecl != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">203</TD><TD>                                CMNamedNodeMap attrMap = elementDecl.getAttributes();</TD></TR><TR CLASS="z"><TD CLASS="l">204</TD><TD>                                Iterator it = attrMap.iterator();</TD></TR><TR CLASS="z"><TD CLASS="l">205</TD><TD>                                CMAttributeDeclaration attr = null;</TD></TR><TR CLASS="z"><TD CLASS="l">206</TD><TD>                                while (it.hasNext()) {</TD></TR><TR CLASS="z"><TD CLASS="l">207</TD><TD>                                        attr = (CMAttributeDeclaration) it.next();</TD></TR><TR CLASS="z"><TD CLASS="l">208</TD><TD>                                        if (attr.getUsage() == CMAttributeDeclaration.REQUIRED) {</TD></TR><TR CLASS="z"><TD CLASS="l">209</TD><TD>                                                result.add(attr);</TD></TR><TR><TD CLASS="l">210</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">211</TD><TD>                                }</TD></TR><TR><TD CLASS="l">212</TD><TD>                        }</TD></TR><TR><TD CLASS="l">213</TD><TD>                }</TD></TR><TR><TD CLASS="l">214</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="8">215</A></TD><TD>                return result;</TD></TR><TR><TD CLASS="l">216</TD><TD>        }</TD></TR><TR><TD CLASS="l">217</TD><TD> </TD></TR><TR><TD CLASS="l">218</TD><TD>        private IDOMNode insertEndTag(IDOMNode node) {</TD></TR><TR CLASS="z"><TD CLASS="l">219</TD><TD>                IDOMNode newNode = node;</TD></TR><TR CLASS="z"><TD CLASS="l">220</TD><TD>                IDOMElement element = (IDOMElement) node;</TD></TR><TR CLASS="z"><TD CLASS="l">221</TD><TD>                if (element.isCommentTag())</TD></TR><TR CLASS="z"><TD CLASS="l">222</TD><TD>                        return node; // do nothing</TD></TR><TR><TD CLASS="l">223</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">224</TD><TD>                int startTagStartOffset = node.getStartOffset();</TD></TR><TR CLASS="z"><TD CLASS="l">225</TD><TD>                IDOMModel structuredModel = node.getModel();</TD></TR><TR><TD CLASS="l">226</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">227</TD><TD>                if (isEmptyElement(element)) {</TD></TR><TR CLASS="z"><TD CLASS="l">228</TD><TD>                        IStructuredDocument structuredDocument = structuredModel.getStructuredDocument();</TD></TR><TR CLASS="z"><TD CLASS="l">229</TD><TD>                        IStructuredDocumentRegion startStructuredDocumentRegion = node.getStartStructuredDocumentRegion();</TD></TR><TR CLASS="z"><TD CLASS="l">230</TD><TD>                        ITextRegionList regions = startStructuredDocumentRegion.getRegions();</TD></TR><TR CLASS="z"><TD CLASS="l">231</TD><TD>                        ITextRegion lastRegion = regions.get(regions.size() - 1);</TD></TR><TR CLASS="z"><TD CLASS="l">232</TD><TD>                        structuredDocument.replaceText(structuredDocument, startStructuredDocumentRegion.getStartOffset(lastRegion), lastRegion.getLength(), EMPTY_TAG_CLOSE);</TD></TR><TR><TD CLASS="l">233</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">234</TD><TD>                        if (regions.size() &gt; 1) {</TD></TR><TR CLASS="z"><TD CLASS="l">235</TD><TD>                                ITextRegion regionBeforeTagClose = regions.get(regions.size() - 1 - 1);</TD></TR><TR><TD CLASS="l">236</TD><TD> </TD></TR><TR><TD CLASS="l">237</TD><TD>                                // insert a space separator before tag close if the previous</TD></TR><TR><TD CLASS="l">238</TD><TD>                                // region does not have extra spaces</TD></TR><TR CLASS="z"><TD CLASS="l">239</TD><TD>                                if (regionBeforeTagClose.getTextLength() == regionBeforeTagClose.getLength())</TD></TR><TR CLASS="z"><TD CLASS="l">240</TD><TD>                                        structuredDocument.replaceText(structuredDocument, startStructuredDocumentRegion.getStartOffset(lastRegion), 0, &#34; &#34;); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">241</TD><TD>                        }</TD></TR><TR><TD CLASS="l">242</TD><TD>                } else {</TD></TR><TR CLASS="z"><TD CLASS="l">243</TD><TD>                        String tagName = node.getNodeName();</TD></TR><TR CLASS="z"><TD CLASS="l">244</TD><TD>                        String endTag = END_TAG_OPEN.concat(tagName).concat(TAG_CLOSE);</TD></TR><TR><TD CLASS="l">245</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">246</TD><TD>                        IDOMNode lastChild = (IDOMNode) node.getLastChild();</TD></TR><TR CLASS="z"><TD CLASS="l">247</TD><TD>                        int endTagStartOffset = 0;</TD></TR><TR CLASS="z"><TD CLASS="l">248</TD><TD>                        if (lastChild != null)</TD></TR><TR><TD CLASS="l">249</TD><TD>                                // if this node has children, insert the end tag after the</TD></TR><TR><TD CLASS="l">250</TD><TD>                                // last child</TD></TR><TR CLASS="z"><TD CLASS="l">251</TD><TD>                                endTagStartOffset = lastChild.getEndOffset();</TD></TR><TR><TD CLASS="l">252</TD><TD>                        else</TD></TR><TR><TD CLASS="l">253</TD><TD>                                // if this node does not has children, insert the end tag</TD></TR><TR><TD CLASS="l">254</TD><TD>                                // after the start tag</TD></TR><TR CLASS="z"><TD CLASS="l">255</TD><TD>                                endTagStartOffset = node.getEndOffset();</TD></TR><TR><TD CLASS="l">256</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">257</TD><TD>                        IStructuredDocument structuredDocument = structuredModel.getStructuredDocument();</TD></TR><TR CLASS="z"><TD CLASS="l">258</TD><TD>                        structuredDocument.replaceText(structuredDocument, endTagStartOffset, 0, endTag);</TD></TR><TR><TD CLASS="l">259</TD><TD>                }</TD></TR><TR><TD CLASS="l">260</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">261</TD><TD>                newNode = (IDOMNode) structuredModel.getIndexedRegion(startTagStartOffset); // save</TD></TR><TR><TD CLASS="l">262</TD><TD>                // new</TD></TR><TR><TD CLASS="l">263</TD><TD>                // node</TD></TR><TR><TD CLASS="l">264</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="9">265</A></TD><TD>                return newNode;</TD></TR><TR><TD CLASS="l">266</TD><TD>        }</TD></TR><TR><TD CLASS="l">267</TD><TD> </TD></TR><TR><TD CLASS="l">268</TD><TD>        private IDOMNode insertMissingTags(IDOMNode node) {</TD></TR><TR CLASS="z"><TD CLASS="l">269</TD><TD>                boolean insertMissingTags = getCleanupPreferences().getInsertMissingTags();</TD></TR><TR CLASS="z"><TD CLASS="l">270</TD><TD>                IDOMNode newNode = node;</TD></TR><TR><TD CLASS="l">271</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">272</TD><TD>                if (insertMissingTags) {</TD></TR><TR CLASS="z"><TD CLASS="l">273</TD><TD>                        IStructuredDocumentRegion startTagStructuredDocumentRegion = node.getStartStructuredDocumentRegion();</TD></TR><TR CLASS="z"><TD CLASS="l">274</TD><TD>                        if (startTagStructuredDocumentRegion == null) {</TD></TR><TR><TD CLASS="l">275</TD><TD>                                // implicit start tag; generate tag for it</TD></TR><TR CLASS="z"><TD CLASS="l">276</TD><TD>                                newNode = insertStartTag(node);</TD></TR><TR CLASS="z"><TD CLASS="l">277</TD><TD>                                startTagStructuredDocumentRegion = newNode.getStartStructuredDocumentRegion();</TD></TR><TR><TD CLASS="l">278</TD><TD>                        }</TD></TR><TR><TD CLASS="l">279</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">280</TD><TD>                        IStructuredDocumentRegion endTagStructuredDocumentRegion = newNode.getEndStructuredDocumentRegion();</TD></TR><TR CLASS="z"><TD CLASS="l">281</TD><TD>                        ITextRegionList startStructuredDocumentRegionRegions = startTagStructuredDocumentRegion.getRegions();</TD></TR><TR CLASS="z"><TD CLASS="l">282</TD><TD>                        if (startTagStructuredDocumentRegion != null &amp;&amp; startStructuredDocumentRegionRegions != null &amp;&amp; (startStructuredDocumentRegionRegions.get(startStructuredDocumentRegionRegions.size() - 1)).getType() == DOMRegionContext.XML_EMPTY_TAG_CLOSE) {</TD></TR><TR><TD CLASS="l">283</TD><TD> </TD></TR><TR><TD CLASS="l">284</TD><TD>                        } else {</TD></TR><TR CLASS="z"><TD CLASS="l">285</TD><TD>                                if (startTagStructuredDocumentRegion == null) {</TD></TR><TR><TD CLASS="l">286</TD><TD>                                        // start tag missing</TD></TR><TR CLASS="z"><TD CLASS="l">287</TD><TD>                                        if (isStartTagRequired(newNode))</TD></TR><TR CLASS="z"><TD CLASS="l">288</TD><TD>                                                newNode = insertStartTag(newNode);</TD></TR><TR CLASS="z"><TD CLASS="l">289</TD><TD>                                } else if (endTagStructuredDocumentRegion == null) {</TD></TR><TR><TD CLASS="l">290</TD><TD>                                        // end tag missing</TD></TR><TR CLASS="z"><TD CLASS="l">291</TD><TD>                                        if (isEndTagRequired(newNode))</TD></TR><TR CLASS="z"><TD CLASS="l">292</TD><TD>                                                newNode = insertEndTag(newNode);</TD></TR><TR><TD CLASS="l">293</TD><TD>                                }</TD></TR><TR><TD CLASS="l">294</TD><TD>                        }</TD></TR><TR><TD CLASS="l">295</TD><TD>                }</TD></TR><TR><TD CLASS="l">296</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="a">297</A></TD><TD>                return newNode;</TD></TR><TR><TD CLASS="l">298</TD><TD>        }</TD></TR><TR><TD CLASS="l">299</TD><TD> </TD></TR><TR><TD CLASS="l">300</TD><TD>        private IDOMNode insertRequiredAttrs(IDOMNode node) {</TD></TR><TR CLASS="z"><TD CLASS="l">301</TD><TD>                boolean insertRequiredAttrs = getCleanupPreferences().getInsertRequiredAttrs();</TD></TR><TR CLASS="z"><TD CLASS="l">302</TD><TD>                IDOMNode newNode = node;</TD></TR><TR><TD CLASS="l">303</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">304</TD><TD>                if (insertRequiredAttrs) {</TD></TR><TR CLASS="z"><TD CLASS="l">305</TD><TD>                        List requiredAttrs = getRequiredAttrs(newNode);</TD></TR><TR CLASS="z"><TD CLASS="l">306</TD><TD>                        if (requiredAttrs.size() &gt; 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">307</TD><TD>                                NamedNodeMap currentAttrs = node.getAttributes();</TD></TR><TR CLASS="z"><TD CLASS="l">308</TD><TD>                                List insertAttrs = new ArrayList();</TD></TR><TR CLASS="z"><TD CLASS="l">309</TD><TD>                                if (currentAttrs.getLength() == 0)</TD></TR><TR CLASS="z"><TD CLASS="l">310</TD><TD>                                        insertAttrs.addAll(requiredAttrs);</TD></TR><TR><TD CLASS="l">311</TD><TD>                                else {</TD></TR><TR CLASS="z"><TD CLASS="l">312</TD><TD>                                        for (int i = 0; i &lt; requiredAttrs.size(); i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">313</TD><TD>                                                String requiredAttrName = ((CMAttributeDeclaration) requiredAttrs.get(i)).getAttrName();</TD></TR><TR CLASS="z"><TD CLASS="l">314</TD><TD>                                                boolean found = false;</TD></TR><TR CLASS="z"><TD CLASS="l">315</TD><TD>                                                for (int j = 0; j &lt; currentAttrs.getLength(); j++) {</TD></TR><TR CLASS="z"><TD CLASS="l">316</TD><TD>                                                        String currentAttrName = currentAttrs.item(j).getNodeName();</TD></TR><TR CLASS="z"><TD CLASS="l">317</TD><TD>                                                        if (requiredAttrName.compareToIgnoreCase(currentAttrName) == 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">318</TD><TD>                                                                found = true;</TD></TR><TR CLASS="z"><TD CLASS="l">319</TD><TD>                                                                break;</TD></TR><TR><TD CLASS="l">320</TD><TD>                                                        }</TD></TR><TR><TD CLASS="l">321</TD><TD>                                                }</TD></TR><TR CLASS="z"><TD CLASS="l">322</TD><TD>                                                if (!found)</TD></TR><TR CLASS="z"><TD CLASS="l">323</TD><TD>                                                        insertAttrs.add(requiredAttrs.get(i));</TD></TR><TR><TD CLASS="l">324</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">325</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">326</TD><TD>                                if (insertAttrs.size() &gt; 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">327</TD><TD>                                        IStructuredDocumentRegion startStructuredDocumentRegion = newNode.getStartStructuredDocumentRegion();</TD></TR><TR CLASS="z"><TD CLASS="l">328</TD><TD>                                        int index = startStructuredDocumentRegion.getEndOffset();</TD></TR><TR CLASS="z"><TD CLASS="l">329</TD><TD>                                        ITextRegion lastRegion = startStructuredDocumentRegion.getLastRegion();</TD></TR><TR CLASS="z"><TD CLASS="l">330</TD><TD>                                        if (lastRegion.getType() == DOMRegionContext.XML_TAG_CLOSE) {</TD></TR><TR CLASS="z"><TD CLASS="l">331</TD><TD>                                                index--;</TD></TR><TR CLASS="z"><TD CLASS="l">332</TD><TD>                                                lastRegion = startStructuredDocumentRegion.getRegionAtCharacterOffset(index - 1);</TD></TR><TR CLASS="z"><TD CLASS="l">333</TD><TD>                                        } else if (lastRegion.getType() == DOMRegionContext.XML_EMPTY_TAG_CLOSE) {</TD></TR><TR CLASS="z"><TD CLASS="l">334</TD><TD>                                                index = index - 2;</TD></TR><TR CLASS="z"><TD CLASS="l">335</TD><TD>                                                lastRegion = startStructuredDocumentRegion.getRegionAtCharacterOffset(index - 1);</TD></TR><TR><TD CLASS="l">336</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">337</TD><TD>                                        MultiTextEdit multiTextEdit = new MultiTextEdit();</TD></TR><TR><TD CLASS="l">338</TD><TD>                                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">339</TD><TD>                                                for (int i = insertAttrs.size() - 1; i &gt;= 0; i--) {</TD></TR><TR CLASS="z"><TD CLASS="l">340</TD><TD>                                                        CMAttributeDeclaration attrDecl = (CMAttributeDeclaration) insertAttrs.get(i);</TD></TR><TR CLASS="z"><TD CLASS="l">341</TD><TD>                                                        String requiredAttributeName = attrDecl.getAttrName();</TD></TR><TR CLASS="z"><TD CLASS="l">342</TD><TD>                                                        String defaultValue = attrDecl.getDefaultValue();</TD></TR><TR CLASS="z"><TD CLASS="l">343</TD><TD>                                                        if (defaultValue == null)</TD></TR><TR CLASS="z"><TD CLASS="l">344</TD><TD>                                                                defaultValue = &#34;&#34;; //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">345</TD><TD>                                                        String nameAndDefaultValue = &#34; &#34;; //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">346</TD><TD>                                                        if (i == 0 &amp;&amp; lastRegion.getLength() &gt; lastRegion.getTextLength())</TD></TR><TR CLASS="z"><TD CLASS="l">347</TD><TD>                                                                nameAndDefaultValue = &#34;&#34;; //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">348</TD><TD>                                                        nameAndDefaultValue += requiredAttributeName + &#34;=\&#34;&#34; + defaultValue + &#34;\&#34;&#34;; //$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR CLASS="z"><TD CLASS="l">349</TD><TD>                                                        multiTextEdit.addChild(new InsertEdit(index, nameAndDefaultValue));</TD></TR><TR><TD CLASS="l">350</TD><TD>                                                        // BUG3381: MultiTextEdit applies all child</TD></TR><TR><TD CLASS="l">351</TD><TD>                                                        // TextEdit's basing on offsets</TD></TR><TR><TD CLASS="l">352</TD><TD>                                                        //          in the document before the first TextEdit, not</TD></TR><TR><TD CLASS="l">353</TD><TD>                                                        // after each</TD></TR><TR><TD CLASS="l">354</TD><TD>                                                        //          child TextEdit. Therefore, do not need to</TD></TR><TR><TD CLASS="l">355</TD><TD>                                                        // advance the index.</TD></TR><TR><TD CLASS="l">356</TD><TD>                                                        //index += nameAndDefaultValue.length();</TD></TR><TR><TD CLASS="l">357</TD><TD>                                                }</TD></TR><TR CLASS="z"><TD CLASS="l">358</TD><TD>                                                multiTextEdit.apply(newNode.getStructuredDocument());</TD></TR><TR CLASS="z"><TD CLASS="l">359</TD><TD>                                        } catch (BadLocationException e) {</TD></TR><TR><TD CLASS="l">360</TD><TD>                                                // log for now, unless we find reason not to</TD></TR><TR CLASS="z"><TD CLASS="l">361</TD><TD>                                                Logger.log(Logger.INFO, e.getMessage());</TD></TR><TR><TD CLASS="l">362</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">363</TD><TD>                                }</TD></TR><TR><TD CLASS="l">364</TD><TD>                        }</TD></TR><TR><TD CLASS="l">365</TD><TD>                }</TD></TR><TR><TD CLASS="l">366</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="b">367</A></TD><TD>                return newNode;</TD></TR><TR><TD CLASS="l">368</TD><TD>        }</TD></TR><TR><TD CLASS="l">369</TD><TD> </TD></TR><TR><TD CLASS="l">370</TD><TD>        private IDOMNode insertStartTag(IDOMNode node) {</TD></TR><TR CLASS="z"><TD CLASS="l">371</TD><TD>                IDOMNode newNode = node;</TD></TR><TR><TD CLASS="l">372</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">373</TD><TD>                if (isCommentTag(node))</TD></TR><TR CLASS="z"><TD CLASS="l">374</TD><TD>                        return node; // do nothing</TD></TR><TR><TD CLASS="l">375</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">376</TD><TD>                String tagName = node.getNodeName();</TD></TR><TR CLASS="z"><TD CLASS="l">377</TD><TD>                String startTag = START_TAG_OPEN.concat(tagName).concat(TAG_CLOSE);</TD></TR><TR CLASS="z"><TD CLASS="l">378</TD><TD>                int startTagStartOffset = node.getStartOffset();</TD></TR><TR><TD CLASS="l">379</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">380</TD><TD>                IDOMModel structuredModel = node.getModel();</TD></TR><TR CLASS="z"><TD CLASS="l">381</TD><TD>                IStructuredDocument structuredDocument = structuredModel.getStructuredDocument();</TD></TR><TR CLASS="z"><TD CLASS="l">382</TD><TD>                structuredDocument.replaceText(structuredDocument, startTagStartOffset, 0, startTag);</TD></TR><TR CLASS="z"><TD CLASS="l">383</TD><TD>                newNode = (IDOMNode) structuredModel.getIndexedRegion(startTagStartOffset); // save</TD></TR><TR><TD CLASS="l">384</TD><TD>                // new</TD></TR><TR><TD CLASS="l">385</TD><TD>                // node</TD></TR><TR><TD CLASS="l">386</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="c">387</A></TD><TD>                return newNode;</TD></TR><TR><TD CLASS="l">388</TD><TD>        }</TD></TR><TR><TD CLASS="l">389</TD><TD> </TD></TR><TR><TD CLASS="l">390</TD><TD>        private void insertTagClose(IDOMModel structuredModel, IStructuredDocumentRegion flatNode) {</TD></TR><TR CLASS="z"><TD CLASS="l">391</TD><TD>                if (flatNode != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">392</TD><TD>                        ITextRegionList flatnodeRegions = flatNode.getRegions();</TD></TR><TR CLASS="z"><TD CLASS="l">393</TD><TD>                        if (flatnodeRegions != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">394</TD><TD>                                ITextRegion lastRegion = flatnodeRegions.get(flatnodeRegions.size() - 1);</TD></TR><TR CLASS="z"><TD CLASS="l">395</TD><TD>                                if (lastRegion != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">396</TD><TD>                                        String regionType = lastRegion.getType();</TD></TR><TR CLASS="z"><TD CLASS="l">397</TD><TD>                                        if ((regionType != DOMRegionContext.XML_EMPTY_TAG_CLOSE) &amp;&amp; (regionType != DOMRegionContext.XML_TAG_CLOSE)) {</TD></TR><TR CLASS="z"><TD CLASS="l">398</TD><TD>                                                IStructuredDocument structuredDocument = structuredModel.getStructuredDocument();</TD></TR><TR><TD CLASS="l">399</TD><TD> </TD></TR><TR><TD CLASS="l">400</TD><TD>                                                // insert &#34;&gt;&#34; after lastRegion of flatNode</TD></TR><TR><TD CLASS="l">401</TD><TD>                                                // as in &#34;&lt;a&lt;/a&gt;&#34; if flatNode is for start tag, or in</TD></TR><TR><TD CLASS="l">402</TD><TD>                                                // &#34;&lt;a&gt;&lt;/a&#34; if flatNode is for end tag</TD></TR><TR CLASS="z"><TD CLASS="l">403</TD><TD>                                                structuredDocument.replaceText(structuredDocument, flatNode.getTextEndOffset(lastRegion), 0, &#34;&gt;&#34;); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">404</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">405</TD><TD>                                }</TD></TR><TR><TD CLASS="l">406</TD><TD>                        }</TD></TR><TR><TD CLASS="l">407</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">408</TD><TD>        }</TD></TR><TR><TD CLASS="l">409</TD><TD> </TD></TR><TR><TD CLASS="l">410</TD><TD>        /**</TD></TR><TR><TD CLASS="l"><A NAME="d">411</A></TD><TD>         * @param renamedNode</TD></TR><TR><TD CLASS="l">412</TD><TD>         * @return</TD></TR><TR><TD CLASS="l">413</TD><TD>         */</TD></TR><TR><TD CLASS="l">414</TD><TD>        private boolean isCommentTag(Node renamedNode) {</TD></TR><TR CLASS="z"><TD CLASS="l">415</TD><TD>                boolean result = false;</TD></TR><TR CLASS="z"><TD CLASS="l">416</TD><TD>                if (renamedNode instanceof IDOMElement) {</TD></TR><TR CLASS="z"><TD CLASS="l">417</TD><TD>                        IDOMElement element = (IDOMElement) renamedNode;</TD></TR><TR CLASS="z"><TD CLASS="l">418</TD><TD>                        result = element.isCommentTag();</TD></TR><TR><TD CLASS="l">419</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="e">420</A></TD><TD>                return result;</TD></TR><TR><TD CLASS="l">421</TD><TD>        }</TD></TR><TR><TD CLASS="l">422</TD><TD> </TD></TR><TR><TD CLASS="l">423</TD><TD>        private boolean isEmptyElement(IDOMElement element) {</TD></TR><TR CLASS="z"><TD CLASS="l">424</TD><TD>                Document document = element.getOwnerDocument();</TD></TR><TR CLASS="z"><TD CLASS="l">425</TD><TD>                if (document == null)</TD></TR><TR><TD CLASS="l">426</TD><TD>                        // undefined tag, return default</TD></TR><TR CLASS="z"><TD CLASS="l">427</TD><TD>                        return false;</TD></TR><TR><TD CLASS="l">428</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">429</TD><TD>                ModelQuery modelQuery = ModelQueryUtil.getModelQuery(document);</TD></TR><TR CLASS="z"><TD CLASS="l">430</TD><TD>                if (modelQuery == null)</TD></TR><TR><TD CLASS="l">431</TD><TD>                        // undefined tag, return default</TD></TR><TR CLASS="z"><TD CLASS="l">432</TD><TD>                        return false;</TD></TR><TR><TD CLASS="l">433</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">434</TD><TD>                CMElementDeclaration decl = modelQuery.getCMElementDeclaration(element);</TD></TR><TR CLASS="z"><TD CLASS="l">435</TD><TD>                if (decl == null)</TD></TR><TR><TD CLASS="l">436</TD><TD>                        // undefined tag, return default</TD></TR><TR CLASS="z"><TD CLASS="l">437</TD><TD>                        return false;</TD></TR><TR><TD CLASS="l">438</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="f">439</A></TD><TD>                return (decl.getContentType() == CMElementDeclaration.EMPTY);</TD></TR><TR><TD CLASS="l">440</TD><TD>        }</TD></TR><TR><TD CLASS="l">441</TD><TD> </TD></TR><TR><TD CLASS="l">442</TD><TD>        private boolean isEndTagRequired(IDOMNode node) {</TD></TR><TR CLASS="z"><TD CLASS="l">443</TD><TD>                if (node == null)</TD></TR><TR CLASS="z"><TD CLASS="l">444</TD><TD>                        return false;</TD></TR><TR CLASS="z"><TD CLASS="l">445</TD><TD>                return node.isContainer();</TD></TR><TR><TD CLASS="l">446</TD><TD>        }</TD></TR><TR><TD CLASS="l">447</TD><TD> </TD></TR><TR><TD CLASS="l">448</TD><TD>        /**</TD></TR><TR><TD CLASS="l">449</TD><TD>         * A tag is implicit if it has not corresponding region in document.</TD></TR><TR><TD CLASS="l">450</TD><TD>         * </TD></TR><TR><TD CLASS="l"><A NAME="10">451</A></TD><TD>         * @param renamedNode</TD></TR><TR><TD CLASS="l">452</TD><TD>         * @return</TD></TR><TR><TD CLASS="l">453</TD><TD>         */</TD></TR><TR><TD CLASS="l">454</TD><TD>        private boolean isImplicitTag(IDOMNode renamedNode) {</TD></TR><TR CLASS="z"><TD CLASS="l">455</TD><TD>                return renamedNode.getStartStructuredDocumentRegion() == null;</TD></TR><TR><TD CLASS="l">456</TD><TD>        }</TD></TR><TR><TD CLASS="l">457</TD><TD> </TD></TR><TR><TD CLASS="l">458</TD><TD>        /**</TD></TR><TR><TD CLASS="l">459</TD><TD>         * The end tags of HTML EMPTY content type, such as IMG, and HTML</TD></TR><TR><TD CLASS="l"><A NAME="11">460</A></TD><TD>         * undefined tags are parsed separately from the start tags. So inserting</TD></TR><TR><TD CLASS="l">461</TD><TD>         * the missing start tag is useless and even harmful.</TD></TR><TR><TD CLASS="l">462</TD><TD>         */</TD></TR><TR><TD CLASS="l">463</TD><TD>        private boolean isStartTagRequired(IDOMNode node) {</TD></TR><TR CLASS="z"><TD CLASS="l">464</TD><TD>                if (node == null)</TD></TR><TR CLASS="z"><TD CLASS="l">465</TD><TD>                        return false;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="12">466</A></TD><TD>                return node.isContainer();</TD></TR><TR><TD CLASS="l">467</TD><TD>        }</TD></TR><TR><TD CLASS="l">468</TD><TD> </TD></TR><TR><TD CLASS="l">469</TD><TD>        private boolean isXMLType(IDOMModel structuredModel) {</TD></TR><TR CLASS="z"><TD CLASS="l">470</TD><TD>                boolean result = false;</TD></TR><TR><TD CLASS="l">471</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">472</TD><TD>                if (structuredModel != null &amp;&amp; structuredModel != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">473</TD><TD>                        IDOMDocument document = structuredModel.getDocument();</TD></TR><TR><TD CLASS="l">474</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">475</TD><TD>                        if (document != null)</TD></TR><TR CLASS="z"><TD CLASS="l">476</TD><TD>                                result = document.isXMLType();</TD></TR><TR><TD CLASS="l">477</TD><TD>                }</TD></TR><TR><TD CLASS="l">478</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="13">479</A></TD><TD>                return result;</TD></TR><TR><TD CLASS="l">480</TD><TD>        }</TD></TR><TR><TD CLASS="l">481</TD><TD> </TD></TR><TR><TD CLASS="l">482</TD><TD>        private IDOMNode quoteAttrValue(IDOMNode node) {</TD></TR><TR CLASS="z"><TD CLASS="l">483</TD><TD>                IDOMNode newNode = node;</TD></TR><TR><TD CLASS="l">484</TD><TD>                //XMLElement element = (XMLElement) node;</TD></TR><TR CLASS="z"><TD CLASS="l">485</TD><TD>                if (isCommentTag(node))</TD></TR><TR CLASS="z"><TD CLASS="l">486</TD><TD>                        return node; // do nothing</TD></TR><TR><TD CLASS="l">487</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">488</TD><TD>                boolean quoteAttrValues = getCleanupPreferences().getQuoteAttrValues();</TD></TR><TR><TD CLASS="l">489</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">490</TD><TD>                if (quoteAttrValues) {</TD></TR><TR CLASS="z"><TD CLASS="l">491</TD><TD>                        NamedNodeMap attributes = newNode.getAttributes();</TD></TR><TR CLASS="z"><TD CLASS="l">492</TD><TD>                        if (attributes != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">493</TD><TD>                                int attributesLength = attributes.getLength();</TD></TR><TR CLASS="z"><TD CLASS="l">494</TD><TD>                                ISourceGenerator generator = node.getModel().getGenerator();</TD></TR><TR><TD CLASS="l">495</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">496</TD><TD>                                for (int i = 0; i &lt; attributesLength; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">497</TD><TD>                                        attributes = newNode.getAttributes();</TD></TR><TR CLASS="z"><TD CLASS="l">498</TD><TD>                                        attributesLength = attributes.getLength();</TD></TR><TR CLASS="z"><TD CLASS="l">499</TD><TD>                                        IDOMAttr eachAttr = (IDOMAttr) attributes.item(i);</TD></TR><TR><TD CLASS="l">500</TD><TD>                                        //ITextRegion oldAttrValueRegion =</TD></TR><TR><TD CLASS="l">501</TD><TD>                                        // eachAttr.getValueRegion();</TD></TR><TR CLASS="z"><TD CLASS="l">502</TD><TD>                                        String oldAttrValue = eachAttr.getValueRegionText();</TD></TR><TR CLASS="z"><TD CLASS="l">503</TD><TD>                                        if (oldAttrValue == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">504</TD><TD>                                                IDOMModel structuredModel = node.getModel();</TD></TR><TR CLASS="z"><TD CLASS="l">505</TD><TD>                                                if (isXMLType(structuredModel)) {</TD></TR><TR CLASS="z"><TD CLASS="l">506</TD><TD>                                                        String newAttrValue = &#34;\&#34;&#34; + eachAttr.getNameRegionText() + &#34;\&#34;&#34;; //$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR><TD CLASS="l">507</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">508</TD><TD>                                                        IStructuredDocument structuredDocument = structuredModel.getStructuredDocument();</TD></TR><TR CLASS="z"><TD CLASS="l">509</TD><TD>                                                        if (eachAttr.getEqualRegion() != null)</TD></TR><TR><TD CLASS="l">510</TD><TD>                                                                // equal region exists</TD></TR><TR CLASS="z"><TD CLASS="l">511</TD><TD>                                                                structuredDocument.replaceText(structuredDocument, eachAttr.getEndOffset(), 0, newAttrValue);</TD></TR><TR><TD CLASS="l">512</TD><TD>                                                        else</TD></TR><TR><TD CLASS="l">513</TD><TD>                                                                // no equal region</TD></TR><TR CLASS="z"><TD CLASS="l">514</TD><TD>                                                                structuredDocument.replaceText(structuredDocument, eachAttr.getNameRegionTextEndOffset(), 0, &#34;=&#34;.concat(newAttrValue)); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">515</TD><TD>                                                        newNode = (IDOMNode) structuredModel.getIndexedRegion(node.getStartOffset()); // save</TD></TR><TR><TD CLASS="l">516</TD><TD>                                                        // new</TD></TR><TR><TD CLASS="l">517</TD><TD>                                                        // node</TD></TR><TR><TD CLASS="l">518</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">519</TD><TD>                                        } else {</TD></TR><TR><TD CLASS="l">520</TD><TD>                                                //String oldAttrValue = oldAttrValueRegion.getText();</TD></TR><TR CLASS="z"><TD CLASS="l">521</TD><TD>                                                char quote = StringUtils.isQuoted(oldAttrValue) ? oldAttrValue.charAt(0) : DOUBLE_QUOTE;</TD></TR><TR CLASS="z"><TD CLASS="l">522</TD><TD>                                                String newAttrValue = generator.generateAttrValue(eachAttr, quote);</TD></TR><TR><TD CLASS="l">523</TD><TD> </TD></TR><TR><TD CLASS="l">524</TD><TD>                                                // There is a problem in</TD></TR><TR><TD CLASS="l">525</TD><TD>                                                // StructuredDocumentRegionUtil.getAttrValue(ITextRegion)</TD></TR><TR><TD CLASS="l">526</TD><TD>                                                // when the region is instanceof ContextRegion.</TD></TR><TR><TD CLASS="l">527</TD><TD>                                                // Workaround for now...</TD></TR><TR CLASS="z"><TD CLASS="l">528</TD><TD>                                                if (oldAttrValue.length() == 1) {</TD></TR><TR CLASS="z"><TD CLASS="l">529</TD><TD>                                                        char firstChar = oldAttrValue.charAt(0);</TD></TR><TR CLASS="z"><TD CLASS="l">530</TD><TD>                                                        if (firstChar == SINGLE_QUOTE)</TD></TR><TR CLASS="z"><TD CLASS="l">531</TD><TD>                                                                newAttrValue = SINGLE_QUOTES;</TD></TR><TR CLASS="z"><TD CLASS="l">532</TD><TD>                                                        else if (firstChar == DOUBLE_QUOTE)</TD></TR><TR CLASS="z"><TD CLASS="l">533</TD><TD>                                                                newAttrValue = DOUBLE_QUOTES;</TD></TR><TR><TD CLASS="l">534</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">535</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">536</TD><TD>                                                if (newAttrValue != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">537</TD><TD>                                                        if (newAttrValue.compareTo(oldAttrValue) != 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">538</TD><TD>                                                                int attrValueStartOffset = eachAttr.getValueRegionStartOffset();</TD></TR><TR CLASS="z"><TD CLASS="l">539</TD><TD>                                                                int attrValueLength = oldAttrValue.length();</TD></TR><TR CLASS="z"><TD CLASS="l">540</TD><TD>                                                                int startTagStartOffset = node.getStartOffset();</TD></TR><TR><TD CLASS="l">541</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">542</TD><TD>                                                                IDOMModel structuredModel = node.getModel();</TD></TR><TR CLASS="z"><TD CLASS="l">543</TD><TD>                                                                IStructuredDocument structuredDocument = structuredModel.getStructuredDocument();</TD></TR><TR CLASS="z"><TD CLASS="l">544</TD><TD>                                                                structuredDocument.replaceText(structuredDocument, attrValueStartOffset, attrValueLength, newAttrValue);</TD></TR><TR CLASS="z"><TD CLASS="l">545</TD><TD>                                                                newNode = (IDOMNode) structuredModel.getIndexedRegion(startTagStartOffset); // save</TD></TR><TR><TD CLASS="l">546</TD><TD>                                                                // new</TD></TR><TR><TD CLASS="l">547</TD><TD>                                                                // node</TD></TR><TR><TD CLASS="l">548</TD><TD>                                                        }</TD></TR><TR><TD CLASS="l">549</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">550</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">551</TD><TD>                                }</TD></TR><TR><TD CLASS="l">552</TD><TD>                        }</TD></TR><TR><TD CLASS="l">553</TD><TD>                }</TD></TR><TR><TD CLASS="l">554</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">555</TD><TD>                return newNode;</TD></TR><TR><TD CLASS="l">556</TD><TD>        }</TD></TR><TR><TD CLASS="l">557</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="21.html">org.eclipse.wst.xml.core.internal.cleanup</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/14e.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/14e.html
deleted file mode 100644
index 4078d44..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/14e.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="21.html">org.eclipse.wst.xml.core.internal.cleanup</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">NodeCleanupHandler.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>NodeCleanupHandler.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/76)</TD><TD CLASS="h">0%   (0/19)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">NodeCleanupHandler</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/76)</TD><TD CLASS="h">0%   (0/19)</TD></TR><TR><TD CLASS="f"><A HREF="#0">NodeCleanupHandler (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">cleanup (Node): Node</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#3">getCleanupPreferences (): IStructuredCleanupPreferences</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/58)</TD><TD CLASS="h">0%   (0/12)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">getModelPreferences (): Preferences</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#5">setCleanupPreferences (IStructuredCleanupPreferences): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2005 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.core.internal.cleanup;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.core.runtime.IProgressMonitor;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.core.runtime.Preferences;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.wst.sse.core.internal.cleanup.IStructuredCleanupHandler;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.wst.sse.core.internal.cleanup.IStructuredCleanupPreferences;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.wst.sse.core.internal.cleanup.StructuredCleanupPreferences;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.wst.xml.core.internal.XMLCorePlugin;</TD></TR><TR><TD CLASS="l"><A NAME="0">21</A></TD><TD>import org.eclipse.wst.xml.core.internal.preferences.XMLCorePreferenceNames;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.w3c.dom.Node;</TD></TR><TR><TD CLASS="l">23</TD><TD> </TD></TR><TR><TD CLASS="l">24</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">25</TD><TD>public class NodeCleanupHandler implements IStructuredCleanupHandler {</TD></TR><TR><TD CLASS="l">26</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">27</TD><TD>        protected IStructuredCleanupPreferences fCleanupPreferences = null;</TD></TR><TR CLASS="z"><TD CLASS="l">28</TD><TD>        protected IProgressMonitor fProgressMonitor = null;</TD></TR><TR><TD CLASS="l"><A NAME="2">29</A></TD><TD> </TD></TR><TR><TD CLASS="l">30</TD><TD> </TD></TR><TR><TD CLASS="l">31</TD><TD>        public Node cleanup(Node node) {</TD></TR><TR><TD CLASS="l">32</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">33</A></TD><TD>                return node;</TD></TR><TR><TD CLASS="l">34</TD><TD>        }</TD></TR><TR><TD CLASS="l">35</TD><TD> </TD></TR><TR><TD CLASS="l">36</TD><TD>        public IStructuredCleanupPreferences getCleanupPreferences() {</TD></TR><TR CLASS="z"><TD CLASS="l">37</TD><TD>                if (fCleanupPreferences == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">38</TD><TD>                        fCleanupPreferences = new StructuredCleanupPreferences();</TD></TR><TR><TD CLASS="l">39</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">40</TD><TD>                        Preferences preferences = getModelPreferences();</TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>                        if (preferences != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">42</TD><TD>                                fCleanupPreferences.setCompressEmptyElementTags(preferences.getBoolean(XMLCorePreferenceNames.COMPRESS_EMPTY_ELEMENT_TAGS));</TD></TR><TR CLASS="z"><TD CLASS="l">43</TD><TD>                                fCleanupPreferences.setInsertRequiredAttrs(preferences.getBoolean(XMLCorePreferenceNames.INSERT_REQUIRED_ATTRS));</TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>                                fCleanupPreferences.setInsertMissingTags(preferences.getBoolean(XMLCorePreferenceNames.INSERT_MISSING_TAGS));</TD></TR><TR CLASS="z"><TD CLASS="l">45</TD><TD>                                fCleanupPreferences.setQuoteAttrValues(preferences.getBoolean(XMLCorePreferenceNames.QUOTE_ATTR_VALUES));</TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>                                fCleanupPreferences.setFormatSource(preferences.getBoolean(XMLCorePreferenceNames.FORMAT_SOURCE));</TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>                                fCleanupPreferences.setConvertEOLCodes(preferences.getBoolean(XMLCorePreferenceNames.CONVERT_EOL_CODES));</TD></TR><TR CLASS="z"><TD CLASS="l">48</TD><TD>                                fCleanupPreferences.setEOLCode(preferences.getString(XMLCorePreferenceNames.CLEANUP_EOL_CODE));</TD></TR><TR><TD CLASS="l">49</TD><TD>                        }</TD></TR><TR><TD CLASS="l">50</TD><TD>                }</TD></TR><TR><TD CLASS="l">51</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">52</A></TD><TD>                return fCleanupPreferences;</TD></TR><TR><TD CLASS="l">53</TD><TD>        }</TD></TR><TR><TD CLASS="l">54</TD><TD> </TD></TR><TR><TD CLASS="l">55</TD><TD>        protected Preferences getModelPreferences() {</TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>                return XMLCorePlugin.getDefault().getPluginPreferences();</TD></TR><TR><TD CLASS="l"><A NAME="5">57</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">58</TD><TD> </TD></TR><TR><TD CLASS="l">59</TD><TD>        public void setCleanupPreferences(IStructuredCleanupPreferences cleanupPreferences) {</TD></TR><TR><TD CLASS="l">60</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                fCleanupPreferences = cleanupPreferences;</TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>        }</TD></TR><TR><TD CLASS="l">63</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="21.html">org.eclipse.wst.xml.core.internal.cleanup</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/14f.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/14f.html
deleted file mode 100644
index a310ed4..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/14f.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="21.html">org.eclipse.wst.xml.core.internal.cleanup</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">XMLCleanupPreferencesImpl.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>XMLCleanupPreferencesImpl.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/19)</TD><TD CLASS="h">0%   (0/118)</TD><TD CLASS="h">0%   (0/41)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">XMLCleanupPreferencesImpl</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/19)</TD><TD CLASS="h">0%   (0/118)</TD><TD CLASS="h">0%   (0/41)</TD></TR><TR><TD CLASS="f"><A HREF="#0">XMLCleanupPreferencesImpl (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">getAttrNameCase (): int</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#3">getConvertEOLCodes (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">getEOLCode (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#5">getFormatSource (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">getInsertMissingTags (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#7">getInstance (): XMLCleanupPreferencesImpl</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">getPreferences (): Preferences</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#9">getQuoteAttrValues (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">getTagNameCase (): int</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#b">setAttrNameCase (int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#c">setConvertEOLCodes (boolean): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#d">setEOLCode (String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#e">setFormatSource (boolean): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#f">setInsertMissingTags (boolean): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#10">setPreferences (Preferences): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#11">setQuoteAttrValues (boolean): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#12">setTagNameCase (int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#13">updateOptions (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/39)</TD><TD CLASS="h">0%   (0/9)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2005 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.core.internal.cleanup;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.core.runtime.Preferences;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.wst.sse.core.internal.SSECorePlugin;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.wst.xml.core.internal.provisional.IXMLPreferenceNames;</TD></TR><TR><TD CLASS="l">18</TD><TD> </TD></TR><TR><TD CLASS="l">19</TD><TD>/**</TD></TR><TR><TD CLASS="l"><A NAME="0">20</A></TD><TD> * @deprecated renamed to StructuredCleanupPreferences</TD></TR><TR><TD CLASS="l">21</TD><TD> * </TD></TR><TR><TD CLASS="l">22</TD><TD> * TODO will delete in C5</TD></TR><TR><TD CLASS="l">23</TD><TD> */</TD></TR><TR CLASS="z"><TD CLASS="l">24</TD><TD>public class XMLCleanupPreferencesImpl {</TD></TR><TR><TD CLASS="l">25</TD><TD> </TD></TR><TR><TD CLASS="l">26</TD><TD>        private static XMLCleanupPreferencesImpl fInstance;</TD></TR><TR><TD CLASS="l"><A NAME="7">27</A></TD><TD> </TD></TR><TR><TD CLASS="l">28</TD><TD>        public synchronized static XMLCleanupPreferencesImpl getInstance() {</TD></TR><TR><TD CLASS="l">29</TD><TD> </TD></TR><TR><TD CLASS="l">30</TD><TD>                // added for one method in CleanupDialog ... may be better way</TD></TR><TR CLASS="z"><TD CLASS="l">31</TD><TD>                if (fInstance == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">32</TD><TD>                        fInstance = new XMLCleanupPreferencesImpl();</TD></TR><TR><TD CLASS="l">33</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">34</TD><TD>                return fInstance;</TD></TR><TR><TD CLASS="l">35</TD><TD>        }</TD></TR><TR><TD CLASS="l">36</TD><TD> </TD></TR><TR><TD CLASS="l">37</TD><TD>        private int fAttrNameCase;</TD></TR><TR><TD CLASS="l">38</TD><TD>        private boolean fConvertEOLCodes;</TD></TR><TR><TD CLASS="l">39</TD><TD>        private String fEOLCode;</TD></TR><TR><TD CLASS="l">40</TD><TD>        private boolean fFormatSource;</TD></TR><TR><TD CLASS="l">41</TD><TD>        private boolean fInsertMissingTags;</TD></TR><TR><TD CLASS="l">42</TD><TD>        // private IPreferenceStore fPreferenceStore = null;</TD></TR><TR CLASS="z"><TD CLASS="l">43</TD><TD>        private Preferences fPreferences = null;</TD></TR><TR><TD CLASS="l">44</TD><TD>        private boolean fQuoteAttrValues;</TD></TR><TR><TD CLASS="l"><A NAME="2">45</A></TD><TD>        private int fTagNameCase;</TD></TR><TR><TD CLASS="l">46</TD><TD> </TD></TR><TR><TD CLASS="l">47</TD><TD>        public int getAttrNameCase() {</TD></TR><TR><TD CLASS="l">48</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>                return fAttrNameCase;</TD></TR><TR><TD CLASS="l"><A NAME="3">50</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">51</TD><TD> </TD></TR><TR><TD CLASS="l">52</TD><TD>        public boolean getConvertEOLCodes() {</TD></TR><TR><TD CLASS="l">53</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">54</TD><TD>                return fConvertEOLCodes;</TD></TR><TR><TD CLASS="l"><A NAME="4">55</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">56</TD><TD> </TD></TR><TR><TD CLASS="l">57</TD><TD>        public String getEOLCode() {</TD></TR><TR><TD CLASS="l">58</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>                return fEOLCode;</TD></TR><TR><TD CLASS="l"><A NAME="5">60</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">61</TD><TD> </TD></TR><TR><TD CLASS="l">62</TD><TD>        public boolean getFormatSource() {</TD></TR><TR><TD CLASS="l">63</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                return fFormatSource;</TD></TR><TR><TD CLASS="l"><A NAME="6">65</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">66</TD><TD> </TD></TR><TR><TD CLASS="l">67</TD><TD>        public boolean getInsertMissingTags() {</TD></TR><TR><TD CLASS="l">68</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                return fInsertMissingTags;</TD></TR><TR><TD CLASS="l"><A NAME="8">70</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">71</TD><TD> </TD></TR><TR><TD CLASS="l">72</TD><TD>        public Preferences getPreferences() {</TD></TR><TR><TD CLASS="l">73</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>                if (fPreferences == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>                        fPreferences = SSECorePlugin.getDefault().getPluginPreferences();</TD></TR><TR><TD CLASS="l">76</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>                return fPreferences;</TD></TR><TR><TD CLASS="l"><A NAME="9">78</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">79</TD><TD> </TD></TR><TR><TD CLASS="l">80</TD><TD>        public boolean getQuoteAttrValues() {</TD></TR><TR><TD CLASS="l">81</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>                return fQuoteAttrValues;</TD></TR><TR><TD CLASS="l"><A NAME="a">83</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">84</TD><TD> </TD></TR><TR><TD CLASS="l">85</TD><TD>        public int getTagNameCase() {</TD></TR><TR><TD CLASS="l">86</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>                return fTagNameCase;</TD></TR><TR><TD CLASS="l"><A NAME="b">88</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">89</TD><TD> </TD></TR><TR><TD CLASS="l">90</TD><TD>        public void setAttrNameCase(int attrNameCase) {</TD></TR><TR><TD CLASS="l">91</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">92</TD><TD>                fAttrNameCase = attrNameCase;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="c">93</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">94</TD><TD> </TD></TR><TR><TD CLASS="l">95</TD><TD>        public void setConvertEOLCodes(boolean convertEOLCodes) {</TD></TR><TR><TD CLASS="l">96</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">97</TD><TD>                fConvertEOLCodes = convertEOLCodes;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="d">98</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">99</TD><TD> </TD></TR><TR><TD CLASS="l">100</TD><TD>        public void setEOLCode(String EOLCode) {</TD></TR><TR><TD CLASS="l">101</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">102</TD><TD>                fEOLCode = EOLCode;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="e">103</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">104</TD><TD> </TD></TR><TR><TD CLASS="l">105</TD><TD>        public void setFormatSource(boolean formatSource) {</TD></TR><TR><TD CLASS="l">106</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">107</TD><TD>                fFormatSource = formatSource;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="f">108</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">109</TD><TD> </TD></TR><TR><TD CLASS="l">110</TD><TD>        public void setInsertMissingTags(boolean insertMissingTags) {</TD></TR><TR><TD CLASS="l">111</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">112</TD><TD>                fInsertMissingTags = insertMissingTags;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="10">113</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">114</TD><TD> </TD></TR><TR><TD CLASS="l">115</TD><TD>        public void setPreferences(Preferences prefs) {</TD></TR><TR><TD CLASS="l">116</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">117</TD><TD>                fPreferences = prefs;</TD></TR><TR CLASS="z"><TD CLASS="l">118</TD><TD>                updateOptions();</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="11">119</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">120</TD><TD> </TD></TR><TR><TD CLASS="l">121</TD><TD>        public void setQuoteAttrValues(boolean quoteAttrValues) {</TD></TR><TR><TD CLASS="l">122</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">123</TD><TD>                fQuoteAttrValues = quoteAttrValues;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="12">124</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">125</TD><TD> </TD></TR><TR><TD CLASS="l">126</TD><TD>        public void setTagNameCase(int tagNameCase) {</TD></TR><TR><TD CLASS="l">127</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">128</TD><TD>                fTagNameCase = tagNameCase;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="13">129</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">130</TD><TD> </TD></TR><TR><TD CLASS="l">131</TD><TD>        protected void updateOptions() {</TD></TR><TR><TD CLASS="l">132</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">133</TD><TD>                Preferences p = getPreferences();</TD></TR><TR CLASS="z"><TD CLASS="l">134</TD><TD>                fTagNameCase = p.getInt(IXMLPreferenceNames.CLEANUP_TAG_NAME_CASE);</TD></TR><TR CLASS="z"><TD CLASS="l">135</TD><TD>                fAttrNameCase = p.getInt(IXMLPreferenceNames.CLEANUP_ATTR_NAME_CASE);</TD></TR><TR CLASS="z"><TD CLASS="l">136</TD><TD>                fInsertMissingTags = p.getBoolean(IXMLPreferenceNames.INSERT_MISSING_TAGS);</TD></TR><TR CLASS="z"><TD CLASS="l">137</TD><TD>                fQuoteAttrValues = p.getBoolean(IXMLPreferenceNames.QUOTE_ATTR_VALUES);</TD></TR><TR CLASS="z"><TD CLASS="l">138</TD><TD>                fFormatSource = p.getBoolean(IXMLPreferenceNames.FORMAT_SOURCE);</TD></TR><TR CLASS="z"><TD CLASS="l">139</TD><TD>                fConvertEOLCodes = p.getBoolean(IXMLPreferenceNames.CONVERT_EOL_CODES);</TD></TR><TR CLASS="z"><TD CLASS="l">140</TD><TD>                fEOLCode = p.getString(IXMLPreferenceNames.CLEANUP_EOL_CODE);</TD></TR><TR CLASS="z"><TD CLASS="l">141</TD><TD>        }</TD></TR><TR><TD CLASS="l">142</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="21.html">org.eclipse.wst.xml.core.internal.cleanup</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/15.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/15.html
deleted file mode 100644
index edb14b8..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/15.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR PACKAGE [<SPAN CLASS="in">org.eclipse.wst.sse.ui.internal.openon</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>org.eclipse.wst.sse.ui.internal.openon</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/91)</TD><TD CLASS="h">0%   (0/2015)</TD><TD CLASS="h">0%   (0/586)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY SOURCE FILE</H3><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR CLASS="o"><TD><A HREF="127.html">AbstractOpenOn.java</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/274)</TD><TD CLASS="h">0%   (0/81)</TD></TR><TR><TD><A HREF="128.html">ExternalFileEditorInput.java</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/85)</TD><TD CLASS="h">0%   (0/22)</TD></TR><TR CLASS="o"><TD><A HREF="129.html">OpenFileHyperlinkTracker.java</A></TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/37)</TD><TD CLASS="h">0%   (0/996)</TD><TD CLASS="h">0%   (0/306)</TD></TR><TR><TD><A HREF="12a.html">OpenOnAction.java</A></TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/100)</TD><TD CLASS="h">0%   (0/21)</TD></TR><TR CLASS="o"><TD><A HREF="12b.html">OpenOnBuilder.java</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/256)</TD><TD CLASS="h">0%   (0/71)</TD></TR><TR><TD><A HREF="12c.html">OpenOnDefinition.java</A></TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/183)</TD><TD CLASS="h">0%   (0/46)</TD></TR><TR CLASS="o"><TD><A HREF="12d.html">OpenOnProvider.java</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/121)</TD><TD CLASS="h">0%   (0/39)</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/150.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/150.html
deleted file mode 100644
index 3e32a15..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/150.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="22.html">org.eclipse.wst.xml.core.internal.commentelement</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">CommentElementAdapter.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>CommentElementAdapter.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/153)</TD><TD CLASS="h">0%   (0/31)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">CommentElementAdapter</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/153)</TD><TD CLASS="h">0%   (0/31)</TD></TR><TR><TD CLASS="f"><A HREF="#0">CommentElementAdapter (boolean, CommentElementHandler): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">generateCommentClose (IDOMElement): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#3">generateCommentOpen (IDOMElement): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">getConfiguration (): CommentElementConfiguration</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#5">getEndTag (IDOMElement): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/32)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">getHandlerID (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#7">getProperty (String): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">getStartTag (IDOMElement): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/32)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR><TD CLASS="f"><A HREF="#9">isAdapterForType (Object): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/38)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">isContainer (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#b">isEndTag (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#c">notifyChanged (INodeNotifier, int, Object, Object, Object, int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#d">setConfiguration (CommentElementConfiguration): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.core.internal.commentelement;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD> </TD></TR><TR><TD CLASS="l">16</TD><TD> </TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.wst.xml.core.internal.commentelement.impl.CommentElementConfiguration;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.wst.xml.core.internal.document.TagAdapter;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.wst.xml.core.internal.provisional.document.IDOMElement;</TD></TR><TR><TD CLASS="l">21</TD><TD> </TD></TR><TR><TD CLASS="l">22</TD><TD> </TD></TR><TR><TD CLASS="l">23</TD><TD>/**</TD></TR><TR><TD CLASS="l">24</TD><TD> */</TD></TR><TR><TD CLASS="l">25</TD><TD>public class CommentElementAdapter implements TagAdapter {</TD></TR><TR><TD CLASS="l">26</TD><TD>        private CommentElementConfiguration fConfiguration;</TD></TR><TR><TD CLASS="l"><A NAME="0">27</A></TD><TD> </TD></TR><TR><TD CLASS="l">28</TD><TD>        private boolean fEndTag;</TD></TR><TR><TD CLASS="l">29</TD><TD>        private CommentElementHandler fHandler;</TD></TR><TR><TD CLASS="l">30</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">31</TD><TD>        public CommentElementAdapter(boolean isEndTag, CommentElementHandler handler) {</TD></TR><TR CLASS="z"><TD CLASS="l">32</TD><TD>                fEndTag = isEndTag;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">33</A></TD><TD>                fHandler = handler;</TD></TR><TR CLASS="z"><TD CLASS="l">34</TD><TD>        }</TD></TR><TR><TD CLASS="l">35</TD><TD> </TD></TR><TR><TD CLASS="l">36</TD><TD>        private String generateCommentClose(IDOMElement element) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">37</A></TD><TD>                return (element.isJSPTag()) ? &#34;--%&gt;&#34; : &#34;--&gt;&#34;; //$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR><TD CLASS="l">38</TD><TD>        }</TD></TR><TR><TD CLASS="l">39</TD><TD> </TD></TR><TR><TD CLASS="l">40</TD><TD>        private String generateCommentOpen(IDOMElement element) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">41</A></TD><TD>                return (element.isJSPTag()) ? &#34;&lt;%--&#34; : &#34;&lt;!--&#34;; //$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR><TD CLASS="l">42</TD><TD>        }</TD></TR><TR><TD CLASS="l">43</TD><TD> </TD></TR><TR><TD CLASS="l">44</TD><TD>        private CommentElementConfiguration getConfiguration() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="5">45</A></TD><TD>                return fConfiguration;</TD></TR><TR><TD CLASS="l">46</TD><TD>        }</TD></TR><TR><TD CLASS="l">47</TD><TD> </TD></TR><TR><TD CLASS="l">48</TD><TD>        public String getEndTag(IDOMElement element) {</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>                String content = fHandler.generateEndTagContent(element);</TD></TR><TR CLASS="z"><TD CLASS="l">50</TD><TD>                if (content == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>                        return null;</TD></TR><TR><TD CLASS="l">52</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>                StringBuffer buffer = new StringBuffer();</TD></TR><TR><TD CLASS="l">54</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                buffer.append(generateCommentOpen(element));</TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>                buffer.append(content);</TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>                buffer.append(generateCommentClose(element));</TD></TR><TR><TD CLASS="l">58</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="6">59</A></TD><TD>                return buffer.toString();</TD></TR><TR><TD CLASS="l">60</TD><TD>        }</TD></TR><TR><TD CLASS="l">61</TD><TD> </TD></TR><TR><TD CLASS="l">62</TD><TD>        public String getHandlerID() {</TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>                return getConfiguration().getHandlerID();</TD></TR><TR><TD CLASS="l"><A NAME="7">64</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">65</TD><TD> </TD></TR><TR><TD CLASS="l">66</TD><TD> </TD></TR><TR><TD CLASS="l">67</TD><TD>        public String getProperty(String name) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="8">68</A></TD><TD>                return getConfiguration().getProperty(name);</TD></TR><TR><TD CLASS="l">69</TD><TD>        }</TD></TR><TR><TD CLASS="l">70</TD><TD> </TD></TR><TR><TD CLASS="l">71</TD><TD>        public String getStartTag(IDOMElement element) {</TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>                String content = fHandler.generateStartTagContent(element);</TD></TR><TR CLASS="z"><TD CLASS="l">73</TD><TD>                if (content == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>                        return null;</TD></TR><TR><TD CLASS="l">75</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>                StringBuffer buffer = new StringBuffer();</TD></TR><TR><TD CLASS="l">77</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">78</TD><TD>                buffer.append(generateCommentOpen(element));</TD></TR><TR CLASS="z"><TD CLASS="l">79</TD><TD>                buffer.append(content);</TD></TR><TR CLASS="z"><TD CLASS="l">80</TD><TD>                buffer.append(generateCommentClose(element));</TD></TR><TR><TD CLASS="l">81</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="9">82</A></TD><TD>                return buffer.toString();</TD></TR><TR><TD CLASS="l">83</TD><TD>        }</TD></TR><TR><TD CLASS="l">84</TD><TD> </TD></TR><TR><TD CLASS="l">85</TD><TD>        public boolean isAdapterForType(Object type) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="a">86</A></TD><TD>                return (type == CommentElementAdapter.class || type == TagAdapter.class);</TD></TR><TR><TD CLASS="l">87</TD><TD>        }</TD></TR><TR><TD CLASS="l">88</TD><TD> </TD></TR><TR><TD CLASS="l">89</TD><TD>        public boolean isContainer() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="b">90</A></TD><TD>                return (!fHandler.isEmpty());</TD></TR><TR><TD CLASS="l">91</TD><TD>        }</TD></TR><TR><TD CLASS="l">92</TD><TD> </TD></TR><TR><TD CLASS="l">93</TD><TD>        public boolean isEndTag() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="c">94</A></TD><TD>                return fEndTag;</TD></TR><TR><TD CLASS="l">95</TD><TD>        }</TD></TR><TR><TD CLASS="l">96</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="d">97</A></TD><TD>        public void notifyChanged(INodeNotifier notifier, int eventType, Object changedFeature, Object oldValue, Object newValue, int pos) {</TD></TR><TR CLASS="z"><TD CLASS="l">98</TD><TD>        }</TD></TR><TR><TD CLASS="l">99</TD><TD> </TD></TR><TR><TD CLASS="l">100</TD><TD>        public void setConfiguration(CommentElementConfiguration configuration) {</TD></TR><TR CLASS="z"><TD CLASS="l">101</TD><TD>                fConfiguration = configuration;</TD></TR><TR CLASS="z"><TD CLASS="l">102</TD><TD>        }</TD></TR><TR><TD CLASS="l">103</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="22.html">org.eclipse.wst.xml.core.internal.commentelement</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/151.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/151.html
deleted file mode 100644
index 8235263..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/151.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="23.html">org.eclipse.wst.xml.core.internal.commentelement.util</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">CommentElementFactory.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>CommentElementFactory.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/55)</TD><TD CLASS="h">0%   (0/17)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">CommentElementFactory</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/55)</TD><TD CLASS="h">0%   (0/17)</TD></TR><TR><TD CLASS="f"><A HREF="#0">CommentElementFactory (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">CommentElementFactory (Document, boolean, CommentElementHandler): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#3">create (String, int): Element</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/40)</TD><TD CLASS="h">0%   (0/10)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2007 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.core.internal.commentelement.util;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD> </TD></TR><TR><TD CLASS="l">16</TD><TD> </TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.wst.xml.core.internal.commentelement.CommentElementAdapter;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.wst.xml.core.internal.commentelement.CommentElementHandler;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.wst.xml.core.internal.provisional.document.IDOMElement;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.w3c.dom.Document;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.w3c.dom.Element;</TD></TR><TR><TD CLASS="l">22</TD><TD> </TD></TR><TR><TD CLASS="l">23</TD><TD> </TD></TR><TR><TD CLASS="l">24</TD><TD>/**</TD></TR><TR><TD CLASS="l">25</TD><TD> */</TD></TR><TR><TD CLASS="l">26</TD><TD>public class CommentElementFactory {</TD></TR><TR><TD CLASS="l">27</TD><TD>        public static final int IS_EMPTY = 4866;</TD></TR><TR><TD CLASS="l">28</TD><TD>        public static final int IS_END = 1808;</TD></TR><TR><TD CLASS="l">29</TD><TD> </TD></TR><TR><TD CLASS="l">30</TD><TD>        public static final int IS_START = 28011;</TD></TR><TR><TD CLASS="l">31</TD><TD> </TD></TR><TR><TD CLASS="l">32</TD><TD>        private Document fDocument;</TD></TR><TR><TD CLASS="l">33</TD><TD>        private CommentElementHandler fHandler;</TD></TR><TR><TD CLASS="l">34</TD><TD>        private boolean fJSPTag;</TD></TR><TR><TD CLASS="l">35</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="0">36</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">37</TD><TD>         * Constructor for CommentElementFactory.</TD></TR><TR><TD CLASS="l">38</TD><TD>         */</TD></TR><TR><TD CLASS="l">39</TD><TD>        private CommentElementFactory() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">40</A></TD><TD>                super();</TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>        }</TD></TR><TR><TD CLASS="l">42</TD><TD> </TD></TR><TR><TD CLASS="l">43</TD><TD>        public CommentElementFactory(Document document, boolean isJSPTag, CommentElementHandler handler) {</TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>                this();</TD></TR><TR CLASS="z"><TD CLASS="l">45</TD><TD>                fDocument = document;</TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>                fJSPTag = isJSPTag;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">47</A></TD><TD>                fHandler = handler;</TD></TR><TR CLASS="z"><TD CLASS="l">48</TD><TD>        }</TD></TR><TR><TD CLASS="l">49</TD><TD> </TD></TR><TR><TD CLASS="l">50</TD><TD>        public Element create(String name, int nodeType) {</TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>                IDOMElement element = (IDOMElement) fDocument.createElement(name);</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                if (element == null)</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>                        return null;</TD></TR><TR CLASS="z"><TD CLASS="l">54</TD><TD>                element.setCommentTag(true);</TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                if (nodeType == IS_EMPTY) {</TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>                        element.setEmptyTag(true);</TD></TR><TR><TD CLASS="l">57</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>                element.setJSPTag(fJSPTag);</TD></TR><TR><TD CLASS="l">59</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                CommentElementAdapter adapter = new CommentElementAdapter((nodeType == IS_END), fHandler);</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                element.addAdapter(adapter);</TD></TR><TR><TD CLASS="l">62</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>                return element;</TD></TR><TR><TD CLASS="l">64</TD><TD>        }</TD></TR><TR><TD CLASS="l">65</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="23.html">org.eclipse.wst.xml.core.internal.commentelement.util</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/152.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/152.html
deleted file mode 100644
index 2887541..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/152.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="23.html">org.eclipse.wst.xml.core.internal.commentelement.util</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">TagScanner.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>TagScanner.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/357)</TD><TD CLASS="h">0%   (0/95)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">TagScanner</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/357)</TD><TD CLASS="h">0%   (0/95)</TD></TR><TR><TD CLASS="f"><A HREF="#1">TagScanner (String, int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/33)</TD><TD CLASS="h">0%   (0/12)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">TagScanner (String, int, boolean): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#3">getNextOffset (): int</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/33)</TD><TD CLASS="h">0%   (0/10)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">getOffset (): int</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#5">isEnd (char): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#0">isEqual (char): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#7">isNewLine (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/34)</TD><TD CLASS="h">0%   (0/9)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">isQuote (char): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#9">isSpace (char): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">nextChar (): char</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/30)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR><TD CLASS="f"><A HREF="#b">nextName (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/70)</TD><TD CLASS="h">0%   (0/17)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#c">nextValue (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/113)</TD><TD CLASS="h">0%   (0/32)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2005 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.core.internal.commentelement.util;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD> </TD></TR><TR><TD CLASS="l">16</TD><TD> </TD></TR><TR><TD CLASS="l">17</TD><TD>/**</TD></TR><TR><TD CLASS="l">18</TD><TD> */</TD></TR><TR><TD CLASS="l">19</TD><TD>public class TagScanner {</TD></TR><TR><TD CLASS="l"><A NAME="0">20</A></TD><TD> </TD></TR><TR><TD CLASS="l">21</TD><TD>        /**</TD></TR><TR><TD CLASS="l">22</TD><TD>         */</TD></TR><TR><TD CLASS="l">23</TD><TD>        private static boolean isEqual(char c) {</TD></TR><TR CLASS="z"><TD CLASS="l">24</TD><TD>                return (c == '=');</TD></TR><TR><TD CLASS="l">25</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="8">26</A></TD><TD> </TD></TR><TR><TD CLASS="l">27</TD><TD>        /**</TD></TR><TR><TD CLASS="l">28</TD><TD>         */</TD></TR><TR><TD CLASS="l">29</TD><TD>        private static boolean isQuote(char c) {</TD></TR><TR CLASS="z"><TD CLASS="l">30</TD><TD>                return (c == '&#34;' || c == '\'');</TD></TR><TR><TD CLASS="l">31</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="9">32</A></TD><TD> </TD></TR><TR><TD CLASS="l">33</TD><TD>        /**</TD></TR><TR><TD CLASS="l">34</TD><TD>         */</TD></TR><TR><TD CLASS="l">35</TD><TD>        private static boolean isSpace(char c) {</TD></TR><TR CLASS="z"><TD CLASS="l">36</TD><TD>                return Character.isWhitespace(c);</TD></TR><TR><TD CLASS="l">37</TD><TD>        }</TD></TR><TR><TD CLASS="l">38</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">39</TD><TD>        private int length = 0;</TD></TR><TR CLASS="z"><TD CLASS="l">40</TD><TD>        private int memOffset = 0;</TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>        private int offset = 0;</TD></TR><TR CLASS="z"><TD CLASS="l">42</TD><TD>        private boolean oneLine = false;</TD></TR><TR><TD CLASS="l">43</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>        private String tag = null;</TD></TR><TR><TD CLASS="l"><A NAME="1">45</A></TD><TD> </TD></TR><TR><TD CLASS="l">46</TD><TD>        /**</TD></TR><TR><TD CLASS="l">47</TD><TD>         */</TD></TR><TR><TD CLASS="l">48</TD><TD>        public TagScanner(String tag, int offset) {</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>                super();</TD></TR><TR><TD CLASS="l">50</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>                this.tag = tag;</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                this.offset = offset;</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>                this.memOffset = -1;</TD></TR><TR CLASS="z"><TD CLASS="l">54</TD><TD>                if (tag != null)</TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                        this.length = tag.length();</TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="2">57</A></TD><TD> </TD></TR><TR><TD CLASS="l">58</TD><TD>        /**</TD></TR><TR><TD CLASS="l">59</TD><TD>         */</TD></TR><TR><TD CLASS="l">60</TD><TD>        public TagScanner(String tag, int offset, boolean oneLine) {</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                this(tag, offset);</TD></TR><TR><TD CLASS="l">62</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>                this.oneLine = oneLine;</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>        }</TD></TR><TR><TD CLASS="l">65</TD><TD> </TD></TR><TR><TD CLASS="l">66</TD><TD>        /**</TD></TR><TR><TD CLASS="l"><A NAME="3">67</A></TD><TD>         */</TD></TR><TR><TD CLASS="l">68</TD><TD>        public int getNextOffset() {</TD></TR><TR><TD CLASS="l">69</TD><TD>                int i;</TD></TR><TR><TD CLASS="l">70</TD><TD>                char c;</TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>                for (i = offset; i &lt; length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>                        c = tag.charAt(i);</TD></TR><TR CLASS="z"><TD CLASS="l">73</TD><TD>                        if (isEnd(c))</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>                                break;</TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>                        if (isQuote(c)) {</TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>                                i++;</TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>                                break;</TD></TR><TR><TD CLASS="l">78</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">79</TD><TD>                        if (!isSpace(c) &amp;&amp; !isEqual(c))</TD></TR><TR CLASS="z"><TD CLASS="l">80</TD><TD>                                break;</TD></TR><TR><TD CLASS="l">81</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>                return i;</TD></TR><TR><TD CLASS="l">83</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="4">84</A></TD><TD> </TD></TR><TR><TD CLASS="l">85</TD><TD>        /**</TD></TR><TR><TD CLASS="l">86</TD><TD>         */</TD></TR><TR><TD CLASS="l">87</TD><TD>        public int getOffset() {</TD></TR><TR CLASS="z"><TD CLASS="l">88</TD><TD>                return this.memOffset;</TD></TR><TR><TD CLASS="l">89</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="5">90</A></TD><TD> </TD></TR><TR><TD CLASS="l">91</TD><TD>        /**</TD></TR><TR><TD CLASS="l">92</TD><TD>         */</TD></TR><TR><TD CLASS="l">93</TD><TD>        private final boolean isEnd(char c) {</TD></TR><TR CLASS="z"><TD CLASS="l">94</TD><TD>                return (this.oneLine &amp;&amp; (c == '\r' || c == '\n'));</TD></TR><TR><TD CLASS="l">95</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="7">96</A></TD><TD> </TD></TR><TR><TD CLASS="l">97</TD><TD>        /**</TD></TR><TR><TD CLASS="l">98</TD><TD>         */</TD></TR><TR><TD CLASS="l">99</TD><TD>        public boolean isNewLine() {</TD></TR><TR CLASS="z"><TD CLASS="l">100</TD><TD>                if (oneLine)</TD></TR><TR CLASS="z"><TD CLASS="l">101</TD><TD>                        return false;</TD></TR><TR><TD CLASS="l">102</TD><TD>                char c;</TD></TR><TR CLASS="z"><TD CLASS="l">103</TD><TD>                for (int i = memOffset - 1; 0 &lt;= i; i--) {</TD></TR><TR CLASS="z"><TD CLASS="l">104</TD><TD>                        c = tag.charAt(i);</TD></TR><TR CLASS="z"><TD CLASS="l">105</TD><TD>                        if (c == '\r' || c == '\n')</TD></TR><TR CLASS="z"><TD CLASS="l">106</TD><TD>                                return true;</TD></TR><TR CLASS="z"><TD CLASS="l">107</TD><TD>                        if (!isSpace(c))</TD></TR><TR CLASS="z"><TD CLASS="l">108</TD><TD>                                return false;</TD></TR><TR><TD CLASS="l">109</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">110</TD><TD>                return false;</TD></TR><TR><TD CLASS="l">111</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="a">112</A></TD><TD> </TD></TR><TR><TD CLASS="l">113</TD><TD>        /**</TD></TR><TR><TD CLASS="l">114</TD><TD>         */</TD></TR><TR><TD CLASS="l">115</TD><TD>        private char nextChar() {</TD></TR><TR CLASS="z"><TD CLASS="l">116</TD><TD>                for (; this.offset &lt; this.length; this.offset++) {</TD></TR><TR CLASS="z"><TD CLASS="l">117</TD><TD>                        char c = this.tag.charAt(this.offset);</TD></TR><TR CLASS="z"><TD CLASS="l">118</TD><TD>                        if (isEnd(c))</TD></TR><TR CLASS="z"><TD CLASS="l">119</TD><TD>                                break;</TD></TR><TR CLASS="z"><TD CLASS="l">120</TD><TD>                        if (!isSpace(c))</TD></TR><TR CLASS="z"><TD CLASS="l">121</TD><TD>                                return c;</TD></TR><TR><TD CLASS="l">122</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">123</TD><TD>                return 0;</TD></TR><TR><TD CLASS="l">124</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="b">125</A></TD><TD> </TD></TR><TR><TD CLASS="l">126</TD><TD>        /**</TD></TR><TR><TD CLASS="l">127</TD><TD>         */</TD></TR><TR><TD CLASS="l">128</TD><TD>        public String nextName() {</TD></TR><TR CLASS="z"><TD CLASS="l">129</TD><TD>                if (this.tag == null)</TD></TR><TR CLASS="z"><TD CLASS="l">130</TD><TD>                        return null;</TD></TR><TR CLASS="z"><TD CLASS="l">131</TD><TD>                if (this.offset &gt;= this.length)</TD></TR><TR CLASS="z"><TD CLASS="l">132</TD><TD>                        return null;</TD></TR><TR><TD CLASS="l">133</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">134</TD><TD>                if (nextChar() == 0)</TD></TR><TR CLASS="z"><TD CLASS="l">135</TD><TD>                        return null;</TD></TR><TR><TD CLASS="l">136</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">137</TD><TD>                int nameOffset = this.offset;</TD></TR><TR CLASS="z"><TD CLASS="l">138</TD><TD>                for (; this.offset &lt; this.length; this.offset++) {</TD></TR><TR CLASS="z"><TD CLASS="l">139</TD><TD>                        char c = this.tag.charAt(this.offset);</TD></TR><TR CLASS="z"><TD CLASS="l">140</TD><TD>                        if (isEnd(c) || isSpace(c))</TD></TR><TR CLASS="z"><TD CLASS="l">141</TD><TD>                                break;</TD></TR><TR CLASS="z"><TD CLASS="l">142</TD><TD>                        if (isEqual(c) &amp;&amp; this.offset &gt; nameOffset)</TD></TR><TR CLASS="z"><TD CLASS="l">143</TD><TD>                                break;</TD></TR><TR><TD CLASS="l">144</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">145</TD><TD>                if (this.offset == nameOffset)</TD></TR><TR CLASS="z"><TD CLASS="l">146</TD><TD>                        return null;</TD></TR><TR><TD CLASS="l">147</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">148</TD><TD>                this.memOffset = nameOffset;</TD></TR><TR CLASS="z"><TD CLASS="l">149</TD><TD>                return this.tag.substring(nameOffset, this.offset);</TD></TR><TR><TD CLASS="l">150</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="c">151</A></TD><TD> </TD></TR><TR><TD CLASS="l">152</TD><TD>        /**</TD></TR><TR><TD CLASS="l">153</TD><TD>         */</TD></TR><TR><TD CLASS="l">154</TD><TD>        public String nextValue() {</TD></TR><TR CLASS="z"><TD CLASS="l">155</TD><TD>                if (this.tag == null)</TD></TR><TR CLASS="z"><TD CLASS="l">156</TD><TD>                        return null;</TD></TR><TR CLASS="z"><TD CLASS="l">157</TD><TD>                if (this.offset &gt;= this.length)</TD></TR><TR CLASS="z"><TD CLASS="l">158</TD><TD>                        return null;</TD></TR><TR><TD CLASS="l">159</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">160</TD><TD>                char seperator = nextChar();</TD></TR><TR CLASS="z"><TD CLASS="l">161</TD><TD>                if (!isEqual(seperator))</TD></TR><TR CLASS="z"><TD CLASS="l">162</TD><TD>                        return null;</TD></TR><TR CLASS="z"><TD CLASS="l">163</TD><TD>                this.offset++; // skip '='</TD></TR><TR CLASS="z"><TD CLASS="l">164</TD><TD>                char quote = nextChar();</TD></TR><TR CLASS="z"><TD CLASS="l">165</TD><TD>                if (quote == 0)</TD></TR><TR CLASS="z"><TD CLASS="l">166</TD><TD>                        return null;</TD></TR><TR CLASS="z"><TD CLASS="l">167</TD><TD>                if (isQuote(quote))</TD></TR><TR CLASS="z"><TD CLASS="l">168</TD><TD>                        this.offset++;</TD></TR><TR><TD CLASS="l">169</TD><TD>                else</TD></TR><TR CLASS="z"><TD CLASS="l">170</TD><TD>                        quote = 0;</TD></TR><TR><TD CLASS="l">171</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">172</TD><TD>                int valueOffset = this.offset;</TD></TR><TR CLASS="z"><TD CLASS="l">173</TD><TD>                for (; this.offset &lt; this.length; this.offset++) {</TD></TR><TR CLASS="z"><TD CLASS="l">174</TD><TD>                        char c = this.tag.charAt(this.offset);</TD></TR><TR CLASS="z"><TD CLASS="l">175</TD><TD>                        if (isEnd(c)) {</TD></TR><TR CLASS="z"><TD CLASS="l">176</TD><TD>                                quote = 0;</TD></TR><TR CLASS="z"><TD CLASS="l">177</TD><TD>                                break;</TD></TR><TR><TD CLASS="l">178</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">179</TD><TD>                        if (quote == 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">180</TD><TD>                                if (isSpace(c))</TD></TR><TR CLASS="z"><TD CLASS="l">181</TD><TD>                                        break;</TD></TR><TR><TD CLASS="l">182</TD><TD>                        } else {</TD></TR><TR CLASS="z"><TD CLASS="l">183</TD><TD>                                if (c == quote)</TD></TR><TR CLASS="z"><TD CLASS="l">184</TD><TD>                                        break;</TD></TR><TR><TD CLASS="l">185</TD><TD>                        }</TD></TR><TR><TD CLASS="l">186</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">187</TD><TD>                int valueEnd = this.offset;</TD></TR><TR CLASS="z"><TD CLASS="l">188</TD><TD>                if (quote != 0 &amp;&amp; this.offset &lt; this.length)</TD></TR><TR CLASS="z"><TD CLASS="l">189</TD><TD>                        this.offset++;</TD></TR><TR CLASS="z"><TD CLASS="l">190</TD><TD>                if (valueEnd == valueOffset)</TD></TR><TR CLASS="z"><TD CLASS="l">191</TD><TD>                        return null;</TD></TR><TR><TD CLASS="l">192</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">193</TD><TD>                this.memOffset = valueOffset;</TD></TR><TR CLASS="z"><TD CLASS="l">194</TD><TD>                return this.tag.substring(valueOffset, valueEnd);</TD></TR><TR><TD CLASS="l">195</TD><TD>        }</TD></TR><TR><TD CLASS="l">196</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="23.html">org.eclipse.wst.xml.core.internal.commentelement.util</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/153.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/153.html
deleted file mode 100644
index 85a20b8..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/153.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="24.html">org.eclipse.wst.xml.core.internal.contentmodel.modelquery.extension</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">ModelQueryExtension.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>ModelQueryExtension.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/18)</TD><TD CLASS="h">0%   (0/7)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">ModelQueryExtension</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/18)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR><TD CLASS="f"><A HREF="#1">&lt;static initializer&gt;</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#0">ModelQueryExtension (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#3">getAttributeValues (Element, String, String): String []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">getAvailableElementContent (Element, String, int): CMNode []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#5">getElementValues (Node, String, String): String []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">isApplicableChildElement (Node, String, String): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2002, 2008 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.core.internal.contentmodel.modelquery.extension;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="0">15</A></TD><TD>import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.w3c.dom.Element;</TD></TR><TR><TD CLASS="l"><A NAME="1">17</A></TD><TD>import org.w3c.dom.Node;</TD></TR><TR><TD CLASS="l">18</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">19</TD><TD>public abstract class ModelQueryExtension</TD></TR><TR><TD CLASS="l">20</TD><TD>{  </TD></TR><TR CLASS="z"><TD CLASS="l">21</TD><TD>  protected static final String[] EMPTY_STRING_ARRAY = {};</TD></TR><TR CLASS="z"><TD CLASS="l">22</TD><TD>  protected static final CMNode[] EMPTY_CMNODE_ARRAY = {};</TD></TR><TR><TD CLASS="l">23</TD><TD>  </TD></TR><TR><TD CLASS="l">24</TD><TD>  /**</TD></TR><TR><TD CLASS="l">25</TD><TD> * @param ownerElement - the owner element</TD></TR><TR><TD CLASS="l">26</TD><TD> * @param namespace - the active namespace</TD></TR><TR><TD CLASS="l">27</TD><TD> * @param name - the name of an attribute node</TD></TR><TR><TD CLASS="l"><A NAME="3">28</A></TD><TD> * @return valid values for the given attribute</TD></TR><TR><TD CLASS="l">29</TD><TD> */</TD></TR><TR><TD CLASS="l">30</TD><TD>public String[] getAttributeValues(Element ownerElement, String namespace, String name)</TD></TR><TR><TD CLASS="l">31</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">32</TD><TD>    return EMPTY_STRING_ARRAY;</TD></TR><TR><TD CLASS="l"><A NAME="5">33</A></TD><TD>  }</TD></TR><TR><TD CLASS="l">34</TD><TD>  </TD></TR><TR><TD CLASS="l">35</TD><TD>  public String[] getElementValues(Node parentNode, String namespace, String name)</TD></TR><TR><TD CLASS="l">36</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">37</TD><TD>    return EMPTY_STRING_ARRAY;</TD></TR><TR><TD CLASS="l">38</TD><TD>  }</TD></TR><TR><TD CLASS="l">39</TD><TD>  </TD></TR><TR><TD CLASS="l">40</TD><TD>  /**</TD></TR><TR><TD CLASS="l">41</TD><TD> * @param parentNode</TD></TR><TR><TD CLASS="l">42</TD><TD> * @param namespace</TD></TR><TR><TD CLASS="l">43</TD><TD> * @param name</TD></TR><TR><TD CLASS="l"><A NAME="6">44</A></TD><TD> * @return whether a child element of the given parentNode is valid given the active namespace</TD></TR><TR><TD CLASS="l">45</TD><TD> */</TD></TR><TR><TD CLASS="l">46</TD><TD>public boolean isApplicableChildElement(Node parentNode, String namespace, String name)</TD></TR><TR><TD CLASS="l">47</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">48</TD><TD>    return true;</TD></TR><TR><TD CLASS="l">49</TD><TD>  }</TD></TR><TR><TD CLASS="l">50</TD><TD>  </TD></TR><TR><TD CLASS="l">51</TD><TD>  /**</TD></TR><TR><TD CLASS="l">52</TD><TD> * @param parentElement - the parent Element when asking for children, the owner Element when asking for attributes </TD></TR><TR><TD CLASS="l">53</TD><TD> * @param namespace - the active namespace</TD></TR><TR><TD CLASS="l">54</TD><TD> * @param includeOptions - ModelQuery.INCLUDE_ATTRIBUTES or ModelQuery.INCLUDE_CHILD_NODES</TD></TR><TR><TD CLASS="l"><A NAME="4">55</A></TD><TD> * @return additional valid CMAttributeDeclarations or CMElementDeclarations </TD></TR><TR><TD CLASS="l">56</TD><TD> */</TD></TR><TR><TD CLASS="l">57</TD><TD>public CMNode[] getAvailableElementContent(Element parentElement, String namespace, int includeOptions) </TD></TR><TR><TD CLASS="l">58</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>          return EMPTY_CMNODE_ARRAY;</TD></TR><TR><TD CLASS="l">60</TD><TD>  }</TD></TR><TR><TD CLASS="l">61</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="24.html">org.eclipse.wst.xml.core.internal.contentmodel.modelquery.extension</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/154.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/154.html
deleted file mode 100644
index 8c5cf39..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/154.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="25.html">org.eclipse.wst.xml.core.internal.emf2xml</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">EMF2DOMSSEAdapter.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>EMF2DOMSSEAdapter.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/32)</TD><TD CLASS="h">0%   (0/601)</TD><TD CLASS="h">0%   (0/157)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">EMF2DOMSSEAdapter</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/32)</TD><TD CLASS="h">0%   (0/601)</TD><TD CLASS="h">0%   (0/157)</TD></TR><TR><TD CLASS="f"><A HREF="#0">EMF2DOMSSEAdapter (Node, EMF2DOMRenderer, Translator): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">EMF2DOMSSEAdapter (Notifier, Node, EMF2DOMRenderer, Translator): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#3">EMF2DOMSSEAdapter (TranslatorResource, Document, EMF2DOMRenderer, Translator)...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">addDOMAdapter (Node): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/24)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#5">calcIndentString (Node): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/38)</TD><TD CLASS="h">0%   (0/10)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">createAdapter (Node, Translator): EMF2DOMAdapter</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/37)</TD><TD CLASS="h">0%   (0/10)</TD></TR><TR><TD CLASS="f"><A HREF="#7">debugDOMNotify (INodeNotifier, int, Object, Object, Object): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">disableUndoManagementIfNecessary (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#9">enableUndoManagement (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">getNewlineString (Node): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/16)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#b">getResourceClass (): Class</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#c">getXMLModel (): IDOMModel</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#d">getXMLNode (): IDOMNode</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#e">handleFeatureValueConversionException (FeatureValueConversionException): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#f">handleInvalidMultiNodes (String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#10">indent (Node, Translator): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/21)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#11">indentEndTag (String, Node, Translator): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/44)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#12">indentStartTag (String, Node, Translator): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/23)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#13">initChildTranslators (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/16)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#14">isEmptyTag (Element): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#15">notifyChanged (INodeNotifier, int, Object, Object, Object, int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/77)</TD><TD CLASS="h">0%   (0/17)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#16">postUpdateDOMFeature (Translator, Node, EObject): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#17">preUpdateDOMFeature (Translator, Node, EObject): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#18">primAddDOMAdapter (Node, EMF2DOMAdapter): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#19">primCreateAdapter (EObject, Translator): EMF2DOMAdapter</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/14)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#1a">primCreateAdapter (Node, Translator): EMF2DOMAdapter</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#1b">primGetExistingAdapter (Node): EMF2DOMAdapter</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/83)</TD><TD CLASS="h">0%   (0/20)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#1c">primGetIndentString (Node): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/59)</TD><TD CLASS="h">0%   (0/17)</TD></TR><TR><TD CLASS="f"><A HREF="#1d">removeDOMAdapter (Node, EMF2DOMAdapter): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#1e">reorderDOMChild (Node, Node, Node, Translator): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/28)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#1f">setEmptyTag (Element): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#20">updateDOM (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/19)</TD><TD CLASS="h">0%   (0/8)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2008 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> * IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">11</TD><TD> </TD></TR><TR><TD CLASS="l">12</TD><TD>package org.eclipse.wst.xml.core.internal.emf2xml;</TD></TR><TR><TD CLASS="l">13</TD><TD> </TD></TR><TR><TD CLASS="l">14</TD><TD>import java.util.Collection;</TD></TR><TR><TD CLASS="l">15</TD><TD>import java.util.Iterator;</TD></TR><TR><TD CLASS="l">16</TD><TD> </TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.emf.common.notify.Notifier;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.emf.ecore.EObject;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.emf.ecore.resource.Resource;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.jface.text.BadLocationException;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.wst.common.internal.emf.resource.EMF2DOMAdapter;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.wst.common.internal.emf.resource.EMF2DOMAdapterImpl;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.wst.common.internal.emf.resource.EMF2DOMRenderer;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.wst.common.internal.emf.resource.Translator;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.wst.common.internal.emf.resource.TranslatorResource;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.wst.common.internal.emf.utilities.Assert;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.wst.common.internal.emf.utilities.DOMUtilities;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.wst.common.internal.emf.utilities.FeatureValueConversionException;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.INodeAdapter;</TD></TR><TR><TD CLASS="l">30</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;</TD></TR><TR><TD CLASS="l">31</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;</TD></TR><TR><TD CLASS="l">32</TD><TD>import org.eclipse.wst.xml.core.internal.Logger;</TD></TR><TR><TD CLASS="l">33</TD><TD>import org.eclipse.wst.xml.core.internal.provisional.document.IDOMElement;</TD></TR><TR><TD CLASS="l">34</TD><TD>import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;</TD></TR><TR><TD CLASS="l">35</TD><TD>import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;</TD></TR><TR><TD CLASS="l">36</TD><TD>import org.w3c.dom.Document;</TD></TR><TR><TD CLASS="l">37</TD><TD>import org.w3c.dom.Element;</TD></TR><TR><TD CLASS="l">38</TD><TD>import org.w3c.dom.Node;</TD></TR><TR><TD CLASS="l">39</TD><TD>import org.w3c.dom.Text;</TD></TR><TR><TD CLASS="l">40</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="0">41</A></TD><TD>public class EMF2DOMSSEAdapter extends EMF2DOMAdapterImpl implements INodeAdapter {</TD></TR><TR><TD CLASS="l">42</TD><TD>        </TD></TR><TR><TD CLASS="l">43</TD><TD>        private Class resourceClass;</TD></TR><TR><TD CLASS="l">44</TD><TD>        public EMF2DOMSSEAdapter(Node node, EMF2DOMRenderer renderer, Translator translator) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">45</A></TD><TD>                super(node, renderer, translator);</TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>        }</TD></TR><TR><TD CLASS="l">47</TD><TD> </TD></TR><TR><TD CLASS="l">48</TD><TD>        public EMF2DOMSSEAdapter(Notifier object, Node node, EMF2DOMRenderer renderer, Translator translator) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">49</A></TD><TD>                super(object, node, renderer, translator);</TD></TR><TR CLASS="z"><TD CLASS="l">50</TD><TD>        }</TD></TR><TR><TD CLASS="l">51</TD><TD> </TD></TR><TR><TD CLASS="l">52</TD><TD>        public EMF2DOMSSEAdapter(TranslatorResource resource, Document document, EMF2DOMRenderer renderer, Translator translator) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="5">53</A></TD><TD>                super(resource, document, renderer, translator);</TD></TR><TR CLASS="z"><TD CLASS="l">54</TD><TD>        }</TD></TR><TR><TD CLASS="l">55</TD><TD> </TD></TR><TR><TD CLASS="l">56</TD><TD>        protected String calcIndentString(Node node) {</TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>                Assert.isNotNull(node);</TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>                Assert.isNotNull(node.getParentNode(), &#34;Node must be connected into the tree&#34;); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">59</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                Node parent = node.getParentNode();</TD></TR><TR><TD CLASS="l">61</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>                String indentString = getNewlineString(node);</TD></TR><TR><TD CLASS="l">63</TD><TD> </TD></TR><TR><TD CLASS="l">64</TD><TD>                // Find indentation string for this node based on its sibling or</TD></TR><TR><TD CLASS="l">65</TD><TD>                // parent</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                Node previousSibling = DOMUtilities.getPreviousNodeSibling(node);</TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>                if (previousSibling != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>                        indentString = primGetIndentString(previousSibling);</TD></TR><TR><TD CLASS="l">69</TD><TD>                }</TD></TR><TR><TD CLASS="l">70</TD><TD>                else {</TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>                        String parentIndentString = primGetIndentString(parent);</TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>                        indentString = parentIndentString + DOMUtilities.INDENT_STRING;</TD></TR><TR><TD CLASS="l">73</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>                return indentString;</TD></TR><TR><TD CLASS="l">75</TD><TD>        }</TD></TR><TR><TD CLASS="l">76</TD><TD> </TD></TR><TR><TD CLASS="l">77</TD><TD>        /*</TD></TR><TR><TD CLASS="l">78</TD><TD>         * Prints out a DOM notification for debugging.</TD></TR><TR><TD CLASS="l">79</TD><TD>         */</TD></TR><TR><TD CLASS="l">80</TD><TD>        protected void debugDOMNotify(INodeNotifier notifier, int eventType, Object changedFeature, Object oldValue, Object newValue) {</TD></TR><TR><TD CLASS="l">81</TD><TD>                if (fDebug) {</TD></TR><TR><TD CLASS="l">82</TD><TD>                        String notifType = &#34;&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">83</TD><TD>                        switch (eventType) {</TD></TR><TR><TD CLASS="l">84</TD><TD>                                case INodeNotifier.ADD :</TD></TR><TR><TD CLASS="l">85</TD><TD>                                        notifType = &#34;ADD&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">86</TD><TD>                                        break;</TD></TR><TR><TD CLASS="l">87</TD><TD>                                case INodeNotifier.REMOVE :</TD></TR><TR><TD CLASS="l">88</TD><TD>                                        notifType = &#34;REMOVE&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">89</TD><TD>                                        break;</TD></TR><TR><TD CLASS="l">90</TD><TD>                                case INodeNotifier.CHANGE :</TD></TR><TR><TD CLASS="l">91</TD><TD>                                        notifType = &#34;CHANGE&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">92</TD><TD>                                        break;</TD></TR><TR><TD CLASS="l">93</TD><TD>                                case INodeNotifier.CONTENT_CHANGED :</TD></TR><TR><TD CLASS="l">94</TD><TD>                                        notifType = &#34;CONTENT_CHANGED&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">95</TD><TD>                                        break;</TD></TR><TR><TD CLASS="l">96</TD><TD>                                case INodeNotifier.STRUCTURE_CHANGED :</TD></TR><TR><TD CLASS="l">97</TD><TD>                                        notifType = &#34;STRUCTURE_CHANGE&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">98</TD><TD>                                        break;</TD></TR><TR><TD CLASS="l">99</TD><TD>                        }</TD></TR><TR><TD CLASS="l">100</TD><TD>                        Logger.log(Logger.INFO_DEBUG, &#34;DOM Change: &#34; + notifType); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">101</TD><TD>                        Logger.log(Logger.INFO_DEBUG, &#34;\tnotifier      : &#34; + notifier); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l"><A NAME="7">102</A></TD><TD>                        Logger.log(Logger.INFO_DEBUG, &#34;\tchangedFeature: &#34; + changedFeature); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">103</TD><TD>                        Logger.log(Logger.INFO_DEBUG, &#34;\toldValue      : &#34; + oldValue); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">104</TD><TD>                        Logger.log(Logger.INFO_DEBUG, &#34;\tnewValue      : &#34; + newValue); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l"><A NAME="8">105</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">106</TD><TD>        }</TD></TR><TR><TD CLASS="l">107</TD><TD> </TD></TR><TR><TD CLASS="l">108</TD><TD>        protected void disableUndoManagementIfNecessary() {</TD></TR><TR CLASS="z"><TD CLASS="l">109</TD><TD>                IDOMModel model = getXMLModel();</TD></TR><TR CLASS="z"><TD CLASS="l">110</TD><TD>                if (model != null &amp;&amp; model.getUndoManager() != null)</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="9">111</A></TD><TD>                        model.disableUndoManagement();</TD></TR><TR CLASS="z"><TD CLASS="l">112</TD><TD>        }</TD></TR><TR><TD CLASS="l">113</TD><TD> </TD></TR><TR><TD CLASS="l">114</TD><TD>        protected void enableUndoManagement() {</TD></TR><TR CLASS="z"><TD CLASS="l">115</TD><TD>                IDOMModel model = getXMLModel();</TD></TR><TR CLASS="z"><TD CLASS="l">116</TD><TD>                if (model != null &amp;&amp; model.getUndoManager() != null)</TD></TR><TR CLASS="z"><TD CLASS="l">117</TD><TD>                        model.enableUndoManagement();</TD></TR><TR CLASS="z"><TD CLASS="l">118</TD><TD>        }</TD></TR><TR><TD CLASS="l">119</TD><TD> </TD></TR><TR><TD CLASS="l">120</TD><TD>        protected String getNewlineString(Node node) {</TD></TR><TR><TD CLASS="l">121</TD><TD>                /*</TD></TR><TR><TD CLASS="l"><A NAME="a">122</A></TD><TD>                 * We should always have IDOMNode, and IStructuredDocument, and</TD></TR><TR><TD CLASS="l">123</TD><TD>                 * consquently a valid &#34;preferred&#34; line delimiter, but just to be</TD></TR><TR><TD CLASS="l">124</TD><TD>                 * safe, we'll assign something by default.</TD></TR><TR><TD CLASS="l">125</TD><TD>                 */</TD></TR><TR CLASS="z"><TD CLASS="l">126</TD><TD>                if (node instanceof IDOMNode) {</TD></TR><TR CLASS="z"><TD CLASS="l">127</TD><TD>                        IDOMNode xmlNode = (IDOMNode) node;</TD></TR><TR CLASS="z"><TD CLASS="l">128</TD><TD>                        IStructuredDocument document = xmlNode.getStructuredDocument();</TD></TR><TR CLASS="z"><TD CLASS="l">129</TD><TD>                        if (document != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">130</TD><TD>                                return document.getLineDelimiter();</TD></TR><TR><TD CLASS="l">131</TD><TD>                        }</TD></TR><TR><TD CLASS="l">132</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="c">133</A></TD><TD>                return DOMUtilities.NEWLINE_STRING;</TD></TR><TR><TD CLASS="l">134</TD><TD>        }</TD></TR><TR><TD CLASS="l">135</TD><TD> </TD></TR><TR><TD CLASS="l">136</TD><TD>        protected IDOMModel getXMLModel() {</TD></TR><TR CLASS="z"><TD CLASS="l">137</TD><TD>                if (getNode() != null)</TD></TR><TR CLASS="z"><TD CLASS="l">138</TD><TD>                        return ((IDOMNode) getNode()).getModel();</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="d">139</A></TD><TD>                return null;</TD></TR><TR><TD CLASS="l">140</TD><TD>        }</TD></TR><TR><TD CLASS="l">141</TD><TD> </TD></TR><TR><TD CLASS="l">142</TD><TD>        protected IDOMNode getXMLNode() {</TD></TR><TR CLASS="z"><TD CLASS="l">143</TD><TD>                return (IDOMNode) getNode();</TD></TR><TR><TD CLASS="l">144</TD><TD>        }</TD></TR><TR><TD CLASS="l">145</TD><TD> </TD></TR><TR><TD CLASS="l">146</TD><TD>        /*</TD></TR><TR><TD CLASS="l"><A NAME="e">147</A></TD><TD>         * Do nothing for SSE, we will tolerate anything they add</TD></TR><TR><TD CLASS="l">148</TD><TD>         */</TD></TR><TR><TD CLASS="l">149</TD><TD>        protected void handleFeatureValueConversionException(FeatureValueConversionException ex) {</TD></TR><TR><TD CLASS="l">150</TD><TD>                // Do nothing</TD></TR><TR CLASS="z"><TD CLASS="l">151</TD><TD>        }</TD></TR><TR><TD CLASS="l">152</TD><TD> </TD></TR><TR><TD CLASS="l">153</TD><TD>        /*</TD></TR><TR><TD CLASS="l"><A NAME="f">154</A></TD><TD>         * Do nothing for SSE, we will tolerate anything they add</TD></TR><TR><TD CLASS="l">155</TD><TD>         */</TD></TR><TR><TD CLASS="l">156</TD><TD>        protected void handleInvalidMultiNodes(String nodeName) {</TD></TR><TR><TD CLASS="l"><A NAME="10">157</A></TD><TD>                // Do nothing</TD></TR><TR CLASS="z"><TD CLASS="l">158</TD><TD>        }</TD></TR><TR><TD CLASS="l">159</TD><TD> </TD></TR><TR><TD CLASS="l">160</TD><TD>        protected void indent(Node node, Translator map) {</TD></TR><TR CLASS="z"><TD CLASS="l">161</TD><TD>                Assert.isNotNull(node.getParentNode(), &#34;Node must be connected into the tree&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">162</TD><TD>                Assert.isNotNull(node);</TD></TR><TR><TD CLASS="l">163</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">164</TD><TD>                String indentString = calcIndentString(node);</TD></TR><TR><TD CLASS="l">165</TD><TD> </TD></TR><TR><TD CLASS="l">166</TD><TD>                // Indent before the start tag</TD></TR><TR CLASS="z"><TD CLASS="l">167</TD><TD>                indentStartTag(indentString, node, map);</TD></TR><TR><TD CLASS="l">168</TD><TD> </TD></TR><TR><TD CLASS="l">169</TD><TD>                // Indent before the end tag</TD></TR><TR CLASS="z"><TD CLASS="l">170</TD><TD>                indentEndTag(indentString, node, map);</TD></TR><TR CLASS="z"><TD CLASS="l">171</TD><TD>        }</TD></TR><TR><TD CLASS="l">172</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="11">173</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">174</TD><TD>         * Indent before the end tag of the &lt;node&gt;passed in.</TD></TR><TR><TD CLASS="l">175</TD><TD>         */</TD></TR><TR><TD CLASS="l">176</TD><TD>        protected void indentEndTag(String indentString, Node node, Translator map) {</TD></TR><TR CLASS="z"><TD CLASS="l">177</TD><TD>                if (!map.shouldIndentEndTag(node))</TD></TR><TR CLASS="z"><TD CLASS="l">178</TD><TD>                        return;</TD></TR><TR CLASS="z"><TD CLASS="l">179</TD><TD>                String domPath = map.getDOMPath();</TD></TR><TR><TD CLASS="l">180</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">181</TD><TD>                if ((!map.isManagedByParent() &amp;&amp; !map.isDOMTextValue()) || (map.isManagedByParent() &amp;&amp; domPath.length() != 0) &amp;&amp; node.getNodeName().equals(domPath)) {</TD></TR><TR CLASS="z"><TD CLASS="l">182</TD><TD>                        Text newWS = node.getOwnerDocument().createTextNode(getNewlineString(node) + indentString); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">183</TD><TD>                        DOMUtilities.insertBeforeNode(node, newWS, null);</TD></TR><TR><TD CLASS="l">184</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">185</TD><TD>        }</TD></TR><TR><TD CLASS="l">186</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="12">187</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">188</TD><TD>         * Indent before the start tag of the &lt;node&gt;passed in.</TD></TR><TR><TD CLASS="l">189</TD><TD>         */</TD></TR><TR><TD CLASS="l">190</TD><TD>        protected void indentStartTag(String indentString, Node node, Translator map) {</TD></TR><TR CLASS="z"><TD CLASS="l">191</TD><TD>                Node parent = node.getParentNode();</TD></TR><TR CLASS="z"><TD CLASS="l">192</TD><TD>                Text newWS = node.getOwnerDocument().createTextNode(getNewlineString(node) + indentString); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="14">193</A></TD><TD>                DOMUtilities.insertAfterNode(parent, newWS, DOMUtilities.getPreviousNodeSibling(node));</TD></TR><TR CLASS="z"><TD CLASS="l">194</TD><TD>        }</TD></TR><TR><TD CLASS="l">195</TD><TD> </TD></TR><TR><TD CLASS="l">196</TD><TD>        protected boolean isEmptyTag(Element parent) {</TD></TR><TR CLASS="z"><TD CLASS="l">197</TD><TD>                return ((IDOMElement) parent).isEmptyTag();</TD></TR><TR><TD CLASS="l">198</TD><TD>        }</TD></TR><TR><TD CLASS="l">199</TD><TD> </TD></TR><TR><TD CLASS="l">200</TD><TD>        /*</TD></TR><TR><TD CLASS="l">201</TD><TD>         * This method is called when the DOM node changes. It attempts to update</TD></TR><TR><TD CLASS="l"><A NAME="15">202</A></TD><TD>         * MOF object based on the changes.</TD></TR><TR><TD CLASS="l">203</TD><TD>         */</TD></TR><TR><TD CLASS="l">204</TD><TD>        public void notifyChanged(INodeNotifier notifier, int eventType, Object changedFeature, Object oldValue, Object newValue, int pos) {</TD></TR><TR><TD CLASS="l">205</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">206</TD><TD>                if (!isNotificationEnabled())</TD></TR><TR CLASS="z"><TD CLASS="l">207</TD><TD>                        return;</TD></TR><TR><TD CLASS="l">208</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">209</TD><TD>                debugDOMNotify(notifier, eventType, changedFeature, oldValue, newValue);</TD></TR><TR><TD CLASS="l">210</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">211</TD><TD>                if (notifier != getNode() &amp;&amp; eventType != INodeNotifier.CHANGE) {</TD></TR><TR><TD CLASS="l">212</TD><TD>                        // This is the case where the notification was sent from a</TD></TR><TR><TD CLASS="l">213</TD><TD>                        // sub node. Use the notifiers name to determine which</TD></TR><TR><TD CLASS="l">214</TD><TD>                        // MOF feature to update. Note that is is assumed that if</TD></TR><TR><TD CLASS="l">215</TD><TD>                        // the eventType is CHANGE then it attribute on a path node</TD></TR><TR><TD CLASS="l">216</TD><TD>                        // changing. This was put in for the EGL group.</TD></TR><TR CLASS="z"><TD CLASS="l">217</TD><TD>                        if (notifier instanceof Element) {</TD></TR><TR CLASS="z"><TD CLASS="l">218</TD><TD>                                if (eventType == INodeNotifier.STRUCTURE_CHANGED || eventType == INodeNotifier.CONTENT_CHANGED || eventType == INodeNotifier.CHANGE) {</TD></TR><TR CLASS="z"><TD CLASS="l">219</TD><TD>                                        Element notifyingNode = (Element) notifier;</TD></TR><TR CLASS="z"><TD CLASS="l">220</TD><TD>                                        Translator map = findTranslator(notifyingNode.getNodeName(), false);</TD></TR><TR CLASS="z"><TD CLASS="l">221</TD><TD>                                        if (map != null)</TD></TR><TR CLASS="z"><TD CLASS="l">222</TD><TD>                                                updateMOFFeature(map, getNode(), getEObject());</TD></TR><TR><TD CLASS="l">223</TD><TD>                                }</TD></TR><TR><TD CLASS="l">224</TD><TD>                        }</TD></TR><TR><TD CLASS="l">225</TD><TD>                }</TD></TR><TR><TD CLASS="l">226</TD><TD>                else {</TD></TR><TR><TD CLASS="l">227</TD><TD>                        // Update everything on STRUCTURE_CHANGE or CONTENT_CHANGE.</TD></TR><TR><TD CLASS="l">228</TD><TD>                        // Other event types occur too often.</TD></TR><TR CLASS="z"><TD CLASS="l">229</TD><TD>                        if (eventType == INodeNotifier.STRUCTURE_CHANGED || eventType == INodeNotifier.CONTENT_CHANGED) {</TD></TR><TR CLASS="z"><TD CLASS="l">230</TD><TD>                                updateMOF();</TD></TR><TR><TD CLASS="l">231</TD><TD>                        }</TD></TR><TR><TD CLASS="l">232</TD><TD>                        // Update just the attribute that changed.</TD></TR><TR CLASS="z"><TD CLASS="l">233</TD><TD>                        else if (eventType == INodeNotifier.CHANGE) {</TD></TR><TR CLASS="z"><TD CLASS="l">234</TD><TD>                                Translator map = findTranslator(changedFeature.toString(), true);</TD></TR><TR CLASS="z"><TD CLASS="l">235</TD><TD>                                if (map != null)</TD></TR><TR CLASS="z"><TD CLASS="l">236</TD><TD>                                        updateMOFFeature(map, getNode(), getEObject());</TD></TR><TR><TD CLASS="l">237</TD><TD>                        }</TD></TR><TR><TD CLASS="l"><A NAME="16">238</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">239</TD><TD>        }</TD></TR><TR><TD CLASS="l">240</TD><TD> </TD></TR><TR><TD CLASS="l">241</TD><TD>        protected void postUpdateDOMFeature(Translator map, Node node, EObject mofObject) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="17">242</A></TD><TD>                enableUndoManagement();</TD></TR><TR CLASS="z"><TD CLASS="l">243</TD><TD>        }</TD></TR><TR><TD CLASS="l">244</TD><TD> </TD></TR><TR><TD CLASS="l">245</TD><TD>        protected void preUpdateDOMFeature(Translator map, Node node, EObject mofObject) {</TD></TR><TR CLASS="z"><TD CLASS="l">246</TD><TD>                super.preUpdateDOMFeature(map, node, mofObject);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="18">247</A></TD><TD>                disableUndoManagementIfNecessary();</TD></TR><TR CLASS="z"><TD CLASS="l">248</TD><TD>        }</TD></TR><TR><TD CLASS="l">249</TD><TD> </TD></TR><TR><TD CLASS="l">250</TD><TD>        protected void primAddDOMAdapter(Node aNode, EMF2DOMAdapter anAdapter) {</TD></TR><TR CLASS="z"><TD CLASS="l">251</TD><TD>                ((IDOMNode) aNode).addAdapter((EMF2DOMSSEAdapter) anAdapter);</TD></TR><TR CLASS="z"><TD CLASS="l">252</TD><TD>        }</TD></TR><TR><TD CLASS="l">253</TD><TD> </TD></TR><TR><TD CLASS="l">254</TD><TD>        /**</TD></TR><TR><TD CLASS="l">255</TD><TD>         * Create an adapter for a child DOM node</TD></TR><TR><TD CLASS="l">256</TD><TD>         * </TD></TR><TR><TD CLASS="l"><A NAME="19">257</A></TD><TD>         * @param node</TD></TR><TR><TD CLASS="l">258</TD><TD>         *            org.w3c.dom.Node The node to create the adapter for.</TD></TR><TR><TD CLASS="l">259</TD><TD>         */</TD></TR><TR><TD CLASS="l">260</TD><TD>        protected EMF2DOMAdapter primCreateAdapter(EObject mofObject, Translator childMap) {</TD></TR><TR CLASS="z"><TD CLASS="l">261</TD><TD>                Element newNode = createNewNode(mofObject, childMap);</TD></TR><TR CLASS="z"><TD CLASS="l">262</TD><TD>                return new EMF2DOMSSEAdapter(mofObject, newNode, fRenderer, childMap);</TD></TR><TR><TD CLASS="l">263</TD><TD>        }</TD></TR><TR><TD CLASS="l">264</TD><TD> </TD></TR><TR><TD CLASS="l">265</TD><TD>        /**</TD></TR><TR><TD CLASS="l">266</TD><TD>         * Create an adapter for a child DOM node</TD></TR><TR><TD CLASS="l">267</TD><TD>         * </TD></TR><TR><TD CLASS="l"><A NAME="1a">268</A></TD><TD>         * @param node</TD></TR><TR><TD CLASS="l">269</TD><TD>         *            org.w3c.dom.Node The node to create the adapter for.</TD></TR><TR><TD CLASS="l">270</TD><TD>         */</TD></TR><TR><TD CLASS="l">271</TD><TD>        protected EMF2DOMAdapter primCreateAdapter(Node node, Translator childMap) {</TD></TR><TR CLASS="z"><TD CLASS="l">272</TD><TD>                return new EMF2DOMSSEAdapter(node, fRenderer, childMap);</TD></TR><TR><TD CLASS="l"><A NAME="6">273</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">274</TD><TD>        protected EMF2DOMAdapter createAdapter(Node node, Translator childMap) {</TD></TR><TR><TD CLASS="l">275</TD><TD> </TD></TR><TR><TD CLASS="l">276</TD><TD>                //Assert.isNotNull(childMap.getChildAdapterClass());</TD></TR><TR CLASS="z"><TD CLASS="l">277</TD><TD>                Assert.isNotNull(node);</TD></TR><TR><TD CLASS="l">278</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">279</TD><TD>                EMF2DOMAdapter adapter = primGetExistingAdapter(node);</TD></TR><TR><TD CLASS="l">280</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">281</TD><TD>                if (adapter != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">282</TD><TD>                        if (adapter.isMOFProxy() || adapter.getTarget() == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">283</TD><TD>                                removeDOMAdapter(node, adapter);</TD></TR><TR CLASS="z"><TD CLASS="l">284</TD><TD>                                if (adapter.getTarget() != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">285</TD><TD>                                        adapter.getTarget().eAdapters().remove(adapter);</TD></TR><TR><TD CLASS="l">286</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">287</TD><TD>                                adapter = null;</TD></TR><TR><TD CLASS="l">288</TD><TD>                        }</TD></TR><TR><TD CLASS="l">289</TD><TD>                } else {</TD></TR><TR CLASS="z"><TD CLASS="l">290</TD><TD>                        adapter = primCreateAdapter(node, childMap);</TD></TR><TR><TD CLASS="l">291</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">292</TD><TD>                return adapter;</TD></TR><TR><TD CLASS="l">293</TD><TD>        }</TD></TR><TR><TD CLASS="l">294</TD><TD>        protected void addDOMAdapter(Node childNode) {</TD></TR><TR><TD CLASS="l"><A NAME="4">295</A></TD><TD> </TD></TR><TR><TD CLASS="l">296</TD><TD>                // Only add the adapter if this is an child node that will not be</TD></TR><TR><TD CLASS="l">297</TD><TD>                // adapted. For instance a subtree that maps to a MOF attribute</TD></TR><TR><TD CLASS="l">298</TD><TD>                // setting.</TD></TR><TR CLASS="z"><TD CLASS="l">299</TD><TD>                if (childNode.getNodeType() == Node.ELEMENT_NODE) {</TD></TR><TR CLASS="z"><TD CLASS="l">300</TD><TD>                        EMF2DOMAdapter attrAdapter = primGetExistingAdapter(childNode);</TD></TR><TR><TD CLASS="l">301</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">302</TD><TD>                        if (attrAdapter == null || attrAdapter.getNode() != getNode()) {</TD></TR><TR><TD CLASS="l">303</TD><TD>                                // If the node is adapted, but not by this adapter then remove</TD></TR><TR><TD CLASS="l">304</TD><TD>                                // it. This happens to non-object children when the parent tag</TD></TR><TR><TD CLASS="l">305</TD><TD>                                // name is changed.</TD></TR><TR CLASS="z"><TD CLASS="l">306</TD><TD>                                removeDOMAdapter(childNode, attrAdapter);</TD></TR><TR><TD CLASS="l">307</TD><TD> </TD></TR><TR><TD CLASS="l">308</TD><TD>                                if (fDebug) {</TD></TR><TR><TD CLASS="l">309</TD><TD>                                        org.eclipse.jem.util.logger.proxy.Logger.getLogger().logError(&#34;\tCHILD: Adding DOM adapter: &#34; + this); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">310</TD><TD>                                        org.eclipse.jem.util.logger.proxy.Logger.getLogger().logError(&#34;\t\tto: &#34; + childNode); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">311</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">312</TD><TD>                                primAddDOMAdapter(childNode, this);</TD></TR><TR><TD CLASS="l">313</TD><TD>                        }</TD></TR><TR><TD CLASS="l"><A NAME="1b">314</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">315</TD><TD>        }</TD></TR><TR><TD CLASS="l">316</TD><TD>        </TD></TR><TR><TD CLASS="l">317</TD><TD>        protected EMF2DOMAdapter primGetExistingAdapter(Node aNode) {</TD></TR><TR CLASS="z"><TD CLASS="l">318</TD><TD>                INodeNotifier sseNode = (INodeNotifier) aNode;</TD></TR><TR CLASS="z"><TD CLASS="l">319</TD><TD>                Collection adapters = sseNode.getAdapters();</TD></TR><TR CLASS="z"><TD CLASS="l">320</TD><TD>                for (Iterator iterator = adapters.iterator(); iterator.hasNext();) {</TD></TR><TR CLASS="z"><TD CLASS="l">321</TD><TD>                        INodeAdapter adapter = (INodeAdapter) iterator.next();</TD></TR><TR><TD CLASS="l">322</TD><TD>                        // First Check if it's an EMF2DOMAdapter</TD></TR><TR CLASS="z"><TD CLASS="l">323</TD><TD>                        if (adapter != null &amp;&amp; adapter.isAdapterForType(EMF2DOMAdapter.ADAPTER_CLASS)) {</TD></TR><TR><TD CLASS="l">324</TD><TD>                                // Cast to EMF2DOMAdapter</TD></TR><TR CLASS="z"><TD CLASS="l">325</TD><TD>                                EMF2DOMSSEAdapter e2DAdapter = (EMF2DOMSSEAdapter) adapter;</TD></TR><TR CLASS="z"><TD CLASS="l">326</TD><TD>                                Object adapterTarget = e2DAdapter.getTarget();</TD></TR><TR><TD CLASS="l">327</TD><TD>                                </TD></TR><TR><TD CLASS="l">328</TD><TD>                                //Handle the cases where either adapter's target is null </TD></TR><TR CLASS="z"><TD CLASS="l">329</TD><TD>                                if ((getTarget() == null) || (adapterTarget == null))</TD></TR><TR CLASS="z"><TD CLASS="l">330</TD><TD>                                        if (resourceClass != null &amp;&amp; resourceClass.equals(e2DAdapter.getResourceClass()))</TD></TR><TR CLASS="z"><TD CLASS="l">331</TD><TD>                                                return e2DAdapter;</TD></TR><TR><TD CLASS="l">332</TD><TD>                                        else</TD></TR><TR><TD CLASS="l">333</TD><TD>                                                continue;</TD></TR><TR><TD CLASS="l">334</TD><TD>                                </TD></TR><TR><TD CLASS="l">335</TD><TD>                                </TD></TR><TR><TD CLASS="l">336</TD><TD>                                // Check if target is an EMF resource</TD></TR><TR CLASS="z"><TD CLASS="l">337</TD><TD>                                if (getTarget() instanceof Resource) {</TD></TR><TR><TD CLASS="l">338</TD><TD>                                        /*</TD></TR><TR><TD CLASS="l">339</TD><TD>                                         * Now check if it's the right one (Multiple resources</TD></TR><TR><TD CLASS="l">340</TD><TD>                                         * could be attached)</TD></TR><TR><TD CLASS="l">341</TD><TD>                                         */</TD></TR><TR CLASS="z"><TD CLASS="l">342</TD><TD>                                        if (adapterTarget != null &amp;&amp; adapterTarget == getTarget()) {</TD></TR><TR CLASS="z"><TD CLASS="l">343</TD><TD>                                                return e2DAdapter;</TD></TR><TR><TD CLASS="l">344</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">345</TD><TD>                                }</TD></TR><TR><TD CLASS="l">346</TD><TD>                                else {</TD></TR><TR><TD CLASS="l">347</TD><TD>                                        // Check if targets are EObjects with the same resources</TD></TR><TR CLASS="z"><TD CLASS="l">348</TD><TD>                                        EObject myTarget = (EObject) getTarget();</TD></TR><TR><TD CLASS="l">349</TD><TD>                                        /*</TD></TR><TR><TD CLASS="l">350</TD><TD>                                         * Now check if it's the right one (Multiple resources could</TD></TR><TR><TD CLASS="l">351</TD><TD>                                         * be attached)</TD></TR><TR><TD CLASS="l">352</TD><TD>                                         */</TD></TR><TR CLASS="z"><TD CLASS="l">353</TD><TD>                                        if (adapterTarget != null &amp;&amp; ((EObject)adapterTarget).eResource() == myTarget.eResource()) {</TD></TR><TR CLASS="z"><TD CLASS="l">354</TD><TD>                                                return e2DAdapter;</TD></TR><TR><TD CLASS="l">355</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">356</TD><TD>                                }</TD></TR><TR><TD CLASS="l">357</TD><TD>                                </TD></TR><TR CLASS="z"><TD CLASS="l">358</TD><TD>                                if (adapterTarget instanceof EObject) {</TD></TR><TR CLASS="z"><TD CLASS="l">359</TD><TD>                                        if (((EObject) e2DAdapter.getTarget()).eResource() == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">360</TD><TD>                                                return e2DAdapter;</TD></TR><TR><TD CLASS="l">361</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">362</TD><TD>                                }</TD></TR><TR><TD CLASS="l">363</TD><TD>                        }</TD></TR><TR><TD CLASS="l">364</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="1c">365</A></TD><TD>                return null;</TD></TR><TR><TD CLASS="l">366</TD><TD>        }</TD></TR><TR><TD CLASS="l">367</TD><TD> </TD></TR><TR><TD CLASS="l">368</TD><TD>        protected String primGetIndentString(Node node) {</TD></TR><TR CLASS="z"><TD CLASS="l">369</TD><TD>                IStructuredDocument flatModel = ((IDOMNode) node).getStructuredDocument();</TD></TR><TR CLASS="z"><TD CLASS="l">370</TD><TD>                int nodeStartOff = ((IDOMNode) node).getStartOffset();</TD></TR><TR><TD CLASS="l">371</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">372</TD><TD>                int startOff = Math.max(0, nodeStartOff - 100);</TD></TR><TR CLASS="z"><TD CLASS="l">373</TD><TD>                int endOff = nodeStartOff;</TD></TR><TR><TD CLASS="l">374</TD><TD> </TD></TR><TR><TD CLASS="l">375</TD><TD>                try {</TD></TR><TR CLASS="z"><TD CLASS="l">376</TD><TD>                        String text = flatModel.get(startOff, endOff - startOff);</TD></TR><TR><TD CLASS="l">377</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">378</TD><TD>                        int inx = text.length() - 1;</TD></TR><TR CLASS="z"><TD CLASS="l">379</TD><TD>                        if (inx &gt;= 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">380</TD><TD>                                for (; inx &gt;= 0; inx--) {</TD></TR><TR CLASS="z"><TD CLASS="l">381</TD><TD>                                        char ch = text.charAt(inx);</TD></TR><TR CLASS="z"><TD CLASS="l">382</TD><TD>                                        if (Character.isWhitespace(ch) &amp;&amp; ch != '\n' &amp;&amp; ch != '\r') {</TD></TR><TR CLASS="z"><TD CLASS="l">383</TD><TD>                                                continue;</TD></TR><TR><TD CLASS="l">384</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">385</TD><TD>                                        inx++;</TD></TR><TR CLASS="z"><TD CLASS="l">386</TD><TD>                                        break;</TD></TR><TR><TD CLASS="l">387</TD><TD>                                }</TD></TR><TR><TD CLASS="l">388</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">389</TD><TD>                                return text.substring(inx);</TD></TR><TR><TD CLASS="l">390</TD><TD>                        }</TD></TR><TR><TD CLASS="l">391</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">392</TD><TD>                catch (BadLocationException ex) {</TD></TR><TR CLASS="z"><TD CLASS="l">393</TD><TD>                        Logger.logException(ex);</TD></TR><TR><TD CLASS="l">394</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="1d">395</A></TD><TD>                return &#34;&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">396</TD><TD>        }</TD></TR><TR><TD CLASS="l">397</TD><TD> </TD></TR><TR><TD CLASS="l">398</TD><TD>        protected void removeDOMAdapter(Node aNode, EMF2DOMAdapter anAdapter) {</TD></TR><TR CLASS="z"><TD CLASS="l">399</TD><TD>                ((IDOMNode) aNode).removeAdapter((INodeAdapter) anAdapter);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="1e">400</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">401</TD><TD> </TD></TR><TR><TD CLASS="l">402</TD><TD> </TD></TR><TR><TD CLASS="l">403</TD><TD>        protected void reorderDOMChild(Node parentNode, Node childNode, Node insertBeforeNode, Translator map) {</TD></TR><TR CLASS="z"><TD CLASS="l">404</TD><TD>                super.reorderDOMChild(parentNode, childNode, insertBeforeNode, map);</TD></TR><TR><TD CLASS="l">405</TD><TD>                // Since reordering deletes all the whitespace before the node, we</TD></TR><TR><TD CLASS="l">406</TD><TD>                // must indent .</TD></TR><TR CLASS="z"><TD CLASS="l">407</TD><TD>                if (insertBeforeNode != null &amp;&amp; insertBeforeNode.getNodeType() == Node.ELEMENT_NODE)</TD></TR><TR CLASS="z"><TD CLASS="l">408</TD><TD>                        indentStartTag(calcIndentString(insertBeforeNode), insertBeforeNode, map);</TD></TR><TR><TD CLASS="l">409</TD><TD>                else</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="1f">410</A></TD><TD>                        indentStartTag(calcIndentString(childNode), childNode, map);</TD></TR><TR CLASS="z"><TD CLASS="l">411</TD><TD>        }</TD></TR><TR><TD CLASS="l">412</TD><TD> </TD></TR><TR><TD CLASS="l">413</TD><TD>        protected void setEmptyTag(Element element) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="20">414</A></TD><TD>                ((IDOMElement) element).setEmptyTag(true);</TD></TR><TR CLASS="z"><TD CLASS="l">415</TD><TD>        }</TD></TR><TR><TD CLASS="l">416</TD><TD> </TD></TR><TR><TD CLASS="l">417</TD><TD>        public void updateDOM() {</TD></TR><TR CLASS="z"><TD CLASS="l">418</TD><TD>                if (!isNotificationEnabled())</TD></TR><TR CLASS="z"><TD CLASS="l">419</TD><TD>                        return;</TD></TR><TR><TD CLASS="l">420</TD><TD>                try {</TD></TR><TR CLASS="z"><TD CLASS="l">421</TD><TD>                        disableUndoManagementIfNecessary();</TD></TR><TR CLASS="z"><TD CLASS="l">422</TD><TD>                        primUpdateDOM();</TD></TR><TR><TD CLASS="l">423</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">424</TD><TD>                finally {</TD></TR><TR CLASS="z"><TD CLASS="l">425</TD><TD>                        enableUndoManagement();</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="b">426</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">427</TD><TD>        }</TD></TR><TR><TD CLASS="l">428</TD><TD> </TD></TR><TR><TD CLASS="l">429</TD><TD>        public Class getResourceClass() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="13">430</A></TD><TD>                return resourceClass;</TD></TR><TR><TD CLASS="l">431</TD><TD>        }</TD></TR><TR><TD CLASS="l">432</TD><TD> </TD></TR><TR><TD CLASS="l">433</TD><TD>        protected void initChildTranslators() {</TD></TR><TR CLASS="z"><TD CLASS="l">434</TD><TD>                if (fRenderer != null &amp;&amp; fRenderer.getResource() != null)</TD></TR><TR CLASS="z"><TD CLASS="l">435</TD><TD>                        resourceClass = fRenderer.getResource().getClass();</TD></TR><TR CLASS="z"><TD CLASS="l">436</TD><TD>                super.initChildTranslators();</TD></TR><TR CLASS="z"><TD CLASS="l">437</TD><TD>        }</TD></TR><TR><TD CLASS="l">438</TD><TD> </TD></TR><TR><TD CLASS="l">439</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="25.html">org.eclipse.wst.xml.core.internal.emf2xml</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/155.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/155.html
deleted file mode 100644
index 15cc45f..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/155.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="25.html">org.eclipse.wst.xml.core.internal.emf2xml</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">EMF2DOMSSERenderer.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>EMF2DOMSSERenderer.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/52)</TD><TD CLASS="h">0%   (0/958)</TD><TD CLASS="h">0%   (0/278)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">EMF2DOMSSERenderer</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/52)</TD><TD CLASS="h">0%   (0/958)</TD><TD CLASS="h">0%   (0/278)</TD></TR><TR><TD CLASS="f"><A HREF="#0">EMF2DOMSSERenderer (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">accessForRead (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#3">accessForWrite (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">batchModeEnd (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#5">batchModeStart (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">cacheSynchronizationStamp (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/14)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#7">createDOMTreeIfNecessary (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">createDocument (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/106)</TD><TD CLASS="h">0%   (0/27)</TD></TR><TR><TD CLASS="f"><A HREF="#9">createRootDOMAdapter (): EMF2DOMAdapter</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">deRegisterAsModelLifecycleListener (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#b">deRegisterAsModelStateListener (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#c">deregisterFromXMLModel (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/61)</TD><TD CLASS="h">0%   (0/18)</TD></TR><TR><TD CLASS="f"><A HREF="#d">doSave (OutputStream, Map): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/62)</TD><TD CLASS="h">0%   (0/16)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#e">getExistingDOMAdapter (Node): EMF2DOMAdapter</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/69)</TD><TD CLASS="h">0%   (0/17)</TD></TR><TR><TD CLASS="f"><A HREF="#f">getModelManager (): IModelManager</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#10">getModelManagerId (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/32)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#11">getResourceSet (): ResourceSet</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#12">getXMLModel (): IDOMModel</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#13">getXMLModelId (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#14">initializeXMLModel (IFile, boolean): IDOMModel</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/93)</TD><TD CLASS="h">0%   (0/23)</TD></TR><TR><TD CLASS="f"><A HREF="#15">isBatchMode (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#16">isModified (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#17">isShared (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/20)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#18">isSharedForWrite (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#19">loadDocument (InputStream, Map): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/34)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#1a">managesDOMAdapters (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#1b">modelAboutToBeChanged (IStructuredModel): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#1c">modelAboutToBeReinitialized (IStructuredModel): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#1d">modelAccessForWrite (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#1e">modelChanged (IStructuredModel): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/59)</TD><TD CLASS="h">0%   (0/17)</TD></TR><TR><TD CLASS="f"><A HREF="#1f">modelDirtyStateChanged (IStructuredModel, boolean): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/44)</TD><TD CLASS="h">0%   (0/11)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#20">modelReinitialized (IStructuredModel): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#21">modelResourceDeleted (IStructuredModel): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#22">modelResourceMoved (IStructuredModel, IStructuredModel): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#23">preDelete (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#24">preUnload (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#25">processPostModelEvent (ModelLifecycleEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#26">processPreModelEvent (ModelLifecycleEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/24)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#27">registerAsModelLifecycleListener (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#28">registerAsModelStateListener (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#29">releaseFromRead (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2a">releaseFromWrite (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#2b">removeDOMAdapter (Node, EMF2DOMAdapter): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2c">replaceDocumentType (String, String, String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/29)</TD><TD CLASS="h">0%   (0/10)</TD></TR><TR><TD CLASS="f"><A HREF="#2d">setBatchMode (boolean): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/16)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2e">setResource (TranslatorResource): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#2f">setRootNodeAdapterNotificationEnabled (boolean): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/21)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#30">setXMLModel (IDOMModel): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#31">setXMLModelId (String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#32">syncReferenceCounts (String, boolean): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/42)</TD><TD CLASS="h">0%   (0/11)</TD></TR><TR><TD CLASS="f"><A HREF="#33">useStreamsForIO (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#34">wasReverted (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2008 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> * IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">11</TD><TD> </TD></TR><TR><TD CLASS="l">12</TD><TD>package org.eclipse.wst.xml.core.internal.emf2xml;</TD></TR><TR><TD CLASS="l">13</TD><TD> </TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.io.FileNotFoundException;</TD></TR><TR><TD CLASS="l">16</TD><TD>import java.io.IOException;</TD></TR><TR><TD CLASS="l">17</TD><TD>import java.io.InputStream;</TD></TR><TR><TD CLASS="l">18</TD><TD>import java.io.OutputStream;</TD></TR><TR><TD CLASS="l">19</TD><TD>import java.io.UnsupportedEncodingException;</TD></TR><TR><TD CLASS="l">20</TD><TD>import java.util.ArrayList;</TD></TR><TR><TD CLASS="l">21</TD><TD>import java.util.Collection;</TD></TR><TR><TD CLASS="l">22</TD><TD>import java.util.Iterator;</TD></TR><TR><TD CLASS="l">23</TD><TD>import java.util.List;</TD></TR><TR><TD CLASS="l">24</TD><TD>import java.util.Map;</TD></TR><TR><TD CLASS="l">25</TD><TD> </TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.core.resources.IContainer;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.core.resources.IFile;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.core.resources.IFolder;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.core.resources.IProject;</TD></TR><TR><TD CLASS="l">30</TD><TD>import org.eclipse.core.runtime.CoreException;</TD></TR><TR><TD CLASS="l">31</TD><TD>import org.eclipse.emf.ecore.EObject;</TD></TR><TR><TD CLASS="l">32</TD><TD>import org.eclipse.emf.ecore.resource.Resource;</TD></TR><TR><TD CLASS="l">33</TD><TD>import org.eclipse.emf.ecore.resource.ResourceSet;</TD></TR><TR><TD CLASS="l">34</TD><TD>import org.eclipse.emf.ecore.util.EcoreUtil;</TD></TR><TR><TD CLASS="l">35</TD><TD>import org.eclipse.jem.util.emf.workbench.ProjectResourceSet;</TD></TR><TR><TD CLASS="l">36</TD><TD>import org.eclipse.jem.util.emf.workbench.WorkbenchResourceHelperBase;</TD></TR><TR><TD CLASS="l">37</TD><TD>import org.eclipse.wst.common.internal.emf.resource.EMF2DOMAdapter;</TD></TR><TR><TD CLASS="l">38</TD><TD>import org.eclipse.wst.common.internal.emf.resource.EMF2DOMRenderer;</TD></TR><TR><TD CLASS="l">39</TD><TD>import org.eclipse.wst.common.internal.emf.resource.TranslatorResource;</TD></TR><TR><TD CLASS="l">40</TD><TD>import org.eclipse.wst.common.internal.emf.utilities.DOMUtilities;</TD></TR><TR><TD CLASS="l">41</TD><TD>import org.eclipse.wst.common.internal.emfworkbench.WorkbenchResourceHelper;</TD></TR><TR><TD CLASS="l">42</TD><TD>import org.eclipse.wst.common.internal.emfworkbench.integration.ResourceSetWorkbenchEditSynchronizer;</TD></TR><TR><TD CLASS="l">43</TD><TD>import org.eclipse.wst.sse.core.StructuredModelManager;</TD></TR><TR><TD CLASS="l">44</TD><TD>import org.eclipse.wst.sse.core.internal.model.ModelLifecycleEvent;</TD></TR><TR><TD CLASS="l">45</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.IModelLifecycleListener;</TD></TR><TR><TD CLASS="l">46</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.IModelManager;</TD></TR><TR><TD CLASS="l">47</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.IModelStateListener;</TD></TR><TR><TD CLASS="l">48</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.INodeAdapter;</TD></TR><TR><TD CLASS="l">49</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;</TD></TR><TR><TD CLASS="l">50</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;</TD></TR><TR><TD CLASS="l">51</TD><TD>import org.eclipse.wst.xml.core.internal.Logger;</TD></TR><TR><TD CLASS="l">52</TD><TD>import org.eclipse.wst.xml.core.internal.document.DocumentTypeImpl;</TD></TR><TR><TD CLASS="l">53</TD><TD>import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;</TD></TR><TR><TD CLASS="l">54</TD><TD>import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;</TD></TR><TR><TD CLASS="l">55</TD><TD>import org.w3c.dom.Node;</TD></TR><TR><TD CLASS="l">56</TD><TD> </TD></TR><TR><TD CLASS="l">57</TD><TD> </TD></TR><TR><TD CLASS="l">58</TD><TD>public class EMF2DOMSSERenderer extends EMF2DOMRenderer implements IModelStateListener, IModelLifecycleListener {</TD></TR><TR><TD CLASS="l">59</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>        protected Object aboutToChangeNode = null;</TD></TR><TR><TD CLASS="l">61</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>        protected boolean isBatchChanges = false;</TD></TR><TR><TD CLASS="l">63</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>        private boolean isSaving = false;</TD></TR><TR><TD CLASS="l">65</TD><TD> </TD></TR><TR><TD CLASS="l">66</TD><TD>        private IModelManager modelManager;</TD></TR><TR><TD CLASS="l">67</TD><TD>        </TD></TR><TR><TD CLASS="l">68</TD><TD>        private Class resourceClass;</TD></TR><TR><TD CLASS="l">69</TD><TD> </TD></TR><TR><TD CLASS="l">70</TD><TD>        /** The XML DOM model */</TD></TR><TR><TD CLASS="l">71</TD><TD>        protected IDOMModel xmlModel;</TD></TR><TR><TD CLASS="l">72</TD><TD> </TD></TR><TR><TD CLASS="l">73</TD><TD>        /** Used internally; the unique id for the xml model */</TD></TR><TR><TD CLASS="l">74</TD><TD>        protected String xmlModelId;</TD></TR><TR><TD CLASS="l"><A NAME="0">75</A></TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>        protected boolean xmlModelReverted = false;</TD></TR><TR><TD CLASS="l">77</TD><TD> </TD></TR><TR><TD CLASS="l">78</TD><TD>        public EMF2DOMSSERenderer() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">79</A></TD><TD>                super();</TD></TR><TR CLASS="z"><TD CLASS="l">80</TD><TD>        }</TD></TR><TR><TD CLASS="l">81</TD><TD> </TD></TR><TR><TD CLASS="l">82</TD><TD>        public void accessForRead() {</TD></TR><TR CLASS="z"><TD CLASS="l">83</TD><TD>                if (!resource.isNew()) {</TD></TR><TR CLASS="z"><TD CLASS="l">84</TD><TD>                        String id = getModelManagerId();</TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>                        getModelManager().getExistingModelForRead(id);</TD></TR><TR><TD CLASS="l"><A NAME="3">86</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>        }</TD></TR><TR><TD CLASS="l">88</TD><TD> </TD></TR><TR><TD CLASS="l">89</TD><TD>        public void accessForWrite() {</TD></TR><TR CLASS="z"><TD CLASS="l">90</TD><TD>                modelAccessForWrite();</TD></TR><TR CLASS="z"><TD CLASS="l">91</TD><TD>        }</TD></TR><TR><TD CLASS="l">92</TD><TD> </TD></TR><TR><TD CLASS="l">93</TD><TD>        /**</TD></TR><TR><TD CLASS="l">94</TD><TD>         * see batchModelEnd</TD></TR><TR><TD CLASS="l"><A NAME="4">95</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">96</TD><TD>         */</TD></TR><TR><TD CLASS="l">97</TD><TD> </TD></TR><TR><TD CLASS="l">98</TD><TD>        public void batchModeEnd() {</TD></TR><TR CLASS="z"><TD CLASS="l">99</TD><TD>                getXMLModel().changedModel();</TD></TR><TR CLASS="z"><TD CLASS="l">100</TD><TD>                setRootNodeAdapterNotificationEnabled(true);</TD></TR><TR CLASS="z"><TD CLASS="l">101</TD><TD>                isBatchChanges = false;</TD></TR><TR CLASS="z"><TD CLASS="l">102</TD><TD>        }</TD></TR><TR><TD CLASS="l">103</TD><TD> </TD></TR><TR><TD CLASS="l">104</TD><TD>        /**</TD></TR><TR><TD CLASS="l">105</TD><TD>         * batchModeStart and batchModeEnd is a pair that controls notifications,</TD></TR><TR><TD CLASS="l">106</TD><TD>         * and tread access. They should always be called in a try/finally block.</TD></TR><TR><TD CLASS="l">107</TD><TD>         * </TD></TR><TR><TD CLASS="l">108</TD><TD>         * setBatchModel begins the processing where notifications are not sent</TD></TR><TR><TD CLASS="l">109</TD><TD>         * out on each change, but saved up until the endBatchMode called.</TD></TR><TR><TD CLASS="l">110</TD><TD>         * </TD></TR><TR><TD CLASS="l">111</TD><TD>         * This pair of calls can also, indirectly, &#34;lock&#34; the DOM Model to access</TD></TR><TR><TD CLASS="l">112</TD><TD>         * from only one thread, so it should not be locked for long periods of</TD></TR><TR><TD CLASS="l">113</TD><TD>         * time. That's also why it is important to have the endBatchMode in a</TD></TR><TR><TD CLASS="l">114</TD><TD>         * finally block to be sure it is always called, or the DOM will be left</TD></TR><TR><TD CLASS="l">115</TD><TD>         * in a locked, unusable, state and only shortly away from severere</TD></TR><TR><TD CLASS="l">116</TD><TD>         * program error.</TD></TR><TR><TD CLASS="l">117</TD><TD>         * </TD></TR><TR><TD CLASS="l">118</TD><TD>         * &lt;pre&gt;&lt;code&gt;</TD></TR><TR><TD CLASS="l">119</TD><TD>         * Example</TD></TR><TR><TD CLASS="l">120</TD><TD>         * &lt;/code&gt;</TD></TR><TR><TD CLASS="l">121</TD><TD>         *  </TD></TR><TR><TD CLASS="l">122</TD><TD>         *  try { </TD></TR><TR><TD CLASS="l">123</TD><TD>         *                  batchModelStart();</TD></TR><TR><TD CLASS="l">124</TD><TD>         *                  ...do a some work ...</TD></TR><TR><TD CLASS="l">125</TD><TD>         *                  }</TD></TR><TR><TD CLASS="l">126</TD><TD>         *          finally {</TD></TR><TR><TD CLASS="l">127</TD><TD>         *                  endBatchMode();</TD></TR><TR><TD CLASS="l">128</TD><TD>         *                  }</TD></TR><TR><TD CLASS="l">129</TD><TD>         *  </TD></TR><TR><TD CLASS="l"><A NAME="5">130</A></TD><TD>         *  </TD></TR><TR><TD CLASS="l">131</TD><TD>         * &lt;/pre&gt;</TD></TR><TR><TD CLASS="l">132</TD><TD>         */</TD></TR><TR><TD CLASS="l">133</TD><TD>        public void batchModeStart() {</TD></TR><TR CLASS="z"><TD CLASS="l">134</TD><TD>                isBatchChanges = true;</TD></TR><TR CLASS="z"><TD CLASS="l">135</TD><TD>                getXMLModel().aboutToChangeModel();</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="6">136</A></TD><TD>                setRootNodeAdapterNotificationEnabled(false);</TD></TR><TR CLASS="z"><TD CLASS="l">137</TD><TD>        }</TD></TR><TR><TD CLASS="l">138</TD><TD> </TD></TR><TR><TD CLASS="l">139</TD><TD>        private void cacheSynchronizationStamp() {</TD></TR><TR CLASS="z"><TD CLASS="l">140</TD><TD>                IFile file = WorkbenchResourceHelper.getFile(resource);</TD></TR><TR CLASS="z"><TD CLASS="l">141</TD><TD>                if (file != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">142</TD><TD>                        if (xmlModel != null)</TD></TR><TR CLASS="z"><TD CLASS="l">143</TD><TD>                                xmlModel.resetSynchronizationStamp(file);</TD></TR><TR><TD CLASS="l">144</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">145</TD><TD>        }</TD></TR><TR><TD CLASS="l">146</TD><TD> </TD></TR><TR><TD CLASS="l">147</TD><TD>        /**</TD></TR><TR><TD CLASS="l">148</TD><TD>         * Create a new Document given</TD></TR><TR><TD CLASS="l"><A NAME="8">149</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">150</TD><TD>         * @aResource.</TD></TR><TR><TD CLASS="l">151</TD><TD>         */</TD></TR><TR><TD CLASS="l">152</TD><TD>        protected void createDocument() {</TD></TR><TR CLASS="z"><TD CLASS="l">153</TD><TD>                TranslatorResource res = getResource();</TD></TR><TR CLASS="z"><TD CLASS="l">154</TD><TD>                res.setDefaults();</TD></TR><TR CLASS="z"><TD CLASS="l">155</TD><TD>                IFile file = WorkbenchResourceHelper.getFile(resource);</TD></TR><TR CLASS="z"><TD CLASS="l">156</TD><TD>                InputStream is = DOMUtilities.createHeaderInputStream(res.getDoctype(), res.getPublicId(), res.getSystemId());</TD></TR><TR CLASS="z"><TD CLASS="l">157</TD><TD>                if (is == null)</TD></TR><TR CLASS="z"><TD CLASS="l">158</TD><TD>                        return;</TD></TR><TR><TD CLASS="l">159</TD><TD>                try {</TD></TR><TR><TD CLASS="l">160</TD><TD>                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">161</TD><TD>                                List folders = new ArrayList();</TD></TR><TR CLASS="z"><TD CLASS="l">162</TD><TD>                                IContainer container = file.getParent();</TD></TR><TR CLASS="z"><TD CLASS="l">163</TD><TD>                                while (null != container &amp;&amp; !container.exists() &amp;&amp; container instanceof IFolder) {</TD></TR><TR CLASS="z"><TD CLASS="l">164</TD><TD>                                        folders.add(container);</TD></TR><TR CLASS="z"><TD CLASS="l">165</TD><TD>                                        container = container.getParent();</TD></TR><TR><TD CLASS="l">166</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">167</TD><TD>                                IFolder folder = null;</TD></TR><TR CLASS="z"><TD CLASS="l">168</TD><TD>                                for (int i = 0; i &lt; folders.size(); i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">169</TD><TD>                                        folder = (IFolder) folders.get(i);</TD></TR><TR CLASS="z"><TD CLASS="l">170</TD><TD>                                        folder.create(true, true, null);</TD></TR><TR><TD CLASS="l">171</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">172</TD><TD>                                file.create(is, true, null);</TD></TR><TR CLASS="z"><TD CLASS="l">173</TD><TD>                                file.setLocal(true, 1, null);</TD></TR><TR><TD CLASS="l">174</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">175</TD><TD>                        catch (CoreException e1) {</TD></TR><TR CLASS="z"><TD CLASS="l">176</TD><TD>                                Logger.logException(e1);</TD></TR><TR><TD CLASS="l">177</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">178</TD><TD>                        finally {</TD></TR><TR CLASS="z"><TD CLASS="l">179</TD><TD>                                if (null != is) {</TD></TR><TR CLASS="z"><TD CLASS="l">180</TD><TD>                                        is.close();</TD></TR><TR><TD CLASS="l">181</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">182</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">183</TD><TD>                        initializeXMLModel(file, resource.getWriteCount() != 0);</TD></TR><TR><TD CLASS="l">184</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">185</TD><TD>                catch (IOException ex) {</TD></TR><TR CLASS="z"><TD CLASS="l">186</TD><TD>                        Logger.log(Logger.ERROR, &#34;IWAE0017E Unexpected IO exception occurred creating xml document&#34;);//$NON-NLS-1$</TD></TR><TR><TD CLASS="l"><A NAME="7">187</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">188</TD><TD>        }</TD></TR><TR><TD CLASS="l">189</TD><TD> </TD></TR><TR><TD CLASS="l">190</TD><TD>        protected void createDOMTreeIfNecessary() {</TD></TR><TR CLASS="z"><TD CLASS="l">191</TD><TD>                if (needsToCreateDOM)</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="9">192</A></TD><TD>                        createDOMTree();</TD></TR><TR CLASS="z"><TD CLASS="l">193</TD><TD>        }</TD></TR><TR><TD CLASS="l">194</TD><TD> </TD></TR><TR><TD CLASS="l">195</TD><TD>        protected EMF2DOMAdapter createRootDOMAdapter() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="a">196</A></TD><TD>                return new EMF2DOMSSEAdapter(getResource(), document, this, getResource().getRootTranslator());</TD></TR><TR><TD CLASS="l">197</TD><TD>        }</TD></TR><TR><TD CLASS="l">198</TD><TD> </TD></TR><TR><TD CLASS="l">199</TD><TD>        public void deRegisterAsModelLifecycleListener() {</TD></TR><TR CLASS="z"><TD CLASS="l">200</TD><TD>                if (xmlModel != null)</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="b">201</A></TD><TD>                        xmlModel.removeModelLifecycleListener(this);</TD></TR><TR CLASS="z"><TD CLASS="l">202</TD><TD>        }</TD></TR><TR><TD CLASS="l">203</TD><TD> </TD></TR><TR><TD CLASS="l">204</TD><TD>        public void deRegisterAsModelStateListener() {</TD></TR><TR CLASS="z"><TD CLASS="l">205</TD><TD>                if (xmlModel != null)</TD></TR><TR CLASS="z"><TD CLASS="l">206</TD><TD>                        xmlModel.removeModelStateListener(this);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="c">207</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">208</TD><TD> </TD></TR><TR><TD CLASS="l">209</TD><TD>        private void deregisterFromXMLModel() {</TD></TR><TR><TD CLASS="l">210</TD><TD>                </TD></TR><TR CLASS="z"><TD CLASS="l">211</TD><TD>                deRegisterAsModelStateListener();</TD></TR><TR CLASS="z"><TD CLASS="l">212</TD><TD>                deRegisterAsModelLifecycleListener();</TD></TR><TR><TD CLASS="l">213</TD><TD>                // This try/catch block is a hack to fix defect 204114. This occurs</TD></TR><TR><TD CLASS="l">214</TD><TD>                // because</TD></TR><TR><TD CLASS="l">215</TD><TD>                // the model manager plugin is shut down and unloaded before the j2ee</TD></TR><TR><TD CLASS="l">216</TD><TD>                // plugin.</TD></TR><TR><TD CLASS="l">217</TD><TD>                // Calling getModelManager() can result in a class cast exception that</TD></TR><TR><TD CLASS="l">218</TD><TD>                // should</TD></TR><TR><TD CLASS="l">219</TD><TD>                // be ignored.</TD></TR><TR><TD CLASS="l">220</TD><TD>                // ModelManager mgr = null;</TD></TR><TR><TD CLASS="l">221</TD><TD>                try {</TD></TR><TR CLASS="z"><TD CLASS="l">222</TD><TD>                        getModelManager();</TD></TR><TR><TD CLASS="l">223</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">224</TD><TD>                catch (ClassCastException exc) {</TD></TR><TR CLASS="z"><TD CLASS="l">225</TD><TD>                        return;</TD></TR><TR><TD CLASS="l">226</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">227</TD><TD>                if (xmlModel != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">228</TD><TD>                        int writeCount = resource.getWriteCount();</TD></TR><TR CLASS="z"><TD CLASS="l">229</TD><TD>                        int readCount = resource.getReadCount();</TD></TR><TR CLASS="z"><TD CLASS="l">230</TD><TD>                        for (int i = 0; i &lt; writeCount; i++)</TD></TR><TR CLASS="z"><TD CLASS="l">231</TD><TD>                                xmlModel.releaseFromEdit();</TD></TR><TR CLASS="z"><TD CLASS="l">232</TD><TD>                        for (int ii = 0; ii &lt; readCount; ii++)</TD></TR><TR CLASS="z"><TD CLASS="l">233</TD><TD>                                xmlModel.releaseFromRead();</TD></TR><TR><TD CLASS="l">234</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">235</TD><TD>                EMF2DOMAdapter adapter = (EMF2DOMAdapter) EcoreUtil.getAdapter(resource.eAdapters(), EMF2DOMAdapter.ADAPTER_CLASS);</TD></TR><TR CLASS="z"><TD CLASS="l">236</TD><TD>                if (adapter != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">237</TD><TD>                        adapter.removeAdapters(adapter.getNode());</TD></TR><TR><TD CLASS="l">238</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">239</TD><TD>                xmlModel = null;</TD></TR><TR CLASS="z"><TD CLASS="l">240</TD><TD>                xmlModelId = null;</TD></TR><TR CLASS="z"><TD CLASS="l">241</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="d">242</A></TD><TD> </TD></TR><TR><TD CLASS="l">243</TD><TD>        public void doSave(OutputStream outputStream, Map options) throws IOException {</TD></TR><TR><TD CLASS="l">244</TD><TD> </TD></TR><TR><TD CLASS="l">245</TD><TD>                try {</TD></TR><TR CLASS="z"><TD CLASS="l">246</TD><TD>                        isSaving = true;</TD></TR><TR CLASS="z"><TD CLASS="l">247</TD><TD>                        if (null != outputStream) {</TD></TR><TR CLASS="z"><TD CLASS="l">248</TD><TD>                                throw new RuntimeException(this.getClass().getName() + &#34; should not use an OutputStream for saving&#34;);} //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">249</TD><TD>                        createDOMTreeIfNecessary();</TD></TR><TR CLASS="z"><TD CLASS="l">250</TD><TD>                        ResourceSetWorkbenchEditSynchronizer synchronizer = (ResourceSetWorkbenchEditSynchronizer) ((ProjectResourceSet) resource.getResourceSet()).getSynchronizer();</TD></TR><TR CLASS="z"><TD CLASS="l">251</TD><TD>                        IFile aFile = WorkbenchResourceHelper.getFile(resource);</TD></TR><TR><TD CLASS="l">252</TD><TD>                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">253</TD><TD>                                synchronizer.preSave(aFile, resource);</TD></TR><TR CLASS="z"><TD CLASS="l">254</TD><TD>                                xmlModel.save(aFile);</TD></TR><TR><TD CLASS="l">255</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">256</TD><TD>                        catch (CoreException ex) {</TD></TR><TR CLASS="z"><TD CLASS="l">257</TD><TD>                                synchronizer.removeFromRecentlySavedList(aFile);</TD></TR><TR CLASS="z"><TD CLASS="l">258</TD><TD>                                Logger.logException(ex);</TD></TR><TR><TD CLASS="l">259</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">260</TD><TD>                        cacheSynchronizationStamp();</TD></TR><TR><TD CLASS="l">261</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">262</TD><TD>                finally {</TD></TR><TR CLASS="z"><TD CLASS="l">263</TD><TD>                        isSaving = false;</TD></TR><TR CLASS="z"><TD CLASS="l">264</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">265</TD><TD>        }</TD></TR><TR><TD CLASS="l">266</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="e">267</A></TD><TD>        public EMF2DOMAdapter getExistingDOMAdapter(Node node) {</TD></TR><TR><TD CLASS="l">268</TD><TD>                //IDOMNode xNode = (IDOMNode) node;</TD></TR><TR><TD CLASS="l">269</TD><TD>                //return (EMF2DOMSSEAdapter) xNode.getAdapterFor(EMF2DOMAdapter.ADAPTER_CLASS);</TD></TR><TR><TD CLASS="l">270</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">271</TD><TD>                INodeNotifier sseNode = (INodeNotifier) node;</TD></TR><TR CLASS="z"><TD CLASS="l">272</TD><TD>                Collection adapters = sseNode.getAdapters();</TD></TR><TR CLASS="z"><TD CLASS="l">273</TD><TD>                for (Iterator iterator = adapters.iterator(); iterator.hasNext();) {</TD></TR><TR CLASS="z"><TD CLASS="l">274</TD><TD>                        INodeAdapter adapter = (INodeAdapter) iterator.next();</TD></TR><TR><TD CLASS="l">275</TD><TD>                        // First Check if it's an EMF2DOMAdapter</TD></TR><TR CLASS="z"><TD CLASS="l">276</TD><TD>                        if (adapter != null &amp;&amp; adapter.isAdapterForType(EMF2DOMAdapter.ADAPTER_CLASS)) {</TD></TR><TR><TD CLASS="l">277</TD><TD>                                // Cast to EMF2DOMSSEAdapter</TD></TR><TR CLASS="z"><TD CLASS="l">278</TD><TD>                                EMF2DOMSSEAdapter e2DAdapter = (EMF2DOMSSEAdapter) adapter;</TD></TR><TR><TD CLASS="l">279</TD><TD>                                //Handle the cases where either adapter's target is null </TD></TR><TR><TD CLASS="l">280</TD><TD>                                //Use the resourceClass to make sure the resource type is identical</TD></TR><TR CLASS="z"><TD CLASS="l">281</TD><TD>                                if (getResource() == null || e2DAdapter.getTarget() == null)</TD></TR><TR CLASS="z"><TD CLASS="l">282</TD><TD>                                        if(resourceClass.equals(e2DAdapter.getResourceClass()))</TD></TR><TR CLASS="z"><TD CLASS="l">283</TD><TD>                                                return e2DAdapter;</TD></TR><TR><TD CLASS="l">284</TD><TD>                                        else</TD></TR><TR><TD CLASS="l">285</TD><TD>                                                continue;</TD></TR><TR><TD CLASS="l">286</TD><TD>                                </TD></TR><TR><TD CLASS="l">287</TD><TD>                                // First check if targets are resources</TD></TR><TR CLASS="z"><TD CLASS="l">288</TD><TD>                                if (e2DAdapter.getTarget() instanceof Resource) {</TD></TR><TR><TD CLASS="l">289</TD><TD>                                        /*</TD></TR><TR><TD CLASS="l">290</TD><TD>                                         * Now check if it's the right one (Multiple resources</TD></TR><TR><TD CLASS="l">291</TD><TD>                                         * could be attached)</TD></TR><TR><TD CLASS="l">292</TD><TD>                                         */</TD></TR><TR CLASS="z"><TD CLASS="l">293</TD><TD>                                        if (e2DAdapter.getTarget() == getResource()) {</TD></TR><TR CLASS="z"><TD CLASS="l">294</TD><TD>                                                return e2DAdapter;</TD></TR><TR><TD CLASS="l">295</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">296</TD><TD>                                } else {</TD></TR><TR><TD CLASS="l">297</TD><TD>                                        // Check if targets are EObjects with the same resources</TD></TR><TR CLASS="z"><TD CLASS="l">298</TD><TD>                                        TranslatorResource myTarget = getResource();</TD></TR><TR CLASS="z"><TD CLASS="l">299</TD><TD>                                        EObject adapterTarget = (EObject) e2DAdapter.getTarget();</TD></TR><TR><TD CLASS="l">300</TD><TD>                                        /*</TD></TR><TR><TD CLASS="l">301</TD><TD>                                         * Now check if it's the right one (Multiple resources could</TD></TR><TR><TD CLASS="l">302</TD><TD>                                         * be attached)</TD></TR><TR><TD CLASS="l">303</TD><TD>                                         */</TD></TR><TR CLASS="z"><TD CLASS="l">304</TD><TD>                                        if (adapterTarget.eResource() == myTarget || adapterTarget.eResource() == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">305</TD><TD>                                                return e2DAdapter;</TD></TR><TR><TD CLASS="l">306</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">307</TD><TD>                                }</TD></TR><TR><TD CLASS="l">308</TD><TD>                        }</TD></TR><TR><TD CLASS="l">309</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">310</TD><TD>                return null;</TD></TR><TR><TD CLASS="l"><A NAME="f">311</A></TD><TD>        </TD></TR><TR><TD CLASS="l">312</TD><TD>        }</TD></TR><TR><TD CLASS="l">313</TD><TD> </TD></TR><TR><TD CLASS="l">314</TD><TD>        protected IModelManager getModelManager() {</TD></TR><TR CLASS="z"><TD CLASS="l">315</TD><TD>                if (modelManager == null)</TD></TR><TR CLASS="z"><TD CLASS="l">316</TD><TD>                        modelManager = StructuredModelManager.getModelManager();</TD></TR><TR CLASS="z"><TD CLASS="l">317</TD><TD>                return modelManager;</TD></TR><TR><TD CLASS="l">318</TD><TD>        }</TD></TR><TR><TD CLASS="l">319</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="10">320</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">321</TD><TD>         * Return id used to key the XML resource in the XML ModelManager.</TD></TR><TR><TD CLASS="l">322</TD><TD>         */</TD></TR><TR><TD CLASS="l">323</TD><TD>        protected String getModelManagerId() {</TD></TR><TR CLASS="z"><TD CLASS="l">324</TD><TD>                if (xmlModelId == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">325</TD><TD>                        IFile file = WorkbenchResourceHelper.getFile(getResource());</TD></TR><TR CLASS="z"><TD CLASS="l">326</TD><TD>                        if (file != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">327</TD><TD>                                xmlModelId = getModelManager().calculateId(file);</TD></TR><TR><TD CLASS="l">328</TD><TD>                        }</TD></TR><TR><TD CLASS="l">329</TD><TD>                        else {</TD></TR><TR CLASS="z"><TD CLASS="l">330</TD><TD>                                xmlModelId = resource.getURI() + Long.toString(System.currentTimeMillis());</TD></TR><TR><TD CLASS="l">331</TD><TD>                        }</TD></TR><TR><TD CLASS="l">332</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="11">333</A></TD><TD>                return xmlModelId;</TD></TR><TR><TD CLASS="l">334</TD><TD>        }</TD></TR><TR><TD CLASS="l">335</TD><TD> </TD></TR><TR><TD CLASS="l">336</TD><TD>        protected ResourceSet getResourceSet() {</TD></TR><TR CLASS="z"><TD CLASS="l">337</TD><TD>                return resource == null ? null : resource.getResourceSet();</TD></TR><TR><TD CLASS="l">338</TD><TD>        }</TD></TR><TR><TD CLASS="l">339</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="12">340</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">341</TD><TD>         * Return the DOM model for this resource.</TD></TR><TR><TD CLASS="l">342</TD><TD>         */</TD></TR><TR><TD CLASS="l">343</TD><TD>        public IDOMModel getXMLModel() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="13">344</A></TD><TD>                return xmlModel;</TD></TR><TR><TD CLASS="l">345</TD><TD>        }</TD></TR><TR><TD CLASS="l">346</TD><TD> </TD></TR><TR><TD CLASS="l">347</TD><TD>        public String getXMLModelId() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="14">348</A></TD><TD>                return xmlModelId;</TD></TR><TR><TD CLASS="l">349</TD><TD>        }        </TD></TR><TR><TD CLASS="l">350</TD><TD>        </TD></TR><TR><TD CLASS="l">351</TD><TD>        private IDOMModel initializeXMLModel(IFile file, boolean forWrite) throws UnsupportedEncodingException, IOException {</TD></TR><TR CLASS="z"><TD CLASS="l">352</TD><TD>                if (file == null || !file.exists())</TD></TR><TR CLASS="z"><TD CLASS="l">353</TD><TD>                        throw new FileNotFoundException((file == null) ? &#34;null&#34; : file.getFullPath().toOSString()); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">354</TD><TD>                try {</TD></TR><TR CLASS="z"><TD CLASS="l">355</TD><TD>                        IModelManager manager = getModelManager();</TD></TR><TR CLASS="z"><TD CLASS="l">356</TD><TD>                        String id = manager.calculateId(file);                        </TD></TR><TR CLASS="z"><TD CLASS="l">357</TD><TD>                        if (forWrite) {</TD></TR><TR CLASS="z"><TD CLASS="l">358</TD><TD>                                IDOMModel mod = (IDOMModel)manager.getExistingModelForEdit(id);</TD></TR><TR CLASS="z"><TD CLASS="l">359</TD><TD>                                if (mod == null)</TD></TR><TR CLASS="z"><TD CLASS="l">360</TD><TD>                                        setXMLModel((IDOMModel) manager.getModelForEdit(file));</TD></TR><TR><TD CLASS="l">361</TD><TD>                                else {</TD></TR><TR CLASS="z"><TD CLASS="l">362</TD><TD>                                        setXMLModel(mod);</TD></TR><TR><TD CLASS="l">363</TD><TD>                                }</TD></TR><TR><TD CLASS="l">364</TD><TD>                        }</TD></TR><TR><TD CLASS="l">365</TD><TD>                        else {</TD></TR><TR CLASS="z"><TD CLASS="l">366</TD><TD>                                IDOMModel mod = (IDOMModel)manager.getExistingModelForRead(id);</TD></TR><TR CLASS="z"><TD CLASS="l">367</TD><TD>                                if (mod == null)</TD></TR><TR CLASS="z"><TD CLASS="l">368</TD><TD>                                        setXMLModel((IDOMModel) manager.getModelForRead(file));</TD></TR><TR><TD CLASS="l">369</TD><TD>                                else {</TD></TR><TR CLASS="z"><TD CLASS="l">370</TD><TD>                                        setXMLModel(mod);</TD></TR><TR><TD CLASS="l">371</TD><TD>                                }</TD></TR><TR><TD CLASS="l">372</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">373</TD><TD>                        setXMLModelId(getXMLModel().getId());</TD></TR><TR CLASS="z"><TD CLASS="l">374</TD><TD>                        needsToCreateDOM = false;</TD></TR><TR><TD CLASS="l">375</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">376</TD><TD>                catch (CoreException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">377</TD><TD>                        Logger.logException(e);</TD></TR><TR CLASS="z"><TD CLASS="l">378</TD><TD>                        return null;</TD></TR><TR><TD CLASS="l">379</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">380</TD><TD>                String id = getXMLModel().getId();</TD></TR><TR CLASS="z"><TD CLASS="l">381</TD><TD>                syncReferenceCounts(id, forWrite);</TD></TR><TR CLASS="z"><TD CLASS="l">382</TD><TD>                if (xmlModel != null)</TD></TR><TR CLASS="z"><TD CLASS="l">383</TD><TD>                        document = xmlModel.getDocument();</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="15">384</A></TD><TD>                return xmlModel;</TD></TR><TR><TD CLASS="l">385</TD><TD>        }</TD></TR><TR><TD CLASS="l">386</TD><TD> </TD></TR><TR><TD CLASS="l">387</TD><TD>        public boolean isBatchMode() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="16">388</A></TD><TD>                return isBatchChanges;</TD></TR><TR><TD CLASS="l">389</TD><TD>        }</TD></TR><TR><TD CLASS="l">390</TD><TD> </TD></TR><TR><TD CLASS="l">391</TD><TD>        public boolean isModified() {</TD></TR><TR CLASS="z"><TD CLASS="l">392</TD><TD>                return (getXMLModel() != null &amp;&amp; getXMLModel().isDirty());</TD></TR><TR><TD CLASS="l"><A NAME="17">393</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">394</TD><TD> </TD></TR><TR><TD CLASS="l">395</TD><TD>        public boolean isShared() {</TD></TR><TR><TD CLASS="l">396</TD><TD>                </TD></TR><TR CLASS="z"><TD CLASS="l">397</TD><TD>                if( xmlModel == null) { //resource could be in process of being unloaded - check with model manager</TD></TR><TR CLASS="z"><TD CLASS="l">398</TD><TD>                        String id = getModelManagerId();</TD></TR><TR CLASS="z"><TD CLASS="l">399</TD><TD>                        return getModelManager().isShared(id);</TD></TR><TR><TD CLASS="l">400</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">401</TD><TD>                if (getResourceSet() == null)</TD></TR><TR CLASS="z"><TD CLASS="l">402</TD><TD>                        return false;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="18">403</A></TD><TD>                return xmlModel.isShared();</TD></TR><TR><TD CLASS="l">404</TD><TD>        }</TD></TR><TR><TD CLASS="l">405</TD><TD> </TD></TR><TR><TD CLASS="l">406</TD><TD>        public boolean isSharedForWrite() {</TD></TR><TR CLASS="z"><TD CLASS="l">407</TD><TD>                if (getResourceSet() == null || xmlModel == null)</TD></TR><TR CLASS="z"><TD CLASS="l">408</TD><TD>                        return false;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="19">409</A></TD><TD>                return xmlModel.isSharedForEdit();</TD></TR><TR><TD CLASS="l">410</TD><TD>        }</TD></TR><TR><TD CLASS="l">411</TD><TD> </TD></TR><TR><TD CLASS="l">412</TD><TD>        protected void loadDocument(InputStream in, Map options) throws IOException {</TD></TR><TR CLASS="z"><TD CLASS="l">413</TD><TD>                if (null != in) {</TD></TR><TR CLASS="z"><TD CLASS="l">414</TD><TD>                        throw new RuntimeException(this.getClass().getName() + &#34; should not use an InputStream for loading&#34;);} //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">415</TD><TD>                IFile file = WorkbenchResourceHelper.getFile(resource);</TD></TR><TR CLASS="z"><TD CLASS="l">416</TD><TD>                initializeXMLModel(file, (resource.getWriteCount() != 0));</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="1a">417</A></TD><TD>                cacheSynchronizationStamp();</TD></TR><TR CLASS="z"><TD CLASS="l">418</TD><TD>        }</TD></TR><TR><TD CLASS="l">419</TD><TD> </TD></TR><TR><TD CLASS="l">420</TD><TD>        protected boolean managesDOMAdapters() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="1b">421</A></TD><TD>                return false;</TD></TR><TR><TD CLASS="l">422</TD><TD>        }</TD></TR><TR><TD CLASS="l">423</TD><TD> </TD></TR><TR><TD CLASS="l">424</TD><TD>        public void modelAboutToBeChanged(IStructuredModel model) {</TD></TR><TR CLASS="z"><TD CLASS="l">425</TD><TD>                if (model.getStructuredDocument() != null)</TD></TR><TR CLASS="z"><TD CLASS="l">426</TD><TD>                        aboutToChangeNode = model.getStructuredDocument().getFirstStructuredDocumentRegion();</TD></TR><TR CLASS="z"><TD CLASS="l">427</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="1c">428</A></TD><TD> </TD></TR><TR><TD CLASS="l">429</TD><TD>        public void modelAboutToBeReinitialized(IStructuredModel structuredModel) {</TD></TR><TR><TD CLASS="l">430</TD><TD>                // TODO Auto-generated method stub</TD></TR><TR><TD CLASS="l"><A NAME="1d">431</A></TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">432</TD><TD>        }</TD></TR><TR><TD CLASS="l">433</TD><TD> </TD></TR><TR><TD CLASS="l">434</TD><TD>        private void modelAccessForWrite() {</TD></TR><TR CLASS="z"><TD CLASS="l">435</TD><TD>                String id = getModelManagerId();</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="1e">436</A></TD><TD>                getModelManager().getExistingModelForEdit(id);</TD></TR><TR CLASS="z"><TD CLASS="l">437</TD><TD>        }</TD></TR><TR><TD CLASS="l">438</TD><TD> </TD></TR><TR><TD CLASS="l">439</TD><TD>        public void modelChanged(IStructuredModel model) {</TD></TR><TR CLASS="z"><TD CLASS="l">440</TD><TD>                if (isBatchChanges)</TD></TR><TR CLASS="z"><TD CLASS="l">441</TD><TD>                        return;</TD></TR><TR><TD CLASS="l">442</TD><TD>                try {</TD></TR><TR CLASS="z"><TD CLASS="l">443</TD><TD>                        if (aboutToChangeNode != null &amp;&amp; model.getStructuredDocument() != null</TD></TR><TR CLASS="z"><TD CLASS="l">444</TD><TD>                                        &amp;&amp; model.getStructuredDocument().getFirstStructuredDocumentRegion() != aboutToChangeNode) {</TD></TR><TR CLASS="z"><TD CLASS="l">445</TD><TD>                                String id = getModelManagerId();</TD></TR><TR CLASS="z"><TD CLASS="l">446</TD><TD>                                IStructuredModel tempModel = null;</TD></TR><TR><TD CLASS="l">447</TD><TD>                                try {</TD></TR><TR CLASS="z"><TD CLASS="l">448</TD><TD>                                        tempModel = getModelManager().getExistingModelForEdit(id);</TD></TR><TR CLASS="z"><TD CLASS="l">449</TD><TD>                                        xmlModelReverted = true;</TD></TR><TR CLASS="z"><TD CLASS="l">450</TD><TD>                                        resource.unload();</TD></TR><TR CLASS="z"><TD CLASS="l">451</TD><TD>                                } finally {</TD></TR><TR CLASS="z"><TD CLASS="l">452</TD><TD>                                        if (tempModel != null &amp;&amp; (tempModel.getReferenceCountForEdit() &gt; 0)) {</TD></TR><TR CLASS="z"><TD CLASS="l">453</TD><TD>                                                tempModel.releaseFromEdit();</TD></TR><TR><TD CLASS="l">454</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">455</TD><TD>                                }</TD></TR><TR><TD CLASS="l">456</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">457</TD><TD>                } finally {</TD></TR><TR CLASS="z"><TD CLASS="l">458</TD><TD>                        aboutToChangeNode = null;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="1f">459</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">460</TD><TD>        } </TD></TR><TR><TD CLASS="l">461</TD><TD>        </TD></TR><TR><TD CLASS="l">462</TD><TD>        public void modelDirtyStateChanged(IStructuredModel model, boolean isDirty) {</TD></TR><TR CLASS="z"><TD CLASS="l">463</TD><TD>                if (!isDirty &amp;&amp; resource.isModified()) { // The XMLModel was saved</TD></TR><TR CLASS="z"><TD CLASS="l">464</TD><TD>                        resource.setModified(false);</TD></TR><TR CLASS="z"><TD CLASS="l">465</TD><TD>                        long stamp = WorkbenchResourceHelper.computeModificationStamp(resource);</TD></TR><TR CLASS="z"><TD CLASS="l">466</TD><TD>                        WorkbenchResourceHelper.setSynhronizationStamp(resource, stamp);</TD></TR><TR CLASS="z"><TD CLASS="l">467</TD><TD>                        IProject proj = WorkbenchResourceHelper.getProject(resource);</TD></TR><TR CLASS="z"><TD CLASS="l">468</TD><TD>                        ResourceSetWorkbenchEditSynchronizer synchronizer = (ResourceSetWorkbenchEditSynchronizer) ((ProjectResourceSet) WorkbenchResourceHelperBase.getResourceSet(proj)).getSynchronizer();</TD></TR><TR CLASS="z"><TD CLASS="l">469</TD><TD>                        IFile aFile = WorkbenchResourceHelper.getFile(resource);</TD></TR><TR CLASS="z"><TD CLASS="l">470</TD><TD>                        synchronizer.preSave(aFile, resource);</TD></TR><TR><TD CLASS="l">471</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">472</TD><TD>                if (isDirty)</TD></TR><TR CLASS="z"><TD CLASS="l">473</TD><TD>                        resource.setModified(true);</TD></TR><TR CLASS="z"><TD CLASS="l">474</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="20">475</A></TD><TD> </TD></TR><TR><TD CLASS="l">476</TD><TD>        public void modelReinitialized(IStructuredModel structuredModel) {</TD></TR><TR><TD CLASS="l">477</TD><TD>                // TODO Auto-generated method stub</TD></TR><TR><TD CLASS="l">478</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="21">479</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">480</TD><TD> </TD></TR><TR><TD CLASS="l">481</TD><TD>        public void modelResourceDeleted(IStructuredModel model) {</TD></TR><TR><TD CLASS="l">482</TD><TD>                // Do nothing</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="22">483</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">484</TD><TD> </TD></TR><TR><TD CLASS="l">485</TD><TD>        public void modelResourceMoved(IStructuredModel oldModel, IStructuredModel newModel) {</TD></TR><TR><TD CLASS="l">486</TD><TD>                // Do nothing</TD></TR><TR CLASS="z"><TD CLASS="l">487</TD><TD>        }</TD></TR><TR><TD CLASS="l">488</TD><TD> </TD></TR><TR><TD CLASS="l">489</TD><TD>        /**</TD></TR><TR><TD CLASS="l"><A NAME="23">490</A></TD><TD>         * This method is called just prior to being removed from the ResourceSet.</TD></TR><TR><TD CLASS="l">491</TD><TD>         * Ensure that all reference counts to the XMLModel are removed.</TD></TR><TR><TD CLASS="l">492</TD><TD>         */</TD></TR><TR><TD CLASS="l">493</TD><TD>        public void preDelete() {</TD></TR><TR CLASS="z"><TD CLASS="l">494</TD><TD>                if (resource.isLoaded())</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="24">495</A></TD><TD>                        deregisterFromXMLModel();</TD></TR><TR CLASS="z"><TD CLASS="l">496</TD><TD>        }</TD></TR><TR><TD CLASS="l">497</TD><TD> </TD></TR><TR><TD CLASS="l">498</TD><TD>        public void preUnload() {</TD></TR><TR CLASS="z"><TD CLASS="l">499</TD><TD>                deregisterFromXMLModel();</TD></TR><TR CLASS="z"><TD CLASS="l">500</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="25">501</A></TD><TD> </TD></TR><TR><TD CLASS="l">502</TD><TD>        public void processPostModelEvent(ModelLifecycleEvent event) {</TD></TR><TR><TD CLASS="l">503</TD><TD>                // TODO Auto-generated method stub</TD></TR><TR><TD CLASS="l"><A NAME="26">504</A></TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">505</TD><TD>        }</TD></TR><TR><TD CLASS="l">506</TD><TD> </TD></TR><TR><TD CLASS="l">507</TD><TD>        public void processPreModelEvent(ModelLifecycleEvent event) {</TD></TR><TR CLASS="z"><TD CLASS="l">508</TD><TD>                if (!isSaving) {</TD></TR><TR CLASS="z"><TD CLASS="l">509</TD><TD>                        if (event.getType() == ModelLifecycleEvent.MODEL_SAVED) {</TD></TR><TR CLASS="z"><TD CLASS="l">510</TD><TD>                                ResourceSetWorkbenchEditSynchronizer synchronizer = (ResourceSetWorkbenchEditSynchronizer) ((ProjectResourceSet) resource.getResourceSet()).getSynchronizer();</TD></TR><TR CLASS="z"><TD CLASS="l">511</TD><TD>                                IFile aFile = WorkbenchResourceHelper.getFile(resource);</TD></TR><TR CLASS="z"><TD CLASS="l">512</TD><TD>                                synchronizer.preSave(aFile, resource);</TD></TR><TR><TD CLASS="l">513</TD><TD>                        }</TD></TR><TR><TD CLASS="l">514</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="27">515</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">516</TD><TD> </TD></TR><TR><TD CLASS="l">517</TD><TD> </TD></TR><TR><TD CLASS="l">518</TD><TD>        public void registerAsModelLifecycleListener() {</TD></TR><TR CLASS="z"><TD CLASS="l">519</TD><TD>                this.xmlModel.addModelLifecycleListener(this);</TD></TR><TR CLASS="z"><TD CLASS="l">520</TD><TD>        }</TD></TR><TR><TD CLASS="l">521</TD><TD> </TD></TR><TR><TD CLASS="l">522</TD><TD>        /**</TD></TR><TR><TD CLASS="l"><A NAME="28">523</A></TD><TD>         * Insert the method's description here. Creation date: (9/7/2001 10:49:53</TD></TR><TR><TD CLASS="l">524</TD><TD>         * AM)</TD></TR><TR><TD CLASS="l">525</TD><TD>         */</TD></TR><TR><TD CLASS="l">526</TD><TD>        public void registerAsModelStateListener() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="29">527</A></TD><TD>                this.xmlModel.addModelStateListener(this);</TD></TR><TR CLASS="z"><TD CLASS="l">528</TD><TD>        }</TD></TR><TR><TD CLASS="l">529</TD><TD> </TD></TR><TR><TD CLASS="l">530</TD><TD>        public void releaseFromRead() {</TD></TR><TR CLASS="z"><TD CLASS="l">531</TD><TD>                if (xmlModel != null)</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2a">532</A></TD><TD>                        xmlModel.releaseFromRead();</TD></TR><TR CLASS="z"><TD CLASS="l">533</TD><TD>        }</TD></TR><TR><TD CLASS="l">534</TD><TD> </TD></TR><TR><TD CLASS="l">535</TD><TD>        public void releaseFromWrite() {</TD></TR><TR CLASS="z"><TD CLASS="l">536</TD><TD>                if (xmlModel != null)</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2b">537</A></TD><TD>                        xmlModel.releaseFromEdit();</TD></TR><TR CLASS="z"><TD CLASS="l">538</TD><TD>        }</TD></TR><TR><TD CLASS="l">539</TD><TD> </TD></TR><TR><TD CLASS="l">540</TD><TD>        public void removeDOMAdapter(Node aNode, EMF2DOMAdapter anAdapter) {</TD></TR><TR CLASS="z"><TD CLASS="l">541</TD><TD>                ((IDOMNode) aNode).removeAdapter((EMF2DOMSSEAdapter) anAdapter);</TD></TR><TR CLASS="z"><TD CLASS="l">542</TD><TD>        }</TD></TR><TR><TD CLASS="l">543</TD><TD> </TD></TR><TR><TD CLASS="l">544</TD><TD>        /*</TD></TR><TR><TD CLASS="l">545</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l">546</TD><TD>         * </TD></TR><TR><TD CLASS="l"><A NAME="2c">547</A></TD><TD>         * @see org.eclipse.jem.internal.util.emf.xml.EMF2DOMRenderer#replaceDocumentType(java.lang.String,</TD></TR><TR><TD CLASS="l">548</TD><TD>         *      java.lang.String, java.lang.String)</TD></TR><TR><TD CLASS="l">549</TD><TD>         */</TD></TR><TR><TD CLASS="l">550</TD><TD>        public void replaceDocumentType(String docTypeName, String publicId, String systemId) {</TD></TR><TR CLASS="z"><TD CLASS="l">551</TD><TD>                if (document == null)</TD></TR><TR CLASS="z"><TD CLASS="l">552</TD><TD>                        return;</TD></TR><TR CLASS="z"><TD CLASS="l">553</TD><TD>                DocumentTypeImpl docType = (DocumentTypeImpl) document.getDoctype();</TD></TR><TR CLASS="z"><TD CLASS="l">554</TD><TD>                if (docType == null)</TD></TR><TR CLASS="z"><TD CLASS="l">555</TD><TD>                        return;</TD></TR><TR CLASS="z"><TD CLASS="l">556</TD><TD>                if (publicId == null &amp;&amp; systemId == null)</TD></TR><TR CLASS="z"><TD CLASS="l">557</TD><TD>                        document.removeChild(docType);</TD></TR><TR><TD CLASS="l">558</TD><TD>                else {</TD></TR><TR CLASS="z"><TD CLASS="l">559</TD><TD>                        docType.setPublicId(publicId);</TD></TR><TR CLASS="z"><TD CLASS="l">560</TD><TD>                        docType.setSystemId(systemId);</TD></TR><TR><TD CLASS="l">561</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">562</TD><TD>        }</TD></TR><TR><TD CLASS="l">563</TD><TD> </TD></TR><TR><TD CLASS="l">564</TD><TD>        /**</TD></TR><TR><TD CLASS="l">565</TD><TD>         * @deprecated use batchModeStart and BatchModeEnd instead even if you do</TD></TR><TR><TD CLASS="l">566</TD><TD>         *             not use batchModelStart/End, you still need to use the</TD></TR><TR><TD CLASS="l">567</TD><TD>         *             try/finally pattern documented there.</TD></TR><TR><TD CLASS="l">568</TD><TD>         */</TD></TR><TR><TD CLASS="l">569</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="2d">570</A></TD><TD>        public void setBatchMode(boolean isBatch) {</TD></TR><TR><TD CLASS="l">571</TD><TD> </TD></TR><TR><TD CLASS="l">572</TD><TD>                // This is some extra processing for clients to know they may be using</TD></TR><TR><TD CLASS="l">573</TD><TD>                // incorrectly</TD></TR><TR CLASS="z"><TD CLASS="l">574</TD><TD>                if (isBatch) {</TD></TR><TR CLASS="z"><TD CLASS="l">575</TD><TD>                        if (isBatchChanges) {</TD></TR><TR CLASS="z"><TD CLASS="l">576</TD><TD>                                Logger.log(Logger.INFO_DEBUG, &#34;setBatch was set to true when it was already true. This can be an indication of invalid calling order&#34;); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">577</TD><TD>                        }</TD></TR><TR><TD CLASS="l">578</TD><TD>                }</TD></TR><TR><TD CLASS="l">579</TD><TD> </TD></TR><TR><TD CLASS="l">580</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">581</TD><TD>                if (isBatch) {</TD></TR><TR CLASS="z"><TD CLASS="l">582</TD><TD>                        batchModeStart();</TD></TR><TR><TD CLASS="l">583</TD><TD>                }</TD></TR><TR><TD CLASS="l">584</TD><TD>                else {</TD></TR><TR CLASS="z"><TD CLASS="l">585</TD><TD>                        batchModeEnd();</TD></TR><TR><TD CLASS="l"><A NAME="2f">586</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">587</TD><TD>        }</TD></TR><TR><TD CLASS="l">588</TD><TD> </TD></TR><TR><TD CLASS="l">589</TD><TD>        private void setRootNodeAdapterNotificationEnabled(boolean b) {</TD></TR><TR CLASS="z"><TD CLASS="l">590</TD><TD>                EObject root = resource.getRootObject();</TD></TR><TR CLASS="z"><TD CLASS="l">591</TD><TD>                if (root != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">592</TD><TD>                        EMF2DOMAdapter adapter = (EMF2DOMAdapter) EcoreUtil.getExistingAdapter(root, EMF2DOMAdapter.ADAPTER_CLASS);</TD></TR><TR CLASS="z"><TD CLASS="l">593</TD><TD>                        if (adapter != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">594</TD><TD>                                adapter.setNotificationEnabled(b);</TD></TR><TR CLASS="z"><TD CLASS="l">595</TD><TD>                                if (b)</TD></TR><TR CLASS="z"><TD CLASS="l">596</TD><TD>                                        adapter.updateDOM();</TD></TR><TR><TD CLASS="l">597</TD><TD>                        }</TD></TR><TR><TD CLASS="l">598</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">599</TD><TD>        }</TD></TR><TR><TD CLASS="l">600</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="30">601</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">602</TD><TD>         * Return the DOM model for this resource.</TD></TR><TR><TD CLASS="l">603</TD><TD>         */</TD></TR><TR><TD CLASS="l">604</TD><TD>        public void setXMLModel(IDOMModel xmlModel) {</TD></TR><TR CLASS="z"><TD CLASS="l">605</TD><TD>                deRegisterAsModelStateListener();</TD></TR><TR CLASS="z"><TD CLASS="l">606</TD><TD>                deRegisterAsModelLifecycleListener();</TD></TR><TR CLASS="z"><TD CLASS="l">607</TD><TD>                this.xmlModel = xmlModel;</TD></TR><TR CLASS="z"><TD CLASS="l">608</TD><TD>                registerAsModelStateListener();</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="31">609</A></TD><TD>                registerAsModelLifecycleListener();</TD></TR><TR CLASS="z"><TD CLASS="l">610</TD><TD>        }</TD></TR><TR><TD CLASS="l">611</TD><TD> </TD></TR><TR><TD CLASS="l">612</TD><TD>        public void setXMLModelId(String id) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="32">613</A></TD><TD>                xmlModelId = id;</TD></TR><TR CLASS="z"><TD CLASS="l">614</TD><TD>        }</TD></TR><TR><TD CLASS="l">615</TD><TD> </TD></TR><TR><TD CLASS="l">616</TD><TD>        private void syncReferenceCounts(String id, boolean forWrite) {</TD></TR><TR CLASS="z"><TD CLASS="l">617</TD><TD>                int editIndex = 0, readIndex = 0;</TD></TR><TR CLASS="z"><TD CLASS="l">618</TD><TD>                if (forWrite)</TD></TR><TR CLASS="z"><TD CLASS="l">619</TD><TD>                        editIndex++;</TD></TR><TR><TD CLASS="l">620</TD><TD>                else</TD></TR><TR CLASS="z"><TD CLASS="l">621</TD><TD>                        readIndex++;</TD></TR><TR CLASS="z"><TD CLASS="l">622</TD><TD>                int writeCount = resource.getWriteCount();</TD></TR><TR CLASS="z"><TD CLASS="l">623</TD><TD>                int readCount = resource.getReadCount();</TD></TR><TR CLASS="z"><TD CLASS="l">624</TD><TD>                for (int i = writeCount; i &gt; editIndex; i--)</TD></TR><TR CLASS="z"><TD CLASS="l">625</TD><TD>                        modelManager.getExistingModelForEdit(id);</TD></TR><TR CLASS="z"><TD CLASS="l">626</TD><TD>                for (int i = readCount; i &gt; readIndex; i--)</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="33">627</A></TD><TD>                        modelManager.getExistingModelForRead(id);</TD></TR><TR CLASS="z"><TD CLASS="l">628</TD><TD>        }</TD></TR><TR><TD CLASS="l">629</TD><TD> </TD></TR><TR><TD CLASS="l">630</TD><TD>        public boolean useStreamsForIO() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="34">631</A></TD><TD>                return false;</TD></TR><TR><TD CLASS="l">632</TD><TD>        }</TD></TR><TR><TD CLASS="l">633</TD><TD> </TD></TR><TR><TD CLASS="l">634</TD><TD>        public boolean wasReverted() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2e">635</A></TD><TD>                return xmlModelReverted;</TD></TR><TR><TD CLASS="l">636</TD><TD>        }</TD></TR><TR><TD CLASS="l">637</TD><TD> </TD></TR><TR><TD CLASS="l">638</TD><TD>        public void setResource(TranslatorResource resource) {</TD></TR><TR CLASS="z"><TD CLASS="l">639</TD><TD>                super.setResource(resource);</TD></TR><TR CLASS="z"><TD CLASS="l">640</TD><TD>                if (resource != null)</TD></TR><TR CLASS="z"><TD CLASS="l">641</TD><TD>                        resourceClass = resource.getClass();</TD></TR><TR CLASS="z"><TD CLASS="l">642</TD><TD>        }</TD></TR><TR><TD CLASS="l">643</TD><TD> </TD></TR><TR><TD CLASS="l">644</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="25.html">org.eclipse.wst.xml.core.internal.emf2xml</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/156.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/156.html
deleted file mode 100644
index 10ddb97..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/156.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="25.html">org.eclipse.wst.xml.core.internal.emf2xml</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">EMF2DOMSSERendererFactory.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>EMF2DOMSSERendererFactory.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/5)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">EMF2DOMSSERendererFactory</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#0">&lt;static initializer&gt;</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">EMF2DOMSSERendererFactory (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#3">createRenderer (): Renderer</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/1)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> * IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">11</TD><TD> </TD></TR><TR><TD CLASS="l">12</TD><TD>package org.eclipse.wst.xml.core.internal.emf2xml;</TD></TR><TR><TD CLASS="l">13</TD><TD> </TD></TR><TR><TD CLASS="l">14</TD><TD>import org.eclipse.wst.common.internal.emf.resource.Renderer;</TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.wst.common.internal.emf.resource.RendererFactory;</TD></TR><TR><TD CLASS="l">16</TD><TD> </TD></TR><TR><TD CLASS="l">17</TD><TD>/**</TD></TR><TR><TD CLASS="l"><A NAME="0">18</A></TD><TD> * @author schacher</TD></TR><TR><TD CLASS="l">19</TD><TD> */</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">20</A></TD><TD>public class EMF2DOMSSERendererFactory extends RendererFactory {</TD></TR><TR><TD CLASS="l">21</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">22</TD><TD>        public static final EMF2DOMSSERendererFactory INSTANCE = new EMF2DOMSSERendererFactory();</TD></TR><TR><TD CLASS="l">23</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">24</TD><TD>        public EMF2DOMSSERendererFactory() {</TD></TR><TR><TD CLASS="l">25</TD><TD>                // Default constructor</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">26</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">27</TD><TD> </TD></TR><TR><TD CLASS="l">28</TD><TD> </TD></TR><TR><TD CLASS="l">29</TD><TD>        public Renderer createRenderer() {</TD></TR><TR CLASS="z"><TD CLASS="l">30</TD><TD>                return new EMF2DOMSSERenderer();</TD></TR><TR><TD CLASS="l">31</TD><TD>        }</TD></TR><TR><TD CLASS="l">32</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="25.html">org.eclipse.wst.xml.core.internal.emf2xml</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/157.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/157.html
deleted file mode 100644
index 46711a8..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/157.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="26.html">org.eclipse.wst.xml.core.internal.provisional.contentmodel</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">NullContentModel.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>NullContentModel.java</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/17)</TD><TD CLASS="h">0%   (0/50)</TD><TD CLASS="h">0%   (0/19)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">NullContentModel</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/23)</TD><TD CLASS="h">0%   (0/9)</TD></TR><TR><TD CLASS="f"><A HREF="#0">NullContentModel (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">getElements (): CMNamedNodeMap</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#3">getEntities (): CMNamedNodeMap</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">getNamespace (): CMNamespace</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#5">getNodeName (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">getNodeType (): int</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#7">getProperty (String): Object</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">supports (String): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#9">NullContentModel$NullCMNamedNodeMap</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#9">NullContentModel$NullCMNamedNodeMap (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#b">getLength (): int</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#c">getNamedItem (String): CMNode</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#d">item (int): CMNode</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#e">iterator (): Iterator</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#f">NullContentModel$NullIterator</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/14)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#f">NullContentModel$NullIterator (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#11">hasNext (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#12">next (): Object</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#13">remove (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/1)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2005 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.core.internal.provisional.contentmodel;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.util.Iterator;</TD></TR><TR><TD CLASS="l">16</TD><TD>import java.util.NoSuchElementException;</TD></TR><TR><TD CLASS="l">17</TD><TD> </TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.wst.xml.core.internal.contentmodel.CMNamespace;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;</TD></TR><TR><TD CLASS="l">22</TD><TD> </TD></TR><TR><TD CLASS="l">23</TD><TD> </TD></TR><TR><TD CLASS="l">24</TD><TD>/**</TD></TR><TR><TD CLASS="l">25</TD><TD> * This class can be used to intialize specific variables that need a content</TD></TR><TR><TD CLASS="l">26</TD><TD> * model, until the true content model is available. This prevents having to</TD></TR><TR><TD CLASS="l"><A NAME="9">27</A></TD><TD> * do lots of null checks.</TD></TR><TR><TD CLASS="l">28</TD><TD> */</TD></TR><TR><TD CLASS="l"><A NAME="b">29</A></TD><TD>public class NullContentModel implements CMDocument {</TD></TR><TR><TD CLASS="l">30</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">31</TD><TD>        private static class NullCMNamedNodeMap implements CMNamedNodeMap {</TD></TR><TR><TD CLASS="l">32</TD><TD>                public int getLength() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="c">33</A></TD><TD>                        return 0;</TD></TR><TR><TD CLASS="l">34</TD><TD>                }</TD></TR><TR><TD CLASS="l">35</TD><TD> </TD></TR><TR><TD CLASS="l">36</TD><TD>                public CMNode getNamedItem(String name) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="d">37</A></TD><TD>                        return null;</TD></TR><TR><TD CLASS="l">38</TD><TD>                }</TD></TR><TR><TD CLASS="l">39</TD><TD> </TD></TR><TR><TD CLASS="l">40</TD><TD>                public CMNode item(int index) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="e">41</A></TD><TD>                        return null;</TD></TR><TR><TD CLASS="l">42</TD><TD>                }</TD></TR><TR><TD CLASS="l">43</TD><TD> </TD></TR><TR><TD CLASS="l">44</TD><TD>                public Iterator iterator() {</TD></TR><TR CLASS="z"><TD CLASS="l">45</TD><TD>                        return new NullIterator();</TD></TR><TR><TD CLASS="l">46</TD><TD>                }</TD></TR><TR><TD CLASS="l"><A NAME="f">47</A></TD><TD> </TD></TR><TR><TD CLASS="l">48</TD><TD>        }</TD></TR><TR><TD CLASS="l">49</TD><TD> </TD></TR><TR><TD CLASS="l">50</TD><TD>        private static class NullIterator implements Iterator {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="11">51</A></TD><TD>                public NullIterator() {</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                }</TD></TR><TR><TD CLASS="l">53</TD><TD> </TD></TR><TR><TD CLASS="l">54</TD><TD>                public boolean hasNext() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="12">55</A></TD><TD>                        return false;</TD></TR><TR><TD CLASS="l">56</TD><TD>                }</TD></TR><TR><TD CLASS="l">57</TD><TD> </TD></TR><TR><TD CLASS="l">58</TD><TD>                public Object next() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="13">59</A></TD><TD>                        throw new NoSuchElementException();</TD></TR><TR><TD CLASS="l">60</TD><TD>                }</TD></TR><TR><TD CLASS="l">61</TD><TD> </TD></TR><TR><TD CLASS="l">62</TD><TD>                public void remove() {</TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>                        throw new UnsupportedOperationException(&#34;can not remove regions via iterator&#34;); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">64</TD><TD> </TD></TR><TR><TD CLASS="l">65</TD><TD>                }</TD></TR><TR><TD CLASS="l"><A NAME="0">66</A></TD><TD> </TD></TR><TR><TD CLASS="l">67</TD><TD>        }</TD></TR><TR><TD CLASS="l">68</TD><TD> </TD></TR><TR><TD CLASS="l">69</TD><TD>        public NullContentModel() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">70</A></TD><TD>                super();</TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>        }</TD></TR><TR><TD CLASS="l">72</TD><TD> </TD></TR><TR><TD CLASS="l">73</TD><TD>        public CMNamedNodeMap getElements() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">74</A></TD><TD>                return new NullCMNamedNodeMap();</TD></TR><TR><TD CLASS="l">75</TD><TD>        }</TD></TR><TR><TD CLASS="l">76</TD><TD> </TD></TR><TR><TD CLASS="l">77</TD><TD>        public CMNamedNodeMap getEntities() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">78</A></TD><TD>                return new NullCMNamedNodeMap();</TD></TR><TR><TD CLASS="l">79</TD><TD>        }</TD></TR><TR><TD CLASS="l">80</TD><TD> </TD></TR><TR><TD CLASS="l">81</TD><TD>        public CMNamespace getNamespace() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="5">82</A></TD><TD>                return null;</TD></TR><TR><TD CLASS="l">83</TD><TD>        }</TD></TR><TR><TD CLASS="l">84</TD><TD> </TD></TR><TR><TD CLASS="l">85</TD><TD>        public String getNodeName() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="6">86</A></TD><TD>                return null;</TD></TR><TR><TD CLASS="l">87</TD><TD>        }</TD></TR><TR><TD CLASS="l">88</TD><TD> </TD></TR><TR><TD CLASS="l">89</TD><TD>        public int getNodeType() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="7">90</A></TD><TD>                return 0;</TD></TR><TR><TD CLASS="l">91</TD><TD>        }</TD></TR><TR><TD CLASS="l">92</TD><TD> </TD></TR><TR><TD CLASS="l">93</TD><TD>        public Object getProperty(String propertyName) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="8">94</A></TD><TD>                return null;</TD></TR><TR><TD CLASS="l">95</TD><TD>        }</TD></TR><TR><TD CLASS="l">96</TD><TD> </TD></TR><TR><TD CLASS="l">97</TD><TD>        public boolean supports(String propertyName) {</TD></TR><TR CLASS="z"><TD CLASS="l">98</TD><TD>                return false;</TD></TR><TR><TD CLASS="l">99</TD><TD>        }</TD></TR><TR><TD CLASS="l">100</TD><TD> </TD></TR><TR><TD CLASS="l">101</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="26.html">org.eclipse.wst.xml.core.internal.provisional.contentmodel</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/158.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/158.html
deleted file mode 100644
index 4f7ef73..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/158.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="27.html">org.eclipse.wst.xml.core.internal.provisional.format</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">CommentNodeFormatter.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>CommentNodeFormatter.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/217)</TD><TD CLASS="h">0%   (0/36)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">CommentNodeFormatter</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/217)</TD><TD CLASS="h">0%   (0/36)</TD></TR><TR><TD CLASS="f"><A HREF="#0">CommentNodeFormatter (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">adjustIndentations (String, String, String): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/143)</TD><TD CLASS="h">0%   (0/21)</TD></TR><TR><TD CLASS="f"><A HREF="#3">formatNode (IDOMNode, IStructuredFormatContraints): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/71)</TD><TD CLASS="h">0%   (0/14)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2007 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.core.internal.provisional.format;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.wst.sse.core.internal.format.IStructuredFormatContraints;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.wst.sse.core.utils.StringUtils;</TD></TR><TR><TD CLASS="l"><A NAME="0">17</A></TD><TD>import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.w3c.dom.Node;</TD></TR><TR><TD CLASS="l">19</TD><TD> </TD></TR><TR><TD CLASS="l">20</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">21</TD><TD>public class CommentNodeFormatter extends NodeFormatter {</TD></TR><TR><TD CLASS="l"><A NAME="2">22</A></TD><TD>        static private final String CR = &#34;\r&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">23</TD><TD>        static private final String LF = &#34;\n&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">24</TD><TD> </TD></TR><TR><TD CLASS="l">25</TD><TD>        protected String adjustIndentations(String aString, String lineIndent, String singleIndent) {</TD></TR><TR CLASS="z"><TD CLASS="l">26</TD><TD>                String result = new String();</TD></TR><TR><TD CLASS="l">27</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">28</TD><TD>                int indexOfLineDelimiter = StringUtils.indexOfLineDelimiter(aString);</TD></TR><TR CLASS="z"><TD CLASS="l">29</TD><TD>                result = aString.substring(0, indexOfLineDelimiter);</TD></TR><TR CLASS="z"><TD CLASS="l">30</TD><TD>                while (indexOfLineDelimiter != -1) {</TD></TR><TR><TD CLASS="l">31</TD><TD>                        // Before find the next LineDelimiter, we have to figure out the</TD></TR><TR><TD CLASS="l">32</TD><TD>                        // size of the current LineDelimiter</TD></TR><TR><TD CLASS="l">33</TD><TD>                        // so we can figure out how many bytes to skip before finding the</TD></TR><TR><TD CLASS="l">34</TD><TD>                        // next LineDelimiter.</TD></TR><TR><TD CLASS="l">35</TD><TD>                        // Otherwise, we may treat the LF in CRLF as the next</TD></TR><TR><TD CLASS="l">36</TD><TD>                        // LineDelimiter.</TD></TR><TR CLASS="z"><TD CLASS="l">37</TD><TD>                        int lineDelimiterSize = 1;</TD></TR><TR CLASS="z"><TD CLASS="l">38</TD><TD>                        if (aString.length() &gt;= indexOfLineDelimiter + 2 &amp;&amp; aString.substring(indexOfLineDelimiter, indexOfLineDelimiter + 1).compareTo(CR) == 0 &amp;&amp; aString.substring(indexOfLineDelimiter + 1, indexOfLineDelimiter + 2).compareTo(LF) == 0)</TD></TR><TR CLASS="z"><TD CLASS="l">39</TD><TD>                                lineDelimiterSize = 2;</TD></TR><TR><TD CLASS="l">40</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>                        int indexOfNextLineDelimiter = StringUtils.indexOfLineDelimiter(aString, indexOfLineDelimiter + lineDelimiterSize);</TD></TR><TR CLASS="z"><TD CLASS="l">42</TD><TD>                        int indexOfNonblank = StringUtils.indexOfNonblank(aString, indexOfLineDelimiter);</TD></TR><TR><TD CLASS="l">43</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>                        if (indexOfNonblank != -1) {</TD></TR><TR CLASS="z"><TD CLASS="l">45</TD><TD>                                if (indexOfNextLineDelimiter == -1) {</TD></TR><TR><TD CLASS="l">46</TD><TD>                                        // last line; copy till the end</TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>                                        result += lineIndent + singleIndent + aString.substring(indexOfNonblank);</TD></TR><TR CLASS="z"><TD CLASS="l">48</TD><TD>                                } else if (indexOfNextLineDelimiter != -1 &amp;&amp; indexOfNextLineDelimiter &lt; indexOfNonblank) {</TD></TR><TR><TD CLASS="l">49</TD><TD>                                        // blank line; just add a indent</TD></TR><TR CLASS="z"><TD CLASS="l">50</TD><TD>                                        result += lineIndent + singleIndent;</TD></TR><TR><TD CLASS="l">51</TD><TD>                                } else {</TD></TR><TR><TD CLASS="l">52</TD><TD>                                        // copy all text between indexOfNonblank and</TD></TR><TR><TD CLASS="l">53</TD><TD>                                        // indexOfNextLineDelimiter</TD></TR><TR CLASS="z"><TD CLASS="l">54</TD><TD>                                        result += lineIndent + singleIndent + aString.substring(indexOfNonblank, indexOfNextLineDelimiter);</TD></TR><TR><TD CLASS="l">55</TD><TD>                                }</TD></TR><TR><TD CLASS="l">56</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>                                indexOfLineDelimiter = indexOfNextLineDelimiter;</TD></TR><TR><TD CLASS="l">58</TD><TD>                        } else {</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>                                if (indexOfNextLineDelimiter == -1) {</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                                        result += lineIndent;</TD></TR><TR><TD CLASS="l">61</TD><TD>                                } else {</TD></TR><TR><TD CLASS="l">62</TD><TD>                                        // blank line; just add a indent</TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>                                        result += lineIndent + singleIndent;</TD></TR><TR><TD CLASS="l">64</TD><TD>                                }</TD></TR><TR><TD CLASS="l">65</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                                indexOfLineDelimiter = indexOfNextLineDelimiter;</TD></TR><TR><TD CLASS="l">67</TD><TD>                        }</TD></TR><TR><TD CLASS="l">68</TD><TD>                }</TD></TR><TR><TD CLASS="l">69</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">70</A></TD><TD>                return result;</TD></TR><TR><TD CLASS="l">71</TD><TD>        }</TD></TR><TR><TD CLASS="l">72</TD><TD> </TD></TR><TR><TD CLASS="l">73</TD><TD>        protected void formatNode(IDOMNode node, IStructuredFormatContraints formatContraints) {</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>                if (node != null) {</TD></TR><TR><TD CLASS="l">75</TD><TD>                        // lineDelimiterFound means multi line comment</TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>                        String nodeValue = node.getNodeValue();</TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>                        boolean lineDelimiterFoundInComment = StringUtils.containsLineDelimiter(nodeValue);</TD></TR><TR><TD CLASS="l">78</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">79</TD><TD>                        if (lineDelimiterFoundInComment) {</TD></TR><TR><TD CLASS="l">80</TD><TD>                                // format indentation before node</TD></TR><TR CLASS="z"><TD CLASS="l">81</TD><TD>                                formatIndentationBeforeNode(node, formatContraints);</TD></TR><TR><TD CLASS="l">82</TD><TD> </TD></TR><TR><TD CLASS="l">83</TD><TD>                                // adjust indentations in multi line comment</TD></TR><TR CLASS="z"><TD CLASS="l">84</TD><TD>                                String lineDelimiter = node.getModel().getStructuredDocument().getLineDelimiter();</TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>                                String lineIndent = formatContraints.getCurrentIndent();</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                                String singleIndent = getFormatPreferences().getIndent();</TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>                                String newNodevalue = adjustIndentations(nodeValue, lineDelimiter + lineIndent, singleIndent);</TD></TR><TR CLASS="z"><TD CLASS="l">88</TD><TD>                                if (nodeValue.compareTo(newNodevalue) != 0)</TD></TR><TR CLASS="z"><TD CLASS="l">89</TD><TD>                                        node.setNodeValue(newNodevalue);</TD></TR><TR><TD CLASS="l">90</TD><TD>                        }</TD></TR><TR><TD CLASS="l">91</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">92</TD><TD>                        if (!nodeHasSiblings(node) || (node.getPreviousSibling() != null &amp;&amp; node.getPreviousSibling().getNodeType() == Node.TEXT_NODE &amp;&amp; !StringUtils.containsLineDelimiter(node.getPreviousSibling().getNodeValue()) &amp;&amp; node.getNextSibling() == null)) {</TD></TR><TR><TD CLASS="l">93</TD><TD>                                // single child</TD></TR><TR><TD CLASS="l">94</TD><TD>                                // or inline comment after text</TD></TR><TR><TD CLASS="l">95</TD><TD>                                // do nothing</TD></TR><TR><TD CLASS="l">96</TD><TD>                        } else</TD></TR><TR><TD CLASS="l">97</TD><TD>                                // format indentation after node</TD></TR><TR CLASS="z"><TD CLASS="l">98</TD><TD>                                formatIndentationAfterNode(node, formatContraints);</TD></TR><TR><TD CLASS="l">99</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">100</TD><TD>        }</TD></TR><TR><TD CLASS="l">101</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="27.html">org.eclipse.wst.xml.core.internal.provisional.format</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/159.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/159.html
deleted file mode 100644
index 36fb8af..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/159.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="27.html">org.eclipse.wst.xml.core.internal.provisional.format</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">DocumentNodeFormatter.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>DocumentNodeFormatter.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/82)</TD><TD CLASS="h">0%   (0/22)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">DocumentNodeFormatter</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/82)</TD><TD CLASS="h">0%   (0/22)</TD></TR><TR><TD CLASS="f"><A HREF="#0">DocumentNodeFormatter (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">formatChildren (IDOMNode, IStructuredFormatContraints): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/72)</TD><TD CLASS="h">0%   (0/18)</TD></TR><TR><TD CLASS="f"><A HREF="#3">formatNode (IDOMNode, IStructuredFormatContraints): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/3)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     Jesper Steen M�ller - xml:space='preserve' support</TD></TR><TR><TD CLASS="l">12</TD><TD> *     </TD></TR><TR><TD CLASS="l">13</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">14</TD><TD>package org.eclipse.wst.xml.core.internal.provisional.format;</TD></TR><TR><TD CLASS="l">15</TD><TD> </TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.wst.sse.core.internal.format.IStructuredFormatContraints;</TD></TR><TR><TD CLASS="l"><A NAME="0">17</A></TD><TD>import org.eclipse.wst.sse.core.internal.format.IStructuredFormatter;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;</TD></TR><TR><TD CLASS="l"><A NAME="2">19</A></TD><TD> </TD></TR><TR><TD CLASS="l">20</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">21</TD><TD>public class DocumentNodeFormatter extends NodeFormatter {</TD></TR><TR><TD CLASS="l">22</TD><TD>        protected void formatChildren(IDOMNode node, IStructuredFormatContraints formatContraints) {</TD></TR><TR CLASS="z"><TD CLASS="l">23</TD><TD>                String singleIndent = getFormatPreferences().getIndent();</TD></TR><TR CLASS="z"><TD CLASS="l">24</TD><TD>                String lineIndent = formatContraints.getCurrentIndent();</TD></TR><TR><TD CLASS="l">25</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">26</TD><TD>                if (node != null &amp;&amp; (fProgressMonitor == null || !fProgressMonitor.isCanceled())) {</TD></TR><TR><TD CLASS="l">27</TD><TD>                        // normalize node first to combine adjacent text nodes</TD></TR><TR CLASS="z"><TD CLASS="l">28</TD><TD>                        node.normalize();</TD></TR><TR><TD CLASS="l">29</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">30</TD><TD>                        IDOMNode nextChild = (IDOMNode) node.getFirstChild();</TD></TR><TR CLASS="z"><TD CLASS="l">31</TD><TD>                        while (nextChild != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">32</TD><TD>                                IDOMNode eachChildNode = nextChild;</TD></TR><TR CLASS="z"><TD CLASS="l">33</TD><TD>                                nextChild = (IDOMNode) eachChildNode.getNextSibling();</TD></TR><TR CLASS="z"><TD CLASS="l">34</TD><TD>                                IStructuredFormatter formatter = getFormatter(eachChildNode);</TD></TR><TR CLASS="z"><TD CLASS="l">35</TD><TD>                                IStructuredFormatContraints childFormatContraints = formatter.getFormatContraints();</TD></TR><TR CLASS="z"><TD CLASS="l">36</TD><TD>                                String childIndent = lineIndent + singleIndent;</TD></TR><TR CLASS="z"><TD CLASS="l">37</TD><TD>                                childFormatContraints.setCurrentIndent(childIndent);</TD></TR><TR CLASS="z"><TD CLASS="l">38</TD><TD>                                childFormatContraints.setClearAllBlankLines(formatContraints.getClearAllBlankLines());</TD></TR><TR CLASS="z"><TD CLASS="l">39</TD><TD>                                childFormatContraints.setInPreserveSpaceElement(formatContraints.getInPreserveSpaceElement());</TD></TR><TR><TD CLASS="l">40</TD><TD> </TD></TR><TR><TD CLASS="l">41</TD><TD>                                // format each child</TD></TR><TR CLASS="z"><TD CLASS="l">42</TD><TD>                                formatter.format(eachChildNode, childFormatContraints);</TD></TR><TR><TD CLASS="l">43</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>                                if (nextChild != null &amp;&amp; nextChild.getParentNode() == null)</TD></TR><TR><TD CLASS="l">45</TD><TD>                                        // nextNode is deleted during format</TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>                                        nextChild = (IDOMNode) eachChildNode.getNextSibling();</TD></TR><TR><TD CLASS="l">47</TD><TD>                        }</TD></TR><TR><TD CLASS="l"><A NAME="3">48</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>        }</TD></TR><TR><TD CLASS="l">50</TD><TD> </TD></TR><TR><TD CLASS="l">51</TD><TD>        protected void formatNode(IDOMNode node, IStructuredFormatContraints formatContraints) {</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                if (node != null)</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>                        formatChildren(node, formatContraints);</TD></TR><TR CLASS="z"><TD CLASS="l">54</TD><TD>        }</TD></TR><TR><TD CLASS="l">55</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="27.html">org.eclipse.wst.xml.core.internal.provisional.format</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/15a.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/15a.html
deleted file mode 100644
index bd1f492..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/15a.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="27.html">org.eclipse.wst.xml.core.internal.provisional.format</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">ElementNodeFormatter.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>ElementNodeFormatter.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/954)</TD><TD CLASS="h">0%   (0/196)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">ElementNodeFormatter</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/954)</TD><TD CLASS="h">0%   (0/196)</TD></TR><TR><TD CLASS="f"><A HREF="#0">ElementNodeFormatter (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">formatEndTag (IDOMNode, IStructuredFormatContraints): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/179)</TD><TD CLASS="h">0%   (0/30)</TD></TR><TR><TD CLASS="f"><A HREF="#3">formatNode (IDOMNode, IStructuredFormatContraints): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/71)</TD><TD CLASS="h">0%   (0/20)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">formatStartTag (IDOMNode, IStructuredFormatContraints): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/634)</TD><TD CLASS="h">0%   (0/133)</TD></TR><TR><TD CLASS="f"><A HREF="#5">getUndefinedRegions (IDOMNode, int, int): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/67)</TD><TD CLASS="h">0%   (0/12)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2007 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     Jesper Steen M�ller - xml:space='preserve' support</TD></TR><TR><TD CLASS="l">12</TD><TD> *     </TD></TR><TR><TD CLASS="l">13</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">14</TD><TD>package org.eclipse.wst.xml.core.internal.provisional.format;</TD></TR><TR><TD CLASS="l">15</TD><TD> </TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.jface.text.BadLocationException;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.wst.sse.core.internal.format.IStructuredFormatContraints;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionList;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.wst.sse.core.utils.StringUtils;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.wst.xml.core.internal.Logger;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.wst.xml.core.internal.document.AttrImpl;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.wst.xml.core.internal.provisional.document.IDOMDocument;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;</TD></TR><TR><TD CLASS="l">30</TD><TD>import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;</TD></TR><TR><TD CLASS="l">31</TD><TD>import org.eclipse.wst.xml.core.internal.provisional.document.ISourceGenerator;</TD></TR><TR><TD CLASS="l">32</TD><TD>import org.eclipse.wst.xml.core.internal.regions.DOMRegionContext;</TD></TR><TR><TD CLASS="l">33</TD><TD>import org.eclipse.wst.xml.core.internal.ssemodelquery.ModelQueryAdapter;</TD></TR><TR><TD CLASS="l">34</TD><TD>import org.w3c.dom.Element;</TD></TR><TR><TD CLASS="l"><A NAME="0">35</A></TD><TD>import org.w3c.dom.NamedNodeMap;</TD></TR><TR><TD CLASS="l">36</TD><TD>import org.w3c.dom.Node;</TD></TR><TR><TD CLASS="l">37</TD><TD> </TD></TR><TR><TD CLASS="l">38</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">39</TD><TD>public class ElementNodeFormatter extends DocumentNodeFormatter {</TD></TR><TR><TD CLASS="l">40</TD><TD>        static private final char DOUBLE_QUOTE = '&#34;';//$NON-NLS-1$</TD></TR><TR><TD CLASS="l">41</TD><TD>        static private final String DOUBLE_QUOTES = &#34;\&#34;\&#34;&#34;;//$NON-NLS-1$</TD></TR><TR><TD CLASS="l">42</TD><TD>        static private final char EQUAL_CHAR = '='; // equal sign$NON-NLS-1$</TD></TR><TR><TD CLASS="l">43</TD><TD>        static private final String PRESERVE = &#34;preserve&#34;;//$NON-NLS-1$</TD></TR><TR><TD CLASS="l">44</TD><TD>        static private final String PRESERVE_QUOTED = &#34;\&#34;preserve\&#34;&#34;;//$NON-NLS-1$</TD></TR><TR><TD CLASS="l">45</TD><TD>        static private final char SINGLE_QUOTE = '\'';//$NON-NLS-1$</TD></TR><TR><TD CLASS="l">46</TD><TD>        static private final String XML_SPACE = &#34;xml:space&#34;;//$NON-NLS-1$</TD></TR><TR><TD CLASS="l">47</TD><TD>        static private final char SPACE_CHAR = ' '; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">48</TD><TD>        static private final String XSL_NAMESPACE = &#34;http://www.w3.org/1999/XSL/Transform&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l"><A NAME="2">49</A></TD><TD>        static private final String XSL_ATTRIBUTE = &#34;attribute&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">50</TD><TD>        static private final String XSL_TEXT = &#34;text&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">51</TD><TD> </TD></TR><TR><TD CLASS="l">52</TD><TD>        protected void formatEndTag(IDOMNode node, IStructuredFormatContraints formatContraints) {</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>                if (!isEndTagMissing(node)) {</TD></TR><TR><TD CLASS="l">54</TD><TD>                        // end tag exists</TD></TR><TR><TD CLASS="l">55</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>                        IStructuredDocument structuredDocument = node.getModel().getStructuredDocument();</TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>                        String lineDelimiter = structuredDocument.getLineDelimiter();</TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>                        String nodeIndentation = getNodeIndent(node);</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>                        IDOMNode lastChild = (IDOMNode) node.getLastChild();</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                        if (lastChild != null &amp;&amp; lastChild.getNodeType() != Node.TEXT_NODE) {</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                                if (isEndTagMissing(lastChild)) {</TD></TR><TR><TD CLASS="l">62</TD><TD>                                        // find deepest child</TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>                                        IDOMNode deepestChild = (IDOMNode) lastChild.getLastChild();</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                                        while (deepestChild != null &amp;&amp; deepestChild.getLastChild() != null &amp;&amp; isEndTagMissing(deepestChild)) {</TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>                                                lastChild = deepestChild;</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                                                deepestChild = (IDOMNode) deepestChild.getLastChild();</TD></TR><TR><TD CLASS="l">67</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">68</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                                        if (deepestChild != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">70</TD><TD>                                                if (deepestChild.getNodeType() == Node.TEXT_NODE) {</TD></TR><TR><TD CLASS="l">71</TD><TD>                                                        // Special indentation handling if lastChild's end</TD></TR><TR><TD CLASS="l">72</TD><TD>                                                        // tag is missing and deepestChild is a text node.</TD></TR><TR CLASS="z"><TD CLASS="l">73</TD><TD>                                                        String nodeText = deepestChild.getNodeValue();</TD></TR><TR><TD CLASS="l">74</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>                                                        if (!nodeText.endsWith(lineDelimiter + nodeIndentation)) {</TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>                                                                nodeText = StringUtils.appendIfNotEndWith(nodeText, lineDelimiter);</TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>                                                                nodeText = StringUtils.appendIfNotEndWith(nodeText, nodeIndentation);</TD></TR><TR><TD CLASS="l">78</TD><TD>                                                        }</TD></TR><TR><TD CLASS="l">79</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">80</TD><TD>                                                        replaceNodeValue(deepestChild, nodeText);</TD></TR><TR><TD CLASS="l">81</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">82</TD><TD>                                                else</TD></TR><TR CLASS="z"><TD CLASS="l">83</TD><TD>                                                        insertAfterNode(lastChild, lineDelimiter + nodeIndentation);</TD></TR><TR><TD CLASS="l">84</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">85</TD><TD>                                }</TD></TR><TR><TD CLASS="l">86</TD><TD>                                else</TD></TR><TR><TD CLASS="l">87</TD><TD>                                        // indent end tag</TD></TR><TR CLASS="z"><TD CLASS="l">88</TD><TD>                                        insertAfterNode(lastChild, lineDelimiter + nodeIndentation);</TD></TR><TR><TD CLASS="l">89</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">90</TD><TD>                        else if (lastChild == null &amp;&amp; firstStructuredDocumentRegionContainsLineDelimiters(node)) {</TD></TR><TR><TD CLASS="l">91</TD><TD>                                // BUG174243 do not indent end tag if node has empty content</TD></TR><TR><TD CLASS="l">92</TD><TD>                                // (otherwise new text node would be introduced)</TD></TR><TR CLASS="z"><TD CLASS="l">93</TD><TD>                                ModelQueryAdapter adapter = (ModelQueryAdapter) ((IDOMDocument) node.getOwnerDocument()).getAdapterFor(ModelQueryAdapter.class);</TD></TR><TR CLASS="z"><TD CLASS="l">94</TD><TD>                                CMElementDeclaration elementDeclaration = (CMElementDeclaration) adapter.getModelQuery().getCMNode(node);</TD></TR><TR CLASS="z"><TD CLASS="l">95</TD><TD>                                if ((elementDeclaration == null) || (elementDeclaration.getContentType() != CMElementDeclaration.EMPTY)) {</TD></TR><TR><TD CLASS="l">96</TD><TD>                                        // indent end tag</TD></TR><TR CLASS="z"><TD CLASS="l">97</TD><TD>                                        replace(structuredDocument, node.getFirstStructuredDocumentRegion().getEndOffset(), 0, lineDelimiter + nodeIndentation);</TD></TR><TR><TD CLASS="l">98</TD><TD>                                }</TD></TR><TR><TD CLASS="l">99</TD><TD>                        }</TD></TR><TR><TD CLASS="l">100</TD><TD> </TD></TR><TR><TD CLASS="l">101</TD><TD>                        // format end tag name</TD></TR><TR CLASS="z"><TD CLASS="l">102</TD><TD>                        IStructuredDocumentRegion endTagStructuredDocumentRegion = node.getLastStructuredDocumentRegion();</TD></TR><TR CLASS="z"><TD CLASS="l">103</TD><TD>                        if (endTagStructuredDocumentRegion.getRegions().size() &gt;= 3) {</TD></TR><TR CLASS="z"><TD CLASS="l">104</TD><TD>                                ITextRegion endTagNameRegion = endTagStructuredDocumentRegion.getRegions().get(1);</TD></TR><TR CLASS="z"><TD CLASS="l">105</TD><TD>                                removeRegionSpaces(node, endTagStructuredDocumentRegion, endTagNameRegion);</TD></TR><TR><TD CLASS="l">106</TD><TD>                        }</TD></TR><TR><TD CLASS="l"><A NAME="3">107</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">108</TD><TD>        }</TD></TR><TR><TD CLASS="l">109</TD><TD> </TD></TR><TR><TD CLASS="l">110</TD><TD>        protected void formatNode(IDOMNode node, IStructuredFormatContraints formatContraints) {</TD></TR><TR CLASS="z"><TD CLASS="l">111</TD><TD>                if (node != null) {</TD></TR><TR><TD CLASS="l">112</TD><TD>                        // format indentation before node</TD></TR><TR CLASS="z"><TD CLASS="l">113</TD><TD>                        formatIndentationBeforeNode(node, formatContraints);</TD></TR><TR><TD CLASS="l">114</TD><TD> </TD></TR><TR><TD CLASS="l">115</TD><TD>                        // format start tag</TD></TR><TR CLASS="z"><TD CLASS="l">116</TD><TD>                        IDOMNode newNode = node;</TD></TR><TR CLASS="z"><TD CLASS="l">117</TD><TD>                        int startTagStartOffset = node.getStartOffset();</TD></TR><TR CLASS="z"><TD CLASS="l">118</TD><TD>                        IDOMModel structuredModel = node.getModel();</TD></TR><TR><TD CLASS="l">119</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">120</TD><TD>                        boolean currentlyInXmlSpacePreserve = formatContraints.getInPreserveSpaceElement();</TD></TR><TR CLASS="z"><TD CLASS="l">121</TD><TD>                        formatStartTag(node, formatContraints);</TD></TR><TR><TD CLASS="l">122</TD><TD>                        // save new node</TD></TR><TR CLASS="z"><TD CLASS="l">123</TD><TD>                        newNode = (IDOMNode) structuredModel.getIndexedRegion(startTagStartOffset);</TD></TR><TR><TD CLASS="l">124</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">125</TD><TD>                        IStructuredDocumentRegion flatNode = newNode.getFirstStructuredDocumentRegion();</TD></TR><TR CLASS="z"><TD CLASS="l">126</TD><TD>                        if (flatNode != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">127</TD><TD>                                ITextRegionList regions = flatNode.getRegions();</TD></TR><TR CLASS="z"><TD CLASS="l">128</TD><TD>                                ITextRegion lastRegion = regions.get(regions.size() - 1);</TD></TR><TR><TD CLASS="l">129</TD><TD>                                // format children and end tag if not empty start tag</TD></TR><TR CLASS="z"><TD CLASS="l">130</TD><TD>                                if (lastRegion.getType() != DOMRegionContext.XML_EMPTY_TAG_CLOSE) {</TD></TR><TR><TD CLASS="l">131</TD><TD>                                        // format children</TD></TR><TR CLASS="z"><TD CLASS="l">132</TD><TD>                                        formatChildren(newNode, formatContraints);</TD></TR><TR><TD CLASS="l">133</TD><TD> </TD></TR><TR><TD CLASS="l">134</TD><TD>                                        // save new node</TD></TR><TR CLASS="z"><TD CLASS="l">135</TD><TD>                                        newNode = (IDOMNode) structuredModel.getIndexedRegion(startTagStartOffset);</TD></TR><TR><TD CLASS="l">136</TD><TD> </TD></TR><TR><TD CLASS="l">137</TD><TD>                                        // format end tag</TD></TR><TR CLASS="z"><TD CLASS="l">138</TD><TD>                                        formatEndTag(newNode, formatContraints);</TD></TR><TR><TD CLASS="l">139</TD><TD>                                }</TD></TR><TR><TD CLASS="l">140</TD><TD>                        }</TD></TR><TR><TD CLASS="l">141</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">142</TD><TD>                        formatContraints.setInPreserveSpaceElement(currentlyInXmlSpacePreserve);</TD></TR><TR><TD CLASS="l">143</TD><TD>                        // only indent if not at last node</TD></TR><TR CLASS="z"><TD CLASS="l">144</TD><TD>                        if (newNode != null &amp;&amp; newNode.getNextSibling() != null)</TD></TR><TR><TD CLASS="l">145</TD><TD>                                // format indentation after node</TD></TR><TR CLASS="z"><TD CLASS="l">146</TD><TD>                                formatIndentationAfterNode(newNode, formatContraints);</TD></TR><TR><TD CLASS="l">147</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">148</TD><TD>        }</TD></TR><TR><TD CLASS="l">149</TD><TD> </TD></TR><TR><TD CLASS="l">150</TD><TD>        /**</TD></TR><TR><TD CLASS="l"><A NAME="4">151</A></TD><TD>         * This method formats the start tag name, and formats the attributes if</TD></TR><TR><TD CLASS="l">152</TD><TD>         * available.</TD></TR><TR><TD CLASS="l">153</TD><TD>         */</TD></TR><TR><TD CLASS="l">154</TD><TD>        protected void formatStartTag(IDOMNode node, IStructuredFormatContraints formatContraints) {</TD></TR><TR CLASS="z"><TD CLASS="l">155</TD><TD>                StructuredFormatPreferencesXML preferences = (StructuredFormatPreferencesXML) getFormatPreferences();</TD></TR><TR CLASS="z"><TD CLASS="l">156</TD><TD>                String singleIndent = preferences.getIndent();</TD></TR><TR CLASS="z"><TD CLASS="l">157</TD><TD>                String lineIndent = formatContraints.getCurrentIndent();</TD></TR><TR CLASS="z"><TD CLASS="l">158</TD><TD>                String attrIndent = lineIndent + singleIndent;</TD></TR><TR CLASS="z"><TD CLASS="l">159</TD><TD>                boolean splitMultiAttrs = preferences.getSplitMultiAttrs();</TD></TR><TR CLASS="z"><TD CLASS="l">160</TD><TD>                boolean alignEndBracket = preferences.isAlignEndBracket();</TD></TR><TR CLASS="z"><TD CLASS="l">161</TD><TD>                boolean sawXmlSpace = false;</TD></TR><TR><TD CLASS="l">162</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">163</TD><TD>                IStructuredDocumentRegion flatNode = node.getFirstStructuredDocumentRegion();</TD></TR><TR CLASS="z"><TD CLASS="l">164</TD><TD>                NamedNodeMap attributes = node.getAttributes();</TD></TR><TR><TD CLASS="l">165</TD><TD> </TD></TR><TR><TD CLASS="l">166</TD><TD>                // Note: attributes should not be null even if the node has no</TD></TR><TR><TD CLASS="l">167</TD><TD>                // attributes. However, attributes.getLength() will be 0. But, check</TD></TR><TR><TD CLASS="l">168</TD><TD>                // for null just in case.</TD></TR><TR CLASS="z"><TD CLASS="l">169</TD><TD>                if (attributes != null) {</TD></TR><TR><TD CLASS="l">170</TD><TD>                        // compute current available line width</TD></TR><TR CLASS="z"><TD CLASS="l">171</TD><TD>                        int currentAvailableLineWidth = 0;</TD></TR><TR><TD CLASS="l">172</TD><TD>                        try {</TD></TR><TR><TD CLASS="l">173</TD><TD>                                // 1 is for &#34;&lt;&#34;</TD></TR><TR CLASS="z"><TD CLASS="l">174</TD><TD>                                int nodeNameOffset = node.getStartOffset() + 1 + node.getNodeName().length();</TD></TR><TR CLASS="z"><TD CLASS="l">175</TD><TD>                                int lineOffset = node.getStructuredDocument().getLineInformationOfOffset(nodeNameOffset).getOffset();</TD></TR><TR CLASS="z"><TD CLASS="l">176</TD><TD>                                String text = node.getStructuredDocument().get(lineOffset, nodeNameOffset - lineOffset);</TD></TR><TR CLASS="z"><TD CLASS="l">177</TD><TD>                                int usedWidth = getIndentationLength(text);</TD></TR><TR CLASS="z"><TD CLASS="l">178</TD><TD>                                currentAvailableLineWidth = preferences.getLineWidth() - usedWidth;</TD></TR><TR><TD CLASS="l">179</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">180</TD><TD>                        catch (BadLocationException e) {</TD></TR><TR><TD CLASS="l">181</TD><TD>                                // log for now, unless we find reason not to</TD></TR><TR CLASS="z"><TD CLASS="l">182</TD><TD>                                Logger.log(Logger.INFO, e.getMessage());</TD></TR><TR><TD CLASS="l">183</TD><TD>                        }</TD></TR><TR><TD CLASS="l">184</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">185</TD><TD>                        StringBuffer stringBuffer = new StringBuffer();</TD></TR><TR CLASS="z"><TD CLASS="l">186</TD><TD>                        String lineDelimiter = node.getModel().getStructuredDocument().getLineDelimiter();</TD></TR><TR CLASS="z"><TD CLASS="l">187</TD><TD>                        int attrLength = attributes.getLength();</TD></TR><TR CLASS="z"><TD CLASS="l">188</TD><TD>                        int lastUndefinedRegionOffset = 0;</TD></TR><TR CLASS="z"><TD CLASS="l">189</TD><TD>                        boolean startTagSpansOver1Line = false;</TD></TR><TR><TD CLASS="l">190</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">191</TD><TD>                        for (int i = 0; i &lt; attrLength; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">192</TD><TD>                                AttrImpl attr = (AttrImpl) attributes.item(i);</TD></TR><TR CLASS="z"><TD CLASS="l">193</TD><TD>                                ITextRegion nameRegion = attr.getNameRegion();</TD></TR><TR CLASS="z"><TD CLASS="l">194</TD><TD>                                ITextRegion equalRegion = attr.getEqualRegion();</TD></TR><TR CLASS="z"><TD CLASS="l">195</TD><TD>                                ITextRegion valueRegion = attr.getValueRegion();</TD></TR><TR><TD CLASS="l">196</TD><TD> </TD></TR><TR><TD CLASS="l">197</TD><TD>                                // append undefined regions</TD></TR><TR CLASS="z"><TD CLASS="l">198</TD><TD>                                String undefinedRegion = getUndefinedRegions(node, lastUndefinedRegionOffset, attr.getStartOffset() - lastUndefinedRegionOffset);</TD></TR><TR CLASS="z"><TD CLASS="l">199</TD><TD>                                stringBuffer.append(undefinedRegion);</TD></TR><TR CLASS="z"><TD CLASS="l">200</TD><TD>                                lastUndefinedRegionOffset = attr.getStartOffset();</TD></TR><TR><TD CLASS="l">201</TD><TD> </TD></TR><TR><TD CLASS="l">202</TD><TD>                                // check for xml:space attribute</TD></TR><TR CLASS="z"><TD CLASS="l">203</TD><TD>                                if (flatNode.getText(nameRegion).compareTo(XML_SPACE) == 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">204</TD><TD>                                        if (valueRegion == null) {</TD></TR><TR><TD CLASS="l">205</TD><TD>                                                // [111674] If nothing has been written yet, treat as</TD></TR><TR><TD CLASS="l">206</TD><TD>                                                // preserve, but only as hint</TD></TR><TR CLASS="z"><TD CLASS="l">207</TD><TD>                                                formatContraints.setInPreserveSpaceElement(true);</TD></TR><TR><TD CLASS="l">208</TD><TD>                                                // Note we don't set 'sawXmlSpace', so that default or</TD></TR><TR><TD CLASS="l">209</TD><TD>                                                // fixed DTD/XSD values may override.</TD></TR><TR><TD CLASS="l">210</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">211</TD><TD>                                        else {</TD></TR><TR CLASS="z"><TD CLASS="l">212</TD><TD>                                                ISourceGenerator generator = node.getModel().getGenerator();</TD></TR><TR CLASS="z"><TD CLASS="l">213</TD><TD>                                                String newAttrValue = generator.generateAttrValue(attr);</TD></TR><TR><TD CLASS="l">214</TD><TD> </TD></TR><TR><TD CLASS="l">215</TD><TD>                                                // There is a problem in</TD></TR><TR><TD CLASS="l">216</TD><TD>                                                // StructuredDocumentRegionUtil.getAttrValue(ITextRegion)</TD></TR><TR><TD CLASS="l">217</TD><TD>                                                // when the region is instanceof ContextRegion.</TD></TR><TR><TD CLASS="l">218</TD><TD>                                                // Workaround for now.</TD></TR><TR CLASS="z"><TD CLASS="l">219</TD><TD>                                                if (flatNode.getText(valueRegion).length() == 1) {</TD></TR><TR CLASS="z"><TD CLASS="l">220</TD><TD>                                                        char firstChar = flatNode.getText(valueRegion).charAt(0);</TD></TR><TR CLASS="z"><TD CLASS="l">221</TD><TD>                                                        if ((firstChar == DOUBLE_QUOTE) || (firstChar == SINGLE_QUOTE))</TD></TR><TR CLASS="z"><TD CLASS="l">222</TD><TD>                                                                newAttrValue = DOUBLE_QUOTES;</TD></TR><TR><TD CLASS="l">223</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">224</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">225</TD><TD>                                                if (newAttrValue.compareTo(PRESERVE_QUOTED) == 0)</TD></TR><TR CLASS="z"><TD CLASS="l">226</TD><TD>                                                        formatContraints.setInPreserveSpaceElement(true);</TD></TR><TR><TD CLASS="l">227</TD><TD>                                                else</TD></TR><TR CLASS="z"><TD CLASS="l">228</TD><TD>                                                        formatContraints.setInPreserveSpaceElement(false);</TD></TR><TR CLASS="z"><TD CLASS="l">229</TD><TD>                                                sawXmlSpace = true;</TD></TR><TR><TD CLASS="l">230</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">231</TD><TD>                                }</TD></TR><TR><TD CLASS="l">232</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">233</TD><TD>                                if (splitMultiAttrs &amp;&amp; attrLength &gt; 1) {</TD></TR><TR CLASS="z"><TD CLASS="l">234</TD><TD>                                        stringBuffer.append(lineDelimiter + attrIndent);</TD></TR><TR CLASS="z"><TD CLASS="l">235</TD><TD>                                        stringBuffer.append(flatNode.getText(nameRegion));</TD></TR><TR CLASS="z"><TD CLASS="l">236</TD><TD>                                        startTagSpansOver1Line = true;</TD></TR><TR CLASS="z"><TD CLASS="l">237</TD><TD>                                        if (valueRegion != null) {</TD></TR><TR><TD CLASS="l">238</TD><TD>                                                // append undefined regions</TD></TR><TR CLASS="z"><TD CLASS="l">239</TD><TD>                                                undefinedRegion = getUndefinedRegions(node, lastUndefinedRegionOffset, flatNode.getStartOffset(equalRegion) - lastUndefinedRegionOffset);</TD></TR><TR CLASS="z"><TD CLASS="l">240</TD><TD>                                                stringBuffer.append(undefinedRegion);</TD></TR><TR CLASS="z"><TD CLASS="l">241</TD><TD>                                                lastUndefinedRegionOffset = flatNode.getStartOffset(equalRegion);</TD></TR><TR><TD CLASS="l">242</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">243</TD><TD>                                                stringBuffer.append(EQUAL_CHAR);</TD></TR><TR><TD CLASS="l">244</TD><TD> </TD></TR><TR><TD CLASS="l">245</TD><TD>                                                // append undefined regions</TD></TR><TR CLASS="z"><TD CLASS="l">246</TD><TD>                                                undefinedRegion = getUndefinedRegions(node, lastUndefinedRegionOffset, flatNode.getStartOffset(valueRegion) - lastUndefinedRegionOffset);</TD></TR><TR CLASS="z"><TD CLASS="l">247</TD><TD>                                                stringBuffer.append(undefinedRegion);</TD></TR><TR CLASS="z"><TD CLASS="l">248</TD><TD>                                                lastUndefinedRegionOffset = flatNode.getStartOffset(valueRegion);</TD></TR><TR><TD CLASS="l">249</TD><TD> </TD></TR><TR><TD CLASS="l">250</TD><TD>                                                // Note: trim() should not be needed for</TD></TR><TR><TD CLASS="l">251</TD><TD>                                                // valueRegion.getText(). Just a workaround for a</TD></TR><TR><TD CLASS="l">252</TD><TD>                                                // problem found in valueRegion for now.</TD></TR><TR CLASS="z"><TD CLASS="l">253</TD><TD>                                                stringBuffer.append(flatNode.getText(valueRegion).trim());</TD></TR><TR><TD CLASS="l">254</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">255</TD><TD>                                }</TD></TR><TR><TD CLASS="l">256</TD><TD>                                else {</TD></TR><TR CLASS="z"><TD CLASS="l">257</TD><TD>                                        if (valueRegion != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">258</TD><TD>                                                int textLength = 1 + flatNode.getText(nameRegion).length() + 1 + flatNode.getText(valueRegion).length();</TD></TR><TR CLASS="z"><TD CLASS="l">259</TD><TD>                                                if (i == attrLength - 1) {</TD></TR><TR CLASS="z"><TD CLASS="l">260</TD><TD>                                                        if (flatNode != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">261</TD><TD>                                                                ITextRegionList regions = flatNode.getRegions();</TD></TR><TR CLASS="z"><TD CLASS="l">262</TD><TD>                                                                ITextRegion lastRegion = regions.get(regions.size() - 1);</TD></TR><TR CLASS="z"><TD CLASS="l">263</TD><TD>                                                                if (lastRegion.getType() != DOMRegionContext.XML_EMPTY_TAG_CLOSE)</TD></TR><TR><TD CLASS="l">264</TD><TD>                                                                        // 3 is for &#34; /&gt;&#34;</TD></TR><TR CLASS="z"><TD CLASS="l">265</TD><TD>                                                                        textLength += 3;</TD></TR><TR><TD CLASS="l">266</TD><TD>                                                                else</TD></TR><TR><TD CLASS="l">267</TD><TD>                                                                        // 1 is for &#34;&gt;&#34;</TD></TR><TR CLASS="z"><TD CLASS="l">268</TD><TD>                                                                        textLength++;</TD></TR><TR><TD CLASS="l">269</TD><TD>                                                        }</TD></TR><TR><TD CLASS="l">270</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">271</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">272</TD><TD>                                                if (currentAvailableLineWidth &gt;= textLength) {</TD></TR><TR CLASS="z"><TD CLASS="l">273</TD><TD>                                                        stringBuffer.append(SPACE_CHAR);</TD></TR><TR CLASS="z"><TD CLASS="l">274</TD><TD>                                                        currentAvailableLineWidth--;</TD></TR><TR><TD CLASS="l">275</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">276</TD><TD>                                                else {</TD></TR><TR CLASS="z"><TD CLASS="l">277</TD><TD>                                                        stringBuffer.append(lineDelimiter + attrIndent);</TD></TR><TR CLASS="z"><TD CLASS="l">278</TD><TD>                                                        startTagSpansOver1Line = true;</TD></TR><TR CLASS="z"><TD CLASS="l">279</TD><TD>                                                        currentAvailableLineWidth = preferences.getLineWidth() - attrIndent.length();</TD></TR><TR><TD CLASS="l">280</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">281</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">282</TD><TD>                                                stringBuffer.append(flatNode.getText(nameRegion));</TD></TR><TR><TD CLASS="l">283</TD><TD> </TD></TR><TR><TD CLASS="l">284</TD><TD>                                                // append undefined regions</TD></TR><TR CLASS="z"><TD CLASS="l">285</TD><TD>                                                undefinedRegion = getUndefinedRegions(node, lastUndefinedRegionOffset, flatNode.getStartOffset(equalRegion) - lastUndefinedRegionOffset);</TD></TR><TR CLASS="z"><TD CLASS="l">286</TD><TD>                                                stringBuffer.append(undefinedRegion);</TD></TR><TR CLASS="z"><TD CLASS="l">287</TD><TD>                                                lastUndefinedRegionOffset = flatNode.getStartOffset(equalRegion);</TD></TR><TR><TD CLASS="l">288</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">289</TD><TD>                                                stringBuffer.append(EQUAL_CHAR);</TD></TR><TR><TD CLASS="l">290</TD><TD> </TD></TR><TR><TD CLASS="l">291</TD><TD>                                                // append undefined regions</TD></TR><TR CLASS="z"><TD CLASS="l">292</TD><TD>                                                undefinedRegion = getUndefinedRegions(node, lastUndefinedRegionOffset, flatNode.getStartOffset(valueRegion) - lastUndefinedRegionOffset);</TD></TR><TR CLASS="z"><TD CLASS="l">293</TD><TD>                                                stringBuffer.append(undefinedRegion);</TD></TR><TR CLASS="z"><TD CLASS="l">294</TD><TD>                                                lastUndefinedRegionOffset = flatNode.getStartOffset(valueRegion);</TD></TR><TR><TD CLASS="l">295</TD><TD> </TD></TR><TR><TD CLASS="l">296</TD><TD>                                                // Note: trim() should not be needed for</TD></TR><TR><TD CLASS="l">297</TD><TD>                                                // valueRegion.getText(). Just a workaround for a</TD></TR><TR><TD CLASS="l">298</TD><TD>                                                // problem found in valueRegion for now.</TD></TR><TR CLASS="z"><TD CLASS="l">299</TD><TD>                                                stringBuffer.append(flatNode.getText(valueRegion).trim());</TD></TR><TR><TD CLASS="l">300</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">301</TD><TD>                                                currentAvailableLineWidth -= flatNode.getText(nameRegion).length();</TD></TR><TR CLASS="z"><TD CLASS="l">302</TD><TD>                                                currentAvailableLineWidth--;</TD></TR><TR CLASS="z"><TD CLASS="l">303</TD><TD>                                                currentAvailableLineWidth -= flatNode.getText(valueRegion).trim().length();</TD></TR><TR><TD CLASS="l">304</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">305</TD><TD>                                        else {</TD></TR><TR CLASS="z"><TD CLASS="l">306</TD><TD>                                                if (currentAvailableLineWidth &gt;= 1 + flatNode.getText(nameRegion).length()) {</TD></TR><TR CLASS="z"><TD CLASS="l">307</TD><TD>                                                        stringBuffer.append(SPACE_CHAR);</TD></TR><TR CLASS="z"><TD CLASS="l">308</TD><TD>                                                        currentAvailableLineWidth--;</TD></TR><TR><TD CLASS="l">309</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">310</TD><TD>                                                else {</TD></TR><TR CLASS="z"><TD CLASS="l">311</TD><TD>                                                        stringBuffer.append(lineDelimiter + attrIndent);</TD></TR><TR CLASS="z"><TD CLASS="l">312</TD><TD>                                                        startTagSpansOver1Line = true;</TD></TR><TR CLASS="z"><TD CLASS="l">313</TD><TD>                                                        currentAvailableLineWidth = preferences.getLineWidth() - attrIndent.length();</TD></TR><TR><TD CLASS="l">314</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">315</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">316</TD><TD>                                                stringBuffer.append(flatNode.getText(nameRegion));</TD></TR><TR><TD CLASS="l">317</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">318</TD><TD>                                                currentAvailableLineWidth -= flatNode.getText(nameRegion).length();</TD></TR><TR><TD CLASS="l">319</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">320</TD><TD>                                }</TD></TR><TR><TD CLASS="l">321</TD><TD>                        }</TD></TR><TR><TD CLASS="l">322</TD><TD> </TD></TR><TR><TD CLASS="l">323</TD><TD>                        // append undefined regions</TD></TR><TR CLASS="z"><TD CLASS="l">324</TD><TD>                        String undefinedRegion = getUndefinedRegions(node, lastUndefinedRegionOffset, node.getEndOffset() - lastUndefinedRegionOffset);</TD></TR><TR CLASS="z"><TD CLASS="l">325</TD><TD>                        stringBuffer.append(undefinedRegion);</TD></TR><TR><TD CLASS="l">326</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">327</TD><TD>                        IDOMModel structuredModel = node.getModel();</TD></TR><TR CLASS="z"><TD CLASS="l">328</TD><TD>                        IStructuredDocument structuredDocument = structuredModel.getStructuredDocument();</TD></TR><TR><TD CLASS="l">329</TD><TD>                        // 1 is for &#34;&lt;&#34;</TD></TR><TR CLASS="z"><TD CLASS="l">330</TD><TD>                        int offset = node.getStartOffset() + 1 + node.getNodeName().length();</TD></TR><TR><TD CLASS="l">331</TD><TD>                        // 1 is for &#34;&lt;&#34;</TD></TR><TR CLASS="z"><TD CLASS="l">332</TD><TD>                        int length = node.getFirstStructuredDocumentRegion().getTextLength() - 1 - node.getNodeName().length();</TD></TR><TR><TD CLASS="l">333</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">334</TD><TD>                        if (flatNode != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">335</TD><TD>                                ITextRegionList regions = flatNode.getRegions();</TD></TR><TR CLASS="z"><TD CLASS="l">336</TD><TD>                                ITextRegion firstRegion = regions.get(0);</TD></TR><TR CLASS="z"><TD CLASS="l">337</TD><TD>                                ITextRegion lastRegion = regions.get(regions.size() - 1);</TD></TR><TR><TD CLASS="l">338</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">339</TD><TD>                                if (firstRegion.getType() == DOMRegionContext.XML_END_TAG_OPEN)</TD></TR><TR><TD CLASS="l">340</TD><TD>                                        // skip formatting for end tags in this format: &lt;/tagName&gt;</TD></TR><TR CLASS="z"><TD CLASS="l">341</TD><TD>                                        return;</TD></TR><TR><TD CLASS="l">342</TD><TD>                                else {</TD></TR><TR CLASS="z"><TD CLASS="l">343</TD><TD>                                        if (lastRegion.getType() == DOMRegionContext.XML_TAG_CLOSE || lastRegion.getType() == DOMRegionContext.XML_EMPTY_TAG_CLOSE)</TD></TR><TR CLASS="z"><TD CLASS="l">344</TD><TD>                                                length = length - lastRegion.getLength();</TD></TR><TR><TD CLASS="l">345</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">346</TD><TD>                                        if (lastRegion.getType() == DOMRegionContext.XML_EMPTY_TAG_CLOSE) {</TD></TR><TR><TD CLASS="l">347</TD><TD>                                                // leave space before XML_EMPTY_TAG_CLOSE: &lt;tagName /&gt;</TD></TR><TR><TD CLASS="l">348</TD><TD>                                                // unless already going to move end bracket</TD></TR><TR CLASS="z"><TD CLASS="l">349</TD><TD>                                                if (!startTagSpansOver1Line || !alignEndBracket)</TD></TR><TR CLASS="z"><TD CLASS="l">350</TD><TD>                                                        stringBuffer.append(SPACE_CHAR);</TD></TR><TR><TD CLASS="l">351</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">352</TD><TD>                                }</TD></TR><TR><TD CLASS="l">353</TD><TD>                        }</TD></TR><TR><TD CLASS="l">354</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">355</TD><TD>                        if (startTagSpansOver1Line &amp;&amp; alignEndBracket) {</TD></TR><TR CLASS="z"><TD CLASS="l">356</TD><TD>                                stringBuffer.append(lineDelimiter).append(lineIndent);</TD></TR><TR><TD CLASS="l">357</TD><TD>                        }</TD></TR><TR><TD CLASS="l">358</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">359</TD><TD>                        replace(structuredDocument, offset, length, stringBuffer.toString());</TD></TR><TR><TD CLASS="l">360</TD><TD> </TD></TR><TR><TD CLASS="l">361</TD><TD>                        // BUG108074 &amp; BUG84688 - preserve whitespace in xsl:text &amp;</TD></TR><TR><TD CLASS="l">362</TD><TD>                        // xsl:attribute</TD></TR><TR CLASS="z"><TD CLASS="l">363</TD><TD>                        String nodeNamespaceURI = node.getNamespaceURI();</TD></TR><TR CLASS="z"><TD CLASS="l">364</TD><TD>                        if (XSL_NAMESPACE.equals(nodeNamespaceURI)) {</TD></TR><TR CLASS="z"><TD CLASS="l">365</TD><TD>                                String nodeName = ((Element) node).getLocalName();</TD></TR><TR CLASS="z"><TD CLASS="l">366</TD><TD>                                if (XSL_ATTRIBUTE.equals(nodeName) || XSL_TEXT.equals(nodeName)) {</TD></TR><TR CLASS="z"><TD CLASS="l">367</TD><TD>                                        sawXmlSpace = true;</TD></TR><TR CLASS="z"><TD CLASS="l">368</TD><TD>                                        formatContraints.setInPreserveSpaceElement(true);</TD></TR><TR><TD CLASS="l">369</TD><TD>                                }</TD></TR><TR><TD CLASS="l">370</TD><TD>                        }</TD></TR><TR><TD CLASS="l">371</TD><TD> </TD></TR><TR><TD CLASS="l">372</TD><TD>                        // If we didn't see a xml:space attribute above, we'll look for</TD></TR><TR><TD CLASS="l">373</TD><TD>                        // one in the DTD.</TD></TR><TR><TD CLASS="l">374</TD><TD>                        // We do not check for a conflict between a DTD's 'fixed' value</TD></TR><TR><TD CLASS="l">375</TD><TD>                        // and the attribute value found in the instance document, we</TD></TR><TR><TD CLASS="l">376</TD><TD>                        // leave that to the validator.</TD></TR><TR CLASS="z"><TD CLASS="l">377</TD><TD>                        if (!sawXmlSpace) {</TD></TR><TR CLASS="z"><TD CLASS="l">378</TD><TD>                                ModelQueryAdapter adapter = (ModelQueryAdapter) ((IDOMDocument) node.getOwnerDocument()).getAdapterFor(ModelQueryAdapter.class);</TD></TR><TR CLASS="z"><TD CLASS="l">379</TD><TD>                                CMElementDeclaration elementDeclaration = (CMElementDeclaration) adapter.getModelQuery().getCMNode(node);</TD></TR><TR CLASS="z"><TD CLASS="l">380</TD><TD>                                if (elementDeclaration != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">381</TD><TD>                                        int contentType = elementDeclaration.getContentType();</TD></TR><TR CLASS="z"><TD CLASS="l">382</TD><TD>                                        if (preferences.isPreservePCDATAContent() &amp;&amp; contentType == CMElementDeclaration.PCDATA) {</TD></TR><TR CLASS="z"><TD CLASS="l">383</TD><TD>                                                formatContraints.setInPreserveSpaceElement(true);</TD></TR><TR><TD CLASS="l">384</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">385</TD><TD>                                        else {</TD></TR><TR CLASS="z"><TD CLASS="l">386</TD><TD>                                                CMNamedNodeMap cmAttributes = elementDeclaration.getAttributes();</TD></TR><TR><TD CLASS="l">387</TD><TD>                                                // Check implied values from the DTD way.</TD></TR><TR CLASS="z"><TD CLASS="l">388</TD><TD>                                                CMAttributeDeclaration attributeDeclaration = (CMAttributeDeclaration) cmAttributes.getNamedItem(XML_SPACE);</TD></TR><TR CLASS="z"><TD CLASS="l">389</TD><TD>                                                if (attributeDeclaration != null) {</TD></TR><TR><TD CLASS="l">390</TD><TD>                                                        // CMAttributeDeclaration found, check it out.</TD></TR><TR CLASS="z"><TD CLASS="l">391</TD><TD>                                                        String defaultValue = attributeDeclaration.getAttrType().getImpliedValue();</TD></TR><TR><TD CLASS="l">392</TD><TD> </TD></TR><TR><TD CLASS="l">393</TD><TD>                                                        // xml:space=&#34;preserve&#34; means preserve space,</TD></TR><TR><TD CLASS="l">394</TD><TD>                                                        // everything else means back to default.</TD></TR><TR CLASS="z"><TD CLASS="l">395</TD><TD>                                                        if (PRESERVE.compareTo(defaultValue) == 0)</TD></TR><TR CLASS="z"><TD CLASS="l">396</TD><TD>                                                                formatContraints.setInPreserveSpaceElement(true);</TD></TR><TR><TD CLASS="l">397</TD><TD>                                                        else</TD></TR><TR CLASS="z"><TD CLASS="l">398</TD><TD>                                                                formatContraints.setInPreserveSpaceElement(false);</TD></TR><TR><TD CLASS="l">399</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">400</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">401</TD><TD>                                }</TD></TR><TR><TD CLASS="l">402</TD><TD>                        }</TD></TR><TR><TD CLASS="l"><A NAME="5">403</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">404</TD><TD>        }</TD></TR><TR><TD CLASS="l">405</TD><TD> </TD></TR><TR><TD CLASS="l">406</TD><TD>        protected String getUndefinedRegions(IDOMNode node, int startOffset, int length) {</TD></TR><TR CLASS="z"><TD CLASS="l">407</TD><TD>                String result = new String();</TD></TR><TR><TD CLASS="l">408</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">409</TD><TD>                IStructuredDocumentRegion flatNode = node.getFirstStructuredDocumentRegion();</TD></TR><TR CLASS="z"><TD CLASS="l">410</TD><TD>                ITextRegionList regions = flatNode.getRegions();</TD></TR><TR CLASS="z"><TD CLASS="l">411</TD><TD>                for (int i = 0; i &lt; regions.size(); i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">412</TD><TD>                        ITextRegion region = regions.get(i);</TD></TR><TR CLASS="z"><TD CLASS="l">413</TD><TD>                        String regionType = region.getType();</TD></TR><TR CLASS="z"><TD CLASS="l">414</TD><TD>                        int regionStartOffset = flatNode.getStartOffset(region);</TD></TR><TR><TD CLASS="l">415</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">416</TD><TD>                        if (regionType.compareTo(DOMRegionContext.UNDEFINED) == 0 &amp;&amp; regionStartOffset &gt;= startOffset &amp;&amp; regionStartOffset &lt; startOffset + length)</TD></TR><TR CLASS="z"><TD CLASS="l">417</TD><TD>                                result = result + flatNode.getFullText(region);</TD></TR><TR><TD CLASS="l">418</TD><TD>                }</TD></TR><TR><TD CLASS="l">419</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">420</TD><TD>                if (result.length() &gt; 0)</TD></TR><TR CLASS="z"><TD CLASS="l">421</TD><TD>                        return SPACE_CHAR + result.trim();</TD></TR><TR><TD CLASS="l">422</TD><TD>                else</TD></TR><TR CLASS="z"><TD CLASS="l">423</TD><TD>                        return result;</TD></TR><TR><TD CLASS="l">424</TD><TD>        }</TD></TR><TR><TD CLASS="l">425</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="27.html">org.eclipse.wst.xml.core.internal.provisional.format</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/15b.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/15b.html
deleted file mode 100644
index 8128f6f..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/15b.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="27.html">org.eclipse.wst.xml.core.internal.provisional.format</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">FormatProcessorXML.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>FormatProcessorXML.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/160)</TD><TD CLASS="h">0%   (0/48)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">FormatProcessorXML</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/160)</TD><TD CLASS="h">0%   (0/48)</TD></TR><TR><TD CLASS="f"><A HREF="#0">FormatProcessorXML (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">getFileExtension (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#3">getFormatPreferences (): IStructuredFormatPreferences</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/85)</TD><TD CLASS="h">0%   (0/19)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">getFormatter (Node): IStructuredFormatter</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/60)</TD><TD CLASS="h">0%   (0/23)</TD></TR><TR><TD CLASS="f"><A HREF="#5">getModelPreferences (): Preferences</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">refreshFormatPreferences (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2007 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.core.internal.provisional.format;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.core.runtime.Preferences;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.wst.sse.core.internal.format.AbstractStructuredFormatProcessor;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.wst.sse.core.internal.format.IStructuredFormatPreferences;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.wst.sse.core.internal.format.IStructuredFormatter;</TD></TR><TR><TD CLASS="l"><A NAME="0">19</A></TD><TD>import org.eclipse.wst.xml.core.internal.XMLCorePlugin;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.wst.xml.core.internal.preferences.XMLCorePreferenceNames;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.w3c.dom.Node;</TD></TR><TR><TD CLASS="l">22</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">23</A></TD><TD>public class FormatProcessorXML extends AbstractStructuredFormatProcessor {</TD></TR><TR CLASS="z"><TD CLASS="l">24</TD><TD>        protected IStructuredFormatPreferences fFormatPreferences = null;</TD></TR><TR><TD CLASS="l">25</TD><TD> </TD></TR><TR><TD CLASS="l">26</TD><TD>        protected String getFileExtension() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">27</A></TD><TD>                return &#34;xml&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">28</TD><TD>        }</TD></TR><TR><TD CLASS="l">29</TD><TD> </TD></TR><TR><TD CLASS="l">30</TD><TD>        public IStructuredFormatPreferences getFormatPreferences() {</TD></TR><TR CLASS="z"><TD CLASS="l">31</TD><TD>                if (fFormatPreferences == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">32</TD><TD>                        fFormatPreferences = new StructuredFormatPreferencesXML();</TD></TR><TR><TD CLASS="l">33</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">34</TD><TD>                        Preferences preferences = getModelPreferences();</TD></TR><TR CLASS="z"><TD CLASS="l">35</TD><TD>                        if (preferences != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">36</TD><TD>                                fFormatPreferences.setLineWidth(preferences.getInt(XMLCorePreferenceNames.LINE_WIDTH));</TD></TR><TR CLASS="z"><TD CLASS="l">37</TD><TD>                                ((StructuredFormatPreferencesXML) fFormatPreferences).setSplitMultiAttrs(preferences.getBoolean(XMLCorePreferenceNames.SPLIT_MULTI_ATTRS));</TD></TR><TR CLASS="z"><TD CLASS="l">38</TD><TD>                                ((StructuredFormatPreferencesXML) fFormatPreferences).setAlignEndBracket(preferences.getBoolean(XMLCorePreferenceNames.ALIGN_END_BRACKET));</TD></TR><TR CLASS="z"><TD CLASS="l">39</TD><TD>                                ((StructuredFormatPreferencesXML) fFormatPreferences).setPreservePCDATAContent(preferences.getBoolean(XMLCorePreferenceNames.PRESERVE_CDATACONTENT));</TD></TR><TR CLASS="z"><TD CLASS="l">40</TD><TD>                                fFormatPreferences.setClearAllBlankLines(preferences.getBoolean(XMLCorePreferenceNames.CLEAR_ALL_BLANK_LINES));</TD></TR><TR><TD CLASS="l">41</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">42</TD><TD>                                char indentChar = ' ';</TD></TR><TR CLASS="z"><TD CLASS="l">43</TD><TD>                                String indentCharPref = preferences.getString(XMLCorePreferenceNames.INDENTATION_CHAR);</TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>                                if (XMLCorePreferenceNames.TAB.equals(indentCharPref)) {</TD></TR><TR CLASS="z"><TD CLASS="l">45</TD><TD>                                        indentChar = '\t';</TD></TR><TR><TD CLASS="l">46</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>                                int indentationWidth = preferences.getInt(XMLCorePreferenceNames.INDENTATION_SIZE);</TD></TR><TR><TD CLASS="l">48</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>                                StringBuffer indent = new StringBuffer();</TD></TR><TR CLASS="z"><TD CLASS="l">50</TD><TD>                                for (int i = 0; i &lt; indentationWidth; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>                                        indent.append(indentChar);</TD></TR><TR><TD CLASS="l">52</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>                                fFormatPreferences.setIndent(indent.toString());</TD></TR><TR><TD CLASS="l">54</TD><TD>                        }</TD></TR><TR><TD CLASS="l">55</TD><TD>                }</TD></TR><TR><TD CLASS="l">56</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>                return fFormatPreferences;</TD></TR><TR><TD CLASS="l"><A NAME="4">58</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">59</TD><TD> </TD></TR><TR><TD CLASS="l">60</TD><TD>        protected IStructuredFormatter getFormatter(Node node) {</TD></TR><TR><TD CLASS="l">61</TD><TD>                // 262135 - NPE during format of empty document</TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>                if (node == null)</TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>                        return null;</TD></TR><TR><TD CLASS="l">64</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>                short nodeType = node.getNodeType();</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                IStructuredFormatter formatter = null;</TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>                switch (nodeType) {</TD></TR><TR><TD CLASS="l">68</TD><TD>                        case Node.ELEMENT_NODE : {</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                                formatter = new ElementNodeFormatter();</TD></TR><TR CLASS="z"><TD CLASS="l">70</TD><TD>                                break;</TD></TR><TR><TD CLASS="l">71</TD><TD>                        }</TD></TR><TR><TD CLASS="l">72</TD><TD>                        case Node.TEXT_NODE : {</TD></TR><TR CLASS="z"><TD CLASS="l">73</TD><TD>                                formatter = new TextNodeFormatter();</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>                                break;</TD></TR><TR><TD CLASS="l">75</TD><TD>                        }</TD></TR><TR><TD CLASS="l">76</TD><TD>                        case Node.CDATA_SECTION_NODE : {</TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>                                formatter = new NoMoveFormatter();</TD></TR><TR CLASS="z"><TD CLASS="l">78</TD><TD>                                break;</TD></TR><TR><TD CLASS="l">79</TD><TD>                        }</TD></TR><TR><TD CLASS="l">80</TD><TD>                        case Node.COMMENT_NODE : {</TD></TR><TR CLASS="z"><TD CLASS="l">81</TD><TD>                                formatter = new CommentNodeFormatter();</TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>                                break;</TD></TR><TR><TD CLASS="l">83</TD><TD>                        }</TD></TR><TR><TD CLASS="l">84</TD><TD>                        case Node.PROCESSING_INSTRUCTION_NODE : {</TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>                                formatter = new NodeFormatter();</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                                break;</TD></TR><TR><TD CLASS="l">87</TD><TD>                        }</TD></TR><TR><TD CLASS="l">88</TD><TD>                        case Node.DOCUMENT_NODE : {</TD></TR><TR CLASS="z"><TD CLASS="l">89</TD><TD>                                formatter = new DocumentNodeFormatter();</TD></TR><TR CLASS="z"><TD CLASS="l">90</TD><TD>                                break;</TD></TR><TR><TD CLASS="l">91</TD><TD>                        }</TD></TR><TR><TD CLASS="l">92</TD><TD>                        case Node.ENTITY_REFERENCE_NODE : {</TD></TR><TR CLASS="z"><TD CLASS="l">93</TD><TD>                                formatter = new NoMoveFormatter();</TD></TR><TR CLASS="z"><TD CLASS="l">94</TD><TD>                                break;</TD></TR><TR><TD CLASS="l">95</TD><TD>                        }</TD></TR><TR><TD CLASS="l">96</TD><TD>                        default : {</TD></TR><TR CLASS="z"><TD CLASS="l">97</TD><TD>                                formatter = new NodeFormatter();</TD></TR><TR><TD CLASS="l">98</TD><TD>                        }</TD></TR><TR><TD CLASS="l">99</TD><TD>                }</TD></TR><TR><TD CLASS="l">100</TD><TD> </TD></TR><TR><TD CLASS="l">101</TD><TD>                // init fomatter</TD></TR><TR CLASS="z"><TD CLASS="l">102</TD><TD>                formatter.setFormatPreferences(getFormatPreferences());</TD></TR><TR CLASS="z"><TD CLASS="l">103</TD><TD>                formatter.setProgressMonitor(fProgressMonitor);</TD></TR><TR><TD CLASS="l">104</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="5">105</A></TD><TD>                return formatter;</TD></TR><TR><TD CLASS="l">106</TD><TD>        }</TD></TR><TR><TD CLASS="l">107</TD><TD> </TD></TR><TR><TD CLASS="l">108</TD><TD>        protected Preferences getModelPreferences() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="6">109</A></TD><TD>                return XMLCorePlugin.getDefault().getPluginPreferences();</TD></TR><TR><TD CLASS="l">110</TD><TD>        }</TD></TR><TR><TD CLASS="l">111</TD><TD> </TD></TR><TR><TD CLASS="l">112</TD><TD>        protected void refreshFormatPreferences() {</TD></TR><TR CLASS="z"><TD CLASS="l">113</TD><TD>                fFormatPreferences = null;</TD></TR><TR CLASS="z"><TD CLASS="l">114</TD><TD>        }</TD></TR><TR><TD CLASS="l">115</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="27.html">org.eclipse.wst.xml.core.internal.provisional.format</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/15c.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/15c.html
deleted file mode 100644
index 92db9d1..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/15c.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="27.html">org.eclipse.wst.xml.core.internal.provisional.format</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">NoMoveFormatter.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>NoMoveFormatter.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/3)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">NoMoveFormatter</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#0">NoMoveFormatter (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">formatIndentationAfterNode (IDOMNode, IStructuredFormatContraints): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#3">formatIndentationBeforeNode (IDOMNode, IStructuredFormatContraints): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2007 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">11</TD><TD>package org.eclipse.wst.xml.core.internal.provisional.format;</TD></TR><TR><TD CLASS="l">12</TD><TD> </TD></TR><TR><TD CLASS="l">13</TD><TD>import org.eclipse.wst.sse.core.internal.format.IStructuredFormatContraints;</TD></TR><TR><TD CLASS="l">14</TD><TD>import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;</TD></TR><TR><TD CLASS="l">15</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="0">16</A></TD><TD>/**</TD></TR><TR><TD CLASS="l">17</TD><TD> * Formats entities which really need no formatting. They are just like text</TD></TR><TR><TD CLASS="l">18</TD><TD> * nodes.</TD></TR><TR><TD CLASS="l"><A NAME="3">19</A></TD><TD> */</TD></TR><TR CLASS="z"><TD CLASS="l">20</TD><TD>class NoMoveFormatter extends NodeFormatter {</TD></TR><TR><TD CLASS="l">21</TD><TD>        protected void formatIndentationBeforeNode(IDOMNode node, IStructuredFormatContraints formatContraints) {</TD></TR><TR><TD CLASS="l">22</TD><TD>                // node nothing</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">23</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">24</TD><TD> </TD></TR><TR><TD CLASS="l">25</TD><TD>        protected void formatIndentationAfterNode(IDOMNode node, IStructuredFormatContraints formatContraints) {</TD></TR><TR><TD CLASS="l">26</TD><TD>                // still do nothing</TD></TR><TR CLASS="z"><TD CLASS="l">27</TD><TD>        }</TD></TR><TR><TD CLASS="l">28</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="27.html">org.eclipse.wst.xml.core.internal.provisional.format</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/15d.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/15d.html
deleted file mode 100644
index a5c71d6..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/15d.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="27.html">org.eclipse.wst.xml.core.internal.provisional.format</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">NodeFormatter.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>NodeFormatter.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/32)</TD><TD CLASS="h">0%   (0/1547)</TD><TD CLASS="h">0%   (0/329)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">NodeFormatter</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/32)</TD><TD CLASS="h">0%   (0/1547)</TD><TD CLASS="h">0%   (0/329)</TD></TR><TR><TD CLASS="f"><A HREF="#0">NodeFormatter (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">firstStructuredDocumentRegionContainsLineDelimiters (IDOMNode): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/17)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR><TD CLASS="f"><A HREF="#3">format (Node): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">format (Node, IStructuredFormatContraints): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/17)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#5">formatIndentationAfterNode (IDOMNode, IStructuredFormatContraints): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/207)</TD><TD CLASS="h">0%   (0/38)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">formatIndentationBeforeNode (IDOMNode, IStructuredFormatContraints): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/143)</TD><TD CLASS="h">0%   (0/30)</TD></TR><TR><TD CLASS="f"><A HREF="#7">formatNode (IDOMNode, IStructuredFormatContraints): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/18)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">formatTrailingText (IDOMNode, IStructuredFormatContraints): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/287)</TD><TD CLASS="h">0%   (0/42)</TD></TR><TR><TD CLASS="f"><A HREF="#9">getDeepestChildNode (IDOMNode): IDOMNode</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/31)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">getFormatContraints (): IStructuredFormatContraints</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/17)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#b">getFormatPreferences (): IStructuredFormatPreferences</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/85)</TD><TD CLASS="h">0%   (0/19)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#c">getFormatter (IDOMNode): IStructuredFormatter</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/60)</TD><TD CLASS="h">0%   (0/23)</TD></TR><TR><TD CLASS="f"><A HREF="#d">getIndentationLength (String): int</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/24)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#e">getLineDelimiter (IDOMNode, IStructuredDocument): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/29)</TD><TD CLASS="h">0%   (0/9)</TD></TR><TR><TD CLASS="f"><A HREF="#f">getModelPreferences (): Preferences</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#10">getNodeIndent (Node): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/80)</TD><TD CLASS="h">0%   (0/13)</TD></TR><TR><TD CLASS="f"><A HREF="#11">getNodeName (IDOMNode): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#12">getNodeText (IDOMNode): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/26)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#13">getParentIndentNode (IDOMNode): IDOMNode</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/30)</TD><TD CLASS="h">0%   (0/9)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#14">getSiblingIndent (Node): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/136)</TD><TD CLASS="h">0%   (0/26)</TD></TR><TR><TD CLASS="f"><A HREF="#15">insertAfterNode (IDOMNode, String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/30)</TD><TD CLASS="h">0%   (0/9)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#16">insertBeforeNode (IDOMNode, String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/14)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#17">isAdapterForType (Object): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/18)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#18">isEndTagMissing (IDOMNode): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/69)</TD><TD CLASS="h">0%   (0/14)</TD></TR><TR><TD CLASS="f"><A HREF="#19">isJSPTag (Node): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/68)</TD><TD CLASS="h">0%   (0/17)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#1a">nodeHasSiblings (IDOMNode): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#1b">notifyChanged (INodeNotifier, int, Object, Object, Object, int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#1c">removeRegionSpaces (IDOMNode, IStructuredDocumentRegion, ITextRegion): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/36)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#1d">replace (IStructuredDocument, int, int, String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/23)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#1e">replaceNodeValue (IDOMNode, String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/37)</TD><TD CLASS="h">0%   (0/10)</TD></TR><TR><TD CLASS="f"><A HREF="#1f">setFormatPreferences (IStructuredFormatPreferences): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#20">setProgressMonitor (IProgressMonitor): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2007 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     Jesper Steen M�ller - xml:space='preserve' support</TD></TR><TR><TD CLASS="l">12</TD><TD> *     </TD></TR><TR><TD CLASS="l">13</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">14</TD><TD>package org.eclipse.wst.xml.core.internal.provisional.format;</TD></TR><TR><TD CLASS="l">15</TD><TD> </TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.core.runtime.IProgressMonitor;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.core.runtime.Preferences;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.jface.text.BadLocationException;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.wst.sse.core.internal.format.IStructuredFormatContraints;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.wst.sse.core.internal.format.IStructuredFormatPreferences;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.wst.sse.core.internal.format.IStructuredFormatter;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.wst.sse.core.internal.format.StructuredFormatContraints;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.wst.sse.core.internal.parser.ContextRegion;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionList;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.wst.sse.core.utils.StringUtils;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.wst.xml.core.internal.Logger;</TD></TR><TR><TD CLASS="l">30</TD><TD>import org.eclipse.wst.xml.core.internal.XMLCorePlugin;</TD></TR><TR><TD CLASS="l">31</TD><TD>import org.eclipse.wst.xml.core.internal.document.CDATASectionImpl;</TD></TR><TR><TD CLASS="l">32</TD><TD>import org.eclipse.wst.xml.core.internal.document.CharacterDataImpl;</TD></TR><TR><TD CLASS="l">33</TD><TD>import org.eclipse.wst.xml.core.internal.document.CommentImpl;</TD></TR><TR><TD CLASS="l">34</TD><TD>import org.eclipse.wst.xml.core.internal.parser.regions.TagNameRegion;</TD></TR><TR><TD CLASS="l">35</TD><TD>import org.eclipse.wst.xml.core.internal.preferences.XMLCorePreferenceNames;</TD></TR><TR><TD CLASS="l">36</TD><TD>import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;</TD></TR><TR><TD CLASS="l"><A NAME="0">37</A></TD><TD>import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;</TD></TR><TR><TD CLASS="l">38</TD><TD>import org.eclipse.wst.xml.core.internal.regions.DOMRegionContext;</TD></TR><TR><TD CLASS="l">39</TD><TD>import org.w3c.dom.Node;</TD></TR><TR><TD CLASS="l">40</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>public class NodeFormatter implements IStructuredFormatter {</TD></TR><TR><TD CLASS="l">42</TD><TD>        static protected final String EMPTY_STRING = &#34;&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">43</TD><TD>        static private final char SPACE_CHAR = ' '; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">44</TD><TD>        static private final char TAB_CHAR = '\t'; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">45</TD><TD>        static private final String TAB = &#34;\t&#34;; //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>        protected IStructuredFormatContraints fFormatContraints = null;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">47</A></TD><TD>        protected IStructuredFormatPreferences fFormatPreferences = null;</TD></TR><TR CLASS="z"><TD CLASS="l">48</TD><TD>        protected IProgressMonitor fProgressMonitor = null;</TD></TR><TR><TD CLASS="l">49</TD><TD> </TD></TR><TR><TD CLASS="l">50</TD><TD>        protected boolean firstStructuredDocumentRegionContainsLineDelimiters(IDOMNode node) {</TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>                boolean result = false;</TD></TR><TR><TD CLASS="l">52</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>                if (node != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">54</TD><TD>                        IStructuredDocumentRegion firstStructuredDocumentRegion = node.getFirstStructuredDocumentRegion();</TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                        if (firstStructuredDocumentRegion != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>                                String firstStructuredDocumentRegionText = firstStructuredDocumentRegion.getText();</TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>                                result = StringUtils.containsLineDelimiter(firstStructuredDocumentRegionText);</TD></TR><TR><TD CLASS="l">58</TD><TD>                        }</TD></TR><TR><TD CLASS="l">59</TD><TD>                }</TD></TR><TR><TD CLASS="l">60</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">61</A></TD><TD>                return result;</TD></TR><TR><TD CLASS="l">62</TD><TD>        }</TD></TR><TR><TD CLASS="l">63</TD><TD> </TD></TR><TR><TD CLASS="l">64</TD><TD>        public void format(Node node) {</TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>                IStructuredFormatContraints formatContraints = getFormatContraints();</TD></TR><TR><TD CLASS="l">66</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">67</A></TD><TD>                format(node, formatContraints);</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>        }</TD></TR><TR><TD CLASS="l">69</TD><TD> </TD></TR><TR><TD CLASS="l">70</TD><TD>        public void format(Node node, IStructuredFormatContraints formatContraints) {</TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>                if (formatContraints.getFormatWithSiblingIndent())</TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>                        formatContraints.setCurrentIndent(getSiblingIndent(node));</TD></TR><TR><TD CLASS="l">73</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>                if (node instanceof IDOMNode)</TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>                        formatNode((IDOMNode) node, formatContraints);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="5">76</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">77</TD><TD> </TD></TR><TR><TD CLASS="l">78</TD><TD>        protected void formatIndentationAfterNode(IDOMNode node, IStructuredFormatContraints formatContraints) {</TD></TR><TR><TD CLASS="l">79</TD><TD>                // [111674] If inside xml:space=&#34;preserve&#34; element, we bail</TD></TR><TR CLASS="z"><TD CLASS="l">80</TD><TD>                if (formatContraints.getInPreserveSpaceElement())</TD></TR><TR CLASS="z"><TD CLASS="l">81</TD><TD>                        return;</TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>                if (node != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">83</TD><TD>                        IDOMNode nextSibling = (IDOMNode) node.getNextSibling();</TD></TR><TR CLASS="z"><TD CLASS="l">84</TD><TD>                        IStructuredDocument doc = node.getModel().getStructuredDocument();</TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>                        String lineDelimiter = getLineDelimiter(node, doc);</TD></TR><TR><TD CLASS="l">86</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>                        if (node.getParentNode() != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">88</TD><TD>                                if (node.getParentNode().getNodeType() == Node.DOCUMENT_NODE)</TD></TR><TR CLASS="z"><TD CLASS="l">89</TD><TD>                                        if (nextSibling != null)</TD></TR><TR CLASS="z"><TD CLASS="l">90</TD><TD>                                                if (nextSibling.getNodeType() == Node.TEXT_NODE)</TD></TR><TR CLASS="z"><TD CLASS="l">91</TD><TD>                                                        getFormatter(nextSibling).format(nextSibling, formatContraints);</TD></TR><TR CLASS="z"><TD CLASS="l">92</TD><TD>                                                else if (nextSibling.getNodeType() == Node.COMMENT_NODE) {</TD></TR><TR><TD CLASS="l">93</TD><TD>                                                        // do nothing</TD></TR><TR><TD CLASS="l">94</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">95</TD><TD>                                                else {</TD></TR><TR CLASS="z"><TD CLASS="l">96</TD><TD>                                                        String lineIndent = formatContraints.getCurrentIndent();</TD></TR><TR CLASS="z"><TD CLASS="l">97</TD><TD>                                                        insertAfterNode(node, lineDelimiter + lineIndent);</TD></TR><TR><TD CLASS="l">98</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">99</TD><TD>                                        else {</TD></TR><TR><TD CLASS="l">100</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">101</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">102</TD><TD>                                else if (nextSibling != null)</TD></TR><TR CLASS="z"><TD CLASS="l">103</TD><TD>                                        if (nextSibling.getNodeType() == Node.TEXT_NODE)</TD></TR><TR CLASS="z"><TD CLASS="l">104</TD><TD>                                                getFormatter(nextSibling).format(nextSibling, formatContraints);</TD></TR><TR CLASS="z"><TD CLASS="l">105</TD><TD>                                        else if (nextSibling.getNodeType() == Node.COMMENT_NODE) {</TD></TR><TR><TD CLASS="l">106</TD><TD>                                                // do nothing</TD></TR><TR><TD CLASS="l">107</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">108</TD><TD>                                        else {</TD></TR><TR CLASS="z"><TD CLASS="l">109</TD><TD>                                                String lineIndent = formatContraints.getCurrentIndent();</TD></TR><TR CLASS="z"><TD CLASS="l">110</TD><TD>                                                insertAfterNode(node, lineDelimiter + lineIndent);</TD></TR><TR><TD CLASS="l">111</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">112</TD><TD>                                else {</TD></TR><TR CLASS="z"><TD CLASS="l">113</TD><TD>                                        IDOMNode indentNode = getParentIndentNode(node);</TD></TR><TR CLASS="z"><TD CLASS="l">114</TD><TD>                                        String lineIndent = getNodeIndent(indentNode);</TD></TR><TR CLASS="z"><TD CLASS="l">115</TD><TD>                                        IDOMNode lastChild = getDeepestChildNode(node);</TD></TR><TR CLASS="z"><TD CLASS="l">116</TD><TD>                                        boolean clearAllBlankLines = formatContraints.getClearAllBlankLines();</TD></TR><TR><TD CLASS="l">117</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">118</TD><TD>                                        if (lastChild != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">119</TD><TD>                                                if ((lastChild.getNodeType() == Node.TEXT_NODE) &amp;&amp; (lastChild.getNodeValue().endsWith(lineDelimiter + lineIndent))) {</TD></TR><TR><TD CLASS="l">120</TD><TD>                                                        // this text node already ends with the requested</TD></TR><TR><TD CLASS="l">121</TD><TD>                                                        // indentation</TD></TR><TR><TD CLASS="l">122</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">123</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">124</TD><TD>                                                else if ((lastChild.getNodeType() == Node.TEXT_NODE) &amp;&amp; (lastChild.getNodeValue() != null &amp;&amp; lastChild.getNodeValue().endsWith(lineDelimiter)))</TD></TR><TR CLASS="z"><TD CLASS="l">125</TD><TD>                                                        if (clearAllBlankLines) {</TD></TR><TR CLASS="z"><TD CLASS="l">126</TD><TD>                                                                replaceNodeValue(lastChild, lineDelimiter + lineIndent);</TD></TR><TR><TD CLASS="l">127</TD><TD>                                                        }</TD></TR><TR><TD CLASS="l">128</TD><TD>                                                        else {</TD></TR><TR><TD CLASS="l">129</TD><TD>                                                                // append indentation</TD></TR><TR CLASS="z"><TD CLASS="l">130</TD><TD>                                                                insertAfterNode(lastChild, lineIndent);</TD></TR><TR><TD CLASS="l">131</TD><TD>                                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">132</TD><TD>                                                else if (lastChild.getNodeType() == Node.TEXT_NODE)</TD></TR><TR CLASS="z"><TD CLASS="l">133</TD><TD>                                                        if (lastChild.getNodeValue().length() == 0) {</TD></TR><TR><TD CLASS="l">134</TD><TD>                                                                // replace</TD></TR><TR CLASS="z"><TD CLASS="l">135</TD><TD>                                                                replaceNodeValue(lastChild, lineDelimiter + lineIndent);</TD></TR><TR><TD CLASS="l">136</TD><TD>                                                        }</TD></TR><TR><TD CLASS="l">137</TD><TD>                                                        else {</TD></TR><TR><TD CLASS="l">138</TD><TD>                                                                // append indentation</TD></TR><TR CLASS="z"><TD CLASS="l">139</TD><TD>                                                                insertAfterNode(lastChild, lineDelimiter + lineIndent);</TD></TR><TR><TD CLASS="l">140</TD><TD>                                                        }</TD></TR><TR><TD CLASS="l">141</TD><TD>                                                else {</TD></TR><TR><TD CLASS="l">142</TD><TD>                                                        // as long as not at the end of the document</TD></TR><TR CLASS="z"><TD CLASS="l">143</TD><TD>                                                        IStructuredDocumentRegion endRegion = node.getLastStructuredDocumentRegion();</TD></TR><TR CLASS="z"><TD CLASS="l">144</TD><TD>                                                        if (endRegion != null &amp;&amp; endRegion.getNext() != null)</TD></TR><TR><TD CLASS="l">145</TD><TD>                                                                // append indentation</TD></TR><TR CLASS="z"><TD CLASS="l">146</TD><TD>                                                                insertAfterNode(lastChild, lineDelimiter + lineIndent);</TD></TR><TR><TD CLASS="l">147</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">148</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">149</TD><TD>                                }</TD></TR><TR><TD CLASS="l">150</TD><TD>                        }</TD></TR><TR><TD CLASS="l">151</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="6">152</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">153</TD><TD> </TD></TR><TR><TD CLASS="l">154</TD><TD>        protected void formatIndentationBeforeNode(IDOMNode node, IStructuredFormatContraints formatContraints) {</TD></TR><TR><TD CLASS="l">155</TD><TD>                // [111674] If inside xml:space=&#34;preserve&#34; element, we bail</TD></TR><TR CLASS="z"><TD CLASS="l">156</TD><TD>                if (formatContraints.getInPreserveSpaceElement())</TD></TR><TR CLASS="z"><TD CLASS="l">157</TD><TD>                        return;</TD></TR><TR CLASS="z"><TD CLASS="l">158</TD><TD>                if (node != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">159</TD><TD>                        IDOMNode previousSibling = (IDOMNode) node.getPreviousSibling();</TD></TR><TR CLASS="z"><TD CLASS="l">160</TD><TD>                        IStructuredDocument doc = node.getModel().getStructuredDocument();</TD></TR><TR CLASS="z"><TD CLASS="l">161</TD><TD>                        String lineDelimiter = getLineDelimiter(node, doc);</TD></TR><TR><TD CLASS="l">162</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">163</TD><TD>                        String lineIndent = formatContraints.getCurrentIndent();</TD></TR><TR><TD CLASS="l">164</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">165</TD><TD>                        if (node.getParentNode() != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">166</TD><TD>                                if (node.getParentNode().getNodeType() == Node.DOCUMENT_NODE) {</TD></TR><TR CLASS="z"><TD CLASS="l">167</TD><TD>                                        if (previousSibling != null)</TD></TR><TR CLASS="z"><TD CLASS="l">168</TD><TD>                                                if (previousSibling.getNodeType() == Node.TEXT_NODE)</TD></TR><TR CLASS="z"><TD CLASS="l">169</TD><TD>                                                        getFormatter(previousSibling).format(previousSibling, formatContraints);</TD></TR><TR><TD CLASS="l">170</TD><TD>                                                else {</TD></TR><TR CLASS="z"><TD CLASS="l">171</TD><TD>                                                        insertBeforeNode(node, lineDelimiter + lineIndent);</TD></TR><TR><TD CLASS="l">172</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">173</TD><TD>                                }</TD></TR><TR><TD CLASS="l">174</TD><TD>                                else {</TD></TR><TR CLASS="z"><TD CLASS="l">175</TD><TD>                                        if (previousSibling == null || previousSibling.getNodeType() != Node.TEXT_NODE) {</TD></TR><TR><TD CLASS="l">176</TD><TD>                                                // 261968 - formatting tag without closing bracket:</TD></TR><TR><TD CLASS="l">177</TD><TD>                                                // &lt;t1&gt;&lt;t1</TD></TR><TR><TD CLASS="l">178</TD><TD>                                                // 265673 - Null ptr in formatIndentationBeforeNode</TD></TR><TR CLASS="z"><TD CLASS="l">179</TD><TD>                                                int prevEndNodeOffset = -1;</TD></TR><TR CLASS="z"><TD CLASS="l">180</TD><TD>                                                int prevEndRegionOffset = -1;</TD></TR><TR CLASS="z"><TD CLASS="l">181</TD><TD>                                                if (previousSibling != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">182</TD><TD>                                                        prevEndNodeOffset = previousSibling.getEndOffset();</TD></TR><TR CLASS="z"><TD CLASS="l">183</TD><TD>                                                        IStructuredDocumentRegion endRegion = previousSibling.getEndStructuredDocumentRegion();</TD></TR><TR CLASS="z"><TD CLASS="l">184</TD><TD>                                                        if (endRegion != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">185</TD><TD>                                                                prevEndRegionOffset = endRegion.getTextEndOffset();</TD></TR><TR><TD CLASS="l">186</TD><TD>                                                        }</TD></TR><TR><TD CLASS="l">187</TD><TD>                                                }</TD></TR><TR CLASS="z"><TD CLASS="l">188</TD><TD>                                                if ((previousSibling == null) || (prevEndNodeOffset != -1 &amp;&amp; prevEndNodeOffset == prevEndRegionOffset)) {</TD></TR><TR CLASS="z"><TD CLASS="l">189</TD><TD>                                                        insertBeforeNode(node, lineDelimiter + lineIndent);</TD></TR><TR><TD CLASS="l">190</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">191</TD><TD> </TD></TR><TR><TD CLASS="l">192</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">193</TD><TD>                                        else {</TD></TR><TR CLASS="z"><TD CLASS="l">194</TD><TD>                                                if (previousSibling.getNodeValue().length() == 0) {</TD></TR><TR><TD CLASS="l">195</TD><TD>                                                        // replace</TD></TR><TR CLASS="z"><TD CLASS="l">196</TD><TD>                                                        replaceNodeValue(previousSibling, lineDelimiter + lineIndent);</TD></TR><TR><TD CLASS="l">197</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">198</TD><TD>                                                else {</TD></TR><TR><TD CLASS="l">199</TD><TD>                                                        // append indentation</TD></TR><TR CLASS="z"><TD CLASS="l">200</TD><TD>                                                        if (!previousSibling.getNodeValue().endsWith(lineDelimiter + lineIndent)) {</TD></TR><TR CLASS="z"><TD CLASS="l">201</TD><TD>                                                                if (previousSibling.getNodeValue().endsWith(lineDelimiter)) {</TD></TR><TR CLASS="z"><TD CLASS="l">202</TD><TD>                                                                        insertAfterNode(previousSibling, lineIndent);</TD></TR><TR><TD CLASS="l">203</TD><TD>                                                                }</TD></TR><TR><TD CLASS="l">204</TD><TD>                                                                else</TD></TR><TR CLASS="z"><TD CLASS="l">205</TD><TD>                                                                        getFormatter(previousSibling).format(previousSibling, formatContraints);</TD></TR><TR><TD CLASS="l">206</TD><TD>                                                        }</TD></TR><TR><TD CLASS="l">207</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">208</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">209</TD><TD>                                }</TD></TR><TR><TD CLASS="l">210</TD><TD>                        }</TD></TR><TR><TD CLASS="l"><A NAME="e">211</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">212</TD><TD>        }</TD></TR><TR><TD CLASS="l">213</TD><TD> </TD></TR><TR><TD CLASS="l">214</TD><TD>        private String getLineDelimiter(IDOMNode node, IStructuredDocument doc) {</TD></TR><TR CLASS="z"><TD CLASS="l">215</TD><TD>                int line = doc.getLineOfOffset(node.getStartOffset());</TD></TR><TR CLASS="z"><TD CLASS="l">216</TD><TD>                String lineDelimiter = doc.getLineDelimiter();</TD></TR><TR><TD CLASS="l">217</TD><TD>                try {</TD></TR><TR CLASS="z"><TD CLASS="l">218</TD><TD>                        if (line &gt; 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">219</TD><TD>                                lineDelimiter = doc.getLineDelimiter(line - 1);</TD></TR><TR><TD CLASS="l">220</TD><TD>                        }</TD></TR><TR><TD CLASS="l">221</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">222</TD><TD>                catch (BadLocationException e) {</TD></TR><TR><TD CLASS="l">223</TD><TD>                        // log for now, unless we find reason not to</TD></TR><TR CLASS="z"><TD CLASS="l">224</TD><TD>                        Logger.log(Logger.INFO, e.getMessage());</TD></TR><TR><TD CLASS="l">225</TD><TD>                }</TD></TR><TR><TD CLASS="l">226</TD><TD>                // BUG115716: if cannot get line delimiter from current line, just</TD></TR><TR><TD CLASS="l">227</TD><TD>                // use default line delimiter</TD></TR><TR CLASS="z"><TD CLASS="l">228</TD><TD>                if (lineDelimiter == null)</TD></TR><TR CLASS="z"><TD CLASS="l">229</TD><TD>                        lineDelimiter = doc.getLineDelimiter();</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="7">230</A></TD><TD>                return lineDelimiter;</TD></TR><TR><TD CLASS="l">231</TD><TD>        }</TD></TR><TR><TD CLASS="l">232</TD><TD> </TD></TR><TR><TD CLASS="l">233</TD><TD>        protected void formatNode(IDOMNode node, IStructuredFormatContraints formatContraints) {</TD></TR><TR CLASS="z"><TD CLASS="l">234</TD><TD>                if (node != null &amp;&amp; (fProgressMonitor == null || !fProgressMonitor.isCanceled())) {</TD></TR><TR><TD CLASS="l">235</TD><TD>                        // format indentation before node</TD></TR><TR CLASS="z"><TD CLASS="l">236</TD><TD>                        formatIndentationBeforeNode(node, formatContraints);</TD></TR><TR><TD CLASS="l">237</TD><TD> </TD></TR><TR><TD CLASS="l">238</TD><TD>                        // format indentation after node</TD></TR><TR CLASS="z"><TD CLASS="l">239</TD><TD>                        formatIndentationAfterNode(node, formatContraints);</TD></TR><TR><TD CLASS="l">240</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">241</TD><TD>        }</TD></TR><TR><TD CLASS="l">242</TD><TD> </TD></TR><TR><TD CLASS="l">243</TD><TD>        /**</TD></TR><TR><TD CLASS="l">244</TD><TD>         * This method will compute the correct indentation after this node</TD></TR><TR><TD CLASS="l">245</TD><TD>         * depending on the indentations of its sibling nodes and parent node. Not</TD></TR><TR><TD CLASS="l"><A NAME="8">246</A></TD><TD>         * needed anymore?</TD></TR><TR><TD CLASS="l">247</TD><TD>         */</TD></TR><TR><TD CLASS="l">248</TD><TD>        protected void formatTrailingText(IDOMNode node, IStructuredFormatContraints formatContraints) {</TD></TR><TR><TD CLASS="l">249</TD><TD>                // [111674] If inside xml:space=&#34;preserve&#34; element, we bail</TD></TR><TR CLASS="z"><TD CLASS="l">250</TD><TD>                if (formatContraints.getInPreserveSpaceElement())</TD></TR><TR CLASS="z"><TD CLASS="l">251</TD><TD>                        return;</TD></TR><TR><TD CLASS="l">252</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">253</TD><TD>                String lineDelimiter = node.getModel().getStructuredDocument().getLineDelimiter();</TD></TR><TR CLASS="z"><TD CLASS="l">254</TD><TD>                String lineIndent = formatContraints.getCurrentIndent();</TD></TR><TR CLASS="z"><TD CLASS="l">255</TD><TD>                String parentLineIndent = getNodeIndent(node.getParentNode());</TD></TR><TR CLASS="z"><TD CLASS="l">256</TD><TD>                boolean clearAllBlankLines = formatContraints.getClearAllBlankLines();</TD></TR><TR><TD CLASS="l">257</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">258</TD><TD>                if ((node != null) &amp;&amp; (node.getNodeType() != Node.DOCUMENT_NODE)) {</TD></TR><TR CLASS="z"><TD CLASS="l">259</TD><TD>                        IDOMNode nextSibling = (IDOMNode) node.getNextSibling();</TD></TR><TR CLASS="z"><TD CLASS="l">260</TD><TD>                        if ((nextSibling != null) &amp;&amp; (nextSibling.getNodeType() == Node.TEXT_NODE)) {</TD></TR><TR CLASS="z"><TD CLASS="l">261</TD><TD>                                String nextSiblingText = nextSibling.getNodeValue();</TD></TR><TR CLASS="z"><TD CLASS="l">262</TD><TD>                                if (nextSibling.getNextSibling() == null)</TD></TR><TR CLASS="z"><TD CLASS="l">263</TD><TD>                                        if ((nextSibling.getParentNode().getNodeType() == Node.DOCUMENT_NODE) &amp;&amp; (nextSiblingText.trim().length() == 0))</TD></TR><TR><TD CLASS="l">264</TD><TD>                                                // delete spaces at the end of the document</TD></TR><TR CLASS="z"><TD CLASS="l">265</TD><TD>                                                replaceNodeValue(nextSibling, EMPTY_STRING);</TD></TR><TR><TD CLASS="l">266</TD><TD>                                        else</TD></TR><TR><TD CLASS="l">267</TD><TD>                                                // replace the text node with parent indentation</TD></TR><TR CLASS="z"><TD CLASS="l">268</TD><TD>                                                replaceNodeValue(nextSibling, lineDelimiter + parentLineIndent);</TD></TR><TR><TD CLASS="l">269</TD><TD>                                else</TD></TR><TR><TD CLASS="l">270</TD><TD>                                        // replace the text node with indentation</TD></TR><TR CLASS="z"><TD CLASS="l">271</TD><TD>                                        replaceNodeValue(nextSibling, lineDelimiter + lineIndent);</TD></TR><TR><TD CLASS="l">272</TD><TD>                        }</TD></TR><TR><TD CLASS="l">273</TD><TD>                        else {</TD></TR><TR CLASS="z"><TD CLASS="l">274</TD><TD>                                if (nextSibling == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">275</TD><TD>                                        lineIndent = parentLineIndent;</TD></TR><TR><TD CLASS="l">276</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">277</TD><TD>                                        if (node.getParentNode().getNodeType() != Node.DOCUMENT_NODE)</TD></TR><TR CLASS="z"><TD CLASS="l">278</TD><TD>                                                if ((node.getNodeType() == Node.TEXT_NODE) &amp;&amp; (node.getNodeValue().endsWith(lineDelimiter + lineIndent))) {</TD></TR><TR><TD CLASS="l">279</TD><TD>                                                        // this text node already ends with the requested</TD></TR><TR><TD CLASS="l">280</TD><TD>                                                        // indentation</TD></TR><TR><TD CLASS="l">281</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">282</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">283</TD><TD>                                                else if ((node.getNodeType() == Node.TEXT_NODE) &amp;&amp; (node.getNodeValue().endsWith(lineDelimiter)))</TD></TR><TR CLASS="z"><TD CLASS="l">284</TD><TD>                                                        if (clearAllBlankLines)</TD></TR><TR CLASS="z"><TD CLASS="l">285</TD><TD>                                                                replaceNodeValue(node, lineDelimiter + lineIndent);</TD></TR><TR><TD CLASS="l">286</TD><TD>                                                        else</TD></TR><TR><TD CLASS="l">287</TD><TD>                                                                // append indentation</TD></TR><TR CLASS="z"><TD CLASS="l">288</TD><TD>                                                                insertAfterNode(node, lineIndent);</TD></TR><TR CLASS="z"><TD CLASS="l">289</TD><TD>                                                else if (node.getNodeType() == Node.TEXT_NODE)</TD></TR><TR CLASS="z"><TD CLASS="l">290</TD><TD>                                                        if (node.getNodeValue().length() == 0)</TD></TR><TR><TD CLASS="l">291</TD><TD>                                                                // replace</TD></TR><TR CLASS="z"><TD CLASS="l">292</TD><TD>                                                                replaceNodeValue(node, lineDelimiter + lineIndent);</TD></TR><TR><TD CLASS="l">293</TD><TD>                                                        else</TD></TR><TR><TD CLASS="l">294</TD><TD>                                                        // append indentation</TD></TR><TR CLASS="z"><TD CLASS="l">295</TD><TD>                                                        if (!node.getNodeValue().endsWith(lineDelimiter + lineIndent))</TD></TR><TR CLASS="z"><TD CLASS="l">296</TD><TD>                                                                if (node.getNodeValue().endsWith(lineDelimiter))</TD></TR><TR CLASS="z"><TD CLASS="l">297</TD><TD>                                                                        insertAfterNode(node, lineIndent);</TD></TR><TR><TD CLASS="l">298</TD><TD>                                                                else</TD></TR><TR CLASS="z"><TD CLASS="l">299</TD><TD>                                                                        insertAfterNode(node, lineDelimiter + lineIndent);</TD></TR><TR><TD CLASS="l">300</TD><TD>                                                        else</TD></TR><TR CLASS="z"><TD CLASS="l">301</TD><TD>                                                                replaceNodeValue(node, lineDelimiter + lineIndent);</TD></TR><TR><TD CLASS="l">302</TD><TD>                                }</TD></TR><TR><TD CLASS="l">303</TD><TD>                                else {</TD></TR><TR CLASS="z"><TD CLASS="l">304</TD><TD>                                        if ((node.getNodeType() == Node.TEXT_NODE) &amp;&amp; (node.getNodeValue().endsWith(lineDelimiter + lineIndent))) {</TD></TR><TR><TD CLASS="l">305</TD><TD>                                                // this text node already ends with the requested</TD></TR><TR><TD CLASS="l">306</TD><TD>                                                // indentation</TD></TR><TR><TD CLASS="l">307</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">308</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">309</TD><TD>                                        else if ((node.getNodeType() == Node.TEXT_NODE) &amp;&amp; (node.getNodeValue().endsWith(lineDelimiter)))</TD></TR><TR CLASS="z"><TD CLASS="l">310</TD><TD>                                                if (clearAllBlankLines)</TD></TR><TR CLASS="z"><TD CLASS="l">311</TD><TD>                                                        replaceNodeValue(node, lineDelimiter + lineIndent);</TD></TR><TR><TD CLASS="l">312</TD><TD>                                                else</TD></TR><TR><TD CLASS="l">313</TD><TD>                                                        // append indentation</TD></TR><TR CLASS="z"><TD CLASS="l">314</TD><TD>                                                        insertAfterNode(node, lineIndent);</TD></TR><TR CLASS="z"><TD CLASS="l">315</TD><TD>                                        else if (node.getNodeType() == Node.TEXT_NODE)</TD></TR><TR CLASS="z"><TD CLASS="l">316</TD><TD>                                                if (node.getNodeValue().length() == 0)</TD></TR><TR><TD CLASS="l">317</TD><TD>                                                        // replace</TD></TR><TR CLASS="z"><TD CLASS="l">318</TD><TD>                                                        replaceNodeValue(node, lineDelimiter + lineIndent);</TD></TR><TR><TD CLASS="l">319</TD><TD>                                                else</TD></TR><TR><TD CLASS="l">320</TD><TD>                                                        // append indentation</TD></TR><TR CLASS="z"><TD CLASS="l">321</TD><TD>                                                        insertAfterNode(node, lineDelimiter + lineIndent);</TD></TR><TR><TD CLASS="l">322</TD><TD>                                        else</TD></TR><TR><TD CLASS="l">323</TD><TD>                                                // append indentation</TD></TR><TR CLASS="z"><TD CLASS="l">324</TD><TD>                                                insertAfterNode(node, lineDelimiter + lineIndent);</TD></TR><TR><TD CLASS="l">325</TD><TD>                                }</TD></TR><TR><TD CLASS="l">326</TD><TD>                        }</TD></TR><TR><TD CLASS="l"><A NAME="9">327</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">328</TD><TD>        }</TD></TR><TR><TD CLASS="l">329</TD><TD> </TD></TR><TR><TD CLASS="l">330</TD><TD>        protected IDOMNode getDeepestChildNode(IDOMNode node) {</TD></TR><TR CLASS="z"><TD CLASS="l">331</TD><TD>                IDOMNode result = null;</TD></TR><TR CLASS="z"><TD CLASS="l">332</TD><TD>                IDOMNode lastChild = (IDOMNode) node.getLastChild();</TD></TR><TR><TD CLASS="l">333</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">334</TD><TD>                if (lastChild == null)</TD></TR><TR CLASS="z"><TD CLASS="l">335</TD><TD>                        result = node;</TD></TR><TR><TD CLASS="l">336</TD><TD>                else {</TD></TR><TR CLASS="z"><TD CLASS="l">337</TD><TD>                        result = getDeepestChildNode(lastChild);</TD></TR><TR><TD CLASS="l">338</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">339</TD><TD>                        if ((result.getNodeType() == Node.TEXT_NODE || result.getNodeType() == Node.COMMENT_NODE) &amp;&amp; !isEndTagMissing(node))</TD></TR><TR CLASS="z"><TD CLASS="l">340</TD><TD>                                result = node;</TD></TR><TR><TD CLASS="l">341</TD><TD>                }</TD></TR><TR><TD CLASS="l">342</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="a">343</A></TD><TD>                return result;</TD></TR><TR><TD CLASS="l">344</TD><TD>        }</TD></TR><TR><TD CLASS="l">345</TD><TD> </TD></TR><TR><TD CLASS="l">346</TD><TD>        public IStructuredFormatContraints getFormatContraints() {</TD></TR><TR CLASS="z"><TD CLASS="l">347</TD><TD>                if (fFormatContraints == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">348</TD><TD>                        fFormatContraints = new StructuredFormatContraints();</TD></TR><TR><TD CLASS="l">349</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">350</TD><TD>                        fFormatContraints.setClearAllBlankLines(getFormatPreferences().getClearAllBlankLines());</TD></TR><TR><TD CLASS="l">351</TD><TD>                }</TD></TR><TR><TD CLASS="l">352</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="b">353</A></TD><TD>                return fFormatContraints;</TD></TR><TR><TD CLASS="l">354</TD><TD>        }</TD></TR><TR><TD CLASS="l">355</TD><TD> </TD></TR><TR><TD CLASS="l">356</TD><TD>        public IStructuredFormatPreferences getFormatPreferences() {</TD></TR><TR CLASS="z"><TD CLASS="l">357</TD><TD>                if (fFormatPreferences == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">358</TD><TD>                        fFormatPreferences = new StructuredFormatPreferencesXML();</TD></TR><TR><TD CLASS="l">359</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">360</TD><TD>                        Preferences preferences = getModelPreferences();</TD></TR><TR CLASS="z"><TD CLASS="l">361</TD><TD>                        if (preferences != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">362</TD><TD>                                fFormatPreferences.setLineWidth(preferences.getInt(XMLCorePreferenceNames.LINE_WIDTH));</TD></TR><TR CLASS="z"><TD CLASS="l">363</TD><TD>                                ((StructuredFormatPreferencesXML) fFormatPreferences).setSplitMultiAttrs(preferences.getBoolean(XMLCorePreferenceNames.SPLIT_MULTI_ATTRS));</TD></TR><TR CLASS="z"><TD CLASS="l">364</TD><TD>                                ((StructuredFormatPreferencesXML) fFormatPreferences).setAlignEndBracket(preferences.getBoolean(XMLCorePreferenceNames.ALIGN_END_BRACKET));</TD></TR><TR CLASS="z"><TD CLASS="l">365</TD><TD>                                ((StructuredFormatPreferencesXML) fFormatPreferences).setPreservePCDATAContent(preferences.getBoolean(XMLCorePreferenceNames.PRESERVE_CDATACONTENT));</TD></TR><TR CLASS="z"><TD CLASS="l">366</TD><TD>                                fFormatPreferences.setClearAllBlankLines(preferences.getBoolean(XMLCorePreferenceNames.CLEAR_ALL_BLANK_LINES));</TD></TR><TR><TD CLASS="l">367</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">368</TD><TD>                                char indentChar = ' ';</TD></TR><TR CLASS="z"><TD CLASS="l">369</TD><TD>                                String indentCharPref = preferences.getString(XMLCorePreferenceNames.INDENTATION_CHAR);</TD></TR><TR CLASS="z"><TD CLASS="l">370</TD><TD>                                if (XMLCorePreferenceNames.TAB.equals(indentCharPref)) {</TD></TR><TR CLASS="z"><TD CLASS="l">371</TD><TD>                                        indentChar = '\t';</TD></TR><TR><TD CLASS="l">372</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">373</TD><TD>                                int indentationWidth = preferences.getInt(XMLCorePreferenceNames.INDENTATION_SIZE);</TD></TR><TR><TD CLASS="l">374</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">375</TD><TD>                                StringBuffer indent = new StringBuffer();</TD></TR><TR CLASS="z"><TD CLASS="l">376</TD><TD>                                for (int i = 0; i &lt; indentationWidth; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">377</TD><TD>                                        indent.append(indentChar);</TD></TR><TR><TD CLASS="l">378</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">379</TD><TD>                                fFormatPreferences.setIndent(indent.toString());</TD></TR><TR><TD CLASS="l">380</TD><TD>                        }</TD></TR><TR><TD CLASS="l">381</TD><TD>                }</TD></TR><TR><TD CLASS="l">382</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">383</TD><TD>                return fFormatPreferences;</TD></TR><TR><TD CLASS="l"><A NAME="c">384</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">385</TD><TD> </TD></TR><TR><TD CLASS="l">386</TD><TD>        protected IStructuredFormatter getFormatter(IDOMNode node) {</TD></TR><TR><TD CLASS="l">387</TD><TD>                // 262135 - NPE during format of empty document</TD></TR><TR CLASS="z"><TD CLASS="l">388</TD><TD>                if (node == null)</TD></TR><TR CLASS="z"><TD CLASS="l">389</TD><TD>                        return null;</TD></TR><TR><TD CLASS="l">390</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">391</TD><TD>                short nodeType = ((Node) node).getNodeType();</TD></TR><TR CLASS="z"><TD CLASS="l">392</TD><TD>                IStructuredFormatter formatter = null;</TD></TR><TR CLASS="z"><TD CLASS="l">393</TD><TD>                switch (nodeType) {</TD></TR><TR><TD CLASS="l">394</TD><TD>                        case Node.ELEMENT_NODE : {</TD></TR><TR CLASS="z"><TD CLASS="l">395</TD><TD>                                formatter = new ElementNodeFormatter();</TD></TR><TR CLASS="z"><TD CLASS="l">396</TD><TD>                                break;</TD></TR><TR><TD CLASS="l">397</TD><TD>                        }</TD></TR><TR><TD CLASS="l">398</TD><TD>                        case Node.TEXT_NODE : {</TD></TR><TR CLASS="z"><TD CLASS="l">399</TD><TD>                                formatter = new TextNodeFormatter();</TD></TR><TR CLASS="z"><TD CLASS="l">400</TD><TD>                                break;</TD></TR><TR><TD CLASS="l">401</TD><TD>                        }</TD></TR><TR><TD CLASS="l">402</TD><TD>                        case Node.CDATA_SECTION_NODE : {</TD></TR><TR CLASS="z"><TD CLASS="l">403</TD><TD>                                formatter = new NoMoveFormatter();</TD></TR><TR CLASS="z"><TD CLASS="l">404</TD><TD>                                break;</TD></TR><TR><TD CLASS="l">405</TD><TD>                        }</TD></TR><TR><TD CLASS="l">406</TD><TD>                        case Node.COMMENT_NODE : {</TD></TR><TR CLASS="z"><TD CLASS="l">407</TD><TD>                                formatter = new CommentNodeFormatter();</TD></TR><TR CLASS="z"><TD CLASS="l">408</TD><TD>                                break;</TD></TR><TR><TD CLASS="l">409</TD><TD>                        }</TD></TR><TR><TD CLASS="l">410</TD><TD>                        case Node.PROCESSING_INSTRUCTION_NODE : {</TD></TR><TR CLASS="z"><TD CLASS="l">411</TD><TD>                                formatter = new NodeFormatter();</TD></TR><TR CLASS="z"><TD CLASS="l">412</TD><TD>                                break;</TD></TR><TR><TD CLASS="l">413</TD><TD>                        }</TD></TR><TR><TD CLASS="l">414</TD><TD>                        case Node.DOCUMENT_NODE : {</TD></TR><TR CLASS="z"><TD CLASS="l">415</TD><TD>                                formatter = new DocumentNodeFormatter();</TD></TR><TR CLASS="z"><TD CLASS="l">416</TD><TD>                                break;</TD></TR><TR><TD CLASS="l">417</TD><TD>                        }</TD></TR><TR><TD CLASS="l">418</TD><TD>                        case Node.ENTITY_REFERENCE_NODE : {</TD></TR><TR CLASS="z"><TD CLASS="l">419</TD><TD>                                formatter = new NoMoveFormatter();</TD></TR><TR CLASS="z"><TD CLASS="l">420</TD><TD>                                break;</TD></TR><TR><TD CLASS="l">421</TD><TD>                        }</TD></TR><TR><TD CLASS="l">422</TD><TD>                        default : {</TD></TR><TR CLASS="z"><TD CLASS="l">423</TD><TD>                                formatter = new NodeFormatter();</TD></TR><TR><TD CLASS="l">424</TD><TD>                        }</TD></TR><TR><TD CLASS="l">425</TD><TD>                }</TD></TR><TR><TD CLASS="l">426</TD><TD> </TD></TR><TR><TD CLASS="l">427</TD><TD>                // init fomatter</TD></TR><TR CLASS="z"><TD CLASS="l">428</TD><TD>                formatter.setFormatPreferences(getFormatPreferences());</TD></TR><TR CLASS="z"><TD CLASS="l">429</TD><TD>                formatter.setProgressMonitor(fProgressMonitor);</TD></TR><TR><TD CLASS="l">430</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">431</TD><TD>                return formatter;</TD></TR><TR><TD CLASS="l">432</TD><TD>        }</TD></TR><TR><TD CLASS="l">433</TD><TD> </TD></TR><TR><TD CLASS="l">434</TD><TD>        protected int getIndentationLength(String indent) {</TD></TR><TR><TD CLASS="l">435</TD><TD>                // TODO Kit : The calculation of IndentationLength is not correct</TD></TR><TR><TD CLASS="l">436</TD><TD>                // here.</TD></TR><TR><TD CLASS="l"><A NAME="d">437</A></TD><TD>                // nodeIndentation may contain tabs. Multiply by 4 temporarily to get</TD></TR><TR><TD CLASS="l">438</TD><TD>                // approx. width.</TD></TR><TR><TD CLASS="l">439</TD><TD>                // Need to re-work.</TD></TR><TR><TD CLASS="l">440</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">441</TD><TD>                int indentationLength = 0;</TD></TR><TR><TD CLASS="l">442</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">443</TD><TD>                for (int i = 0; i &lt; indent.length(); i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">444</TD><TD>                        if (indent.substring(i, i + 1).compareTo(TAB) == 0)</TD></TR><TR CLASS="z"><TD CLASS="l">445</TD><TD>                                indentationLength += 4;</TD></TR><TR><TD CLASS="l">446</TD><TD>                        else</TD></TR><TR CLASS="z"><TD CLASS="l">447</TD><TD>                                indentationLength++;</TD></TR><TR><TD CLASS="l">448</TD><TD>                }</TD></TR><TR><TD CLASS="l">449</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="f">450</A></TD><TD>                return indentationLength;</TD></TR><TR><TD CLASS="l">451</TD><TD>        }</TD></TR><TR><TD CLASS="l">452</TD><TD> </TD></TR><TR><TD CLASS="l">453</TD><TD>        protected Preferences getModelPreferences() {</TD></TR><TR CLASS="z"><TD CLASS="l">454</TD><TD>                return XMLCorePlugin.getDefault().getPluginPreferences();</TD></TR><TR><TD CLASS="l">455</TD><TD>        }</TD></TR><TR><TD CLASS="l">456</TD><TD> </TD></TR><TR><TD CLASS="l">457</TD><TD>        /**</TD></TR><TR><TD CLASS="l">458</TD><TD>         * This method will find the indentation for this node. It will search</TD></TR><TR><TD CLASS="l">459</TD><TD>         * backwards starting from the beginning of the node until a character</TD></TR><TR><TD CLASS="l">460</TD><TD>         * other than a space or a tab is found. If this node is null or it's a</TD></TR><TR><TD CLASS="l"><A NAME="10">461</A></TD><TD>         * document node or it's a first level node (node's parent is a document</TD></TR><TR><TD CLASS="l">462</TD><TD>         * node) the default empty string will be returned as the indentation.</TD></TR><TR><TD CLASS="l">463</TD><TD>         */</TD></TR><TR><TD CLASS="l">464</TD><TD>        protected String getNodeIndent(Node node) {</TD></TR><TR CLASS="z"><TD CLASS="l">465</TD><TD>                String result = EMPTY_STRING;</TD></TR><TR><TD CLASS="l">466</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">467</TD><TD>                if ((node != null) &amp;&amp; (node.getNodeType() != Node.DOCUMENT_NODE) &amp;&amp; (node.getParentNode() != null) &amp;&amp; (node.getParentNode().getNodeType() != Node.DOCUMENT_NODE)) {</TD></TR><TR CLASS="z"><TD CLASS="l">468</TD><TD>                        IDOMNode siblingTextNode = (IDOMNode) node.getPreviousSibling();</TD></TR><TR CLASS="z"><TD CLASS="l">469</TD><TD>                        if ((siblingTextNode != null) &amp;&amp; (siblingTextNode.getNodeType() == Node.TEXT_NODE)) {</TD></TR><TR><TD CLASS="l">470</TD><TD>                                // find the indentation</TD></TR><TR CLASS="z"><TD CLASS="l">471</TD><TD>                                String siblingText = siblingTextNode.getNodeValue();</TD></TR><TR CLASS="z"><TD CLASS="l">472</TD><TD>                                int siblingTextLength = siblingText.length();</TD></TR><TR CLASS="z"><TD CLASS="l">473</TD><TD>                                if ((siblingText != null) &amp;&amp; (siblingTextLength &gt; 0) &amp;&amp; ((siblingText.charAt(siblingTextLength - 1) == SPACE_CHAR) || (siblingText.charAt(siblingTextLength - 1) == TAB_CHAR))) {</TD></TR><TR CLASS="z"><TD CLASS="l">474</TD><TD>                                        int searchIndex = siblingTextLength - 1;</TD></TR><TR CLASS="z"><TD CLASS="l">475</TD><TD>                                        while ((searchIndex &gt;= 0) &amp;&amp; ((siblingText.charAt(searchIndex) == SPACE_CHAR) || (siblingText.charAt(searchIndex) == TAB_CHAR)))</TD></TR><TR CLASS="z"><TD CLASS="l">476</TD><TD>                                                searchIndex--;</TD></TR><TR><TD CLASS="l">477</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">478</TD><TD>                                        if (searchIndex &lt; siblingTextLength)</TD></TR><TR CLASS="z"><TD CLASS="l">479</TD><TD>                                                result = siblingText.substring(searchIndex + 1, siblingTextLength);</TD></TR><TR><TD CLASS="l">480</TD><TD>                                }</TD></TR><TR><TD CLASS="l">481</TD><TD>                        }</TD></TR><TR><TD CLASS="l">482</TD><TD>                }</TD></TR><TR><TD CLASS="l">483</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="11">484</A></TD><TD>                return result;</TD></TR><TR><TD CLASS="l">485</TD><TD>        }</TD></TR><TR><TD CLASS="l">486</TD><TD> </TD></TR><TR><TD CLASS="l">487</TD><TD>        protected String getNodeName(IDOMNode node) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="12">488</A></TD><TD>                return node.getNodeName();</TD></TR><TR><TD CLASS="l">489</TD><TD>        }</TD></TR><TR><TD CLASS="l">490</TD><TD> </TD></TR><TR><TD CLASS="l">491</TD><TD>        protected String getNodeText(IDOMNode node) {</TD></TR><TR CLASS="z"><TD CLASS="l">492</TD><TD>                String text = null;</TD></TR><TR><TD CLASS="l">493</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">494</TD><TD>                if ((node instanceof CharacterDataImpl) &amp;&amp; !(node instanceof CommentImpl) &amp;&amp; !(node instanceof CDATASectionImpl) &amp;&amp; !isJSPTag(node))</TD></TR><TR CLASS="z"><TD CLASS="l">495</TD><TD>                        text = ((CharacterDataImpl) node).getSource();</TD></TR><TR><TD CLASS="l">496</TD><TD>                else</TD></TR><TR CLASS="z"><TD CLASS="l">497</TD><TD>                        text = node.getFirstStructuredDocumentRegion().getText();</TD></TR><TR><TD CLASS="l">498</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="13">499</A></TD><TD>                return text;</TD></TR><TR><TD CLASS="l">500</TD><TD>        }</TD></TR><TR><TD CLASS="l">501</TD><TD> </TD></TR><TR><TD CLASS="l">502</TD><TD>        protected IDOMNode getParentIndentNode(IDOMNode node) {</TD></TR><TR CLASS="z"><TD CLASS="l">503</TD><TD>                IDOMNode result = null;</TD></TR><TR CLASS="z"><TD CLASS="l">504</TD><TD>                IDOMNode parentNode = (IDOMNode) node.getParentNode();</TD></TR><TR><TD CLASS="l">505</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">506</TD><TD>                if (parentNode.getNodeType() == Node.DOCUMENT_NODE)</TD></TR><TR CLASS="z"><TD CLASS="l">507</TD><TD>                        result = parentNode;</TD></TR><TR><TD CLASS="l">508</TD><TD>                else {</TD></TR><TR CLASS="z"><TD CLASS="l">509</TD><TD>                        ITextRegion region = parentNode.getLastStructuredDocumentRegion().getFirstRegion();</TD></TR><TR CLASS="z"><TD CLASS="l">510</TD><TD>                        if (region.getType() == DOMRegionContext.XML_END_TAG_OPEN)</TD></TR><TR CLASS="z"><TD CLASS="l">511</TD><TD>                                result = parentNode;</TD></TR><TR><TD CLASS="l">512</TD><TD>                        else</TD></TR><TR CLASS="z"><TD CLASS="l">513</TD><TD>                                result = getParentIndentNode(parentNode);</TD></TR><TR><TD CLASS="l">514</TD><TD>                }</TD></TR><TR><TD CLASS="l">515</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">516</TD><TD>                return result;</TD></TR><TR><TD CLASS="l">517</TD><TD>        }</TD></TR><TR><TD CLASS="l">518</TD><TD> </TD></TR><TR><TD CLASS="l">519</TD><TD>        /**</TD></TR><TR><TD CLASS="l">520</TD><TD>         * This method will find the indentation for a node sibling to this node.</TD></TR><TR><TD CLASS="l">521</TD><TD>         * It will try to find a sibling node before this node first. If there is</TD></TR><TR><TD CLASS="l">522</TD><TD>         * no sibling node before this node, it will try to find a sibling node</TD></TR><TR><TD CLASS="l">523</TD><TD>         * after this node. If still not found, we will check if this node is</TD></TR><TR><TD CLASS="l">524</TD><TD>         * already indented from its parent. If yes, this node's indentation will</TD></TR><TR><TD CLASS="l">525</TD><TD>         * be used. Otherwise, the parent node's indentation plus one indentation</TD></TR><TR><TD CLASS="l">526</TD><TD>         * will be used. If this node is null or it's a document node or it's a</TD></TR><TR><TD CLASS="l"><A NAME="14">527</A></TD><TD>         * first level node (node's parent is a document node) the default empty</TD></TR><TR><TD CLASS="l">528</TD><TD>         * string will be returned as the indentation.</TD></TR><TR><TD CLASS="l">529</TD><TD>         */</TD></TR><TR><TD CLASS="l">530</TD><TD>        protected String getSiblingIndent(Node node) {</TD></TR><TR CLASS="z"><TD CLASS="l">531</TD><TD>                String result = EMPTY_STRING;</TD></TR><TR><TD CLASS="l">532</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">533</TD><TD>                if ((node != null) &amp;&amp; (node.getNodeType() != Node.DOCUMENT_NODE) &amp;&amp; (node.getParentNode() != null) &amp;&amp; (node.getParentNode().getNodeType() != Node.DOCUMENT_NODE)) {</TD></TR><TR><TD CLASS="l">534</TD><TD>                        // find the text node before the previous non-text sibling</TD></TR><TR><TD CLASS="l">535</TD><TD>                        // if that's not found, we will try the text node before the next</TD></TR><TR><TD CLASS="l">536</TD><TD>                        // non-text sibling</TD></TR><TR CLASS="z"><TD CLASS="l">537</TD><TD>                        IDOMNode sibling = (IDOMNode) node.getPreviousSibling();</TD></TR><TR CLASS="z"><TD CLASS="l">538</TD><TD>                        while ((sibling != null) &amp;&amp; (sibling.getNodeType() == Node.TEXT_NODE || sibling.getNodeType() == Node.COMMENT_NODE)) {</TD></TR><TR CLASS="z"><TD CLASS="l">539</TD><TD>                                if (sibling.getNodeType() == Node.COMMENT_NODE &amp;&amp; sibling.getPreviousSibling() != null &amp;&amp; sibling.getPreviousSibling().getNodeType() == Node.TEXT_NODE &amp;&amp; StringUtils.containsLineDelimiter(sibling.getPreviousSibling().getNodeValue()))</TD></TR><TR CLASS="z"><TD CLASS="l">540</TD><TD>                                        break;</TD></TR><TR CLASS="z"><TD CLASS="l">541</TD><TD>                                sibling = (IDOMNode) sibling.getPreviousSibling();</TD></TR><TR><TD CLASS="l">542</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">543</TD><TD>                        if (sibling == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">544</TD><TD>                                sibling = (IDOMNode) node.getNextSibling();</TD></TR><TR CLASS="z"><TD CLASS="l">545</TD><TD>                                while ((sibling != null) &amp;&amp; (sibling.getNodeType() == Node.TEXT_NODE))</TD></TR><TR CLASS="z"><TD CLASS="l">546</TD><TD>                                        sibling = (IDOMNode) sibling.getNextSibling();</TD></TR><TR><TD CLASS="l">547</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">548</TD><TD>                        String singleIndent = getFormatPreferences().getIndent();</TD></TR><TR CLASS="z"><TD CLASS="l">549</TD><TD>                        String parentLineIndent = getNodeIndent(node.getParentNode());</TD></TR><TR><TD CLASS="l">550</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">551</TD><TD>                        if (sibling != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">552</TD><TD>                                String siblingIndent = getNodeIndent(sibling);</TD></TR><TR CLASS="z"><TD CLASS="l">553</TD><TD>                                if (siblingIndent.length() &gt; 0)</TD></TR><TR CLASS="z"><TD CLASS="l">554</TD><TD>                                        result = siblingIndent;</TD></TR><TR><TD CLASS="l">555</TD><TD>                                else {</TD></TR><TR CLASS="z"><TD CLASS="l">556</TD><TD>                                        String nodeIndent = getNodeIndent(node);</TD></TR><TR CLASS="z"><TD CLASS="l">557</TD><TD>                                        if (nodeIndent.length() &gt; parentLineIndent.length())</TD></TR><TR><TD CLASS="l">558</TD><TD>                                                // this node is indented from its parent, its</TD></TR><TR><TD CLASS="l">559</TD><TD>                                                // indentation will be used</TD></TR><TR CLASS="z"><TD CLASS="l">560</TD><TD>                                                result = nodeIndent;</TD></TR><TR><TD CLASS="l">561</TD><TD>                                        else</TD></TR><TR CLASS="z"><TD CLASS="l">562</TD><TD>                                                result = parentLineIndent + singleIndent;</TD></TR><TR><TD CLASS="l">563</TD><TD>                                }</TD></TR><TR><TD CLASS="l">564</TD><TD>                        }</TD></TR><TR><TD CLASS="l">565</TD><TD>                        else {</TD></TR><TR CLASS="z"><TD CLASS="l">566</TD><TD>                                String nodeIndent = getNodeIndent(node);</TD></TR><TR CLASS="z"><TD CLASS="l">567</TD><TD>                                if (nodeIndent.length() &gt; parentLineIndent.length())</TD></TR><TR><TD CLASS="l">568</TD><TD>                                        // this node is indented from its parent, its indentation</TD></TR><TR><TD CLASS="l">569</TD><TD>                                        // will be used</TD></TR><TR CLASS="z"><TD CLASS="l">570</TD><TD>                                        result = nodeIndent;</TD></TR><TR><TD CLASS="l">571</TD><TD>                                else</TD></TR><TR CLASS="z"><TD CLASS="l">572</TD><TD>                                        result = parentLineIndent + singleIndent;</TD></TR><TR><TD CLASS="l">573</TD><TD>                        }</TD></TR><TR><TD CLASS="l">574</TD><TD>                }</TD></TR><TR><TD CLASS="l">575</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="15">576</A></TD><TD>                return result;</TD></TR><TR><TD CLASS="l">577</TD><TD>        }</TD></TR><TR><TD CLASS="l">578</TD><TD> </TD></TR><TR><TD CLASS="l">579</TD><TD>        protected void insertAfterNode(IDOMNode node, String string) {</TD></TR><TR CLASS="z"><TD CLASS="l">580</TD><TD>                IDOMModel structuredModel = node.getModel();</TD></TR><TR CLASS="z"><TD CLASS="l">581</TD><TD>                IStructuredDocument structuredDocument = structuredModel.getStructuredDocument();</TD></TR><TR><TD CLASS="l">582</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">583</TD><TD>                int offset = node.getEndOffset();</TD></TR><TR CLASS="z"><TD CLASS="l">584</TD><TD>                int length = 0;</TD></TR><TR><TD CLASS="l">585</TD><TD> </TD></TR><TR><TD CLASS="l">586</TD><TD>                // 261968 - formatting tag without closing bracket: &lt;t1&gt;&lt;t1</TD></TR><TR CLASS="z"><TD CLASS="l">587</TD><TD>                if (node.getEndStructuredDocumentRegion() != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">588</TD><TD>                        offset = node.getEndStructuredDocumentRegion().getTextEndOffset();</TD></TR><TR CLASS="z"><TD CLASS="l">589</TD><TD>                        length = node.getEndOffset() - offset;</TD></TR><TR><TD CLASS="l">590</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="16">591</A></TD><TD>                replace(structuredDocument, offset, length, string);</TD></TR><TR CLASS="z"><TD CLASS="l">592</TD><TD>        }</TD></TR><TR><TD CLASS="l">593</TD><TD> </TD></TR><TR><TD CLASS="l">594</TD><TD>        protected void insertBeforeNode(IDOMNode node, String string) {</TD></TR><TR CLASS="z"><TD CLASS="l">595</TD><TD>                IDOMModel structuredModel = node.getModel();</TD></TR><TR CLASS="z"><TD CLASS="l">596</TD><TD>                IStructuredDocument structuredDocument = structuredModel.getStructuredDocument();</TD></TR><TR><TD CLASS="l">597</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">598</TD><TD>                replace(structuredDocument, node.getStartOffset(), 0, string);</TD></TR><TR CLASS="z"><TD CLASS="l">599</TD><TD>        }</TD></TR><TR><TD CLASS="l">600</TD><TD> </TD></TR><TR><TD CLASS="l">601</TD><TD>        /**</TD></TR><TR><TD CLASS="l"><A NAME="17">602</A></TD><TD>         * Allowing the INodeAdapter to compare itself against the type allows it</TD></TR><TR><TD CLASS="l">603</TD><TD>         * to return true in more than one case.</TD></TR><TR><TD CLASS="l">604</TD><TD>         */</TD></TR><TR><TD CLASS="l">605</TD><TD>        public boolean isAdapterForType(Object type) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="18">606</A></TD><TD>                return type.equals(IStructuredFormatter.class);</TD></TR><TR><TD CLASS="l">607</TD><TD>        }</TD></TR><TR><TD CLASS="l">608</TD><TD> </TD></TR><TR><TD CLASS="l">609</TD><TD>        protected boolean isEndTagMissing(IDOMNode node) {</TD></TR><TR CLASS="z"><TD CLASS="l">610</TD><TD>                boolean result = false;</TD></TR><TR><TD CLASS="l">611</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">612</TD><TD>                if ((node != null) &amp;&amp; (node.getNodeType() != Node.DOCUMENT_NODE) &amp;&amp; !isJSPTag(node)) {</TD></TR><TR CLASS="z"><TD CLASS="l">613</TD><TD>                        IStructuredDocumentRegion startTagStructuredDocumentRegion = node.getFirstStructuredDocumentRegion();</TD></TR><TR CLASS="z"><TD CLASS="l">614</TD><TD>                        IStructuredDocumentRegion endTagStructuredDocumentRegion = node.getLastStructuredDocumentRegion();</TD></TR><TR><TD CLASS="l">615</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">616</TD><TD>                        ITextRegion startTagNameRegion = null;</TD></TR><TR CLASS="z"><TD CLASS="l">617</TD><TD>                        if (startTagStructuredDocumentRegion.getRegions().size() &gt; 1)</TD></TR><TR CLASS="z"><TD CLASS="l">618</TD><TD>                                startTagNameRegion = startTagStructuredDocumentRegion.getRegions().get(1);</TD></TR><TR CLASS="z"><TD CLASS="l">619</TD><TD>                        ITextRegion endTagNameRegion = null;</TD></TR><TR CLASS="z"><TD CLASS="l">620</TD><TD>                        if (endTagStructuredDocumentRegion.getRegions().size() &gt; 1)</TD></TR><TR CLASS="z"><TD CLASS="l">621</TD><TD>                                endTagNameRegion = endTagStructuredDocumentRegion.getRegions().get(1);</TD></TR><TR><TD CLASS="l">622</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">623</TD><TD>                        ITextRegionList startTagRegions = startTagStructuredDocumentRegion.getRegions();</TD></TR><TR CLASS="z"><TD CLASS="l">624</TD><TD>                        if (startTagNameRegion == endTagNameRegion &amp;&amp; startTagNameRegion != null &amp;&amp; (startTagRegions.get(0)).getType() != DOMRegionContext.XML_END_TAG_OPEN &amp;&amp; (startTagRegions.get(startTagRegions.size() - 1).getType()) != DOMRegionContext.XML_EMPTY_TAG_CLOSE)</TD></TR><TR><TD CLASS="l">625</TD><TD>                                // end tag missing</TD></TR><TR CLASS="z"><TD CLASS="l">626</TD><TD>                                result = true;</TD></TR><TR><TD CLASS="l">627</TD><TD>                }</TD></TR><TR><TD CLASS="l">628</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="1a">629</A></TD><TD>                return result;</TD></TR><TR><TD CLASS="l">630</TD><TD>        }</TD></TR><TR><TD CLASS="l">631</TD><TD> </TD></TR><TR><TD CLASS="l">632</TD><TD>        protected boolean nodeHasSiblings(IDOMNode node) {</TD></TR><TR CLASS="z"><TD CLASS="l">633</TD><TD>                return (node.getPreviousSibling() != null) || (node.getNextSibling() != null);</TD></TR><TR><TD CLASS="l">634</TD><TD>        }</TD></TR><TR><TD CLASS="l">635</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="1b">636</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">637</TD><TD>         * Node changed. No format should be performed automatically.</TD></TR><TR><TD CLASS="l">638</TD><TD>         */</TD></TR><TR><TD CLASS="l"><A NAME="1c">639</A></TD><TD>        public void notifyChanged(org.eclipse.wst.sse.core.internal.provisional.INodeNotifier notifier, int eventType, Object changedFeature, Object oldValue, Object newValue, int pos) {</TD></TR><TR CLASS="z"><TD CLASS="l">640</TD><TD>        }</TD></TR><TR><TD CLASS="l">641</TD><TD> </TD></TR><TR><TD CLASS="l">642</TD><TD>        protected void removeRegionSpaces(IDOMNode node, IStructuredDocumentRegion flatNode, ITextRegion region) {</TD></TR><TR CLASS="z"><TD CLASS="l">643</TD><TD>                if ((region != null) &amp;&amp; (region instanceof ContextRegion || region instanceof TagNameRegion) &amp;&amp; (flatNode.getEndOffset(region) &gt; flatNode.getTextEndOffset(region))) {</TD></TR><TR CLASS="z"><TD CLASS="l">644</TD><TD>                        IDOMModel structuredModel = node.getModel();</TD></TR><TR CLASS="z"><TD CLASS="l">645</TD><TD>                        IStructuredDocument structuredDocument = structuredModel.getStructuredDocument();</TD></TR><TR><TD CLASS="l">646</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">647</TD><TD>                        replace(structuredDocument, flatNode.getTextEndOffset(region), flatNode.getEndOffset(region) - flatNode.getTextEndOffset(region), EMPTY_STRING);</TD></TR><TR><TD CLASS="l">648</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">649</TD><TD>        }</TD></TR><TR><TD CLASS="l">650</TD><TD> </TD></TR><TR><TD CLASS="l">651</TD><TD>        /**</TD></TR><TR><TD CLASS="l">652</TD><TD>         * This method will replace the string at offset and length with a new</TD></TR><TR><TD CLASS="l">653</TD><TD>         * string. If the string to be replaced is the same as the new string, the</TD></TR><TR><TD CLASS="l"><A NAME="1d">654</A></TD><TD>         * string will not be replaced.</TD></TR><TR><TD CLASS="l">655</TD><TD>         */</TD></TR><TR><TD CLASS="l">656</TD><TD>        protected void replace(IStructuredDocument structuredDocument, int offset, int length, String string) {</TD></TR><TR><TD CLASS="l">657</TD><TD>                try {</TD></TR><TR CLASS="z"><TD CLASS="l">658</TD><TD>                        String structuredDocumentString = structuredDocument.get(offset, length);</TD></TR><TR CLASS="z"><TD CLASS="l">659</TD><TD>                        if (structuredDocumentString.compareTo(string) != 0)</TD></TR><TR CLASS="z"><TD CLASS="l">660</TD><TD>                                structuredDocument.replaceText(structuredDocument, offset, length, string);</TD></TR><TR><TD CLASS="l">661</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">662</TD><TD>                catch (BadLocationException e) {</TD></TR><TR><TD CLASS="l">663</TD><TD>                        // log for now, unless we find reason not to</TD></TR><TR CLASS="z"><TD CLASS="l">664</TD><TD>                        Logger.log(Logger.INFO, e.getMessage());</TD></TR><TR><TD CLASS="l">665</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">666</TD><TD>        }</TD></TR><TR><TD CLASS="l">667</TD><TD> </TD></TR><TR><TD CLASS="l">668</TD><TD>        /**</TD></TR><TR><TD CLASS="l">669</TD><TD>         * This method will replace the node value with a new string. If the node</TD></TR><TR><TD CLASS="l"><A NAME="1e">670</A></TD><TD>         * value to be replaced is the same as the new string, the node value will</TD></TR><TR><TD CLASS="l">671</TD><TD>         * not be replaced.</TD></TR><TR><TD CLASS="l">672</TD><TD>         */</TD></TR><TR><TD CLASS="l">673</TD><TD>        protected void replaceNodeValue(IDOMNode node, String string) {</TD></TR><TR CLASS="z"><TD CLASS="l">674</TD><TD>                IDOMModel structuredModel = node.getModel();</TD></TR><TR CLASS="z"><TD CLASS="l">675</TD><TD>                IStructuredDocument structuredDocument = structuredModel.getStructuredDocument();</TD></TR><TR CLASS="z"><TD CLASS="l">676</TD><TD>                int offset = node.getStartOffset();</TD></TR><TR CLASS="z"><TD CLASS="l">677</TD><TD>                int length = node.getEndOffset() - node.getStartOffset();</TD></TR><TR><TD CLASS="l">678</TD><TD> </TD></TR><TR><TD CLASS="l">679</TD><TD>                try {</TD></TR><TR CLASS="z"><TD CLASS="l">680</TD><TD>                        String structuredDocumentString = structuredDocument.get(offset, length);</TD></TR><TR CLASS="z"><TD CLASS="l">681</TD><TD>                        if (structuredDocumentString.compareTo(string) != 0)</TD></TR><TR CLASS="z"><TD CLASS="l">682</TD><TD>                                replace(structuredDocument, offset, length, string);</TD></TR><TR><TD CLASS="l">683</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">684</TD><TD>                catch (BadLocationException e) {</TD></TR><TR><TD CLASS="l">685</TD><TD>                        // log for now, unless we find reason not to</TD></TR><TR CLASS="z"><TD CLASS="l">686</TD><TD>                        Logger.log(Logger.INFO, e.getMessage());</TD></TR><TR><TD CLASS="l"><A NAME="1f">687</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">688</TD><TD>        }</TD></TR><TR><TD CLASS="l">689</TD><TD> </TD></TR><TR><TD CLASS="l">690</TD><TD>        public void setFormatPreferences(IStructuredFormatPreferences formatPreferences) {</TD></TR><TR CLASS="z"><TD CLASS="l">691</TD><TD>                fFormatPreferences = formatPreferences;</TD></TR><TR CLASS="z"><TD CLASS="l">692</TD><TD>        }</TD></TR><TR><TD CLASS="l">693</TD><TD> </TD></TR><TR><TD CLASS="l">694</TD><TD>        /*</TD></TR><TR><TD CLASS="l">695</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="20">696</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">697</TD><TD>         * @see org.eclipse.wst.sse.core.format.IStructuredFormatter#setProgressMonitor(org.eclipse.core.runtime.IProgressMonitor)</TD></TR><TR><TD CLASS="l">698</TD><TD>         */</TD></TR><TR><TD CLASS="l">699</TD><TD>        public void setProgressMonitor(IProgressMonitor monitor) {</TD></TR><TR CLASS="z"><TD CLASS="l">700</TD><TD>                fProgressMonitor = monitor;</TD></TR><TR CLASS="z"><TD CLASS="l">701</TD><TD>        }</TD></TR><TR><TD CLASS="l">702</TD><TD> </TD></TR><TR><TD CLASS="l">703</TD><TD>        /**</TD></TR><TR><TD CLASS="l">704</TD><TD>         * ISSUE: this is a bit of hidden JSP knowledge that was implemented this</TD></TR><TR><TD CLASS="l">705</TD><TD>         * way for expedency. Should be evolved in future to depend on</TD></TR><TR><TD CLASS="l"><A NAME="19">706</A></TD><TD>         * &#34;nestedContext&#34;.</TD></TR><TR><TD CLASS="l">707</TD><TD>         */</TD></TR><TR><TD CLASS="l">708</TD><TD>        private boolean isJSPTag(Node node) {</TD></TR><TR><TD CLASS="l">709</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">710</TD><TD>                final String JSP_CLOSE = &#34;JSP_CLOSE&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">711</TD><TD>                // final String JSP_COMMENT_CLOSE = &#34;JSP_COMMENT_CLOSE&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">712</TD><TD> </TD></TR><TR><TD CLASS="l">713</TD><TD>                // final String JSP_COMMENT_OPEN = &#34;JSP_COMMENT_OPEN&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">714</TD><TD>                // final String JSP_COMMENT_TEXT = &#34;JSP_COMMENT_TEXT&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">715</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">716</TD><TD>                final String JSP_CONTENT = &#34;JSP_CONTENT&#34;; //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">717</TD><TD>                final String JSP_DECLARATION_OPEN = &#34;JSP_DECLARATION_OPEN&#34;; //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">718</TD><TD>                final String JSP_DIRECTIVE_CLOSE = &#34;JSP_DIRECTIVE_CLOSE&#34;; //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">719</TD><TD>                final String JSP_DIRECTIVE_NAME = &#34;JSP_DIRECTIVE_NAME&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">720</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">721</TD><TD>                final String JSP_DIRECTIVE_OPEN = &#34;JSP_DIRECTIVE_OPEN&#34;; //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">722</TD><TD>                final String JSP_EXPRESSION_OPEN = &#34;JSP_EXPRESSION_OPEN&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">723</TD><TD> </TD></TR><TR><TD CLASS="l">724</TD><TD>                // final String JSP_ROOT_TAG_NAME = &#34;JSP_ROOT_TAG_NAME&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">725</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">726</TD><TD>                final String JSP_SCRIPTLET_OPEN = &#34;JSP_SCRIPTLET_OPEN&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">727</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">728</TD><TD>                boolean result = false;</TD></TR><TR><TD CLASS="l">729</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">730</TD><TD>                if (node instanceof IDOMNode) {</TD></TR><TR CLASS="z"><TD CLASS="l">731</TD><TD>                        IStructuredDocumentRegion flatNode = ((IDOMNode) node).getFirstStructuredDocumentRegion();</TD></TR><TR><TD CLASS="l">732</TD><TD>                        // in some cases, the nodes exists, but hasn't been associated</TD></TR><TR><TD CLASS="l">733</TD><TD>                        // with</TD></TR><TR><TD CLASS="l">734</TD><TD>                        // a flatnode yet (the screen updates can be initiated on a</TD></TR><TR><TD CLASS="l">735</TD><TD>                        // different thread,</TD></TR><TR><TD CLASS="l">736</TD><TD>                        // so the request for a flatnode can come in before the node is</TD></TR><TR><TD CLASS="l">737</TD><TD>                        // fully formed.</TD></TR><TR><TD CLASS="l">738</TD><TD>                        // if the flatnode is null, we'll just allow the defaults to</TD></TR><TR><TD CLASS="l">739</TD><TD>                        // apply.</TD></TR><TR CLASS="z"><TD CLASS="l">740</TD><TD>                        if (flatNode != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">741</TD><TD>                                String flatNodeType = flatNode.getType();</TD></TR><TR><TD CLASS="l">742</TD><TD>                                // should not be null, but just to be sure</TD></TR><TR CLASS="z"><TD CLASS="l">743</TD><TD>                                if (flatNodeType != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">744</TD><TD>                                        if ((flatNodeType.equals(JSP_CONTENT)) || (flatNodeType.equals(JSP_EXPRESSION_OPEN)) || (flatNodeType.equals(JSP_SCRIPTLET_OPEN)) || (flatNodeType.equals(JSP_DECLARATION_OPEN)) || (flatNodeType.equals(JSP_DIRECTIVE_CLOSE)) || (flatNodeType.equals(JSP_DIRECTIVE_NAME)) || (flatNodeType.equals(JSP_DIRECTIVE_OPEN)) || (flatNodeType.equals(JSP_CLOSE))) {</TD></TR><TR CLASS="z"><TD CLASS="l">745</TD><TD>                                                result = true;</TD></TR><TR><TD CLASS="l">746</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">747</TD><TD>                                }</TD></TR><TR><TD CLASS="l">748</TD><TD>                        }</TD></TR><TR><TD CLASS="l">749</TD><TD>                }</TD></TR><TR><TD CLASS="l">750</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">751</TD><TD>                return result;</TD></TR><TR><TD CLASS="l">752</TD><TD>        }</TD></TR><TR><TD CLASS="l">753</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="27.html">org.eclipse.wst.xml.core.internal.provisional.format</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/15e.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/15e.html
deleted file mode 100644
index 7145b1d..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/15e.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="27.html">org.eclipse.wst.xml.core.internal.provisional.format</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">StructuredFormatPreferencesXML.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>StructuredFormatPreferencesXML.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/33)</TD><TD CLASS="h">0%   (0/13)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">StructuredFormatPreferencesXML</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/33)</TD><TD CLASS="h">0%   (0/13)</TD></TR><TR><TD CLASS="f"><A HREF="#0">StructuredFormatPreferencesXML (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">getSplitMultiAttrs (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#3">isAlignEndBracket (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">isPreservePCDATAContent (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#5">setAlignEndBracket (boolean): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">setPreservePCDATAContent (boolean): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#7">setSplitMultiAttrs (boolean): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2007 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l"><A NAME="0">13</A></TD><TD>package org.eclipse.wst.xml.core.internal.provisional.format;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.wst.sse.core.internal.format.StructuredFormatPreferences;</TD></TR><TR><TD CLASS="l">16</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">17</TD><TD>public class StructuredFormatPreferencesXML extends StructuredFormatPreferences {</TD></TR><TR CLASS="z"><TD CLASS="l">18</TD><TD>        private boolean fSplitMultiAttrs = false;</TD></TR><TR CLASS="z"><TD CLASS="l">19</TD><TD>        private boolean fPreservePCDATAContent = false;</TD></TR><TR CLASS="z"><TD CLASS="l">20</TD><TD>        private boolean fAlignEndBracket = false;</TD></TR><TR><TD CLASS="l">21</TD><TD> </TD></TR><TR><TD CLASS="l">22</TD><TD>        /**</TD></TR><TR><TD CLASS="l">23</TD><TD>         * True if formatter should split elements with multiple attributes onto</TD></TR><TR><TD CLASS="l">24</TD><TD>         * new lines.</TD></TR><TR><TD CLASS="l"><A NAME="2">25</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">26</TD><TD>         * @return boolean</TD></TR><TR><TD CLASS="l">27</TD><TD>         */</TD></TR><TR><TD CLASS="l">28</TD><TD>        public boolean getSplitMultiAttrs() {</TD></TR><TR CLASS="z"><TD CLASS="l">29</TD><TD>                return fSplitMultiAttrs;</TD></TR><TR><TD CLASS="l">30</TD><TD>        }</TD></TR><TR><TD CLASS="l">31</TD><TD> </TD></TR><TR><TD CLASS="l">32</TD><TD>        /**</TD></TR><TR><TD CLASS="l">33</TD><TD>         * Sets whether or not formatter should split elements with multiple</TD></TR><TR><TD CLASS="l">34</TD><TD>         * attributes onto new lines.</TD></TR><TR><TD CLASS="l"><A NAME="7">35</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">36</TD><TD>         * @param splitMultiAttrs</TD></TR><TR><TD CLASS="l">37</TD><TD>         */</TD></TR><TR><TD CLASS="l">38</TD><TD>        public void setSplitMultiAttrs(boolean splitMultiAttrs) {</TD></TR><TR CLASS="z"><TD CLASS="l">39</TD><TD>                fSplitMultiAttrs = splitMultiAttrs;</TD></TR><TR CLASS="z"><TD CLASS="l">40</TD><TD>        }</TD></TR><TR><TD CLASS="l">41</TD><TD> </TD></TR><TR><TD CLASS="l">42</TD><TD>        /**</TD></TR><TR><TD CLASS="l">43</TD><TD>         * True if tags with PCDATA content should not have their whitespace</TD></TR><TR><TD CLASS="l">44</TD><TD>         * messed with when formatting.</TD></TR><TR><TD CLASS="l"><A NAME="4">45</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">46</TD><TD>         * @return boolean</TD></TR><TR><TD CLASS="l">47</TD><TD>         */</TD></TR><TR><TD CLASS="l">48</TD><TD>        public boolean isPreservePCDATAContent() {</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>                return fPreservePCDATAContent;</TD></TR><TR><TD CLASS="l">50</TD><TD>        }</TD></TR><TR><TD CLASS="l">51</TD><TD> </TD></TR><TR><TD CLASS="l">52</TD><TD>        /**</TD></TR><TR><TD CLASS="l">53</TD><TD>         * Sets whether or not formatter should preserve whitespace in tags with</TD></TR><TR><TD CLASS="l">54</TD><TD>         * PCDATA content.</TD></TR><TR><TD CLASS="l"><A NAME="6">55</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">56</TD><TD>         * @param preservePCDATAContent</TD></TR><TR><TD CLASS="l">57</TD><TD>         */</TD></TR><TR><TD CLASS="l">58</TD><TD>        public void setPreservePCDATAContent(boolean preservePCDATAContent) {</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>                fPreservePCDATAContent = preservePCDATAContent;</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>        }</TD></TR><TR><TD CLASS="l">61</TD><TD> </TD></TR><TR><TD CLASS="l">62</TD><TD>        /**</TD></TR><TR><TD CLASS="l">63</TD><TD>         * True if end brackets of start tags should be placed on a new line if</TD></TR><TR><TD CLASS="l">64</TD><TD>         * the start tag spans more than one line.</TD></TR><TR><TD CLASS="l"><A NAME="3">65</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">66</TD><TD>         * @return</TD></TR><TR><TD CLASS="l">67</TD><TD>         */</TD></TR><TR><TD CLASS="l">68</TD><TD>        public boolean isAlignEndBracket() {</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                return fAlignEndBracket;</TD></TR><TR><TD CLASS="l">70</TD><TD>        }</TD></TR><TR><TD CLASS="l">71</TD><TD> </TD></TR><TR><TD CLASS="l">72</TD><TD>        /**</TD></TR><TR><TD CLASS="l">73</TD><TD>         * Sets whether or not formatter should align the end bracket of a start</TD></TR><TR><TD CLASS="l">74</TD><TD>         * tag on a new line if the start tag spans more than one line.</TD></TR><TR><TD CLASS="l"><A NAME="5">75</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">76</TD><TD>         * @param alignEndBracket</TD></TR><TR><TD CLASS="l">77</TD><TD>         */</TD></TR><TR><TD CLASS="l">78</TD><TD>        public void setAlignEndBracket(boolean alignEndBracket) {</TD></TR><TR CLASS="z"><TD CLASS="l">79</TD><TD>                fAlignEndBracket = alignEndBracket;</TD></TR><TR CLASS="z"><TD CLASS="l">80</TD><TD>        }</TD></TR><TR><TD CLASS="l">81</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="27.html">org.eclipse.wst.xml.core.internal.provisional.format</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/15f.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/15f.html
deleted file mode 100644
index 00b7a8a..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/15f.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="27.html">org.eclipse.wst.xml.core.internal.provisional.format</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">TextNodeFormatter.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>TextNodeFormatter.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/884)</TD><TD CLASS="h">0%   (0/183)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">TextNodeFormatter</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/884)</TD><TD CLASS="h">0%   (0/183)</TD></TR><TR><TD CLASS="f"><A HREF="#0">TextNodeFormatter (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">compressSpaces (String, IStructuredFormatContraints): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/214)</TD><TD CLASS="h">0%   (0/48)</TD></TR><TR><TD CLASS="f"><A HREF="#3">computeAvailableLineWidth (IStructuredDocument, int, int): int</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/30)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">enoughSpace (IDOMNode, int, String): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/19)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#5">formatNode (IDOMNode, IStructuredFormatContraints): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/300)</TD><TD CLASS="h">0%   (0/62)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">getLineDelimiter (IStructuredDocument, int): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/28)</TD><TD CLASS="h">0%   (0/9)</TD></TR><TR><TD CLASS="f"><A HREF="#7">handleNoReflow (IDOMNode, IStructuredDocument, String, IDOMNode): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/74)</TD><TD CLASS="h">0%   (0/13)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">isComment (IDOMNode): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/14)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#9">noLineDelimiter (IDOMNode): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/14)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">noSiblingsAndNoFollowingComment (IDOMNode): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/24)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#b">reflowText (String, int): Vector</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/164)</TD><TD CLASS="h">0%   (0/30)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2008 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     Jesper Steen M�ller - xml:space='preserve' support</TD></TR><TR><TD CLASS="l">12</TD><TD> *     </TD></TR><TR><TD CLASS="l">13</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">14</TD><TD>package org.eclipse.wst.xml.core.internal.provisional.format;</TD></TR><TR><TD CLASS="l">15</TD><TD> </TD></TR><TR><TD CLASS="l">16</TD><TD>import java.util.List;</TD></TR><TR><TD CLASS="l">17</TD><TD>import java.util.Vector;</TD></TR><TR><TD CLASS="l">18</TD><TD> </TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.jface.text.BadLocationException;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.wst.sse.core.internal.format.IStructuredFormatContraints;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.wst.sse.core.utils.StringUtils;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.wst.xml.core.internal.Logger;</TD></TR><TR><TD CLASS="l"><A NAME="0">24</A></TD><TD>import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.w3c.dom.Node;</TD></TR><TR><TD CLASS="l">26</TD><TD> </TD></TR><TR><TD CLASS="l">27</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">28</TD><TD>public class TextNodeFormatter extends NodeFormatter {</TD></TR><TR><TD CLASS="l">29</TD><TD>        static private final String CR = &#34;\r&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">30</TD><TD>        static private final String DELIMITERS = &#34; \t\n\r\f&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">31</TD><TD>        static private final String EMPTY_STRING = &#34;&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">32</TD><TD>        static private final String FF = &#34;\f&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">33</TD><TD>        static private final String LF = &#34;\n&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">34</TD><TD>        static private final String SPACE = &#34; &#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">35</TD><TD>        static private final String TAB = &#34;\t&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">36</TD><TD> </TD></TR><TR><TD CLASS="l">37</TD><TD>        private String compressSpaces(String string, IStructuredFormatContraints formatContraints) {</TD></TR><TR><TD CLASS="l">38</TD><TD>                /*</TD></TR><TR><TD CLASS="l"><A NAME="2">39</A></TD><TD>                 * Note that the StructuredTextEditor supports mixed new line</TD></TR><TR><TD CLASS="l">40</TD><TD>                 * characters (CR, LF, CRLF) in one file. We have to handle that when</TD></TR><TR><TD CLASS="l">41</TD><TD>                 * we try to preserve blank lines.</TD></TR><TR><TD CLASS="l">42</TD><TD>                 */</TD></TR><TR CLASS="z"><TD CLASS="l">43</TD><TD>                String[] stringArray = null;</TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>                boolean clearAllBlankLines = formatContraints.getClearAllBlankLines();</TD></TR><TR><TD CLASS="l">45</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>                if (clearAllBlankLines)</TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>                        stringArray = StringUtils.asArray(string);</TD></TR><TR><TD CLASS="l">48</TD><TD>                else</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>                        stringArray = StringUtils.asArray(string, DELIMITERS, true);</TD></TR><TR><TD CLASS="l">50</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>                StringBuffer compressedString = new StringBuffer();</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                if (stringArray.length &gt; 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>                        boolean cr = false, lf = false, cr2 = false, nonSpace = true;</TD></TR><TR><TD CLASS="l">54</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                        if (stringArray[0].compareTo(CR) == 0)</TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>                                cr = true;</TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>                        else if (stringArray[0].compareTo(LF) == 0)</TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>                                lf = true;</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>                        else if ((stringArray[0].compareTo(SPACE) != 0) &amp;&amp; (stringArray[0].compareTo(TAB) != 0) &amp;&amp; (stringArray[0].compareTo(FF) != 0)) {</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                                compressedString.append(stringArray[0]);</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                                nonSpace = true;</TD></TR><TR><TD CLASS="l">62</TD><TD>                        }</TD></TR><TR><TD CLASS="l">63</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                        for (int i = 1; i &lt; stringArray.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>                                if (stringArray[i].compareTo(CR) == 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                                        if (cr &amp;&amp; lf) {</TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>                                                if (nonSpace) {</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>                                                        compressedString.append(CR + LF);</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                                                        nonSpace = false;</TD></TR><TR><TD CLASS="l">70</TD><TD>                                                }</TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>                                                compressedString.append(stringArray[i]);</TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>                                                cr2 = true;</TD></TR><TR><TD CLASS="l">73</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>                                        else if (cr) {</TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>                                                if (nonSpace) {</TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>                                                        compressedString.append(CR);</TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>                                                        nonSpace = false;</TD></TR><TR><TD CLASS="l">78</TD><TD>                                                }</TD></TR><TR CLASS="z"><TD CLASS="l">79</TD><TD>                                                compressedString.append(stringArray[i]);</TD></TR><TR CLASS="z"><TD CLASS="l">80</TD><TD>                                                cr2 = true;</TD></TR><TR><TD CLASS="l">81</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">82</TD><TD>                                        else</TD></TR><TR CLASS="z"><TD CLASS="l">83</TD><TD>                                                cr = true;</TD></TR><TR><TD CLASS="l">84</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>                                else if (stringArray[i].compareTo(LF) == 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                                        if (cr &amp;&amp; lf &amp;&amp; cr2) {</TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>                                                compressedString.append(stringArray[i]);</TD></TR><TR><TD CLASS="l">88</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">89</TD><TD>                                        else if (lf) {</TD></TR><TR CLASS="z"><TD CLASS="l">90</TD><TD>                                                if (nonSpace) {</TD></TR><TR CLASS="z"><TD CLASS="l">91</TD><TD>                                                        compressedString.append(LF);</TD></TR><TR CLASS="z"><TD CLASS="l">92</TD><TD>                                                        nonSpace = false;</TD></TR><TR><TD CLASS="l">93</TD><TD>                                                }</TD></TR><TR CLASS="z"><TD CLASS="l">94</TD><TD>                                                compressedString.append(stringArray[i]);</TD></TR><TR><TD CLASS="l">95</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">96</TD><TD>                                        else</TD></TR><TR CLASS="z"><TD CLASS="l">97</TD><TD>                                                lf = true;</TD></TR><TR><TD CLASS="l">98</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">99</TD><TD>                                else if ((stringArray[i].compareTo(SPACE) != 0) &amp;&amp; (stringArray[i].compareTo(TAB) != 0) &amp;&amp; (stringArray[i].compareTo(FF) != 0)) {</TD></TR><TR CLASS="z"><TD CLASS="l">100</TD><TD>                                        if (compressedString.length() &gt; 0)</TD></TR><TR CLASS="z"><TD CLASS="l">101</TD><TD>                                                compressedString.append(SPACE);</TD></TR><TR CLASS="z"><TD CLASS="l">102</TD><TD>                                        compressedString.append(stringArray[i]);</TD></TR><TR><TD CLASS="l">103</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">104</TD><TD>                                        cr = false;</TD></TR><TR CLASS="z"><TD CLASS="l">105</TD><TD>                                        lf = false;</TD></TR><TR CLASS="z"><TD CLASS="l">106</TD><TD>                                        cr2 = false;</TD></TR><TR CLASS="z"><TD CLASS="l">107</TD><TD>                                        nonSpace = true;</TD></TR><TR><TD CLASS="l">108</TD><TD>                                }</TD></TR><TR><TD CLASS="l">109</TD><TD>                        }</TD></TR><TR><TD CLASS="l">110</TD><TD>                }</TD></TR><TR><TD CLASS="l">111</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">112</TD><TD>                return compressedString.toString();</TD></TR><TR><TD CLASS="l"><A NAME="5">113</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">114</TD><TD> </TD></TR><TR><TD CLASS="l">115</TD><TD>        protected void formatNode(IDOMNode node, IStructuredFormatContraints formatContraints) {</TD></TR><TR><TD CLASS="l">116</TD><TD>                // [111674] If inside xml:space=&#34;preserve&#34; element, we bail</TD></TR><TR CLASS="z"><TD CLASS="l">117</TD><TD>                if (formatContraints.getInPreserveSpaceElement())</TD></TR><TR CLASS="z"><TD CLASS="l">118</TD><TD>                        return;</TD></TR><TR CLASS="z"><TD CLASS="l">119</TD><TD>                if (node != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">120</TD><TD>                        IStructuredDocument doc = node.getStructuredDocument();</TD></TR><TR><TD CLASS="l">121</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">122</TD><TD>                        int lineWidth = getFormatPreferences().getLineWidth();</TD></TR><TR CLASS="z"><TD CLASS="l">123</TD><TD>                        int currentAvailableLineWidth = computeAvailableLineWidth(doc, node.getStartOffset(), lineWidth);</TD></TR><TR><TD CLASS="l">124</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">125</TD><TD>                        String nodeText = getNodeText(node);</TD></TR><TR CLASS="z"><TD CLASS="l">126</TD><TD>                        String compressedText = compressSpaces(nodeText, formatContraints);</TD></TR><TR><TD CLASS="l">127</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">128</TD><TD>                        IDOMNode parentNode = (IDOMNode) node.getParentNode();</TD></TR><TR><TD CLASS="l">129</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">130</TD><TD>                        if (((enoughSpace(parentNode, currentAvailableLineWidth, compressedText)) &amp;&amp; (noSiblingsAndNoFollowingComment(node)) &amp;&amp; !firstStructuredDocumentRegionContainsLineDelimiters(parentNode)) || node.getStartOffset() == 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">131</TD><TD>                                handleNoReflow(node, doc, compressedText, parentNode);</TD></TR><TR><TD CLASS="l">132</TD><TD>                        }</TD></TR><TR><TD CLASS="l">133</TD><TD>                        else {</TD></TR><TR><TD CLASS="l">134</TD><TD>                                // not enough space, need to reflow text</TD></TR><TR CLASS="z"><TD CLASS="l">135</TD><TD>                                String nodeIndentation = formatContraints.getCurrentIndent();</TD></TR><TR CLASS="z"><TD CLASS="l">136</TD><TD>                                currentAvailableLineWidth = lineWidth - getIndentationLength(nodeIndentation);</TD></TR><TR CLASS="z"><TD CLASS="l">137</TD><TD>                                List vector = reflowText(compressedText, currentAvailableLineWidth);</TD></TR><TR CLASS="z"><TD CLASS="l">138</TD><TD>                                int vectorSize = vector.size();</TD></TR><TR CLASS="z"><TD CLASS="l">139</TD><TD>                                StringBuffer reflowedTextBuffer = new StringBuffer();</TD></TR><TR CLASS="z"><TD CLASS="l">140</TD><TD>                                String lineDelimiter = getLineDelimiter(doc, node.getStartOffset());</TD></TR><TR><TD CLASS="l">141</TD><TD>                                // handle first line specially to check for allowWhitespace</TD></TR><TR CLASS="z"><TD CLASS="l">142</TD><TD>                                if (vectorSize &gt; 0) {</TD></TR><TR><TD CLASS="l">143</TD><TD>                                        // determines whether or not to allow whitespace if there</TD></TR><TR><TD CLASS="l">144</TD><TD>                                        // is an entity or cdata before it</TD></TR><TR CLASS="z"><TD CLASS="l">145</TD><TD>                                        boolean allowWhitespace = true;</TD></TR><TR><TD CLASS="l">146</TD><TD>                                        // [206072] StringIndexOutOfBoundsException</TD></TR><TR CLASS="z"><TD CLASS="l">147</TD><TD>                                        if (nodeText.length() == 0 || !Character.isWhitespace(nodeText.charAt(0))) {</TD></TR><TR CLASS="z"><TD CLASS="l">148</TD><TD>                                                Node previousSibling = node.getPreviousSibling();</TD></TR><TR CLASS="z"><TD CLASS="l">149</TD><TD>                                                if (previousSibling != null &amp;&amp; (previousSibling.getNodeType() == Node.ENTITY_REFERENCE_NODE || previousSibling.getNodeType() == Node.CDATA_SECTION_NODE))</TD></TR><TR CLASS="z"><TD CLASS="l">150</TD><TD>                                                        allowWhitespace = false;</TD></TR><TR><TD CLASS="l">151</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">152</TD><TD>                                        String theString = (String) vector.get(0);</TD></TR><TR CLASS="z"><TD CLASS="l">153</TD><TD>                                        if (allowWhitespace) {</TD></TR><TR CLASS="z"><TD CLASS="l">154</TD><TD>                                                reflowedTextBuffer.append(lineDelimiter);</TD></TR><TR CLASS="z"><TD CLASS="l">155</TD><TD>                                                if (theString.trim().length() &gt; 0)</TD></TR><TR CLASS="z"><TD CLASS="l">156</TD><TD>                                                        reflowedTextBuffer.append(nodeIndentation).append(theString);</TD></TR><TR><TD CLASS="l">157</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">158</TD><TD>                                        else {</TD></TR><TR CLASS="z"><TD CLASS="l">159</TD><TD>                                                reflowedTextBuffer.append(theString);</TD></TR><TR><TD CLASS="l">160</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">161</TD><TD>                                }</TD></TR><TR><TD CLASS="l">162</TD><TD>                                // do the rest of the lines</TD></TR><TR CLASS="z"><TD CLASS="l">163</TD><TD>                                for (int i = 1; i &lt; vectorSize; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">164</TD><TD>                                        String theString = (String) vector.get(i);</TD></TR><TR CLASS="z"><TD CLASS="l">165</TD><TD>                                        if (theString.trim().length() &gt; 0)</TD></TR><TR CLASS="z"><TD CLASS="l">166</TD><TD>                                                reflowedTextBuffer.append(lineDelimiter).append(nodeIndentation).append(theString);</TD></TR><TR><TD CLASS="l">167</TD><TD>                                        else</TD></TR><TR CLASS="z"><TD CLASS="l">168</TD><TD>                                                reflowedTextBuffer.append(lineDelimiter);</TD></TR><TR><TD CLASS="l">169</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">170</TD><TD>                                String reflowedText = reflowedTextBuffer.toString();</TD></TR><TR CLASS="z"><TD CLASS="l">171</TD><TD>                                if (node.getNextSibling() == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">172</TD><TD>                                        if (isEndTagMissing(parentNode)) {</TD></TR><TR><TD CLASS="l">173</TD><TD>                                                // don't add indentation to end if parent end tag is</TD></TR><TR><TD CLASS="l">174</TD><TD>                                                // missing</TD></TR><TR><TD CLASS="l">175</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">176</TD><TD> </TD></TR><TR><TD CLASS="l">177</TD><TD>                                        else {</TD></TR><TR><TD CLASS="l">178</TD><TD>                                                // add parent's indentation to end</TD></TR><TR CLASS="z"><TD CLASS="l">179</TD><TD>                                                nodeIndentation = getNodeIndent(parentNode);</TD></TR><TR CLASS="z"><TD CLASS="l">180</TD><TD>                                                if (!reflowedText.endsWith(lineDelimiter + nodeIndentation)) {</TD></TR><TR CLASS="z"><TD CLASS="l">181</TD><TD>                                                        reflowedText = StringUtils.appendIfNotEndWith(reflowedText, lineDelimiter);</TD></TR><TR CLASS="z"><TD CLASS="l">182</TD><TD>                                                        reflowedText = StringUtils.appendIfNotEndWith(reflowedText, nodeIndentation);</TD></TR><TR><TD CLASS="l">183</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">184</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">185</TD><TD>                                }</TD></TR><TR><TD CLASS="l">186</TD><TD>                                else {</TD></TR><TR CLASS="z"><TD CLASS="l">187</TD><TD>                                        if (!reflowedText.endsWith(lineDelimiter + nodeIndentation)) {</TD></TR><TR><TD CLASS="l">188</TD><TD>                                                // not already ended with the expected indentation</TD></TR><TR CLASS="z"><TD CLASS="l">189</TD><TD>                                                Node nextSibling = node.getNextSibling();</TD></TR><TR CLASS="z"><TD CLASS="l">190</TD><TD>                                                if (nextSibling.getNodeType() == Node.COMMENT_NODE) {</TD></TR><TR><TD CLASS="l">191</TD><TD>                                                        // add indentation to end if</TD></TR><TR><TD CLASS="l">192</TD><TD>                                                        // currentTextEndsWithLineDelimiter</TD></TR><TR><TD CLASS="l">193</TD><TD>                                                        // or followed by multiLineComment</TD></TR><TR><TD CLASS="l">194</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">195</TD><TD>                                                        int indexOfLastLineDelimiter = StringUtils.indexOfLastLineDelimiter(nodeText);</TD></TR><TR CLASS="z"><TD CLASS="l">196</TD><TD>                                                        boolean currentTextEndsWithLineDelimiter = indexOfLastLineDelimiter != -1;</TD></TR><TR CLASS="z"><TD CLASS="l">197</TD><TD>                                                        if (currentTextEndsWithLineDelimiter) {</TD></TR><TR><TD CLASS="l">198</TD><TD>                                                                // no more non blank character after the last</TD></TR><TR><TD CLASS="l">199</TD><TD>                                                                // line delimiter</TD></TR><TR CLASS="z"><TD CLASS="l">200</TD><TD>                                                                currentTextEndsWithLineDelimiter = StringUtils.indexOfNonblank(nodeText, indexOfLastLineDelimiter) == -1;</TD></TR><TR><TD CLASS="l">201</TD><TD>                                                        }</TD></TR><TR><TD CLASS="l">202</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">203</TD><TD>                                                        String nodeValue = nextSibling.getNodeValue();</TD></TR><TR CLASS="z"><TD CLASS="l">204</TD><TD>                                                        boolean multiLineComment = StringUtils.containsLineDelimiter(nodeValue);</TD></TR><TR><TD CLASS="l">205</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">206</TD><TD>                                                        if (currentTextEndsWithLineDelimiter || multiLineComment) {</TD></TR><TR CLASS="z"><TD CLASS="l">207</TD><TD>                                                                reflowedText = StringUtils.appendIfNotEndWith(reflowedText, lineDelimiter);</TD></TR><TR CLASS="z"><TD CLASS="l">208</TD><TD>                                                                reflowedText = StringUtils.appendIfNotEndWith(reflowedText, nodeIndentation);</TD></TR><TR><TD CLASS="l">209</TD><TD>                                                        }</TD></TR><TR><TD CLASS="l">210</TD><TD>                                                }</TD></TR><TR CLASS="z"><TD CLASS="l">211</TD><TD>                                                else if (nextSibling.getNodeType() == Node.ENTITY_REFERENCE_NODE || nextSibling.getNodeType() == Node.CDATA_SECTION_NODE) {</TD></TR><TR CLASS="z"><TD CLASS="l">212</TD><TD>                                                        int textLength = nodeText.length();</TD></TR><TR CLASS="z"><TD CLASS="l">213</TD><TD>                                                        if (textLength &gt; 0 &amp;&amp; Character.isWhitespace(nodeText.charAt(textLength - 1))) {</TD></TR><TR CLASS="z"><TD CLASS="l">214</TD><TD>                                                                reflowedText = StringUtils.appendIfNotEndWith(reflowedText, lineDelimiter);</TD></TR><TR CLASS="z"><TD CLASS="l">215</TD><TD>                                                                reflowedText = StringUtils.appendIfNotEndWith(reflowedText, nodeIndentation);</TD></TR><TR><TD CLASS="l">216</TD><TD>                                                        }</TD></TR><TR><TD CLASS="l">217</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">218</TD><TD>                                                else {</TD></TR><TR><TD CLASS="l">219</TD><TD>                                                        // not a comment, just add add indentation to end</TD></TR><TR CLASS="z"><TD CLASS="l">220</TD><TD>                                                        reflowedText = StringUtils.appendIfNotEndWith(reflowedText, lineDelimiter);</TD></TR><TR CLASS="z"><TD CLASS="l">221</TD><TD>                                                        reflowedText = StringUtils.appendIfNotEndWith(reflowedText, nodeIndentation);</TD></TR><TR><TD CLASS="l">222</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">223</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">224</TD><TD>                                }</TD></TR><TR><TD CLASS="l">225</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">226</TD><TD>                                replaceNodeValue(node, reflowedText);</TD></TR><TR><TD CLASS="l">227</TD><TD>                        }</TD></TR><TR><TD CLASS="l">228</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">229</TD><TD>        }</TD></TR><TR><TD CLASS="l">230</TD><TD> </TD></TR><TR><TD CLASS="l">231</TD><TD>        /**</TD></TR><TR><TD CLASS="l">232</TD><TD>         * Keeps text inline with its parent (no reflow necessary)</TD></TR><TR><TD CLASS="l">233</TD><TD>         * </TD></TR><TR><TD CLASS="l">234</TD><TD>         * @param node</TD></TR><TR><TD CLASS="l">235</TD><TD>         * @param doc</TD></TR><TR><TD CLASS="l">236</TD><TD>         * @param compressedText</TD></TR><TR><TD CLASS="l">237</TD><TD>         * @param parentNode</TD></TR><TR><TD CLASS="l">238</TD><TD>         */</TD></TR><TR><TD CLASS="l">239</TD><TD>        private void handleNoReflow(IDOMNode node, IStructuredDocument doc, String compressedText, IDOMNode parentNode) {</TD></TR><TR><TD CLASS="l">240</TD><TD>                String nodeIndentation;</TD></TR><TR><TD CLASS="l"><A NAME="7">241</A></TD><TD>                // enough space and text has no line delimiters and (node has no</TD></TR><TR><TD CLASS="l">242</TD><TD>                // siblings or followed by inline comment) and</TD></TR><TR><TD CLASS="l">243</TD><TD>                // parentFirstStructuredDocumentRegionContainsLineDelimiters</TD></TR><TR><TD CLASS="l">244</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">245</TD><TD>                if (isEndTagMissing(parentNode)) {</TD></TR><TR CLASS="z"><TD CLASS="l">246</TD><TD>                        parentNode = (IDOMNode) parentNode.getParentNode();</TD></TR><TR CLASS="z"><TD CLASS="l">247</TD><TD>                        while (isEndTagMissing(parentNode))</TD></TR><TR CLASS="z"><TD CLASS="l">248</TD><TD>                                parentNode = (IDOMNode) parentNode.getParentNode();</TD></TR><TR><TD CLASS="l">249</TD><TD> </TD></TR><TR><TD CLASS="l">250</TD><TD>                        // add parent's indentation to end</TD></TR><TR CLASS="z"><TD CLASS="l">251</TD><TD>                        nodeIndentation = getNodeIndent(parentNode);</TD></TR><TR CLASS="z"><TD CLASS="l">252</TD><TD>                        String lineDelimiter = getLineDelimiter(doc, node.getStartOffset());</TD></TR><TR CLASS="z"><TD CLASS="l">253</TD><TD>                        if (!compressedText.endsWith(lineDelimiter + nodeIndentation)) {</TD></TR><TR CLASS="z"><TD CLASS="l">254</TD><TD>                                compressedText = StringUtils.appendIfNotEndWith(compressedText, lineDelimiter);</TD></TR><TR CLASS="z"><TD CLASS="l">255</TD><TD>                                compressedText = StringUtils.appendIfNotEndWith(compressedText, nodeIndentation);</TD></TR><TR><TD CLASS="l">256</TD><TD>                        }</TD></TR><TR><TD CLASS="l">257</TD><TD>                }</TD></TR><TR><TD CLASS="l">258</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">259</TD><TD>                if ((parentNode != null) &amp;&amp; (parentNode.getNodeType() == Node.DOCUMENT_NODE) &amp;&amp; (node.getNodeValue().length() &gt; 0) &amp;&amp; (node.getNodeValue().trim().length() == 0) &amp;&amp; ((node.getPreviousSibling() == null) || (node.getNextSibling() == null)))</TD></TR><TR><TD CLASS="l">260</TD><TD>                        // delete spaces at the beginning or end of the document</TD></TR><TR CLASS="z"><TD CLASS="l">261</TD><TD>                        compressedText = EMPTY_STRING;</TD></TR><TR><TD CLASS="l">262</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="a">263</A></TD><TD>                replaceNodeValue(node, compressedText);</TD></TR><TR CLASS="z"><TD CLASS="l">264</TD><TD>        }</TD></TR><TR><TD CLASS="l">265</TD><TD> </TD></TR><TR><TD CLASS="l">266</TD><TD>        private boolean noSiblingsAndNoFollowingComment(IDOMNode node) {</TD></TR><TR CLASS="z"><TD CLASS="l">267</TD><TD>                IDOMNode nextSibling = (IDOMNode) node.getNextSibling();</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="8">268</A></TD><TD>                return !nodeHasSiblings(node) || (noLineDelimiter(node) &amp;&amp; isComment(nextSibling) &amp;&amp; noLineDelimiter(nextSibling));</TD></TR><TR><TD CLASS="l">269</TD><TD>        }</TD></TR><TR><TD CLASS="l">270</TD><TD> </TD></TR><TR><TD CLASS="l">271</TD><TD>        private boolean isComment(IDOMNode node) {</TD></TR><TR CLASS="z"><TD CLASS="l">272</TD><TD>                boolean result = false;</TD></TR><TR CLASS="z"><TD CLASS="l">273</TD><TD>                if (node != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">274</TD><TD>                        result = node.getNodeType() == Node.COMMENT_NODE;</TD></TR><TR><TD CLASS="l">275</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="9">276</A></TD><TD>                return result;</TD></TR><TR><TD CLASS="l">277</TD><TD>        }</TD></TR><TR><TD CLASS="l">278</TD><TD> </TD></TR><TR><TD CLASS="l">279</TD><TD>        private boolean noLineDelimiter(IDOMNode node) {</TD></TR><TR CLASS="z"><TD CLASS="l">280</TD><TD>                boolean result = false;</TD></TR><TR CLASS="z"><TD CLASS="l">281</TD><TD>                if (node != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">282</TD><TD>                        result = !StringUtils.containsLineDelimiter(node.getNodeValue());</TD></TR><TR><TD CLASS="l">283</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">284</TD><TD>                return result;</TD></TR><TR><TD CLASS="l">285</TD><TD>        }</TD></TR><TR><TD CLASS="l">286</TD><TD> </TD></TR><TR><TD CLASS="l">287</TD><TD>        /**</TD></TR><TR><TD CLASS="l">288</TD><TD>         * Calculates if there is enough space on the current line for</TD></TR><TR><TD CLASS="l">289</TD><TD>         * compressedText (and for its parent end tag)</TD></TR><TR><TD CLASS="l">290</TD><TD>         * </TD></TR><TR><TD CLASS="l">291</TD><TD>         * @param parentNode</TD></TR><TR><TD CLASS="l">292</TD><TD>         * @param currentAvailableLineWidth</TD></TR><TR><TD CLASS="l"><A NAME="4">293</A></TD><TD>         * @param compressedText</TD></TR><TR><TD CLASS="l">294</TD><TD>         * @return</TD></TR><TR><TD CLASS="l">295</TD><TD>         */</TD></TR><TR><TD CLASS="l">296</TD><TD>        private boolean enoughSpace(IDOMNode parentNode, int currentAvailableLineWidth, String compressedText) {</TD></TR><TR CLASS="z"><TD CLASS="l">297</TD><TD>                int parentEndTagLength = parentNode.getNodeName().length() + 3;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="b">298</A></TD><TD>                return compressedText.length() &lt;= (currentAvailableLineWidth - parentEndTagLength) &amp;&amp; !StringUtils.containsLineDelimiter(compressedText);</TD></TR><TR><TD CLASS="l">299</TD><TD>        }</TD></TR><TR><TD CLASS="l">300</TD><TD> </TD></TR><TR><TD CLASS="l">301</TD><TD>        protected Vector reflowText(String text, int availableWidth) {</TD></TR><TR CLASS="z"><TD CLASS="l">302</TD><TD>                String[] stringArray = null;</TD></TR><TR CLASS="z"><TD CLASS="l">303</TD><TD>                boolean clearAllBlankLines = getFormatPreferences().getClearAllBlankLines();</TD></TR><TR><TD CLASS="l">304</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">305</TD><TD>                if (clearAllBlankLines)</TD></TR><TR CLASS="z"><TD CLASS="l">306</TD><TD>                        stringArray = StringUtils.asArray(text);</TD></TR><TR><TD CLASS="l">307</TD><TD>                else</TD></TR><TR CLASS="z"><TD CLASS="l">308</TD><TD>                        stringArray = StringUtils.asArray(text, DELIMITERS, true);</TD></TR><TR><TD CLASS="l">309</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">310</TD><TD>                Vector output = new Vector();</TD></TR><TR CLASS="z"><TD CLASS="l">311</TD><TD>                if ((stringArray != null) &amp;&amp; (stringArray.length &gt; 0)) {</TD></TR><TR CLASS="z"><TD CLASS="l">312</TD><TD>                        StringBuffer buffer = new StringBuffer();</TD></TR><TR CLASS="z"><TD CLASS="l">313</TD><TD>                        if (stringArray[0].compareTo(CR) != 0)</TD></TR><TR CLASS="z"><TD CLASS="l">314</TD><TD>                                buffer.append(stringArray[0]);</TD></TR><TR CLASS="z"><TD CLASS="l">315</TD><TD>                        int bufferLength = stringArray[0].toString().length();</TD></TR><TR CLASS="z"><TD CLASS="l">316</TD><TD>                        boolean cr = stringArray[0].compareTo(CR) == 0;</TD></TR><TR><TD CLASS="l">317</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">318</TD><TD>                        for (int i = 1; i &lt; stringArray.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">319</TD><TD>                                String eachString = stringArray[i];</TD></TR><TR CLASS="z"><TD CLASS="l">320</TD><TD>                                if ((eachString.compareTo(SPACE) != 0) &amp;&amp; (eachString.compareTo(TAB) != 0) &amp;&amp; (eachString.compareTo(FF) != 0)) {</TD></TR><TR CLASS="z"><TD CLASS="l">321</TD><TD>                                        if ((bufferLength + 1 + eachString.length() &gt; availableWidth) || (eachString.compareTo(CR) == 0) || (eachString.compareTo(LF) == 0)) {</TD></TR><TR CLASS="z"><TD CLASS="l">322</TD><TD>                                                if ((eachString.compareTo(LF) == 0) &amp;&amp; cr) {</TD></TR><TR><TD CLASS="l">323</TD><TD>                                                        // do nothing</TD></TR><TR><TD CLASS="l">324</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">325</TD><TD>                                                else {</TD></TR><TR CLASS="z"><TD CLASS="l">326</TD><TD>                                                        output.add(buffer.toString());</TD></TR><TR CLASS="z"><TD CLASS="l">327</TD><TD>                                                        buffer = new StringBuffer();</TD></TR><TR CLASS="z"><TD CLASS="l">328</TD><TD>                                                        bufferLength = 0;</TD></TR><TR><TD CLASS="l">329</TD><TD>                                                }</TD></TR><TR CLASS="z"><TD CLASS="l">330</TD><TD>                                                cr = eachString.compareTo(CR) == 0;</TD></TR><TR><TD CLASS="l">331</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">332</TD><TD>                                        else if (buffer.toString().trim().length() &gt; 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">333</TD><TD>                                                buffer.append(SPACE);</TD></TR><TR CLASS="z"><TD CLASS="l">334</TD><TD>                                                bufferLength++;</TD></TR><TR><TD CLASS="l">335</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">336</TD><TD>                                        if ((eachString.compareTo(CR) != 0) &amp;&amp; (eachString.compareTo(LF) != 0)) {</TD></TR><TR CLASS="z"><TD CLASS="l">337</TD><TD>                                                buffer.append(eachString);</TD></TR><TR CLASS="z"><TD CLASS="l">338</TD><TD>                                                bufferLength = bufferLength + eachString.length();</TD></TR><TR><TD CLASS="l">339</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">340</TD><TD>                                }</TD></TR><TR><TD CLASS="l">341</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">342</TD><TD>                        output.add(buffer.toString());</TD></TR><TR><TD CLASS="l">343</TD><TD>                }</TD></TR><TR><TD CLASS="l">344</TD><TD>                else</TD></TR><TR CLASS="z"><TD CLASS="l">345</TD><TD>                        output.add(text);</TD></TR><TR><TD CLASS="l">346</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="6">347</A></TD><TD>                return output;</TD></TR><TR><TD CLASS="l">348</TD><TD>        }</TD></TR><TR><TD CLASS="l">349</TD><TD> </TD></TR><TR><TD CLASS="l">350</TD><TD>        private String getLineDelimiter(IStructuredDocument doc, int nodeOffset) {</TD></TR><TR CLASS="z"><TD CLASS="l">351</TD><TD>                int line = doc.getLineOfOffset(nodeOffset);</TD></TR><TR CLASS="z"><TD CLASS="l">352</TD><TD>                String lineDelimiter = doc.getLineDelimiter();</TD></TR><TR><TD CLASS="l">353</TD><TD>                try {</TD></TR><TR CLASS="z"><TD CLASS="l">354</TD><TD>                        if (line &gt; 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">355</TD><TD>                                lineDelimiter = doc.getLineDelimiter(line - 1);</TD></TR><TR><TD CLASS="l">356</TD><TD>                        }</TD></TR><TR><TD CLASS="l">357</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">358</TD><TD>                catch (BadLocationException e) {</TD></TR><TR><TD CLASS="l">359</TD><TD>                        // log for now, unless we find reason not to</TD></TR><TR CLASS="z"><TD CLASS="l">360</TD><TD>                        Logger.log(Logger.INFO, e.getMessage());</TD></TR><TR><TD CLASS="l">361</TD><TD>                }</TD></TR><TR><TD CLASS="l">362</TD><TD>                // BUG115716: if cannot get line delimiter from current line, just</TD></TR><TR><TD CLASS="l">363</TD><TD>                // use default line delimiter</TD></TR><TR CLASS="z"><TD CLASS="l">364</TD><TD>                if (lineDelimiter == null)</TD></TR><TR CLASS="z"><TD CLASS="l">365</TD><TD>                        lineDelimiter = doc.getLineDelimiter();</TD></TR><TR CLASS="z"><TD CLASS="l">366</TD><TD>                return lineDelimiter;</TD></TR><TR><TD CLASS="l"><A NAME="3">367</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">368</TD><TD> </TD></TR><TR><TD CLASS="l">369</TD><TD>        private int computeAvailableLineWidth(IStructuredDocument doc, int nodeOffset, int lineWidth) {</TD></TR><TR><TD CLASS="l">370</TD><TD>                // compute current available line width</TD></TR><TR CLASS="z"><TD CLASS="l">371</TD><TD>                int currentAvailableLineWidth = 0;</TD></TR><TR><TD CLASS="l">372</TD><TD>                try {</TD></TR><TR CLASS="z"><TD CLASS="l">373</TD><TD>                        int lineOffset = doc.getLineInformationOfOffset(nodeOffset).getOffset();</TD></TR><TR CLASS="z"><TD CLASS="l">374</TD><TD>                        String text = doc.get(lineOffset, nodeOffset - lineOffset);</TD></TR><TR CLASS="z"><TD CLASS="l">375</TD><TD>                        int usedWidth = getIndentationLength(text);</TD></TR><TR CLASS="z"><TD CLASS="l">376</TD><TD>                        currentAvailableLineWidth = lineWidth - usedWidth;</TD></TR><TR><TD CLASS="l">377</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">378</TD><TD>                catch (BadLocationException e) {</TD></TR><TR><TD CLASS="l">379</TD><TD>                        // log for now, unless we find reason not to</TD></TR><TR CLASS="z"><TD CLASS="l">380</TD><TD>                        Logger.log(Logger.INFO, e.getMessage());</TD></TR><TR><TD CLASS="l">381</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">382</TD><TD>                return currentAvailableLineWidth;</TD></TR><TR><TD CLASS="l">383</TD><TD>        }</TD></TR><TR><TD CLASS="l">384</TD><TD> </TD></TR><TR><TD CLASS="l">385</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="27.html">org.eclipse.wst.xml.core.internal.provisional.format</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/16.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/16.html
deleted file mode 100644
index e181078..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/16.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR PACKAGE [<SPAN CLASS="in">org.eclipse.wst.sse.ui.internal.properties</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>org.eclipse.wst.sse.ui.internal.properties</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/30)</TD><TD CLASS="h">0%   (0/623)</TD><TD CLASS="h">0%   (0/147)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY SOURCE FILE</H3><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR CLASS="o"><TD><A HREF="12e.html">AdapterPropertySheetEntryLabelProvider.java</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/89)</TD><TD CLASS="h">0%   (0/19)</TD></TR><TR><TD><A HREF="12f.html">ConfigurablePropertySheetPage.java</A></TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/14)</TD><TD CLASS="h">0%   (0/333)</TD><TD CLASS="h">0%   (0/77)</TD></TR><TR CLASS="o"><TD><A HREF="130.html">CustomPropertyDescriptor.java</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/106)</TD><TD CLASS="h">0%   (0/23)</TD></TR><TR><TD><A HREF="131.html">RemoveAction.java</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/30)</TD><TD CLASS="h">0%   (0/10)</TD></TR><TR CLASS="o"><TD><A HREF="132.html">ShowPropertiesAction.java</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/65)</TD><TD CLASS="h">0%   (0/18)</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/160.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/160.html
deleted file mode 100644
index 66f6f98..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/160.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="28.html">org.eclipse.wst.xml.core.internal.search</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">ComponentSearchContributor.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>ComponentSearchContributor.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/59)</TD><TD CLASS="h">0%   (0/17)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">ComponentSearchContributor</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/59)</TD><TD CLASS="h">0%   (0/17)</TD></TR><TR><TD CLASS="f"><A HREF="#0">ComponentSearchContributor (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">getDeclarationPattern (QualifiedName): XMLSearchPattern</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#3">getDeclarations (): Map</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">getReferences (): Map</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#5">getReferencesPatterns (QualifiedName): XMLSearchPattern []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/18)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">getSupportedNamespaces (): String []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#7">supports (QualifiedName): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/2)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2004, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - Initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">11</TD><TD> </TD></TR><TR><TD CLASS="l">12</TD><TD>package org.eclipse.wst.xml.core.internal.search;</TD></TR><TR><TD CLASS="l">13</TD><TD> </TD></TR><TR><TD CLASS="l">14</TD><TD>import java.util.HashMap;</TD></TR><TR><TD CLASS="l">15</TD><TD>import java.util.List;</TD></TR><TR><TD CLASS="l">16</TD><TD>import java.util.Map;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.wst.common.core.search.pattern.QualifiedName;</TD></TR><TR><TD CLASS="l">18</TD><TD> </TD></TR><TR><TD CLASS="l">19</TD><TD>public abstract class ComponentSearchContributor  {</TD></TR><TR><TD CLASS="l">20</TD><TD> </TD></TR><TR><TD CLASS="l">21</TD><TD>        protected HashMap declarations;</TD></TR><TR><TD CLASS="l">22</TD><TD> </TD></TR><TR><TD CLASS="l">23</TD><TD>        protected HashMap references;</TD></TR><TR><TD CLASS="l"><A NAME="0">24</A></TD><TD> </TD></TR><TR><TD CLASS="l">25</TD><TD>        protected String[] namespaces;</TD></TR><TR><TD CLASS="l">26</TD><TD> </TD></TR><TR><TD CLASS="l">27</TD><TD>        public ComponentSearchContributor() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">28</A></TD><TD>                super();</TD></TR><TR CLASS="z"><TD CLASS="l">29</TD><TD>        }</TD></TR><TR><TD CLASS="l">30</TD><TD> </TD></TR><TR><TD CLASS="l">31</TD><TD>        public XMLSearchPattern getDeclarationPattern(QualifiedName componentName) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">32</A></TD><TD>                return (XMLSearchPattern) getDeclarations().get(componentName);</TD></TR><TR><TD CLASS="l">33</TD><TD>        }</TD></TR><TR><TD CLASS="l">34</TD><TD> </TD></TR><TR><TD CLASS="l">35</TD><TD>        protected Map getDeclarations() {</TD></TR><TR CLASS="z"><TD CLASS="l">36</TD><TD>                if (declarations == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">37</TD><TD>                        initializeDeclarations();</TD></TR><TR><TD CLASS="l">38</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">39</A></TD><TD>                return declarations;</TD></TR><TR><TD CLASS="l">40</TD><TD>        }</TD></TR><TR><TD CLASS="l">41</TD><TD> </TD></TR><TR><TD CLASS="l">42</TD><TD>        protected Map getReferences() {</TD></TR><TR CLASS="z"><TD CLASS="l">43</TD><TD>                if (references == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>                        initializeReferences();</TD></TR><TR><TD CLASS="l">45</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="5">46</A></TD><TD>                return references;</TD></TR><TR><TD CLASS="l">47</TD><TD>        }</TD></TR><TR><TD CLASS="l">48</TD><TD> </TD></TR><TR><TD CLASS="l">49</TD><TD>        public XMLSearchPattern[] getReferencesPatterns(QualifiedName componentName) {</TD></TR><TR CLASS="z"><TD CLASS="l">50</TD><TD>                List references = (List) getReferences().get(componentName);</TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>                if (references != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                        return (XMLSearchPattern[]) references</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>                                        .toArray(new XMLSearchPattern[references.size()]);</TD></TR><TR><TD CLASS="l">54</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                return new XMLSearchPattern[0];</TD></TR><TR><TD CLASS="l"><A NAME="7">56</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">57</TD><TD>        </TD></TR><TR><TD CLASS="l">58</TD><TD>        </TD></TR><TR><TD CLASS="l">59</TD><TD>        public boolean supports(QualifiedName componentName){</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                return getReferencesPatterns(componentName).length &gt; 0 ||</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="6">61</A></TD><TD>                        getDeclarationPattern(componentName) != null;</TD></TR><TR><TD CLASS="l">62</TD><TD>        }</TD></TR><TR><TD CLASS="l">63</TD><TD> </TD></TR><TR><TD CLASS="l">64</TD><TD>        public String[] getSupportedNamespaces() {</TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>                return namespaces;</TD></TR><TR><TD CLASS="l">66</TD><TD>        }</TD></TR><TR><TD CLASS="l">67</TD><TD> </TD></TR><TR><TD CLASS="l">68</TD><TD>        protected abstract void initializeDeclarations();</TD></TR><TR><TD CLASS="l">69</TD><TD> </TD></TR><TR><TD CLASS="l">70</TD><TD>        protected abstract void initializeReferences();</TD></TR><TR><TD CLASS="l">71</TD><TD> </TD></TR><TR><TD CLASS="l">72</TD><TD>        protected abstract void initializeSupportedNamespaces();</TD></TR><TR><TD CLASS="l">73</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="28.html">org.eclipse.wst.xml.core.internal.search</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/161.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/161.html
deleted file mode 100644
index 8698659..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/161.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="28.html">org.eclipse.wst.xml.core.internal.search</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">TargetNamespaceReferencePattern.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>TargetNamespaceReferencePattern.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/6)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">TargetNamespaceReferencePattern</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#1">TargetNamespaceReferencePattern (String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#0">TargetNamespaceReferencePattern (int, String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/3)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2004, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - Initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">11</TD><TD> </TD></TR><TR><TD CLASS="l">12</TD><TD>package org.eclipse.wst.xml.core.internal.search;</TD></TR><TR><TD CLASS="l">13</TD><TD> </TD></TR><TR><TD CLASS="l">14</TD><TD>import org.eclipse.wst.common.core.search.pattern.SearchPattern;</TD></TR><TR><TD CLASS="l">15</TD><TD> </TD></TR><TR><TD CLASS="l">16</TD><TD>public class TargetNamespaceReferencePattern extends SearchPattern {</TD></TR><TR><TD CLASS="l"><A NAME="0">17</A></TD><TD>        </TD></TR><TR><TD CLASS="l">18</TD><TD>        String namespaceURI;</TD></TR><TR><TD CLASS="l">19</TD><TD>        </TD></TR><TR><TD CLASS="l">20</TD><TD>        public TargetNamespaceReferencePattern(int matchRule, String namespaceuri) {</TD></TR><TR CLASS="z"><TD CLASS="l">21</TD><TD>                super(matchRule);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="1">22</A></TD><TD>                namespaceURI = namespaceuri;</TD></TR><TR CLASS="z"><TD CLASS="l">23</TD><TD>        }</TD></TR><TR><TD CLASS="l">24</TD><TD>        </TD></TR><TR><TD CLASS="l">25</TD><TD>        public TargetNamespaceReferencePattern(String namespaceuri) {</TD></TR><TR CLASS="z"><TD CLASS="l">26</TD><TD>                super();</TD></TR><TR CLASS="z"><TD CLASS="l">27</TD><TD>                namespaceURI = namespaceuri;</TD></TR><TR CLASS="z"><TD CLASS="l">28</TD><TD>        }</TD></TR><TR><TD CLASS="l">29</TD><TD> </TD></TR><TR><TD CLASS="l">30</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="28.html">org.eclipse.wst.xml.core.internal.search</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/162.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/162.html
deleted file mode 100644
index 6e93d93..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/162.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="28.html">org.eclipse.wst.xml.core.internal.search</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">XMLComponentDeclarationPattern.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>XMLComponentDeclarationPattern.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/19)</TD><TD CLASS="h">0%   (0/6)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">XMLComponentDeclarationPattern</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/19)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#1">XMLComponentDeclarationPattern (IFile, QualifiedName, QualifiedName): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">XMLComponentDeclarationPattern (QualifiedName, QualifiedName): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#0">XMLComponentDeclarationPattern (QualifiedName, QualifiedName, int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/2)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2004, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - Initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">11</TD><TD> </TD></TR><TR><TD CLASS="l">12</TD><TD>package org.eclipse.wst.xml.core.internal.search;</TD></TR><TR><TD CLASS="l">13</TD><TD> </TD></TR><TR><TD CLASS="l">14</TD><TD>import org.eclipse.core.resources.IFile;</TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.wst.common.core.search.pattern.QualifiedName;</TD></TR><TR><TD CLASS="l"><A NAME="0">16</A></TD><TD> </TD></TR><TR><TD CLASS="l">17</TD><TD>public class XMLComponentDeclarationPattern extends XMLComponentSearchPattern {</TD></TR><TR><TD CLASS="l">18</TD><TD> </TD></TR><TR><TD CLASS="l">19</TD><TD>        public XMLComponentDeclarationPattern(QualifiedName elementQName, QualifiedName typeQName, int matchRule) {</TD></TR><TR CLASS="z"><TD CLASS="l">20</TD><TD>                super(null, elementQName, typeQName, matchRule);</TD></TR><TR><TD CLASS="l"><A NAME="1">21</A></TD><TD>                </TD></TR><TR CLASS="z"><TD CLASS="l">22</TD><TD>        }</TD></TR><TR><TD CLASS="l">23</TD><TD> </TD></TR><TR><TD CLASS="l">24</TD><TD>        public XMLComponentDeclarationPattern(IFile file, QualifiedName elementQName, QualifiedName typeQName) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">25</A></TD><TD>                super(file, elementQName, typeQName);</TD></TR><TR CLASS="z"><TD CLASS="l">26</TD><TD>        }</TD></TR><TR><TD CLASS="l">27</TD><TD>        </TD></TR><TR><TD CLASS="l">28</TD><TD>        public XMLComponentDeclarationPattern(QualifiedName elementQName, QualifiedName typeQName) {</TD></TR><TR CLASS="z"><TD CLASS="l">29</TD><TD>                super(null, elementQName, typeQName);</TD></TR><TR CLASS="z"><TD CLASS="l">30</TD><TD>        }</TD></TR><TR><TD CLASS="l">31</TD><TD> </TD></TR><TR><TD CLASS="l">32</TD><TD>        </TD></TR><TR><TD CLASS="l">33</TD><TD>        </TD></TR><TR><TD CLASS="l">34</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="28.html">org.eclipse.wst.xml.core.internal.search</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/163.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/163.html
deleted file mode 100644
index 46bbff3..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/163.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="28.html">org.eclipse.wst.xml.core.internal.search</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">XMLComponentReferencePattern.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>XMLComponentReferencePattern.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/19)</TD><TD CLASS="h">0%   (0/6)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">XMLComponentReferencePattern</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/19)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#1">XMLComponentReferencePattern (IFile, QualifiedName, QualifiedName): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#0">XMLComponentReferencePattern (IFile, QualifiedName, QualifiedName, int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#3">XMLComponentReferencePattern (QualifiedName, QualifiedName): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2004, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - Initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">11</TD><TD> </TD></TR><TR><TD CLASS="l">12</TD><TD>package org.eclipse.wst.xml.core.internal.search;</TD></TR><TR><TD CLASS="l">13</TD><TD> </TD></TR><TR><TD CLASS="l">14</TD><TD>import org.eclipse.core.resources.IFile;</TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.wst.common.core.search.pattern.QualifiedName;</TD></TR><TR><TD CLASS="l"><A NAME="0">16</A></TD><TD> </TD></TR><TR><TD CLASS="l">17</TD><TD>public class XMLComponentReferencePattern extends XMLComponentSearchPattern{</TD></TR><TR><TD CLASS="l">18</TD><TD> </TD></TR><TR><TD CLASS="l">19</TD><TD>        public XMLComponentReferencePattern(IFile file, QualifiedName elementQName, QualifiedName typeQName, int matchRule) {</TD></TR><TR CLASS="z"><TD CLASS="l">20</TD><TD>                super(file, elementQName, typeQName, matchRule);</TD></TR><TR><TD CLASS="l"><A NAME="1">21</A></TD><TD>                </TD></TR><TR CLASS="z"><TD CLASS="l">22</TD><TD>        }</TD></TR><TR><TD CLASS="l">23</TD><TD> </TD></TR><TR><TD CLASS="l">24</TD><TD>        public XMLComponentReferencePattern(IFile file, QualifiedName elementQName, QualifiedName typeQName) {</TD></TR><TR CLASS="z"><TD CLASS="l">25</TD><TD>                super(file, elementQName, typeQName);</TD></TR><TR><TD CLASS="l"><A NAME="3">26</A></TD><TD>                </TD></TR><TR CLASS="z"><TD CLASS="l">27</TD><TD>        }</TD></TR><TR><TD CLASS="l">28</TD><TD>        </TD></TR><TR><TD CLASS="l">29</TD><TD>        public XMLComponentReferencePattern(QualifiedName elementQName, QualifiedName typeQName) {</TD></TR><TR CLASS="z"><TD CLASS="l">30</TD><TD>                super(null, elementQName, typeQName);</TD></TR><TR><TD CLASS="l">31</TD><TD>                </TD></TR><TR CLASS="z"><TD CLASS="l">32</TD><TD>        }</TD></TR><TR><TD CLASS="l">33</TD><TD>        </TD></TR><TR><TD CLASS="l">34</TD><TD>        </TD></TR><TR><TD CLASS="l">35</TD><TD>        </TD></TR><TR><TD CLASS="l">36</TD><TD>        </TD></TR><TR><TD CLASS="l">37</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="28.html">org.eclipse.wst.xml.core.internal.search</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/164.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/164.html
deleted file mode 100644
index d99dcbc..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/164.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="28.html">org.eclipse.wst.xml.core.internal.search</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">XMLComponentSearchPattern.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>XMLComponentSearchPattern.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/71)</TD><TD CLASS="h">0%   (0/19)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">XMLComponentSearchPattern</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/71)</TD><TD CLASS="h">0%   (0/19)</TD></TR><TR><TD CLASS="f"><A HREF="#1">XMLComponentSearchPattern (IFile, QualifiedName, QualifiedName): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#0">XMLComponentSearchPattern (IFile, QualifiedName, QualifiedName, int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/16)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#3">addChildren (SearchParticipant, XMLSearchPattern []): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">getChildren (): XMLSearchPattern []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#5">getChildren (SearchParticipant): XMLSearchPattern []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/18)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">setChildren (XMLSearchPattern []): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2004, 2008 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - Initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">11</TD><TD> </TD></TR><TR><TD CLASS="l">12</TD><TD>package org.eclipse.wst.xml.core.internal.search;</TD></TR><TR><TD CLASS="l">13</TD><TD> </TD></TR><TR><TD CLASS="l">14</TD><TD>import java.util.HashMap;</TD></TR><TR><TD CLASS="l">15</TD><TD>import java.util.Map;</TD></TR><TR><TD CLASS="l">16</TD><TD> </TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.core.resources.IFile;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.wst.common.core.search.SearchParticipant;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.wst.common.core.search.pattern.ComponentSearchPattern;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.wst.common.core.search.pattern.QualifiedName;</TD></TR><TR><TD CLASS="l">21</TD><TD> </TD></TR><TR><TD CLASS="l">22</TD><TD>/**</TD></TR><TR><TD CLASS="l">23</TD><TD> * XML component search pattern is a composite pattern that combines XML element pattern.</TD></TR><TR><TD CLASS="l">24</TD><TD> *</TD></TR><TR><TD CLASS="l">25</TD><TD> */</TD></TR><TR><TD CLASS="l">26</TD><TD>public class XMLComponentSearchPattern extends ComponentSearchPattern {</TD></TR><TR><TD CLASS="l">27</TD><TD>        </TD></TR><TR><TD CLASS="l">28</TD><TD>        /**</TD></TR><TR><TD CLASS="l">29</TD><TD>         * Containing element patterns</TD></TR><TR><TD CLASS="l">30</TD><TD>         * @deprecated</TD></TR><TR><TD CLASS="l">31</TD><TD>         */</TD></TR><TR CLASS="z"><TD CLASS="l">32</TD><TD>        XMLSearchPattern[] children = new XMLSearchPattern[0];</TD></TR><TR><TD CLASS="l">33</TD><TD>        </TD></TR><TR><TD CLASS="l">34</TD><TD>        /**</TD></TR><TR><TD CLASS="l">35</TD><TD>         * A map of XMLSearchPattern[] by {@link SearchParticipant search participant}.</TD></TR><TR><TD CLASS="l"><A NAME="0">36</A></TD><TD>         */</TD></TR><TR CLASS="z"><TD CLASS="l">37</TD><TD>        protected Map childPatternsByParticipant = new HashMap();</TD></TR><TR><TD CLASS="l">38</TD><TD>        </TD></TR><TR><TD CLASS="l">39</TD><TD>        public XMLComponentSearchPattern(IFile file, QualifiedName elementQName, QualifiedName typeQName, int matchRule) {</TD></TR><TR CLASS="z"><TD CLASS="l">40</TD><TD>                super(file, elementQName, typeQName, matchRule);</TD></TR><TR><TD CLASS="l">41</TD><TD>                </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="1">42</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">43</TD><TD> </TD></TR><TR><TD CLASS="l">44</TD><TD> </TD></TR><TR><TD CLASS="l">45</TD><TD>        public XMLComponentSearchPattern(IFile file, QualifiedName elementQName, QualifiedName typeQName) {</TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>                super(file, elementQName, typeQName);</TD></TR><TR><TD CLASS="l">47</TD><TD>                </TD></TR><TR CLASS="z"><TD CLASS="l">48</TD><TD>        }</TD></TR><TR><TD CLASS="l">49</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="4">50</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">51</TD><TD>         * @deprecated Use {@link #getChildren(SearchParticipant)} instead.</TD></TR><TR><TD CLASS="l">52</TD><TD>         */</TD></TR><TR><TD CLASS="l">53</TD><TD>        public XMLSearchPattern[] getChildren(){</TD></TR><TR CLASS="z"><TD CLASS="l">54</TD><TD>                return children;</TD></TR><TR><TD CLASS="l">55</TD><TD>        }</TD></TR><TR><TD CLASS="l">56</TD><TD>        </TD></TR><TR><TD CLASS="l"><A NAME="6">57</A></TD><TD>    /**</TD></TR><TR><TD CLASS="l">58</TD><TD>     * @deprecated Use {@link #addChildren(SearchParticipant, XMLSearchPattern[])} instead.</TD></TR><TR><TD CLASS="l">59</TD><TD>     */</TD></TR><TR><TD CLASS="l">60</TD><TD>        public void setChildren(XMLSearchPattern[] patterns){</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                children = patterns;</TD></TR><TR><TD CLASS="l">62</TD><TD>                </TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>        }</TD></TR><TR><TD CLASS="l">64</TD><TD>        </TD></TR><TR><TD CLASS="l">65</TD><TD>        /**</TD></TR><TR><TD CLASS="l">66</TD><TD>         * Provides the child patterns contributed by the given search participant. </TD></TR><TR><TD CLASS="l">67</TD><TD>         * @param searchParticipant the {@link SearchParticipant search participant} that contributed the patterns.</TD></TR><TR><TD CLASS="l"><A NAME="5">68</A></TD><TD>     * @see XMLComponentSearchPattern#addChildren(SearchParticipant, XMLSearchPattern[]) addChildren</TD></TR><TR><TD CLASS="l">69</TD><TD>         * @return an array with the {@link XMLSearchPattern patterns} contributed by the {@link SearchParticipant search participant}.</TD></TR><TR><TD CLASS="l">70</TD><TD>         */</TD></TR><TR><TD CLASS="l">71</TD><TD>        public XMLSearchPattern[] getChildren(SearchParticipant searchParticipant){</TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>          XMLSearchPattern[] childPatterns = getChildren();</TD></TR><TR CLASS="z"><TD CLASS="l">73</TD><TD>          if (searchParticipant != null){</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>            childPatterns = (XMLSearchPattern[])childPatternsByParticipant.get(searchParticipant);</TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>            if (childPatterns == null){</TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>              childPatterns = getChildren();</TD></TR><TR><TD CLASS="l">77</TD><TD>            }</TD></TR><TR><TD CLASS="l">78</TD><TD>          }</TD></TR><TR CLASS="z"><TD CLASS="l">79</TD><TD>          return childPatterns;</TD></TR><TR><TD CLASS="l">80</TD><TD>        }</TD></TR><TR><TD CLASS="l">81</TD><TD> </TD></TR><TR><TD CLASS="l">82</TD><TD>        /**</TD></TR><TR><TD CLASS="l">83</TD><TD>         * Saves the child patterns contributed by the given search participant.</TD></TR><TR><TD CLASS="l">84</TD><TD>         * @param searchParticipant the {@link SearchParticipant search participant} that is contributing the child search patterns.</TD></TR><TR><TD CLASS="l"><A NAME="3">85</A></TD><TD>         * @param childPatterns the child patterns contributed by the {@link SearchParticipant searchParticipant search participant}.</TD></TR><TR><TD CLASS="l">86</TD><TD>         * @see XMLComponentSearchPattern#getChildren(SearchParticipant) getChildren</TD></TR><TR><TD CLASS="l">87</TD><TD>         */</TD></TR><TR><TD CLASS="l">88</TD><TD>        public void addChildren(SearchParticipant searchParticipant, XMLSearchPattern[] childPatterns){</TD></TR><TR CLASS="z"><TD CLASS="l">89</TD><TD>          if (searchParticipant != null &amp;&amp; childPatterns != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">90</TD><TD>            childPatternsByParticipant.put(searchParticipant, childPatterns);</TD></TR><TR><TD CLASS="l">91</TD><TD>          }</TD></TR><TR><TD CLASS="l">92</TD><TD>          else {</TD></TR><TR CLASS="z"><TD CLASS="l">93</TD><TD>            children = childPatterns;</TD></TR><TR><TD CLASS="l">94</TD><TD>          }</TD></TR><TR CLASS="z"><TD CLASS="l">95</TD><TD>        }</TD></TR><TR><TD CLASS="l">96</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="28.html">org.eclipse.wst.xml.core.internal.search</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/165.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/165.html
deleted file mode 100644
index 30f8f07..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/165.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="28.html">org.eclipse.wst.xml.core.internal.search</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">XMLSearchParticipant.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>XMLSearchParticipant.java</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/16)</TD><TD CLASS="h">0%   (0/653)</TD><TD CLASS="h">0%   (0/136)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">XMLSearchParticipant</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/546)</TD><TD CLASS="h">0%   (0/116)</TD></TR><TR><TD CLASS="f"><A HREF="#0">&lt;static initializer&gt;</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">XMLSearchParticipant (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#3">beginSearching (SearchPattern, Map): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/77)</TD><TD CLASS="h">0%   (0/17)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">createSearchDocument (String): SearchDocument</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#5">getAdapter (Object, Class): PatternMatcher</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/31)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">getDescription (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#7">getSearchEntryCategory (SearchPattern): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/17)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">isLinked (SearchDocumentSet, String, String): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#9">isLinked (SearchDocumentSet, String, String, HashMap): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/127)</TD><TD CLASS="h">0%   (0/27)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">locateMatches (SearchDocumentSet, SearchPattern, SearchScope, SearchRequestor...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/115)</TD><TD CLASS="h">0%   (0/26)</TD></TR><TR><TD CLASS="f"><A HREF="#b">locateMatches (SearchPattern, SearchDocument, SearchRequestor, Map, IProgress...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/86)</TD><TD CLASS="h">0%   (0/18)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#c">populateSearchDocument (SearchDocument, SearchPattern): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/46)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#d">selectDocumentLocations (SearchPattern, SearchScope, Map, IProgressMonitor): ...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/21)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#e">XMLSearchParticipant$DOMVisitor</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/107)</TD><TD CLASS="h">0%   (0/20)</TD></TR><TR><TD CLASS="f"><A HREF="#e">XMLSearchParticipant$DOMVisitor (XMLSearchParticipant, String, SearchPattern,...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/58)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#10">match (Element): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/22)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#11">visit (Node): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/27)</TD><TD CLASS="h">0%   (0/7)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2004, 2008 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - Initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">11</TD><TD> </TD></TR><TR><TD CLASS="l">12</TD><TD>package org.eclipse.wst.xml.core.internal.search;</TD></TR><TR><TD CLASS="l">13</TD><TD> </TD></TR><TR><TD CLASS="l">14</TD><TD>import java.util.HashMap;</TD></TR><TR><TD CLASS="l">15</TD><TD>import java.util.Map;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.core.resources.IFile;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.core.resources.ResourcesPlugin;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.core.runtime.CoreException;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.core.runtime.IProgressMonitor;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.core.runtime.Path;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.core.runtime.Platform;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.wst.common.core.search.SearchMatch;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.wst.common.core.search.SearchParticipant;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.wst.common.core.search.SearchRequestor;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.wst.common.core.search.document.ComponentDeclarationEntry;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.wst.common.core.search.document.Entry;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.wst.common.core.search.document.FileReferenceEntry;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.wst.common.core.search.document.SearchDocument;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.wst.common.core.search.document.SearchDocumentSet;</TD></TR><TR><TD CLASS="l">30</TD><TD>import org.eclipse.wst.common.core.search.pattern.ComponentSearchPattern;</TD></TR><TR><TD CLASS="l">31</TD><TD>import org.eclipse.wst.common.core.search.pattern.FileReferencePattern;</TD></TR><TR><TD CLASS="l">32</TD><TD>import org.eclipse.wst.common.core.search.pattern.SearchPattern;</TD></TR><TR><TD CLASS="l">33</TD><TD>import org.eclipse.wst.common.core.search.scope.ContentTypeSearchScope;</TD></TR><TR><TD CLASS="l">34</TD><TD>import org.eclipse.wst.common.core.search.scope.SearchScope;</TD></TR><TR><TD CLASS="l">35</TD><TD>import org.eclipse.wst.common.uriresolver.internal.provisional.URIResolver;</TD></TR><TR><TD CLASS="l">36</TD><TD>import org.eclipse.wst.common.uriresolver.internal.provisional.URIResolverPlugin;</TD></TR><TR><TD CLASS="l">37</TD><TD>import org.eclipse.wst.xml.core.internal.provisional.document.IDOMElement;</TD></TR><TR><TD CLASS="l">38</TD><TD>import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;</TD></TR><TR><TD CLASS="l">39</TD><TD>import org.eclipse.wst.xml.core.internal.search.impl.IXMLSearchConstants;</TD></TR><TR><TD CLASS="l">40</TD><TD>import org.eclipse.wst.xml.core.internal.search.impl.XMLSearchDocument;</TD></TR><TR><TD CLASS="l">41</TD><TD>import org.eclipse.wst.xml.core.internal.search.matching.PatternMatcher;</TD></TR><TR><TD CLASS="l">42</TD><TD>import org.eclipse.wst.xml.core.internal.search.matching.XMLSearchPatternMatcher;</TD></TR><TR><TD CLASS="l">43</TD><TD>import org.eclipse.wst.xml.core.internal.search.quickscan.XMLQuickScan;</TD></TR><TR><TD CLASS="l">44</TD><TD>import org.w3c.dom.Element;</TD></TR><TR><TD CLASS="l">45</TD><TD>import org.w3c.dom.Node;</TD></TR><TR><TD CLASS="l">46</TD><TD>import org.w3c.dom.NodeList;</TD></TR><TR><TD CLASS="l">47</TD><TD> </TD></TR><TR><TD CLASS="l">48</TD><TD>/**</TD></TR><TR><TD CLASS="l"><A NAME="0">49</A></TD><TD> *</TD></TR><TR><TD CLASS="l">50</TD><TD> */</TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>public abstract class XMLSearchParticipant extends SearchParticipant {</TD></TR><TR><TD CLASS="l"><A NAME="2">52</A></TD><TD>        </TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>        protected static final boolean debugPerf = &#34;true&#34;.equalsIgnoreCase(Platform.getDebugOption(&#34;org.eclipse.wst.xml.core.internal.search/perf&#34;)); //$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR><TD CLASS="l">54</TD><TD> </TD></TR><TR><TD CLASS="l">55</TD><TD>        public XMLSearchParticipant() {</TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>                super();</TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>        }</TD></TR><TR><TD CLASS="l">58</TD><TD> </TD></TR><TR><TD CLASS="l">59</TD><TD>        </TD></TR><TR><TD CLASS="l">60</TD><TD>        /*</TD></TR><TR><TD CLASS="l">61</TD><TD> public  boolean initialize(SearchPattern pattern, String[] contentTypes){</TD></TR><TR><TD CLASS="l">62</TD><TD>                </TD></TR><TR><TD CLASS="l">63</TD><TD>            super.initialize(pattern, contentTypes);</TD></TR><TR><TD CLASS="l">64</TD><TD>                this.supportedContentTypes = contentTypes;</TD></TR><TR><TD CLASS="l">65</TD><TD>                </TD></TR><TR><TD CLASS="l">66</TD><TD>                if(pattern instanceof XMLComponentSearchPattern){</TD></TR><TR><TD CLASS="l">67</TD><TD>                        return true;</TD></TR><TR><TD CLASS="l">68</TD><TD>                }</TD></TR><TR><TD CLASS="l">69</TD><TD>                return false;</TD></TR><TR><TD CLASS="l">70</TD><TD>        }*/</TD></TR><TR><TD CLASS="l">71</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="4">72</A></TD><TD>        </TD></TR><TR><TD CLASS="l">73</TD><TD> </TD></TR><TR><TD CLASS="l">74</TD><TD>        public SearchDocument createSearchDocument(String documentPath) {</TD></TR><TR><TD CLASS="l">75</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>                return new XMLSearchDocument(documentPath, this);</TD></TR><TR><TD CLASS="l"><A NAME="6">77</A></TD><TD> </TD></TR><TR><TD CLASS="l">78</TD><TD>        }</TD></TR><TR><TD CLASS="l">79</TD><TD> </TD></TR><TR><TD CLASS="l">80</TD><TD>        public String getDescription() {</TD></TR><TR CLASS="z"><TD CLASS="l">81</TD><TD>                return &#34;XML search participant&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">82</TD><TD>        }</TD></TR><TR><TD CLASS="l">83</TD><TD> </TD></TR><TR><TD CLASS="l">84</TD><TD> </TD></TR><TR><TD CLASS="l">85</TD><TD> </TD></TR><TR><TD CLASS="l">86</TD><TD>        private void locateMatches(SearchPattern pattern, SearchDocument document,</TD></TR><TR><TD CLASS="l">87</TD><TD>                        SearchRequestor requestor, Map searchOptions, IProgressMonitor monitor) {</TD></TR><TR><TD CLASS="l"><A NAME="b">88</A></TD><TD> </TD></TR><TR><TD CLASS="l">89</TD><TD>        // TODO... utilize search options (that should get passed down via the SearchEngine)</TD></TR><TR><TD CLASS="l">90</TD><TD>        // to specify if accurate source coordinates are req'd if not, simply use the SAX results</TD></TR><TR><TD CLASS="l">91</TD><TD>        //</TD></TR><TR CLASS="z"><TD CLASS="l">92</TD><TD>        if (pattern.getMatchRule() == SearchPattern.R_PATTERN_MATCH)</TD></TR><TR><TD CLASS="l">93</TD><TD>        {          </TD></TR><TR CLASS="z"><TD CLASS="l">94</TD><TD>          IFile file = ResourcesPlugin.getWorkspace().getRoot().getFileForLocation(new Path(document.getPath()));</TD></TR><TR><TD CLASS="l">95</TD><TD>          // TODO.. don't assume the category is COMPONENT_DECL... handle any arbitarty category</TD></TR><TR CLASS="z"><TD CLASS="l">96</TD><TD>          Entry[] entries = document.getEntries(IXMLSearchConstants.COMPONENT_DECL, null, 0);</TD></TR><TR CLASS="z"><TD CLASS="l">97</TD><TD>          for (int i = 0; i &lt; entries.length; i++)</TD></TR><TR><TD CLASS="l">98</TD><TD>          {</TD></TR><TR><TD CLASS="l">99</TD><TD>            // TODO.. don't assume this is just a component declaration entry            </TD></TR><TR CLASS="z"><TD CLASS="l">100</TD><TD>            ComponentDeclarationEntry entry = (ComponentDeclarationEntry)entries[i];</TD></TR><TR CLASS="z"><TD CLASS="l">101</TD><TD>            SearchMatch searchMatch = new SearchMatch(null, 0, 0, file);</TD></TR><TR CLASS="z"><TD CLASS="l">102</TD><TD>            searchMatch.map.put(&#34;name&#34;, entry.getName()); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">103</TD><TD>            searchMatch.map.put(&#34;metaName&#34;, entry.getMetaName()); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">104</TD><TD>            try</TD></TR><TR><TD CLASS="l">105</TD><TD>            {</TD></TR><TR CLASS="z"><TD CLASS="l">106</TD><TD>              requestor.acceptSearchMatch(searchMatch);</TD></TR><TR><TD CLASS="l">107</TD><TD>            }</TD></TR><TR CLASS="z"><TD CLASS="l">108</TD><TD>            catch (Exception e)</TD></TR><TR><TD CLASS="l">109</TD><TD>            {              </TD></TR><TR><TD CLASS="l">110</TD><TD>            }</TD></TR><TR><TD CLASS="l">111</TD><TD>          }  </TD></TR><TR><TD CLASS="l">112</TD><TD>        }</TD></TR><TR><TD CLASS="l">113</TD><TD>        else </TD></TR><TR CLASS="z"><TD CLASS="l">114</TD><TD>        {  if (document.getModel() instanceof IDOMModel) {</TD></TR><TR CLASS="z"><TD CLASS="l">115</TD><TD>                        IDOMModel domModel = (IDOMModel) document.getModel();</TD></TR><TR CLASS="z"><TD CLASS="l">116</TD><TD>                        IDOMElement contextNode = (IDOMElement) domModel.getDocument()</TD></TR><TR CLASS="z"><TD CLASS="l">117</TD><TD>                                        .getDocumentElement();</TD></TR><TR CLASS="z"><TD CLASS="l">118</TD><TD>                        DOMVisitor visitor = new DOMVisitor(document.getPath(), pattern,</TD></TR><TR CLASS="z"><TD CLASS="l">119</TD><TD>                                        requestor);</TD></TR><TR CLASS="z"><TD CLASS="l">120</TD><TD>                        visitor.visit(contextNode);</TD></TR><TR><TD CLASS="l">121</TD><TD>                }</TD></TR><TR><TD CLASS="l"><A NAME="5">122</A></TD><TD>        }</TD></TR><TR CLASS="z"><TD CLASS="l">123</TD><TD>        }</TD></TR><TR><TD CLASS="l">124</TD><TD>        </TD></TR><TR><TD CLASS="l">125</TD><TD>        private PatternMatcher getAdapter(Object adaptableObject, Class adapterType) {</TD></TR><TR CLASS="z"><TD CLASS="l">126</TD><TD>                if (PatternMatcher.class.equals(adapterType) &amp;&amp;</TD></TR><TR CLASS="z"><TD CLASS="l">127</TD><TD>                                (adaptableObject instanceof XMLSearchPattern ||</TD></TR><TR CLASS="z"><TD CLASS="l">128</TD><TD>                                adaptableObject instanceof XMLComponentSearchPattern) ) {</TD></TR><TR CLASS="z"><TD CLASS="l">129</TD><TD>                        return new XMLSearchPatternMatcher(this);</TD></TR><TR><TD CLASS="l">130</TD><TD>                } </TD></TR><TR CLASS="z"><TD CLASS="l">131</TD><TD>                return null; </TD></TR><TR><TD CLASS="l">132</TD><TD>        }</TD></TR><TR><TD CLASS="l">133</TD><TD> </TD></TR><TR><TD CLASS="l">134</TD><TD>        private class DOMVisitor {</TD></TR><TR><TD CLASS="l">135</TD><TD> </TD></TR><TR><TD CLASS="l">136</TD><TD>                String path;</TD></TR><TR><TD CLASS="l">137</TD><TD>                SearchPattern pattern;</TD></TR><TR><TD CLASS="l">138</TD><TD>                SearchRequestor requestor;</TD></TR><TR><TD CLASS="l">139</TD><TD>                PatternMatcher matcher;</TD></TR><TR><TD CLASS="l"><A NAME="e">140</A></TD><TD> </TD></TR><TR><TD CLASS="l">141</TD><TD>                </TD></TR><TR><TD CLASS="l">142</TD><TD>                protected DOMVisitor(String path, SearchPattern pattern,</TD></TR><TR><TD CLASS="l">143</TD><TD>                                SearchRequestor requestor) {</TD></TR><TR CLASS="z"><TD CLASS="l">144</TD><TD>                        super();</TD></TR><TR CLASS="z"><TD CLASS="l">145</TD><TD>                        this.path = path;</TD></TR><TR CLASS="z"><TD CLASS="l">146</TD><TD>                        this.pattern = pattern;</TD></TR><TR><TD CLASS="l">147</TD><TD>                        </TD></TR><TR CLASS="z"><TD CLASS="l">148</TD><TD>                        matcher = (PatternMatcher)pattern.getAdapter(PatternMatcher.class);</TD></TR><TR CLASS="z"><TD CLASS="l">149</TD><TD>                        if(matcher == null){</TD></TR><TR CLASS="z"><TD CLASS="l">150</TD><TD>                                matcher = getAdapter(pattern, PatternMatcher.class);</TD></TR><TR><TD CLASS="l">151</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="11">152</A></TD><TD>                        this.requestor = requestor;</TD></TR><TR CLASS="z"><TD CLASS="l">153</TD><TD>                }</TD></TR><TR><TD CLASS="l">154</TD><TD> </TD></TR><TR><TD CLASS="l">155</TD><TD>                private void visit(Node node) {</TD></TR><TR CLASS="z"><TD CLASS="l">156</TD><TD>                        if (node.getNodeType() == Node.ELEMENT_NODE) {</TD></TR><TR CLASS="z"><TD CLASS="l">157</TD><TD>                                match((Element)node);</TD></TR><TR CLASS="z"><TD CLASS="l">158</TD><TD>                                NodeList nodeList = node.getChildNodes();</TD></TR><TR CLASS="z"><TD CLASS="l">159</TD><TD>                                for (int i = 0; i &lt; nodeList.getLength(); i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">160</TD><TD>                                        Node aNode = nodeList.item(i);</TD></TR><TR CLASS="z"><TD CLASS="l">161</TD><TD>                                        visit(aNode);</TD></TR><TR><TD CLASS="l">162</TD><TD>                                }</TD></TR><TR><TD CLASS="l"><A NAME="10">163</A></TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">164</TD><TD>                }</TD></TR><TR><TD CLASS="l">165</TD><TD> </TD></TR><TR><TD CLASS="l">166</TD><TD>                private void match(Element node) {</TD></TR><TR CLASS="z"><TD CLASS="l">167</TD><TD>                        IFile file = ResourcesPlugin.getWorkspace().getRoot().getFileForLocation(</TD></TR><TR CLASS="z"><TD CLASS="l">168</TD><TD>                                        new Path(path));</TD></TR><TR CLASS="z"><TD CLASS="l">169</TD><TD>                        if(matcher != null){</TD></TR><TR CLASS="z"><TD CLASS="l">170</TD><TD>                                matcher.locateMatches(pattern, file, node, requestor);</TD></TR><TR><TD CLASS="l">171</TD><TD>                        }</TD></TR><TR><TD CLASS="l">172</TD><TD> </TD></TR><TR><TD CLASS="l">173</TD><TD>                        </TD></TR><TR CLASS="z"><TD CLASS="l">174</TD><TD>                }</TD></TR><TR><TD CLASS="l">175</TD><TD> </TD></TR><TR><TD CLASS="l">176</TD><TD>        }</TD></TR><TR><TD CLASS="l">177</TD><TD> </TD></TR><TR><TD CLASS="l">178</TD><TD>        public SearchScope selectDocumentLocations(SearchPattern pattern, SearchScope scope, Map searchOptions, IProgressMonitor monitor) {</TD></TR><TR><TD CLASS="l"><A NAME="d">179</A></TD><TD>                /*</TD></TR><TR><TD CLASS="l">180</TD><TD>                 * gate #1: reduce the scope to the files with the content type that</TD></TR><TR><TD CLASS="l">181</TD><TD>                 * could be searched using this participant</TD></TR><TR><TD CLASS="l">182</TD><TD>                 */ </TD></TR><TR CLASS="z"><TD CLASS="l">183</TD><TD>                String[] contentTypes = getSupportedContentTypes();        </TD></TR><TR CLASS="z"><TD CLASS="l">184</TD><TD>                if(contentTypes != null &amp;&amp; contentTypes.length &gt; 0){</TD></TR><TR CLASS="z"><TD CLASS="l">185</TD><TD>                        scope = new ContentTypeSearchScope(scope, contentTypes);</TD></TR><TR><TD CLASS="l">186</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">187</TD><TD>                return super.selectDocumentLocations(pattern, scope, searchOptions, monitor);</TD></TR><TR><TD CLASS="l">188</TD><TD>        }</TD></TR><TR><TD CLASS="l">189</TD><TD>        </TD></TR><TR><TD CLASS="l">190</TD><TD>        public abstract ComponentSearchContributor getSearchContributor();</TD></TR><TR><TD CLASS="l"><A NAME="3">191</A></TD><TD> </TD></TR><TR><TD CLASS="l">192</TD><TD> </TD></TR><TR><TD CLASS="l">193</TD><TD>        public void beginSearching(SearchPattern pattern, Map searchOptions) {</TD></TR><TR><TD CLASS="l">194</TD><TD>                </TD></TR><TR CLASS="z"><TD CLASS="l">195</TD><TD>                super.beginSearching(pattern, searchOptions);</TD></TR><TR CLASS="z"><TD CLASS="l">196</TD><TD>                if(pattern instanceof XMLComponentDeclarationPattern){</TD></TR><TR CLASS="z"><TD CLASS="l">197</TD><TD>                        XMLComponentDeclarationPattern componentPattern = (XMLComponentDeclarationPattern)pattern;</TD></TR><TR CLASS="z"><TD CLASS="l">198</TD><TD>                        XMLSearchPattern childPattern = getSearchContributor().getDeclarationPattern(componentPattern.getMetaName());</TD></TR><TR CLASS="z"><TD CLASS="l">199</TD><TD>                        if(childPattern != null){</TD></TR><TR CLASS="z"><TD CLASS="l">200</TD><TD>                                        childPattern.setSearchName(componentPattern.getName().getLocalName());</TD></TR><TR CLASS="z"><TD CLASS="l">201</TD><TD>                                        childPattern.setSearchNamespace(componentPattern.getName().getNamespace());</TD></TR><TR CLASS="z"><TD CLASS="l">202</TD><TD>                                     componentPattern.addChildren(this, new XMLSearchPattern[]{childPattern});</TD></TR><TR><TD CLASS="l">203</TD><TD>                        }</TD></TR><TR><TD CLASS="l">204</TD><TD>                        </TD></TR><TR><TD CLASS="l">205</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">206</TD><TD>                else if(pattern instanceof XMLComponentReferencePattern){</TD></TR><TR CLASS="z"><TD CLASS="l">207</TD><TD>                        XMLComponentReferencePattern componentPattern = (XMLComponentReferencePattern)pattern;</TD></TR><TR CLASS="z"><TD CLASS="l">208</TD><TD>                        XMLSearchPattern[] childPatterns = getSearchContributor().getReferencesPatterns(componentPattern.getMetaName());</TD></TR><TR CLASS="z"><TD CLASS="l">209</TD><TD>                        for (int i = 0; i &lt; childPatterns.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">210</TD><TD>                                XMLSearchPattern childPattern = childPatterns[i];</TD></TR><TR CLASS="z"><TD CLASS="l">211</TD><TD>                                childPattern.setSearchName(componentPattern.getName().getLocalName());</TD></TR><TR CLASS="z"><TD CLASS="l">212</TD><TD>                                childPattern.setSearchNamespace(componentPattern.getName().getNamespace());                                </TD></TR><TR><TD CLASS="l">213</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">214</TD><TD>                        componentPattern.addChildren(this, childPatterns);</TD></TR><TR><TD CLASS="l">215</TD><TD>                        </TD></TR><TR><TD CLASS="l">216</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">217</TD><TD>        }</TD></TR><TR><TD CLASS="l">218</TD><TD>        </TD></TR><TR><TD CLASS="l">219</TD><TD>        </TD></TR><TR><TD CLASS="l">220</TD><TD>        /**</TD></TR><TR><TD CLASS="l">221</TD><TD>         * The intend of this method is to limit the search to the files that have content </TD></TR><TR><TD CLASS="l">222</TD><TD>         * which can be searched for the given pattern. It is called from </TD></TR><TR><TD CLASS="l">223</TD><TD>         * {@link #selectDocumentLocations(SearchPattern, SearchScope, IProgressMonitor)}</TD></TR><TR><TD CLASS="l">224</TD><TD>         * </TD></TR><TR><TD CLASS="l">225</TD><TD>         * @param pattern the search pattern that is searched for</TD></TR><TR><TD CLASS="l">226</TD><TD>         * @return content type's unique identifiers that could be searched for the given pattern.</TD></TR><TR><TD CLASS="l">227</TD><TD>         */</TD></TR><TR><TD CLASS="l"><A NAME="c">228</A></TD><TD>        public abstract String[] getSupportedContentTypes();</TD></TR><TR><TD CLASS="l">229</TD><TD> </TD></TR><TR><TD CLASS="l">230</TD><TD>        public void populateSearchDocument(SearchDocument document, SearchPattern pattern)</TD></TR><TR><TD CLASS="l">231</TD><TD>        {</TD></TR><TR CLASS="z"><TD CLASS="l">232</TD><TD>                PatternMatcher matcher = (PatternMatcher)pattern.getAdapter(PatternMatcher.class);</TD></TR><TR CLASS="z"><TD CLASS="l">233</TD><TD>                if(matcher == null){</TD></TR><TR CLASS="z"><TD CLASS="l">234</TD><TD>                        matcher = getAdapter(pattern, PatternMatcher.class);</TD></TR><TR><TD CLASS="l">235</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">236</TD><TD>                XMLQuickScan.populateSearchDocument(document, matcher, pattern);                </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="a">237</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">238</TD><TD> </TD></TR><TR><TD CLASS="l">239</TD><TD>        public void locateMatches(SearchDocumentSet documentSet, SearchPattern pattern, SearchScope scope, SearchRequestor requestor, Map searchOptions, IProgressMonitor monitor) throws CoreException</TD></TR><TR><TD CLASS="l">240</TD><TD>        {</TD></TR><TR CLASS="z"><TD CLASS="l">241</TD><TD>                long time = System.currentTimeMillis();</TD></TR><TR><TD CLASS="l">242</TD><TD>                </TD></TR><TR><TD CLASS="l">243</TD><TD>                // TODO: use the file reference entries in the documents to reduce the scope to the referenced files only</TD></TR><TR><TD CLASS="l">244</TD><TD>                // SearchDocument[] documents = documentSet.getSearchDocuments(id);</TD></TR><TR><TD CLASS="l">245</TD><TD>                </TD></TR><TR><TD CLASS="l">246</TD><TD>        // check to see if the search pattern is qualified by a file location</TD></TR><TR><TD CLASS="l">247</TD><TD>        // if this is the case then we can use file scoping rules to prune the matches</TD></TR><TR CLASS="z"><TD CLASS="l">248</TD><TD>        IFile targetFile = null;</TD></TR><TR CLASS="z"><TD CLASS="l">249</TD><TD>        if (pattern instanceof ComponentSearchPattern)</TD></TR><TR><TD CLASS="l">250</TD><TD>        {</TD></TR><TR CLASS="z"><TD CLASS="l">251</TD><TD>          ComponentSearchPattern componentSearchPattern = (ComponentSearchPattern)pattern;</TD></TR><TR CLASS="z"><TD CLASS="l">252</TD><TD>          targetFile = componentSearchPattern.getFile();                                       </TD></TR><TR><TD CLASS="l">253</TD><TD>        }                </TD></TR><TR><TD CLASS="l">254</TD><TD>        </TD></TR><TR><TD CLASS="l">255</TD><TD>                // here we should have in scope only referenced files</TD></TR><TR CLASS="z"><TD CLASS="l">256</TD><TD>                IFile[] files = scope.enclosingFiles();  </TD></TR><TR CLASS="z"><TD CLASS="l">257</TD><TD>                for (int i = 0; i &lt; files.length; i++)</TD></TR><TR><TD CLASS="l">258</TD><TD>                {</TD></TR><TR CLASS="z"><TD CLASS="l">259</TD><TD>                        IFile file = files[i];</TD></TR><TR CLASS="z"><TD CLASS="l">260</TD><TD>                        String path = file.getLocation().toString();</TD></TR><TR CLASS="z"><TD CLASS="l">261</TD><TD>                        SearchDocument document = documentSet.getSearchDocument(path, id); </TD></TR><TR CLASS="z"><TD CLASS="l">262</TD><TD>                        if (document != null)</TD></TR><TR><TD CLASS="l">263</TD><TD>                        {              </TD></TR><TR CLASS="z"><TD CLASS="l">264</TD><TD>                        Entry[] entries = document.getEntries(getSearchEntryCategory(pattern), null, 0);           </TD></TR><TR CLASS="z"><TD CLASS="l">265</TD><TD>                        if ((entries != null &amp;&amp; entries.length &gt; 0) || (searchOptions != null &amp;&amp; searchOptions.get(&#34;searchDirtyContent&#34;) != null))</TD></TR><TR><TD CLASS="l">266</TD><TD>            {</TD></TR><TR><TD CLASS="l">267</TD><TD>              //for (int j = 0; j &lt; entries.length; j++)</TD></TR><TR><TD CLASS="l">268</TD><TD>              //{</TD></TR><TR><TD CLASS="l">269</TD><TD>              //  Entry entry = entries[j];</TD></TR><TR><TD CLASS="l">270</TD><TD>                //System.out.println(&#34;entry &#34; + entry.getCategory() + &#34; &#34; + entry.getKey() + &#34; &#34; + entry.getClass().getName());                 </TD></TR><TR><TD CLASS="l">271</TD><TD>              //}  </TD></TR><TR><TD CLASS="l">272</TD><TD>              </TD></TR><TR CLASS="z"><TD CLASS="l">273</TD><TD>              boolean isInScope = true;</TD></TR><TR CLASS="z"><TD CLASS="l">274</TD><TD>              if (targetFile != null)</TD></TR><TR><TD CLASS="l">275</TD><TD>              {</TD></TR><TR><TD CLASS="l">276</TD><TD>                try</TD></TR><TR><TD CLASS="l">277</TD><TD>                {</TD></TR><TR CLASS="z"><TD CLASS="l">278</TD><TD>                  isInScope = isLinked(documentSet, &#34;file:///&#34; + path, &#34;file:///&#34; + targetFile.getLocation().toString()); //$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR><TD CLASS="l">279</TD><TD>                  //if (path.endsWith(&#34;CancelSelection.wsdl&#34;)  &amp;&amp; path.indexOf(&#34;clone1&#34;) != -1)</TD></TR><TR><TD CLASS="l">280</TD><TD>                  //{</TD></TR><TR><TD CLASS="l">281</TD><TD>                  //  fileReferenceTable.debug(qualifiedPath, 0, 5);</TD></TR><TR><TD CLASS="l">282</TD><TD>                  //}                   </TD></TR><TR><TD CLASS="l">283</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">284</TD><TD>                catch (Exception e)</TD></TR><TR><TD CLASS="l">285</TD><TD>                {</TD></TR><TR CLASS="z"><TD CLASS="l">286</TD><TD>                  e.printStackTrace();</TD></TR><TR><TD CLASS="l">287</TD><TD>                }</TD></TR><TR><TD CLASS="l">288</TD><TD>              }              </TD></TR><TR CLASS="z"><TD CLASS="l">289</TD><TD>              if (isInScope)</TD></TR><TR><TD CLASS="l">290</TD><TD>              { </TD></TR><TR CLASS="z"><TD CLASS="l">291</TD><TD>                            this.locateMatches(pattern, document, requestor, searchOptions, monitor);</TD></TR><TR><TD CLASS="l">292</TD><TD>              }  </TD></TR><TR><TD CLASS="l">293</TD><TD>            }</TD></TR><TR><TD CLASS="l">294</TD><TD>                        }</TD></TR><TR><TD CLASS="l">295</TD><TD>                }</TD></TR><TR><TD CLASS="l">296</TD><TD>                </TD></TR><TR><TD CLASS="l">297</TD><TD>                </TD></TR><TR CLASS="z"><TD CLASS="l">298</TD><TD>                if (debugPerf)</TD></TR><TR><TD CLASS="l">299</TD><TD>                {</TD></TR><TR CLASS="z"><TD CLASS="l">300</TD><TD>                        System.out</TD></TR><TR CLASS="z"><TD CLASS="l">301</TD><TD>                                        .println(&#34;&#34; //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">302</TD><TD>                                                        + getDescription()</TD></TR><TR CLASS="z"><TD CLASS="l">303</TD><TD>                                                        + &#34;: &#34; + (System.currentTimeMillis() - time) + &#34;ms for locateMatches&#34;); //$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR><TD CLASS="l">304</TD><TD>                }</TD></TR><TR><TD CLASS="l">305</TD><TD> </TD></TR><TR><TD CLASS="l">306</TD><TD>                </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="8">307</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">308</TD><TD>    </TD></TR><TR><TD CLASS="l">309</TD><TD>    private boolean isLinked(SearchDocumentSet set, String source, String target)</TD></TR><TR><TD CLASS="l">310</TD><TD>    {</TD></TR><TR CLASS="z"><TD CLASS="l">311</TD><TD>      return isLinked(set, source, target, new HashMap());</TD></TR><TR><TD CLASS="l"><A NAME="9">312</A></TD><TD>    }</TD></TR><TR><TD CLASS="l">313</TD><TD>    </TD></TR><TR><TD CLASS="l">314</TD><TD>    private boolean isLinked(SearchDocumentSet set, String source, String target, HashMap visited)</TD></TR><TR><TD CLASS="l">315</TD><TD>    {</TD></TR><TR CLASS="z"><TD CLASS="l">316</TD><TD>      if (source.equals(target))</TD></TR><TR CLASS="z"><TD CLASS="l">317</TD><TD>        return true;</TD></TR><TR><TD CLASS="l">318</TD><TD>      </TD></TR><TR CLASS="z"><TD CLASS="l">319</TD><TD>      String fileProtocol = &#34;file:///&#34;;             //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">320</TD><TD>      </TD></TR><TR><TD CLASS="l">321</TD><TD>      // Fix for bug 204174 - Begin</TD></TR><TR CLASS="z"><TD CLASS="l">322</TD><TD>      if(target.charAt(fileProtocol.length()) == '/')  //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">323</TD><TD>      {</TD></TR><TR CLASS="z"><TD CLASS="l">324</TD><TD>          target = fileProtocol + target.substring(fileProtocol.length() + 1);</TD></TR><TR><TD CLASS="l">325</TD><TD>      }</TD></TR><TR><TD CLASS="l">326</TD><TD>      // Fix for bug 204174 - End</TD></TR><TR><TD CLASS="l">327</TD><TD>            </TD></TR><TR CLASS="z"><TD CLASS="l">328</TD><TD>      if (source.startsWith(fileProtocol))</TD></TR><TR><TD CLASS="l">329</TD><TD>      {    </TD></TR><TR><TD CLASS="l">330</TD><TD>        </TD></TR><TR CLASS="z"><TD CLASS="l">331</TD><TD>      SearchDocument document = set._tempGetSearchDocumetn(source.substring(fileProtocol.length()));      </TD></TR><TR CLASS="z"><TD CLASS="l">332</TD><TD>      if (document != null)</TD></TR><TR><TD CLASS="l">333</TD><TD>      {        </TD></TR><TR CLASS="z"><TD CLASS="l">334</TD><TD>        URIResolver uriResolver = URIResolverPlugin.createResolver();        </TD></TR><TR CLASS="z"><TD CLASS="l">335</TD><TD>        Entry[] entries = document.getEntries(IXMLSearchConstants.REF, null, 0);</TD></TR><TR CLASS="z"><TD CLASS="l">336</TD><TD>        String[] resolveEntry = new String[entries.length];        </TD></TR><TR CLASS="z"><TD CLASS="l">337</TD><TD>        for (int j = 0; j &lt; entries.length; j++)</TD></TR><TR><TD CLASS="l">338</TD><TD>        {</TD></TR><TR CLASS="z"><TD CLASS="l">339</TD><TD>          Entry entry = entries[j];</TD></TR><TR CLASS="z"><TD CLASS="l">340</TD><TD>          if (entry instanceof FileReferenceEntry)</TD></TR><TR><TD CLASS="l">341</TD><TD>          {</TD></TR><TR CLASS="z"><TD CLASS="l">342</TD><TD>            FileReferenceEntry fileReferenceEntry = (FileReferenceEntry)entry;</TD></TR><TR><TD CLASS="l">343</TD><TD>            // TODO.. record an utilize the public id from the fileReferenceEntry</TD></TR><TR><TD CLASS="l">344</TD><TD>            //</TD></TR><TR CLASS="z"><TD CLASS="l">345</TD><TD>            if (fileReferenceEntry.getRelativeFilePath() != null)</TD></TR><TR><TD CLASS="l">346</TD><TD>            {  </TD></TR><TR CLASS="z"><TD CLASS="l">347</TD><TD>              String resolvedURI = uriResolver.resolve(source, null, fileReferenceEntry.getRelativeFilePath());</TD></TR><TR CLASS="z"><TD CLASS="l">348</TD><TD>              resolveEntry[j] = resolvedURI;</TD></TR><TR CLASS="z"><TD CLASS="l">349</TD><TD>              if (resolvedURI.equals(target))</TD></TR><TR><TD CLASS="l">350</TD><TD>              {</TD></TR><TR CLASS="z"><TD CLASS="l">351</TD><TD>                return true;</TD></TR><TR><TD CLASS="l">352</TD><TD>              }             </TD></TR><TR><TD CLASS="l">353</TD><TD>            }  </TD></TR><TR><TD CLASS="l">354</TD><TD>          }</TD></TR><TR><TD CLASS="l">355</TD><TD>        }</TD></TR><TR><TD CLASS="l">356</TD><TD>        // now see if there's an indirect link from the source to the target</TD></TR><TR><TD CLASS="l">357</TD><TD>        // we keep track of the nodes we've already visited to avoid cycles</TD></TR><TR CLASS="z"><TD CLASS="l">358</TD><TD>        if (visited.get(source) == null)</TD></TR><TR><TD CLASS="l">359</TD><TD>        {</TD></TR><TR CLASS="z"><TD CLASS="l">360</TD><TD>          visited.put(source, Boolean.TRUE);</TD></TR><TR CLASS="z"><TD CLASS="l">361</TD><TD>          for (int j = 0; j &lt; entries.length; j++)</TD></TR><TR><TD CLASS="l">362</TD><TD>          {                     </TD></TR><TR CLASS="z"><TD CLASS="l">363</TD><TD>            String resolvedURI = resolveEntry[j];</TD></TR><TR CLASS="z"><TD CLASS="l">364</TD><TD>            if (resolvedURI != null &amp;&amp; isLinked(set, resolveEntry[j], target, visited))                </TD></TR><TR CLASS="z"><TD CLASS="l">365</TD><TD>              return true;            </TD></TR><TR><TD CLASS="l">366</TD><TD>          }    </TD></TR><TR><TD CLASS="l">367</TD><TD>        }                      </TD></TR><TR><TD CLASS="l">368</TD><TD>      }            </TD></TR><TR><TD CLASS="l">369</TD><TD>      } </TD></TR><TR CLASS="z"><TD CLASS="l">370</TD><TD>      return false;</TD></TR><TR><TD CLASS="l">371</TD><TD>    }</TD></TR><TR><TD CLASS="l"><A NAME="7">372</A></TD><TD>    </TD></TR><TR><TD CLASS="l">373</TD><TD>   </TD></TR><TR><TD CLASS="l">374</TD><TD>    </TD></TR><TR><TD CLASS="l">375</TD><TD>        public static String getSearchEntryCategory(SearchPattern pattern){</TD></TR><TR CLASS="z"><TD CLASS="l">376</TD><TD>                if(pattern instanceof XMLComponentDeclarationPattern){</TD></TR><TR CLASS="z"><TD CLASS="l">377</TD><TD>                        return IXMLSearchConstants.COMPONENT_DECL;</TD></TR><TR><TD CLASS="l">378</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">379</TD><TD>                else if(pattern instanceof XMLComponentReferencePattern){</TD></TR><TR CLASS="z"><TD CLASS="l">380</TD><TD>                        return IXMLSearchConstants.COMPONENT_REF;</TD></TR><TR><TD CLASS="l">381</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">382</TD><TD>                else if(pattern instanceof FileReferencePattern){</TD></TR><TR CLASS="z"><TD CLASS="l">383</TD><TD>                   return IXMLSearchConstants.COMPONENT_REF;</TD></TR><TR><TD CLASS="l">384</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">385</TD><TD>                return null;</TD></TR><TR><TD CLASS="l">386</TD><TD>        }   </TD></TR><TR><TD CLASS="l">387</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="28.html">org.eclipse.wst.xml.core.internal.search</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/166.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/166.html
deleted file mode 100644
index 0c731f4..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/166.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="28.html">org.eclipse.wst.xml.core.internal.search</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">XMLSearchPattern.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>XMLSearchPattern.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/19)</TD><TD CLASS="h">0%   (0/136)</TD><TD CLASS="h">0%   (0/43)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">XMLSearchPattern</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/19)</TD><TD CLASS="h">0%   (0/136)</TD><TD CLASS="h">0%   (0/43)</TD></TR><TR><TD CLASS="f"><A HREF="#1">XMLSearchPattern (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/24)</TD><TD CLASS="h">0%   (0/9)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">XMLSearchPattern (String, String, String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#0">XMLSearchPattern (String, String, String, String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">XMLSearchPattern (String, String, String, String, int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/39)</TD><TD CLASS="h">0%   (0/14)</TD></TR><TR><TD CLASS="f"><A HREF="#5">XMLSearchPattern (String, String, String, int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">getAttributeName (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#7">getDepth (): int</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">getElementName (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#9">getElementNamespace (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">getParentName (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#b">getSearchName (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#c">getSearchNamespace (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#d">setAttributeName (String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#e">setDepth (int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#f">setElementName (String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#10">setElementNamespace (String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#11">setParentName (String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#12">setSearchName (String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#13">setSearchNamespace (String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2004, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - Initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">11</TD><TD> </TD></TR><TR><TD CLASS="l">12</TD><TD>package org.eclipse.wst.xml.core.internal.search;</TD></TR><TR><TD CLASS="l">13</TD><TD> </TD></TR><TR><TD CLASS="l">14</TD><TD>import org.eclipse.wst.common.core.search.pattern.SearchPattern;</TD></TR><TR><TD CLASS="l">15</TD><TD> </TD></TR><TR><TD CLASS="l">16</TD><TD>public class XMLSearchPattern extends SearchPattern{</TD></TR><TR><TD CLASS="l">17</TD><TD>        </TD></TR><TR CLASS="z"><TD CLASS="l">18</TD><TD>        private String elementNamespace = null;</TD></TR><TR CLASS="z"><TD CLASS="l">19</TD><TD>        private String elementName = null;</TD></TR><TR CLASS="z"><TD CLASS="l">20</TD><TD>        private String attributeName = null;</TD></TR><TR CLASS="z"><TD CLASS="l">21</TD><TD>        private String searchName = null;</TD></TR><TR CLASS="z"><TD CLASS="l">22</TD><TD>        private String searchNamespace = null;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="0">23</A></TD><TD>        private String parentName = null;</TD></TR><TR CLASS="z"><TD CLASS="l">24</TD><TD>    private int depth = -1;</TD></TR><TR><TD CLASS="l">25</TD><TD> </TD></TR><TR><TD CLASS="l">26</TD><TD>    public XMLSearchPattern(String elementNamespace, String parentElementName,String elementName, String attributeName) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">27</A></TD><TD>            this(elementNamespace, parentElementName, elementName, attributeName, -1);</TD></TR><TR CLASS="z"><TD CLASS="l">28</TD><TD>    }</TD></TR><TR><TD CLASS="l">29</TD><TD>        </TD></TR><TR><TD CLASS="l">30</TD><TD>        public XMLSearchPattern(String elementNamespace, String elementName, String attributeName) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="5">31</A></TD><TD>       this(elementNamespace, null, elementName, attributeName, -1);</TD></TR><TR CLASS="z"><TD CLASS="l">32</TD><TD>    }</TD></TR><TR><TD CLASS="l">33</TD><TD>    </TD></TR><TR><TD CLASS="l">34</TD><TD>    public XMLSearchPattern(String elementNamespace, String elementName, String attributeName, int depth) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">35</A></TD><TD>            this(elementNamespace, null, elementName, attributeName, depth);       </TD></TR><TR CLASS="z"><TD CLASS="l">36</TD><TD>    }</TD></TR><TR><TD CLASS="l">37</TD><TD>           </TD></TR><TR><TD CLASS="l">38</TD><TD>    private XMLSearchPattern(String elementNamespace, String parentElementName, String elementName, String attributeName, int depth) {</TD></TR><TR CLASS="z"><TD CLASS="l">39</TD><TD>        super();</TD></TR><TR CLASS="z"><TD CLASS="l">40</TD><TD>        this.attributeName = attributeName;</TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>        this.elementName = elementName;</TD></TR><TR CLASS="z"><TD CLASS="l">42</TD><TD>        this.parentName = parentElementName;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="1">43</A></TD><TD>        this.elementNamespace = elementNamespace;</TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>        this.depth = depth;</TD></TR><TR CLASS="z"><TD CLASS="l">45</TD><TD>    }</TD></TR><TR><TD CLASS="l">46</TD><TD>    </TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>        public XMLSearchPattern(){</TD></TR><TR><TD CLASS="l"><A NAME="6">48</A></TD><TD>                </TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>        }</TD></TR><TR><TD CLASS="l">50</TD><TD>        </TD></TR><TR><TD CLASS="l">51</TD><TD>        public String getAttributeName() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="8">52</A></TD><TD>                return attributeName;</TD></TR><TR><TD CLASS="l">53</TD><TD>        }</TD></TR><TR><TD CLASS="l">54</TD><TD> </TD></TR><TR><TD CLASS="l">55</TD><TD>        public String getElementName() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="9">56</A></TD><TD>                return elementName;</TD></TR><TR><TD CLASS="l">57</TD><TD>        }</TD></TR><TR><TD CLASS="l">58</TD><TD> </TD></TR><TR><TD CLASS="l">59</TD><TD>        public String getElementNamespace() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="b">60</A></TD><TD>                return elementNamespace;</TD></TR><TR><TD CLASS="l">61</TD><TD>        }</TD></TR><TR><TD CLASS="l">62</TD><TD> </TD></TR><TR><TD CLASS="l">63</TD><TD>        public String getSearchName() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="c">64</A></TD><TD>                return searchName;</TD></TR><TR><TD CLASS="l">65</TD><TD>        }</TD></TR><TR><TD CLASS="l">66</TD><TD> </TD></TR><TR><TD CLASS="l">67</TD><TD>        public String getSearchNamespace() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="12">68</A></TD><TD>                return searchNamespace;</TD></TR><TR><TD CLASS="l">69</TD><TD>        }</TD></TR><TR><TD CLASS="l">70</TD><TD> </TD></TR><TR><TD CLASS="l">71</TD><TD>        public void setSearchName(String searchName) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="13">72</A></TD><TD>                this.searchName = searchName;</TD></TR><TR CLASS="z"><TD CLASS="l">73</TD><TD>        }</TD></TR><TR><TD CLASS="l">74</TD><TD> </TD></TR><TR><TD CLASS="l">75</TD><TD>        public void setSearchNamespace(String searchNamespace) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="d">76</A></TD><TD>                this.searchNamespace = searchNamespace;</TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>        }</TD></TR><TR><TD CLASS="l">78</TD><TD> </TD></TR><TR><TD CLASS="l">79</TD><TD>        public void setAttributeName(String attributeName) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="f">80</A></TD><TD>                this.attributeName = attributeName;</TD></TR><TR CLASS="z"><TD CLASS="l">81</TD><TD>        }</TD></TR><TR><TD CLASS="l">82</TD><TD> </TD></TR><TR><TD CLASS="l">83</TD><TD>        public void setElementName(String elementName) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="10">84</A></TD><TD>                this.elementName = elementName;</TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>        }</TD></TR><TR><TD CLASS="l">86</TD><TD> </TD></TR><TR><TD CLASS="l">87</TD><TD>        public void setElementNamespace(String elementNamespace) {</TD></TR><TR CLASS="z"><TD CLASS="l">88</TD><TD>                this.elementNamespace = elementNamespace;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="7">89</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">90</TD><TD> </TD></TR><TR><TD CLASS="l">91</TD><TD>  public int getDepth()</TD></TR><TR><TD CLASS="l">92</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">93</TD><TD>    return depth;</TD></TR><TR><TD CLASS="l"><A NAME="e">94</A></TD><TD>  }</TD></TR><TR><TD CLASS="l">95</TD><TD> </TD></TR><TR><TD CLASS="l">96</TD><TD>  public void setDepth(int depth)</TD></TR><TR><TD CLASS="l">97</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="a">98</A></TD><TD>    this.depth = depth;</TD></TR><TR CLASS="z"><TD CLASS="l">99</TD><TD>  }</TD></TR><TR><TD CLASS="l">100</TD><TD> </TD></TR><TR><TD CLASS="l">101</TD><TD>public String getParentName() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="11">102</A></TD><TD>        return parentName;</TD></TR><TR><TD CLASS="l">103</TD><TD>}</TD></TR><TR><TD CLASS="l">104</TD><TD> </TD></TR><TR><TD CLASS="l">105</TD><TD>public void setParentName(String parentName) {</TD></TR><TR CLASS="z"><TD CLASS="l">106</TD><TD>        this.parentName = parentName;</TD></TR><TR CLASS="z"><TD CLASS="l">107</TD><TD>}</TD></TR><TR><TD CLASS="l">108</TD><TD>        </TD></TR><TR><TD CLASS="l">109</TD><TD> </TD></TR><TR><TD CLASS="l">110</TD><TD>        </TD></TR><TR><TD CLASS="l">111</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="28.html">org.eclipse.wst.xml.core.internal.search</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/167.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/167.html
deleted file mode 100644
index a9fdd96..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/167.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="29.html">org.eclipse.wst.xml.core.internal.search.impl</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">Messages.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>Messages.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/51)</TD><TD CLASS="h">0%   (0/8)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">Messages</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/51)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR><TD CLASS="f"><A HREF="#0">&lt;static initializer&gt;</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/18)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">Messages (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#3">bind (String): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">bind (String, Object []): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#5">bind (String, Object): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">bind (String, Object, Object): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/1)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2004, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - Initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">11</TD><TD> </TD></TR><TR><TD CLASS="l">12</TD><TD>package org.eclipse.wst.xml.core.internal.search.impl;</TD></TR><TR><TD CLASS="l">13</TD><TD> </TD></TR><TR><TD CLASS="l">14</TD><TD>import java.text.MessageFormat;</TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.osgi.util.NLS;</TD></TR><TR><TD CLASS="l">16</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">17</TD><TD>public class Messages extends NLS {</TD></TR><TR><TD CLASS="l">18</TD><TD>        </TD></TR><TR><TD CLASS="l"><A NAME="0">19</A></TD><TD>        private static final String BUNDLE_NAME = &#34;org.eclipse.wst.xml.core.internal.search.messages&#34;;//$NON-NLS-1$</TD></TR><TR><TD CLASS="l">20</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="2">21</A></TD><TD>        </TD></TR><TR><TD CLASS="l">22</TD><TD>        static {</TD></TR><TR CLASS="z"><TD CLASS="l">23</TD><TD>                NLS.initializeMessages(BUNDLE_NAME, Messages.class);</TD></TR><TR><TD CLASS="l">24</TD><TD>        }</TD></TR><TR CLASS="z"><TD CLASS="l">25</TD><TD>        private Messages() {</TD></TR><TR><TD CLASS="l">26</TD><TD>                // Do not instantiate</TD></TR><TR CLASS="z"><TD CLASS="l">27</TD><TD>        }</TD></TR><TR><TD CLASS="l">28</TD><TD>        </TD></TR><TR><TD CLASS="l">29</TD><TD>        /**</TD></TR><TR><TD CLASS="l">30</TD><TD>         * Bind the given message's substitution locations with the given string values.</TD></TR><TR><TD CLASS="l">31</TD><TD>         * </TD></TR><TR><TD CLASS="l"><A NAME="3">32</A></TD><TD>         * @param message the message to be manipulated</TD></TR><TR><TD CLASS="l">33</TD><TD>         * @return the manipulated String</TD></TR><TR><TD CLASS="l">34</TD><TD>         */</TD></TR><TR><TD CLASS="l">35</TD><TD>        public static String bind(String message) {</TD></TR><TR CLASS="z"><TD CLASS="l">36</TD><TD>                return bind(message, null);</TD></TR><TR><TD CLASS="l">37</TD><TD>        }</TD></TR><TR><TD CLASS="l">38</TD><TD>        </TD></TR><TR><TD CLASS="l">39</TD><TD>        /**</TD></TR><TR><TD CLASS="l">40</TD><TD>         * Bind the given message's substitution locations with the given string values.</TD></TR><TR><TD CLASS="l">41</TD><TD>         * </TD></TR><TR><TD CLASS="l">42</TD><TD>         * @param message the message to be manipulated</TD></TR><TR><TD CLASS="l"><A NAME="5">43</A></TD><TD>         * @param binding the object to be inserted into the message</TD></TR><TR><TD CLASS="l">44</TD><TD>         * @return the manipulated String</TD></TR><TR><TD CLASS="l">45</TD><TD>         */</TD></TR><TR><TD CLASS="l">46</TD><TD>        public static String bind(String message, Object binding) {</TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>                return bind(message, new Object[] {binding});</TD></TR><TR><TD CLASS="l">48</TD><TD>        }</TD></TR><TR><TD CLASS="l">49</TD><TD> </TD></TR><TR><TD CLASS="l">50</TD><TD>        /**</TD></TR><TR><TD CLASS="l">51</TD><TD>         * Bind the given message's substitution locations with the given string values.</TD></TR><TR><TD CLASS="l">52</TD><TD>         * </TD></TR><TR><TD CLASS="l">53</TD><TD>         * @param message the message to be manipulated</TD></TR><TR><TD CLASS="l">54</TD><TD>         * @param binding1 An object to be inserted into the message</TD></TR><TR><TD CLASS="l"><A NAME="6">55</A></TD><TD>         * @param binding2 A second object to be inserted into the message</TD></TR><TR><TD CLASS="l">56</TD><TD>         * @return the manipulated String</TD></TR><TR><TD CLASS="l">57</TD><TD>         */</TD></TR><TR><TD CLASS="l">58</TD><TD>        public static String bind(String message, Object binding1, Object binding2) {</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>                return bind(message, new Object[] {binding1, binding2});</TD></TR><TR><TD CLASS="l">60</TD><TD>        }</TD></TR><TR><TD CLASS="l">61</TD><TD> </TD></TR><TR><TD CLASS="l">62</TD><TD>        /**</TD></TR><TR><TD CLASS="l">63</TD><TD>         * Bind the given message's substitution locations with the given string values.</TD></TR><TR><TD CLASS="l">64</TD><TD>         * </TD></TR><TR><TD CLASS="l">65</TD><TD>         * @param message the message to be manipulated</TD></TR><TR><TD CLASS="l"><A NAME="4">66</A></TD><TD>         * @param bindings An array of objects to be inserted into the message</TD></TR><TR><TD CLASS="l">67</TD><TD>         * @return the manipulated String</TD></TR><TR><TD CLASS="l">68</TD><TD>         */</TD></TR><TR><TD CLASS="l">69</TD><TD>        public static String bind(String message, Object[] bindings) {</TD></TR><TR CLASS="z"><TD CLASS="l">70</TD><TD>                return MessageFormat.format(message, bindings);</TD></TR><TR><TD CLASS="l">71</TD><TD>        }</TD></TR><TR><TD CLASS="l">72</TD><TD> </TD></TR><TR><TD CLASS="l">73</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="29.html">org.eclipse.wst.xml.core.internal.search.impl</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/168.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/168.html
deleted file mode 100644
index 2a27b55..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/168.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="29.html">org.eclipse.wst.xml.core.internal.search.impl</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">XMLSearchDocument.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>XMLSearchDocument.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/135)</TD><TD CLASS="h">0%   (0/33)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">XMLSearchDocument</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/135)</TD><TD CLASS="h">0%   (0/33)</TD></TR><TR><TD CLASS="f"><A HREF="#0">XMLSearchDocument (String, XMLSearchParticipant): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">dispose (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#3">getEntries (String, String, int): Entry []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/59)</TD><TD CLASS="h">0%   (0/12)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">getModel (): Object</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/31)</TD><TD CLASS="h">0%   (0/9)</TD></TR><TR><TD CLASS="f"><A HREF="#5">putEntry (Entry): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/28)</TD><TD CLASS="h">0%   (0/6)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2004, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - Initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">11</TD><TD> </TD></TR><TR><TD CLASS="l">12</TD><TD>package org.eclipse.wst.xml.core.internal.search.impl;</TD></TR><TR><TD CLASS="l">13</TD><TD> </TD></TR><TR><TD CLASS="l">14</TD><TD>import java.io.IOException;</TD></TR><TR><TD CLASS="l">15</TD><TD>import java.util.HashMap;</TD></TR><TR><TD CLASS="l">16</TD><TD>import java.util.HashSet;</TD></TR><TR><TD CLASS="l">17</TD><TD>import java.util.Iterator;</TD></TR><TR><TD CLASS="l">18</TD><TD>import java.util.Map;</TD></TR><TR><TD CLASS="l">19</TD><TD>import java.util.Set;</TD></TR><TR><TD CLASS="l">20</TD><TD> </TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.core.resources.IFile;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.core.resources.ResourcesPlugin;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.core.runtime.CoreException;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.core.runtime.Path;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.wst.common.core.search.document.Entry;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.wst.common.core.search.document.SearchDocument;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.wst.sse.core.StructuredModelManager;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.wst.xml.core.internal.search.XMLSearchParticipant;</TD></TR><TR><TD CLASS="l">30</TD><TD> </TD></TR><TR><TD CLASS="l">31</TD><TD>public class XMLSearchDocument extends SearchDocument {</TD></TR><TR><TD CLASS="l">32</TD><TD>        </TD></TR><TR><TD CLASS="l"><A NAME="0">33</A></TD><TD>        IDOMModel model;</TD></TR><TR CLASS="z"><TD CLASS="l">34</TD><TD>        Map entries = new HashMap(); // category -&gt; set (entry)        </TD></TR><TR><TD CLASS="l">35</TD><TD> </TD></TR><TR><TD CLASS="l">36</TD><TD>        public XMLSearchDocument(String documentPath, XMLSearchParticipant participant) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">37</A></TD><TD>                super(documentPath, participant);</TD></TR><TR CLASS="z"><TD CLASS="l">38</TD><TD>        }</TD></TR><TR><TD CLASS="l">39</TD><TD> </TD></TR><TR><TD CLASS="l">40</TD><TD>        public Object getModel() {</TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>                if(model == null){</TD></TR><TR><TD CLASS="l">42</TD><TD>            //System.out.println(&#34;creating DOM for &#34; + getPath());</TD></TR><TR CLASS="z"><TD CLASS="l">43</TD><TD>                        IFile file = ResourcesPlugin.getWorkspace().getRoot().getFileForLocation(new Path(getPath()));</TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>                        if(file != null){</TD></TR><TR><TD CLASS="l">45</TD><TD>                                try {</TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>                                        model = (IDOMModel)StructuredModelManager.getModelManager().getModelForEdit(file);</TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>                                } catch (IOException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">48</TD><TD>                                        e.printStackTrace();</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>                                } catch (CoreException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">50</TD><TD>                                        e.printStackTrace();</TD></TR><TR><TD CLASS="l">51</TD><TD>                                }</TD></TR><TR><TD CLASS="l">52</TD><TD>                        </TD></TR><TR><TD CLASS="l">53</TD><TD>                        }</TD></TR><TR><TD CLASS="l">54</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                return model;</TD></TR><TR><TD CLASS="l">56</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="3">57</A></TD><TD> </TD></TR><TR><TD CLASS="l">58</TD><TD>        public Entry[] getEntries(String category, String key, int matchRule)</TD></TR><TR><TD CLASS="l">59</TD><TD>        {</TD></TR><TR><TD CLASS="l">60</TD><TD>                // TODO use matchRule</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                Set results = new HashSet();</TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>                if(category != null){</TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>                        Set values = (Set)entries.get(category);</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                        if(values == null){</TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>                                return new Entry[0];</TD></TR><TR><TD CLASS="l">66</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>                        if(key == null || &#34;&#34;.equals(key) || &#34;*&#34;.equals(key)){ //$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR><TD CLASS="l">68</TD><TD>                                // entries with any key in the given category</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                                results.addAll(values);</TD></TR><TR><TD CLASS="l">70</TD><TD>                        }</TD></TR><TR><TD CLASS="l">71</TD><TD>                        else{</TD></TR><TR><TD CLASS="l">72</TD><TD>                                // entries with the specified key in the given category</TD></TR><TR CLASS="z"><TD CLASS="l">73</TD><TD>                                for (Iterator iter = values.iterator(); iter.hasNext();)</TD></TR><TR><TD CLASS="l">74</TD><TD>                                {</TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>                                        Entry entry = (Entry) iter.next();</TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>                                        if(key.equals(entry.getKey())){</TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>                                                results.add(entry);</TD></TR><TR><TD CLASS="l">78</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">79</TD><TD>                                }</TD></TR><TR><TD CLASS="l">80</TD><TD>                        }</TD></TR><TR><TD CLASS="l">81</TD><TD>                        </TD></TR><TR><TD CLASS="l">82</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">83</TD><TD>                return (Entry[]) results.toArray(new Entry[results.size()]);</TD></TR><TR><TD CLASS="l"><A NAME="5">84</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">85</TD><TD> </TD></TR><TR><TD CLASS="l">86</TD><TD>        public void putEntry(Entry entry)</TD></TR><TR><TD CLASS="l">87</TD><TD>        {</TD></TR><TR CLASS="z"><TD CLASS="l">88</TD><TD>                if(entry.getCategory() != null){</TD></TR><TR CLASS="z"><TD CLASS="l">89</TD><TD>                        Set values = (Set)entries.get(entry.getCategory());</TD></TR><TR CLASS="z"><TD CLASS="l">90</TD><TD>                        if(values == null){</TD></TR><TR CLASS="z"><TD CLASS="l">91</TD><TD>                                entries.put(entry.getCategory(), values=new HashSet());</TD></TR><TR><TD CLASS="l">92</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">93</TD><TD>                        values.add(entry);</TD></TR><TR><TD CLASS="l">94</TD><TD>                }</TD></TR><TR><TD CLASS="l">95</TD><TD>                </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">96</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">97</TD><TD> </TD></TR><TR><TD CLASS="l">98</TD><TD>    public void dispose()</TD></TR><TR><TD CLASS="l">99</TD><TD>    {     </TD></TR><TR CLASS="z"><TD CLASS="l">100</TD><TD>      if (model != null)</TD></TR><TR><TD CLASS="l">101</TD><TD>      {  </TD></TR><TR CLASS="z"><TD CLASS="l">102</TD><TD>        model.releaseFromEdit();        </TD></TR><TR><TD CLASS="l">103</TD><TD>      }  </TD></TR><TR CLASS="z"><TD CLASS="l">104</TD><TD>    }</TD></TR><TR><TD CLASS="l">105</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="29.html">org.eclipse.wst.xml.core.internal.search.impl</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/169.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/169.html
deleted file mode 100644
index 891394d..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/169.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="2a.html">org.eclipse.wst.xml.core.internal.search.matching</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">PatternMatcher.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>PatternMatcher.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/45)</TD><TD CLASS="h">0%   (0/15)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">PatternMatcher</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/45)</TD><TD CLASS="h">0%   (0/15)</TD></TR><TR><TD CLASS="f"><A HREF="#0">PatternMatcher (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">addMatch (SearchPattern, IFile, Attr, SearchRequestor): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#3">createSearchMatch (IFile, Attr): SearchMatch</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/27)</TD><TD CLASS="h">0%   (0/8)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2004, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - Initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">11</TD><TD> </TD></TR><TR><TD CLASS="l">12</TD><TD>package org.eclipse.wst.xml.core.internal.search.matching;</TD></TR><TR><TD CLASS="l">13</TD><TD> </TD></TR><TR><TD CLASS="l">14</TD><TD>import org.eclipse.core.resources.IFile;</TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.core.runtime.CoreException;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.wst.common.core.search.SearchMatch;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.wst.common.core.search.SearchRequestor;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.wst.common.core.search.pattern.SearchPattern;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.wst.xml.core.internal.provisional.document.IDOMAttr;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.w3c.dom.Attr;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.w3c.dom.Element;</TD></TR><TR><TD CLASS="l">22</TD><TD> </TD></TR><TR><TD CLASS="l">23</TD><TD>/**</TD></TR><TR><TD CLASS="l">24</TD><TD> * This class contains matching implementation.  </TD></TR><TR><TD CLASS="l">25</TD><TD> * &lt;p&gt;</TD></TR><TR><TD CLASS="l">26</TD><TD> * Subclasses of the PatternMatches should provide an implementation of the specific pattern matching.</TD></TR><TR><TD CLASS="l">27</TD><TD> * &lt;/p&gt;</TD></TR><TR><TD CLASS="l">28</TD><TD> * &lt;p&gt;</TD></TR><TR><TD CLASS="l">29</TD><TD> * Subclasses of the PatternMatches should be set as adapters for the patterns that they match.</TD></TR><TR><TD CLASS="l">30</TD><TD> * &lt;/p&gt;</TD></TR><TR><TD CLASS="l">31</TD><TD> * An implementation of {@link org.eclipse.wst.common.core.search.SearchParticipant#selectDocumentLocations()} will call </TD></TR><TR><TD CLASS="l">32</TD><TD> * { @link PatternMatcher#matches() } on the adapter on pattern matcher.</TD></TR><TR><TD CLASS="l">33</TD><TD> * </TD></TR><TR><TD CLASS="l"><A NAME="0">34</A></TD><TD> * An implementation of {@link org.eclipse.wst.common.core.search.SearchParticipant#locateMatches()} will call </TD></TR><TR><TD CLASS="l">35</TD><TD> * { @link PatternMatcher#locateMatches() } on the adapter on pattern matcher.</TD></TR><TR><TD CLASS="l">36</TD><TD> *</TD></TR><TR><TD CLASS="l">37</TD><TD> */</TD></TR><TR CLASS="z"><TD CLASS="l">38</TD><TD>public abstract class PatternMatcher {</TD></TR><TR><TD CLASS="l">39</TD><TD>        </TD></TR><TR><TD CLASS="l">40</TD><TD>        </TD></TR><TR><TD CLASS="l">41</TD><TD>        /**</TD></TR><TR><TD CLASS="l">42</TD><TD>         * This method does dive actual match location to the requestor if there are matches</TD></TR><TR><TD CLASS="l">43</TD><TD>         */</TD></TR><TR><TD CLASS="l">44</TD><TD>        public abstract void locateMatches(SearchPattern pattern, IFile file, Element element, SearchRequestor requestor);</TD></TR><TR><TD CLASS="l">45</TD><TD> </TD></TR><TR><TD CLASS="l">46</TD><TD>        /**</TD></TR><TR><TD CLASS="l">47</TD><TD>         * This method only answers if the pattern matches element, it does not give actual match location</TD></TR><TR><TD CLASS="l">48</TD><TD>         */</TD></TR><TR><TD CLASS="l"><A NAME="3">49</A></TD><TD>        public abstract boolean matches(SearchPattern pattern, Object element);</TD></TR><TR><TD CLASS="l">50</TD><TD>    </TD></TR><TR><TD CLASS="l">51</TD><TD>    protected SearchMatch createSearchMatch(IFile file, Attr attributeNode)</TD></TR><TR><TD CLASS="l">52</TD><TD>    {</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>        int start = 0;</TD></TR><TR CLASS="z"><TD CLASS="l">54</TD><TD>        int length = 0;</TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>        if(attributeNode instanceof IDOMAttr){</TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>            IDOMAttr domAttr = (IDOMAttr)attributeNode;</TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>            start = domAttr.getValueRegionStartOffset();</TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>            length = domAttr.getValueRegionText().length();</TD></TR><TR><TD CLASS="l">59</TD><TD>        }</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>        SearchMatch match = new SearchMatch(attributeNode, start, length, file);</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>        return match;</TD></TR><TR><TD CLASS="l"><A NAME="2">62</A></TD><TD>    }</TD></TR><TR><TD CLASS="l">63</TD><TD>        </TD></TR><TR><TD CLASS="l">64</TD><TD>        protected void addMatch(SearchPattern pattern, IFile file, Attr attributeNode, SearchRequestor requestor) {</TD></TR><TR><TD CLASS="l">65</TD><TD>        //System.out.println(&#34;addMatch &#34; + pattern + &#34; &#34; + attributeNode.getName() + &#34;=&#34; + attributeNode.getValue());</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                if (attributeNode != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>                                SearchMatch match = createSearchMatch(file, attributeNode);                </TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>                                if(requestor != null){</TD></TR><TR><TD CLASS="l">69</TD><TD>                                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">70</TD><TD>                                                requestor.acceptSearchMatch(match);</TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>                                        } catch (CoreException e) {</TD></TR><TR><TD CLASS="l">72</TD><TD>                                                //do nothing</TD></TR><TR><TD CLASS="l">73</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">74</TD><TD>                                }</TD></TR><TR><TD CLASS="l">75</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>        }</TD></TR><TR><TD CLASS="l">77</TD><TD> </TD></TR><TR><TD CLASS="l">78</TD><TD> </TD></TR><TR><TD CLASS="l">79</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="2a.html">org.eclipse.wst.xml.core.internal.search.matching</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/16a.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/16a.html
deleted file mode 100644
index 71773c6..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/16a.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="2a.html">org.eclipse.wst.xml.core.internal.search.matching</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">SAXSearchElement.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>SAXSearchElement.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/63)</TD><TD CLASS="h">0%   (0/26)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">SAXSearchElement</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/63)</TD><TD CLASS="h">0%   (0/26)</TD></TR><TR><TD CLASS="f"><A HREF="#0">SAXSearchElement (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/14)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">getAttributes (): Attributes</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#3">getDepth (): int</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">getElementName (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#5">getElementNamespace (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">getNamespaceMap (): Map</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#7">getParentName (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">getTargetNamespace (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#9">setAttributes (Attributes): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">setDepth (int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#b">setElementName (String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#c">setElementNamespace (String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#d">setNamespaceMap (Map): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#e">setParentName (String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#f">setTargetNamespace (String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2004, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - Initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">11</TD><TD> </TD></TR><TR><TD CLASS="l">12</TD><TD>package org.eclipse.wst.xml.core.internal.search.matching;</TD></TR><TR><TD CLASS="l">13</TD><TD> </TD></TR><TR><TD CLASS="l">14</TD><TD>import java.util.HashMap;</TD></TR><TR><TD CLASS="l">15</TD><TD>import java.util.Map;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.xml.sax.Attributes;</TD></TR><TR><TD CLASS="l">17</TD><TD> </TD></TR><TR><TD CLASS="l">18</TD><TD>public class SAXSearchElement{</TD></TR><TR><TD CLASS="l">19</TD><TD>        Attributes attributes;</TD></TR><TR><TD CLASS="l">20</TD><TD>        String elementName;</TD></TR><TR><TD CLASS="l">21</TD><TD>        String elementNamespace;</TD></TR><TR CLASS="z"><TD CLASS="l">22</TD><TD>        Map namespaceMap = new HashMap(); // Map of string prefix keys and namespace</TD></TR><TR CLASS="z"><TD CLASS="l">23</TD><TD>        String targetNamespace = &#34;&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l"><A NAME="0">24</A></TD><TD>        String parentName;</TD></TR><TR CLASS="z"><TD CLASS="l">25</TD><TD>    int depth = -1;</TD></TR><TR><TD CLASS="l">26</TD><TD>        </TD></TR><TR><TD CLASS="l"><A NAME="2">27</A></TD><TD>        public SAXSearchElement() {</TD></TR><TR CLASS="z"><TD CLASS="l">28</TD><TD>                super();</TD></TR><TR CLASS="z"><TD CLASS="l">29</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="4">30</A></TD><TD>        public Attributes getAttributes() {</TD></TR><TR CLASS="z"><TD CLASS="l">31</TD><TD>                return attributes;</TD></TR><TR><TD CLASS="l">32</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="5">33</A></TD><TD>        public String getElementName() {</TD></TR><TR CLASS="z"><TD CLASS="l">34</TD><TD>                return elementName;</TD></TR><TR><TD CLASS="l">35</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="6">36</A></TD><TD>        public String getElementNamespace() {</TD></TR><TR CLASS="z"><TD CLASS="l">37</TD><TD>                return elementNamespace;</TD></TR><TR><TD CLASS="l">38</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="8">39</A></TD><TD>        public Map getNamespaceMap() {</TD></TR><TR CLASS="z"><TD CLASS="l">40</TD><TD>                return namespaceMap;</TD></TR><TR><TD CLASS="l">41</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="9">42</A></TD><TD>        public String getTargetNamespace() {</TD></TR><TR CLASS="z"><TD CLASS="l">43</TD><TD>                return targetNamespace;</TD></TR><TR><TD CLASS="l">44</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="b">45</A></TD><TD>        public void setAttributes(Attributes attributes) {</TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>                this.attributes = attributes;</TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="c">48</A></TD><TD>        public void setElementName(String elementName) {</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>                this.elementName = elementName;</TD></TR><TR CLASS="z"><TD CLASS="l">50</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="d">51</A></TD><TD>        public void setElementNamespace(String elementNamespace) {</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                this.elementNamespace = elementNamespace;</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="f">54</A></TD><TD>        public void setNamespaceMap(Map namespaceMap) {</TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                this.namespaceMap = namespaceMap;</TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>        }</TD></TR><TR><TD CLASS="l">57</TD><TD>        public void setTargetNamespace(String targetNamespace) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">58</A></TD><TD>                this.targetNamespace = targetNamespace;</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>        }</TD></TR><TR><TD CLASS="l">60</TD><TD>  public int getDepth()</TD></TR><TR><TD CLASS="l">61</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="a">62</A></TD><TD>    return depth;</TD></TR><TR><TD CLASS="l">63</TD><TD>  }</TD></TR><TR><TD CLASS="l">64</TD><TD>  public void setDepth(int depth)</TD></TR><TR><TD CLASS="l"><A NAME="7">65</A></TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>    this.depth = depth;</TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>  }</TD></TR><TR><TD CLASS="l"><A NAME="e">68</A></TD><TD>public String getParentName() {</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>        return parentName;</TD></TR><TR><TD CLASS="l">70</TD><TD>}</TD></TR><TR><TD CLASS="l">71</TD><TD>public void setParentName(String parentName) {</TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>        this.parentName = parentName;</TD></TR><TR CLASS="z"><TD CLASS="l">73</TD><TD>}</TD></TR><TR><TD CLASS="l">74</TD><TD>        </TD></TR><TR><TD CLASS="l">75</TD><TD>        </TD></TR><TR><TD CLASS="l">76</TD><TD>        </TD></TR><TR><TD CLASS="l">77</TD><TD>        </TD></TR><TR><TD CLASS="l">78</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="2a.html">org.eclipse.wst.xml.core.internal.search.matching</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/16b.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/16b.html
deleted file mode 100644
index 1bef340..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/16b.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="2a.html">org.eclipse.wst.xml.core.internal.search.matching</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">XMLSearchPatternMatcher.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>XMLSearchPatternMatcher.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/444)</TD><TD CLASS="h">0%   (0/99)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">XMLSearchPatternMatcher</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/444)</TD><TD CLASS="h">0%   (0/99)</TD></TR><TR><TD CLASS="f"><A HREF="#1">XMLSearchPatternMatcher (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#0">XMLSearchPatternMatcher (SearchParticipant): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#3">computeNamespaceForPrefix (Element, String): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/41)</TD><TD CLASS="h">0%   (0/9)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">createSearchMatch (IFile, Attr): SearchMatch</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/25)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#5">initialize (XMLSearchPattern, Element): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/53)</TD><TD CLASS="h">0%   (0/13)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">initialize (XMLSearchPattern, SAXSearchElement): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/58)</TD><TD CLASS="h">0%   (0/14)</TD></TR><TR><TD CLASS="f"><A HREF="#7">locateMatches (SearchPattern, IFile, Element, SearchRequestor): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/77)</TD><TD CLASS="h">0%   (0/15)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">matches (SearchPattern, Object): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/97)</TD><TD CLASS="h">0%   (0/21)</TD></TR><TR><TD CLASS="f"><A HREF="#9">matchesPattern (SearchPattern): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/84)</TD><TD CLASS="h">0%   (0/17)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2004, 2008 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - Initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">11</TD><TD> </TD></TR><TR><TD CLASS="l">12</TD><TD>package org.eclipse.wst.xml.core.internal.search.matching;</TD></TR><TR><TD CLASS="l">13</TD><TD> </TD></TR><TR><TD CLASS="l">14</TD><TD>import org.eclipse.core.resources.IFile;</TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.wst.common.core.search.SearchMatch;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.wst.common.core.search.SearchParticipant;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.wst.common.core.search.SearchRequestor;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.wst.common.core.search.pattern.QualifiedName;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.wst.common.core.search.pattern.SearchPattern;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.wst.xml.core.internal.search.XMLComponentSearchPattern;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.wst.xml.core.internal.search.XMLSearchPattern;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.w3c.dom.Attr;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.w3c.dom.Element;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.w3c.dom.Node;</TD></TR><TR><TD CLASS="l">25</TD><TD> </TD></TR><TR><TD CLASS="l">26</TD><TD> </TD></TR><TR><TD CLASS="l">27</TD><TD>public class XMLSearchPatternMatcher extends PatternMatcher{</TD></TR><TR><TD CLASS="l">28</TD><TD>        </TD></TR><TR><TD CLASS="l">29</TD><TD>   /**</TD></TR><TR><TD CLASS="l">30</TD><TD>    * The active search participant.</TD></TR><TR><TD CLASS="l">31</TD><TD>    */</TD></TR><TR><TD CLASS="l">32</TD><TD>    private SearchParticipant searchParticipant;</TD></TR><TR><TD CLASS="l">33</TD><TD>  </TD></TR><TR><TD CLASS="l"><A NAME="0">34</A></TD><TD>    /**</TD></TR><TR><TD CLASS="l">35</TD><TD>     * Constructs a pattern matcher given a search participant.</TD></TR><TR><TD CLASS="l">36</TD><TD>     * @param searchParticipant the active {@link SearchParticipant search participant}.</TD></TR><TR><TD CLASS="l">37</TD><TD>     */</TD></TR><TR CLASS="z"><TD CLASS="l">38</TD><TD>    public XMLSearchPatternMatcher(SearchParticipant searchParticipant)</TD></TR><TR><TD CLASS="l">39</TD><TD>    {</TD></TR><TR CLASS="z"><TD CLASS="l">40</TD><TD>      this.searchParticipant = searchParticipant;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">41</A></TD><TD>    }</TD></TR><TR><TD CLASS="l">42</TD><TD>    </TD></TR><TR><TD CLASS="l">43</TD><TD>        protected String computeNamespaceForPrefix(Element element, String prefix)</TD></TR><TR><TD CLASS="l">44</TD><TD>        {</TD></TR><TR CLASS="z"><TD CLASS="l">45</TD><TD>          String result = null;</TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>          for (Node node = element; node != null; node = node.getParentNode())</TD></TR><TR><TD CLASS="l">47</TD><TD>          {</TD></TR><TR CLASS="z"><TD CLASS="l">48</TD><TD>                if (node.getNodeType() == Node.ELEMENT_NODE)</TD></TR><TR><TD CLASS="l">49</TD><TD>                {</TD></TR><TR CLASS="z"><TD CLASS="l">50</TD><TD>                  Element e = (Element)node;</TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>                  String attributeName = (prefix != null &amp;&amp; prefix.length() &gt; 0) ? (&#34;xmlns:&#34; + prefix) : &#34;xmlns&#34;;  //$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                  result = e.getAttribute(attributeName);</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>                  if (result != null)</TD></TR><TR><TD CLASS="l">54</TD><TD>                  {</TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                         break;  </TD></TR><TR><TD CLASS="l">56</TD><TD>                  }          </TD></TR><TR><TD CLASS="l">57</TD><TD>                }        </TD></TR><TR><TD CLASS="l">58</TD><TD>          }          </TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>          return result;</TD></TR><TR><TD CLASS="l">60</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="5">61</A></TD><TD>        </TD></TR><TR><TD CLASS="l">62</TD><TD> </TD></TR><TR><TD CLASS="l">63</TD><TD>        protected void initialize(XMLSearchPattern pattern, Element domElement) {</TD></TR><TR><TD CLASS="l">64</TD><TD>        </TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>                        pattern.setElementName(domElement.getLocalName());</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                        pattern.setElementNamespace(domElement.getNamespaceURI());</TD></TR><TR><TD CLASS="l">67</TD><TD>            // TODO (cs) set the depth attribute on the pattern</TD></TR><TR><TD CLASS="l">68</TD><TD>            //</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                        String actualValue = domElement.getAttribute(pattern.getAttributeName());</TD></TR><TR CLASS="z"><TD CLASS="l">70</TD><TD>                         if(actualValue != null){</TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>                                        int n = actualValue.indexOf(&#34;:&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>                                        if(n &gt; 0){</TD></TR><TR CLASS="z"><TD CLASS="l">73</TD><TD>                                                String prefix = actualValue.substring(0, n);</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>                                                pattern.setSearchName(actualValue.substring(n+1));      </TD></TR><TR><TD CLASS="l">75</TD><TD>                                                </TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>                                                String namespace = computeNamespaceForPrefix(domElement, prefix);</TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>                                                pattern.setSearchNamespace(namespace);</TD></TR><TR><TD CLASS="l">78</TD><TD>                                        </TD></TR><TR><TD CLASS="l">79</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">80</TD><TD>                                        else {</TD></TR><TR CLASS="z"><TD CLASS="l">81</TD><TD>                                                pattern.setSearchName(actualValue);</TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>                                                pattern.setSearchNamespace(domElement.getOwnerDocument().getDocumentElement().getAttribute(&#34;targetNamespace&#34;)); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">83</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">84</TD><TD>                            }</TD></TR><TR><TD CLASS="l">85</TD><TD>                </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="6">86</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">87</TD><TD>        </TD></TR><TR><TD CLASS="l">88</TD><TD>        protected void initialize(XMLSearchPattern pattern, SAXSearchElement saxElement) {</TD></TR><TR><TD CLASS="l">89</TD><TD>                </TD></TR><TR CLASS="z"><TD CLASS="l">90</TD><TD>                pattern.setElementName(saxElement.getElementName());</TD></TR><TR CLASS="z"><TD CLASS="l">91</TD><TD>                pattern.setElementNamespace(saxElement.getElementNamespace());</TD></TR><TR CLASS="z"><TD CLASS="l">92</TD><TD>        pattern.setDepth(saxElement.getDepth());</TD></TR><TR CLASS="z"><TD CLASS="l">93</TD><TD>        pattern.setParentName(saxElement.getParentName());</TD></TR><TR CLASS="z"><TD CLASS="l">94</TD><TD>                String actualValue = saxElement.getAttributes().getValue(pattern.getAttributeName());</TD></TR><TR CLASS="z"><TD CLASS="l">95</TD><TD>                 if(actualValue != null){</TD></TR><TR CLASS="z"><TD CLASS="l">96</TD><TD>                                int n = actualValue.indexOf(&#34;:&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">97</TD><TD>                                if(n &gt; 0){</TD></TR><TR CLASS="z"><TD CLASS="l">98</TD><TD>                                        String prefix = actualValue.substring(0, n);</TD></TR><TR CLASS="z"><TD CLASS="l">99</TD><TD>                                        pattern.setSearchName(actualValue.substring(n+1));</TD></TR><TR CLASS="z"><TD CLASS="l">100</TD><TD>                                        pattern.setSearchNamespace((String)saxElement.getNamespaceMap().get(prefix));</TD></TR><TR><TD CLASS="l">101</TD><TD>                                </TD></TR><TR><TD CLASS="l">102</TD><TD>                                }</TD></TR><TR><TD CLASS="l">103</TD><TD>                                else {</TD></TR><TR CLASS="z"><TD CLASS="l">104</TD><TD>                                        pattern.setSearchName(actualValue);</TD></TR><TR CLASS="z"><TD CLASS="l">105</TD><TD>                                        pattern.setSearchNamespace(saxElement.getTargetNamespace());</TD></TR><TR><TD CLASS="l">106</TD><TD>                                }</TD></TR><TR><TD CLASS="l">107</TD><TD>                    }</TD></TR><TR><TD CLASS="l">108</TD><TD>        </TD></TR><TR CLASS="z"><TD CLASS="l">109</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="1">110</A></TD><TD>        </TD></TR><TR><TD CLASS="l">111</TD><TD>        XMLSearchPattern searchPattern;</TD></TR><TR><TD CLASS="l">112</TD><TD>        </TD></TR><TR><TD CLASS="l">113</TD><TD>        public XMLSearchPatternMatcher() {</TD></TR><TR CLASS="z"><TD CLASS="l">114</TD><TD>                super();</TD></TR><TR><TD CLASS="l">115</TD><TD>                </TD></TR><TR CLASS="z"><TD CLASS="l">116</TD><TD>        }</TD></TR><TR><TD CLASS="l">117</TD><TD> </TD></TR><TR><TD CLASS="l">118</TD><TD>        </TD></TR><TR><TD CLASS="l">119</TD><TD> </TD></TR><TR><TD CLASS="l">120</TD><TD>        </TD></TR><TR><TD CLASS="l">121</TD><TD>        /**</TD></TR><TR><TD CLASS="l"><A NAME="7">122</A></TD><TD>         * This method does dive actual match location to the requestor if there are matches</TD></TR><TR><TD CLASS="l">123</TD><TD>         */</TD></TR><TR><TD CLASS="l">124</TD><TD>        </TD></TR><TR><TD CLASS="l">125</TD><TD>        public void locateMatches(SearchPattern pattern, IFile file, Element element, SearchRequestor requestor) {</TD></TR><TR CLASS="z"><TD CLASS="l">126</TD><TD>                if(pattern instanceof XMLComponentSearchPattern){</TD></TR><TR CLASS="z"><TD CLASS="l">127</TD><TD>                        XMLSearchPattern[] childPatterns = ((XMLComponentSearchPattern)pattern).getChildren(searchParticipant);</TD></TR><TR CLASS="z"><TD CLASS="l">128</TD><TD>                        if (childPatterns == null){</TD></TR><TR CLASS="z"><TD CLASS="l">129</TD><TD>                          return;</TD></TR><TR><TD CLASS="l">130</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">131</TD><TD>                        for (int i = 0; i &lt; childPatterns.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">132</TD><TD>                                PatternMatcher matcher = (PatternMatcher)childPatterns[i].getAdapter(PatternMatcher.class);</TD></TR><TR CLASS="z"><TD CLASS="l">133</TD><TD>                                if(matcher == null){</TD></TR><TR CLASS="z"><TD CLASS="l">134</TD><TD>                                        matcher = this;</TD></TR><TR><TD CLASS="l">135</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">136</TD><TD>                                if(matcher != null){</TD></TR><TR CLASS="z"><TD CLASS="l">137</TD><TD>                                        matcher.locateMatches(childPatterns[i], file, element, requestor);</TD></TR><TR><TD CLASS="l">138</TD><TD>                                }</TD></TR><TR><TD CLASS="l">139</TD><TD>                        }</TD></TR><TR><TD CLASS="l">140</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">141</TD><TD>                else if(pattern instanceof XMLSearchPattern){</TD></TR><TR CLASS="z"><TD CLASS="l">142</TD><TD>                        if(matches(pattern, element)){</TD></TR><TR CLASS="z"><TD CLASS="l">143</TD><TD>                                Attr attribute = element.getAttributeNode(((XMLSearchPattern)pattern).getAttributeName());</TD></TR><TR CLASS="z"><TD CLASS="l">144</TD><TD>                                addMatch(pattern, file, attribute, requestor);</TD></TR><TR><TD CLASS="l">145</TD><TD>                        }</TD></TR><TR><TD CLASS="l">146</TD><TD>                </TD></TR><TR><TD CLASS="l">147</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">148</TD><TD>        }</TD></TR><TR><TD CLASS="l">149</TD><TD>        </TD></TR><TR><TD CLASS="l"><A NAME="8">150</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">151</TD><TD>         * This method only answers if the pattern matches element, it does not give actual match location</TD></TR><TR><TD CLASS="l">152</TD><TD>         */</TD></TR><TR><TD CLASS="l">153</TD><TD>        public boolean matches(SearchPattern pattern, Object element){</TD></TR><TR CLASS="z"><TD CLASS="l">154</TD><TD>                if(pattern instanceof XMLComponentSearchPattern){</TD></TR><TR CLASS="z"><TD CLASS="l">155</TD><TD>                        XMLSearchPattern[] childPatterns = ((XMLComponentSearchPattern)pattern).getChildren(searchParticipant);</TD></TR><TR CLASS="z"><TD CLASS="l">156</TD><TD>            if (childPatterns == null){</TD></TR><TR CLASS="z"><TD CLASS="l">157</TD><TD>              return false;</TD></TR><TR><TD CLASS="l">158</TD><TD>            }</TD></TR><TR CLASS="z"><TD CLASS="l">159</TD><TD>                        for (int i = 0; i &lt; childPatterns.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">160</TD><TD>                                PatternMatcher matcher = (PatternMatcher)childPatterns[i].getAdapter(PatternMatcher.class);</TD></TR><TR CLASS="z"><TD CLASS="l">161</TD><TD>                                if(matcher == null){</TD></TR><TR CLASS="z"><TD CLASS="l">162</TD><TD>                                        matcher = this;</TD></TR><TR><TD CLASS="l">163</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">164</TD><TD>                                if(matcher != null){</TD></TR><TR CLASS="z"><TD CLASS="l">165</TD><TD>                                        if(matcher.matches(childPatterns[i], element)){</TD></TR><TR CLASS="z"><TD CLASS="l">166</TD><TD>                                                return true;</TD></TR><TR><TD CLASS="l">167</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">168</TD><TD>                                }</TD></TR><TR><TD CLASS="l">169</TD><TD>                                </TD></TR><TR><TD CLASS="l">170</TD><TD>                        }</TD></TR><TR><TD CLASS="l">171</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">172</TD><TD>                else if(pattern instanceof XMLSearchPattern){</TD></TR><TR><TD CLASS="l">173</TD><TD>                        </TD></TR><TR CLASS="z"><TD CLASS="l">174</TD><TD>                        XMLSearchPattern possibleMatch = new XMLSearchPattern();</TD></TR><TR CLASS="z"><TD CLASS="l">175</TD><TD>                        possibleMatch.setAttributeName(((XMLSearchPattern)pattern).getAttributeName());</TD></TR><TR CLASS="z"><TD CLASS="l">176</TD><TD>                        if(element instanceof Element){</TD></TR><TR CLASS="z"><TD CLASS="l">177</TD><TD>                                initialize(possibleMatch, (Element)element);</TD></TR><TR><TD CLASS="l">178</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">179</TD><TD>                        else if(element instanceof SAXSearchElement){</TD></TR><TR CLASS="z"><TD CLASS="l">180</TD><TD>                                initialize(possibleMatch, (SAXSearchElement)element);</TD></TR><TR><TD CLASS="l">181</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">182</TD><TD>                        searchPattern = (XMLSearchPattern)pattern;</TD></TR><TR CLASS="z"><TD CLASS="l">183</TD><TD>                        return matchesPattern(possibleMatch);</TD></TR><TR><TD CLASS="l">184</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="9">185</A></TD><TD>                return false;</TD></TR><TR><TD CLASS="l">186</TD><TD>        }</TD></TR><TR><TD CLASS="l">187</TD><TD>        </TD></TR><TR><TD CLASS="l">188</TD><TD>        protected boolean matchesPattern(SearchPattern pattern) {</TD></TR><TR CLASS="z"><TD CLASS="l">189</TD><TD>                if(searchPattern != null &amp;&amp; pattern instanceof XMLSearchPattern){</TD></TR><TR CLASS="z"><TD CLASS="l">190</TD><TD>                        XMLSearchPattern decodedPattern = (XMLSearchPattern)pattern;</TD></TR><TR CLASS="z"><TD CLASS="l">191</TD><TD>            if(searchPattern.getElementName().equals(decodedPattern.getElementName()) &amp;&amp;                    </TD></TR><TR CLASS="z"><TD CLASS="l">192</TD><TD>                                        searchPattern.getElementNamespace().equals(decodedPattern.getElementNamespace())){                </TD></TR><TR CLASS="z"><TD CLASS="l">193</TD><TD>                if(searchPattern.getParentName() != null &amp;&amp;</TD></TR><TR CLASS="z"><TD CLASS="l">194</TD><TD>                   decodedPattern.getParentName() != null &amp;&amp;</TD></TR><TR CLASS="z"><TD CLASS="l">195</TD><TD>                   !searchPattern.getParentName().equals(decodedPattern.getParentName()))</TD></TR><TR><TD CLASS="l">196</TD><TD>                {</TD></TR><TR CLASS="z"><TD CLASS="l">197</TD><TD>                  return false;  </TD></TR><TR><TD CLASS="l">198</TD><TD>                }  </TD></TR><TR CLASS="z"><TD CLASS="l">199</TD><TD>                if(searchPattern.getSearchName() == null)</TD></TR><TR><TD CLASS="l">200</TD><TD>                {  </TD></TR><TR CLASS="z"><TD CLASS="l">201</TD><TD>                  return false;</TD></TR><TR><TD CLASS="l">202</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">203</TD><TD>                else if (&#34;*&#34;.equals(searchPattern.getSearchName())) //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">204</TD><TD>                {</TD></TR><TR CLASS="z"><TD CLASS="l">205</TD><TD>                  return true;</TD></TR><TR><TD CLASS="l">206</TD><TD>                }  </TD></TR><TR CLASS="z"><TD CLASS="l">207</TD><TD>                else if(searchPattern.getSearchNamespace() == null){</TD></TR><TR CLASS="z"><TD CLASS="l">208</TD><TD>                                        return searchPattern.getSearchName().equals(decodedPattern.getSearchName());</TD></TR><TR><TD CLASS="l">209</TD><TD>                                }</TD></TR><TR><TD CLASS="l">210</TD><TD>                                else{</TD></TR><TR CLASS="z"><TD CLASS="l">211</TD><TD>                                        return searchPattern.getSearchName().equals(decodedPattern.getSearchName()) &amp;&amp;</TD></TR><TR CLASS="z"><TD CLASS="l">212</TD><TD>                                        searchPattern.getSearchNamespace().equals(decodedPattern.getSearchNamespace());</TD></TR><TR><TD CLASS="l">213</TD><TD>                                }</TD></TR><TR><TD CLASS="l">214</TD><TD>                        }</TD></TR><TR><TD CLASS="l">215</TD><TD>                }</TD></TR><TR><TD CLASS="l">216</TD><TD>                </TD></TR><TR CLASS="z"><TD CLASS="l">217</TD><TD>                return false;</TD></TR><TR><TD CLASS="l">218</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="4">219</A></TD><TD>        </TD></TR><TR><TD CLASS="l">220</TD><TD>    </TD></TR><TR><TD CLASS="l">221</TD><TD>    protected SearchMatch createSearchMatch(IFile file, Attr attributeNode)</TD></TR><TR><TD CLASS="l">222</TD><TD>    {</TD></TR><TR CLASS="z"><TD CLASS="l">223</TD><TD>      SearchMatch match = super.createSearchMatch(file, attributeNode);</TD></TR><TR><TD CLASS="l">224</TD><TD>      // todo... remove this ugly hack!!</TD></TR><TR CLASS="z"><TD CLASS="l">225</TD><TD>      if (&#34;name&#34;.equals(attributeNode.getName())) //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">226</TD><TD>      {</TD></TR><TR CLASS="z"><TD CLASS="l">227</TD><TD>        QualifiedName qualifiedName = new QualifiedName(&#34;todo-compute-targetNamespace&#34;, attributeNode.getValue()); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">228</TD><TD>        match.map.put(&#34;name&#34;, qualifiedName); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">229</TD><TD>      }</TD></TR><TR><TD CLASS="l">230</TD><TD>      //Element element = attributeNode.getOwnerDocument().getDocumentElement();</TD></TR><TR><TD CLASS="l">231</TD><TD>      //if (element.getAttribute(&#34;targetNamespace&#34;))</TD></TR><TR><TD CLASS="l">232</TD><TD>      //{        </TD></TR><TR><TD CLASS="l">233</TD><TD>      //}  </TD></TR><TR CLASS="z"><TD CLASS="l">234</TD><TD>      return match;</TD></TR><TR><TD CLASS="l">235</TD><TD>    }</TD></TR><TR><TD CLASS="l">236</TD><TD> </TD></TR><TR><TD CLASS="l">237</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="2a.html">org.eclipse.wst.xml.core.internal.search.matching</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/16c.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/16c.html
deleted file mode 100644
index bf39fcf..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/16c.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="2b.html">org.eclipse.wst.xml.core.internal.search.quickscan</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">XMLQuickScan.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>XMLQuickScan.java</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/82)</TD><TD CLASS="h">0%   (0/27)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">XMLQuickScan</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/76)</TD><TD CLASS="h">0%   (0/23)</TD></TR><TR><TD CLASS="f"><A HREF="#0">XMLQuickScan (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">getOrCreateReader (): XMLReader</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/21)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR><TD CLASS="f"><A HREF="#3">parseFile (String, XMLQuickScanContentHandler): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/38)</TD><TD CLASS="h">0%   (0/12)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">populateSearchDocument (SearchDocument, PatternMatcher, SearchPattern): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/14)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#5">XMLQuickScan$InternalErrorHandler</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#5">XMLQuickScan$InternalErrorHandler (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#7">error (SAXParseException): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#8">fatalError (SAXParseException): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#9">warning (SAXParseException): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">11</TD><TD>package org.eclipse.wst.xml.core.internal.search.quickscan;</TD></TR><TR><TD CLASS="l">12</TD><TD> </TD></TR><TR><TD CLASS="l">13</TD><TD>import java.io.File;</TD></TR><TR><TD CLASS="l">14</TD><TD>import java.io.FileInputStream;</TD></TR><TR><TD CLASS="l">15</TD><TD>import java.io.IOException;</TD></TR><TR><TD CLASS="l">16</TD><TD>import javax.xml.parsers.SAXParser;</TD></TR><TR><TD CLASS="l">17</TD><TD>import javax.xml.parsers.SAXParserFactory;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.wst.common.core.search.document.SearchDocument;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.wst.common.core.search.pattern.SearchPattern;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.wst.xml.core.internal.search.matching.PatternMatcher;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.xml.sax.ErrorHandler;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.xml.sax.InputSource;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.xml.sax.SAXException;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.xml.sax.SAXParseException;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.xml.sax.XMLReader;</TD></TR><TR><TD CLASS="l"><A NAME="0">26</A></TD><TD> </TD></TR><TR><TD CLASS="l">27</TD><TD>/**</TD></TR><TR><TD CLASS="l">28</TD><TD> * </TD></TR><TR><TD CLASS="l">29</TD><TD> */</TD></TR><TR CLASS="z"><TD CLASS="l">30</TD><TD>public class XMLQuickScan</TD></TR><TR><TD CLASS="l">31</TD><TD>{</TD></TR><TR><TD CLASS="l">32</TD><TD>    /*</TD></TR><TR><TD CLASS="l">33</TD><TD>        public static String getTargetNamespace(String fullFilePath)</TD></TR><TR><TD CLASS="l">34</TD><TD>        {</TD></TR><TR><TD CLASS="l">35</TD><TD>                XMLQuickScanContentHandler handler = new XMLQuickScanContentHandler();</TD></TR><TR><TD CLASS="l">36</TD><TD>                parseFile(fullFilePath, handler);</TD></TR><TR><TD CLASS="l">37</TD><TD>                return handler.getTargetNamespace();</TD></TR><TR><TD CLASS="l">38</TD><TD>        }*/</TD></TR><TR><TD CLASS="l">39</TD><TD>        </TD></TR><TR><TD CLASS="l">40</TD><TD>        /*</TD></TR><TR><TD CLASS="l">41</TD><TD>         * Returns information about matches encountered based on the criteria</TD></TR><TR><TD CLASS="l">42</TD><TD>         * provided.</TD></TR><TR><TD CLASS="l">43</TD><TD>         *</TD></TR><TR><TD CLASS="l">44</TD><TD>        public static boolean hasMatch(String fullFilePath, PatternMatcher matcher, SearchPattern pattern)</TD></TR><TR><TD CLASS="l">45</TD><TD>        {</TD></TR><TR><TD CLASS="l">46</TD><TD>                XMLQuickScanContentHandler handler = new XMLQuickScanContentHandler(matcher, pattern);</TD></TR><TR><TD CLASS="l">47</TD><TD>                parseFile(fullFilePath, handler);</TD></TR><TR><TD CLASS="l">48</TD><TD>                return handler.hasMatch();</TD></TR><TR><TD CLASS="l"><A NAME="4">49</A></TD><TD>        }*/</TD></TR><TR><TD CLASS="l">50</TD><TD>        </TD></TR><TR><TD CLASS="l">51</TD><TD>        public static boolean populateSearchDocument(SearchDocument document, PatternMatcher matcher, SearchPattern pattern)</TD></TR><TR><TD CLASS="l">52</TD><TD>        {</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>                XMLQuickScanContentHandler handler = new XMLQuickScanContentHandler(document, matcher, pattern);</TD></TR><TR CLASS="z"><TD CLASS="l">54</TD><TD>                parseFile(document.getPath(), handler);</TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                return handler.hasMatch();</TD></TR><TR><TD CLASS="l">56</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="2">57</A></TD><TD> </TD></TR><TR><TD CLASS="l">58</TD><TD>    private static XMLReader reader;</TD></TR><TR><TD CLASS="l">59</TD><TD>    private static XMLReader getOrCreateReader()</TD></TR><TR><TD CLASS="l">60</TD><TD>    {</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>       if (reader == null)</TD></TR><TR><TD CLASS="l">62</TD><TD>       {</TD></TR><TR><TD CLASS="l">63</TD><TD>         try</TD></TR><TR><TD CLASS="l">64</TD><TD>         {</TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>          SAXParser parser = SAXParserFactory.newInstance().newSAXParser();</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>          reader = parser.getXMLReader();  </TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>          reader.setFeature(&#34;http://xml.org/sax/features/namespaces&#34;, true); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>          reader.setErrorHandler(new InternalErrorHandler());          </TD></TR><TR><TD CLASS="l">69</TD><TD>         }</TD></TR><TR CLASS="z"><TD CLASS="l">70</TD><TD>         catch (Exception e)</TD></TR><TR><TD CLASS="l">71</TD><TD>         {           </TD></TR><TR><TD CLASS="l">72</TD><TD>         }</TD></TR><TR><TD CLASS="l"><A NAME="5">73</A></TD><TD>       } </TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>       return reader;</TD></TR><TR><TD CLASS="l">75</TD><TD>    }</TD></TR><TR><TD CLASS="l">76</TD><TD>    </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="7">77</A></TD><TD>    static class InternalErrorHandler implements ErrorHandler</TD></TR><TR><TD CLASS="l">78</TD><TD>    {</TD></TR><TR><TD CLASS="l">79</TD><TD>      public void error(SAXParseException exception) throws SAXException</TD></TR><TR><TD CLASS="l">80</TD><TD>      {          </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="8">81</A></TD><TD>      }</TD></TR><TR><TD CLASS="l">82</TD><TD>      </TD></TR><TR><TD CLASS="l">83</TD><TD>      public void fatalError(SAXParseException exception) throws SAXException</TD></TR><TR><TD CLASS="l"><A NAME="9">84</A></TD><TD>      {</TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>      }</TD></TR><TR><TD CLASS="l">86</TD><TD>      public void warning(SAXParseException exception) throws SAXException</TD></TR><TR><TD CLASS="l">87</TD><TD>      {        </TD></TR><TR CLASS="z"><TD CLASS="l">88</TD><TD>      }</TD></TR><TR><TD CLASS="l">89</TD><TD>    }</TD></TR><TR><TD CLASS="l"><A NAME="3">90</A></TD><TD>    </TD></TR><TR><TD CLASS="l">91</TD><TD>        private synchronized static void parseFile(String fullFilePath,</TD></TR><TR><TD CLASS="l">92</TD><TD>                        XMLQuickScanContentHandler handler)</TD></TR><TR><TD CLASS="l">93</TD><TD>        {</TD></TR><TR CLASS="z"><TD CLASS="l">94</TD><TD>                FileInputStream inputStream = null;</TD></TR><TR><TD CLASS="l">95</TD><TD>                try</TD></TR><TR><TD CLASS="l">96</TD><TD>                {            </TD></TR><TR CLASS="z"><TD CLASS="l">97</TD><TD>                        inputStream = new FileInputStream(new File(fullFilePath));</TD></TR><TR CLASS="z"><TD CLASS="l">98</TD><TD>                        XMLReader reader = getOrCreateReader();</TD></TR><TR CLASS="z"><TD CLASS="l">99</TD><TD>            reader.setContentHandler(handler);</TD></TR><TR><TD CLASS="l">100</TD><TD>                        //System.out.println(&#34;parseFile&#34; + reader + &#34; (&#34; +  fullFilePath + &#34;)&#34;);                        </TD></TR><TR CLASS="z"><TD CLASS="l">101</TD><TD>                        reader.parse(new InputSource(inputStream));</TD></TR><TR CLASS="z"><TD CLASS="l">102</TD><TD>                } catch (Exception e)</TD></TR><TR><TD CLASS="l">103</TD><TD>                {</TD></TR><TR><TD CLASS="l">104</TD><TD>                        // skip the file</TD></TR><TR><TD CLASS="l">105</TD><TD>                } </TD></TR><TR CLASS="z"><TD CLASS="l">106</TD><TD>                finally{</TD></TR><TR CLASS="z"><TD CLASS="l">107</TD><TD>                        if(inputStream != null){</TD></TR><TR><TD CLASS="l">108</TD><TD>                                try {</TD></TR><TR CLASS="z"><TD CLASS="l">109</TD><TD>                                        inputStream.close();</TD></TR><TR CLASS="z"><TD CLASS="l">110</TD><TD>                                } catch (IOException e) {</TD></TR><TR><TD CLASS="l">111</TD><TD>                                        // can not do much </TD></TR><TR><TD CLASS="l">112</TD><TD>                                }</TD></TR><TR><TD CLASS="l">113</TD><TD>                        }</TD></TR><TR><TD CLASS="l">114</TD><TD>                        </TD></TR><TR CLASS="z"><TD CLASS="l">115</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">116</TD><TD>        }</TD></TR><TR><TD CLASS="l">117</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="2b.html">org.eclipse.wst.xml.core.internal.search.quickscan</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/16d.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/16d.html
deleted file mode 100644
index 4c6fdf2..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/16d.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="2b.html">org.eclipse.wst.xml.core.internal.search.quickscan</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">XMLQuickScanContentHandler.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>XMLQuickScanContentHandler.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/367)</TD><TD CLASS="h">0%   (0/85)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">XMLQuickScanContentHandler</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/367)</TD><TD CLASS="h">0%   (0/85)</TD></TR><TR><TD CLASS="f"><A HREF="#1">XMLQuickScanContentHandler (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/24)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#0">XMLQuickScanContentHandler (PatternMatcher, SearchPattern): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/30)</TD><TD CLASS="h">0%   (0/9)</TD></TR><TR><TD CLASS="f"><A HREF="#3">XMLQuickScanContentHandler (SearchDocument, PatternMatcher, SearchPattern): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/33)</TD><TD CLASS="h">0%   (0/10)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">endElement (String, String, String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#5">getLocationAttributeName (String): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/14)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">getTargetNamespace (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#7">hasMatch (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">namespaceMatches (String): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#9">setTargetNamespace (String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">startElement (String, String, String, Attributes): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/227)</TD><TD CLASS="h">0%   (0/53)</TD></TR><TR><TD CLASS="f"><A HREF="#b">startPrefixMapping (String, String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/3)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2004, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - Initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">11</TD><TD> </TD></TR><TR><TD CLASS="l">12</TD><TD>package org.eclipse.wst.xml.core.internal.search.quickscan;</TD></TR><TR><TD CLASS="l">13</TD><TD> </TD></TR><TR><TD CLASS="l">14</TD><TD>import java.util.HashMap;</TD></TR><TR><TD CLASS="l">15</TD><TD>import java.util.Map;</TD></TR><TR><TD CLASS="l">16</TD><TD>import java.util.Stack;</TD></TR><TR><TD CLASS="l">17</TD><TD> </TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.wst.common.core.search.document.ComponentDeclarationEntry;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.wst.common.core.search.document.ComponentReferenceEntry;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.wst.common.core.search.document.FileReferenceEntry;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.wst.common.core.search.document.SearchDocument;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.wst.common.core.search.pattern.QualifiedName;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.wst.common.core.search.pattern.SearchPattern;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.wst.xml.core.internal.search.XMLComponentDeclarationPattern;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.wst.xml.core.internal.search.XMLComponentReferencePattern;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.wst.xml.core.internal.search.impl.IXMLSearchConstants;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.wst.xml.core.internal.search.matching.PatternMatcher;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.wst.xml.core.internal.search.matching.SAXSearchElement;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.xml.sax.Attributes;</TD></TR><TR><TD CLASS="l">30</TD><TD>import org.xml.sax.SAXException;</TD></TR><TR><TD CLASS="l">31</TD><TD>import org.xml.sax.helpers.DefaultHandler;</TD></TR><TR><TD CLASS="l">32</TD><TD> </TD></TR><TR><TD CLASS="l">33</TD><TD>/**</TD></TR><TR><TD CLASS="l">34</TD><TD> * This class is a SAX content handler, it should be recycled before scanning a file for the new SearchPattern.</TD></TR><TR><TD CLASS="l">35</TD><TD> *</TD></TR><TR><TD CLASS="l">36</TD><TD> */</TD></TR><TR><TD CLASS="l">37</TD><TD>public class XMLQuickScanContentHandler extends DefaultHandler</TD></TR><TR><TD CLASS="l">38</TD><TD>{</TD></TR><TR CLASS="z"><TD CLASS="l">39</TD><TD>        private Map namespaceMap = new HashMap(); // Map of string prefix keys and namespace</TD></TR><TR CLASS="z"><TD CLASS="l">40</TD><TD>        private String targetNamespace = &#34;&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">41</TD><TD>        </TD></TR><TR><TD CLASS="l">42</TD><TD>        private SearchPattern pattern;</TD></TR><TR><TD CLASS="l">43</TD><TD>        private SearchDocument document;  // we'll add useful entries in the search document as we parsing</TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>        private SAXSearchElement searchElement = new SAXSearchElement();</TD></TR><TR><TD CLASS="l">45</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>        private boolean hasMatch = false;</TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>        private Stack currentPath = new Stack();</TD></TR><TR><TD CLASS="l">48</TD><TD>        private PatternMatcher matcher;</TD></TR><TR><TD CLASS="l">49</TD><TD>        </TD></TR><TR><TD CLASS="l">50</TD><TD>        public static final String XMLSCHEMA_NAMESPACE = &#34;http://www.w3.org/2001/XMLSchema&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l"><A NAME="0">51</A></TD><TD>  public static final String WSDL_NAMESPACE = &#34;http://schemas.xmlsoap.org/wsdl/&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">52</TD><TD> </TD></TR><TR><TD CLASS="l">53</TD><TD>        </TD></TR><TR><TD CLASS="l">54</TD><TD>        public XMLQuickScanContentHandler(PatternMatcher matcher, SearchPattern pattern) {</TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                super();</TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>                this.pattern = pattern;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">57</A></TD><TD>                this.matcher = matcher;</TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>        }</TD></TR><TR><TD CLASS="l">59</TD><TD>        </TD></TR><TR><TD CLASS="l">60</TD><TD>        public XMLQuickScanContentHandler(SearchDocument document, PatternMatcher matcher, SearchPattern pattern) {</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                super();</TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>                this.pattern = pattern;</TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>                this.matcher = matcher;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="1">64</A></TD><TD>                this.document = document;</TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>        }</TD></TR><TR><TD CLASS="l">66</TD><TD>        </TD></TR><TR><TD CLASS="l">67</TD><TD>        public XMLQuickScanContentHandler() {</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>                super();</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>        }</TD></TR><TR><TD CLASS="l">70</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="a">71</A></TD><TD>        public void startElement(String uri, String localName, String qName,</TD></TR><TR><TD CLASS="l">72</TD><TD>                        Attributes attributes) throws SAXException</TD></TR><TR><TD CLASS="l">73</TD><TD>        {        </TD></TR><TR><TD CLASS="l">74</TD><TD>                // Search for targetNamespace if we haven't encountered it yet.</TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>                if (targetNamespace.equals(&#34;&#34;)) //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">76</TD><TD>                {</TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>                        int nAttributes = attributes.getLength();</TD></TR><TR CLASS="z"><TD CLASS="l">78</TD><TD>                        for (int i = 0; i &lt; nAttributes; i++)</TD></TR><TR><TD CLASS="l">79</TD><TD>                        {</TD></TR><TR CLASS="z"><TD CLASS="l">80</TD><TD>                                if (&#34;targetNamespace&#34;.equals(attributes.getQName(i))) //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">81</TD><TD>                                {</TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>                                        targetNamespace = attributes.getValue(i);</TD></TR><TR CLASS="z"><TD CLASS="l">83</TD><TD>                                        break;</TD></TR><TR><TD CLASS="l">84</TD><TD>                                }</TD></TR><TR><TD CLASS="l">85</TD><TD>                        }</TD></TR><TR><TD CLASS="l">86</TD><TD>                }</TD></TR><TR><TD CLASS="l">87</TD><TD>                </TD></TR><TR><TD CLASS="l">88</TD><TD>                // collect link info</TD></TR><TR><TD CLASS="l">89</TD><TD>    </TD></TR><TR><TD CLASS="l">90</TD><TD>    // TODO This code should be refactored to delegate the responsibility to</TD></TR><TR><TD CLASS="l">91</TD><TD>    // detect links between files to the search providers/contributors.</TD></TR><TR><TD CLASS="l">92</TD><TD>    // The current code only handles the XSD and WSDL cases. </TD></TR><TR><TD CLASS="l">93</TD><TD>    </TD></TR><TR CLASS="z"><TD CLASS="l">94</TD><TD>                if(&#34;import&#34;.equals(localName) &amp;&amp; namespaceMatches(uri)){ //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">95</TD><TD>                        FileReferenceEntry documentEntry = new FileReferenceEntry();</TD></TR><TR CLASS="z"><TD CLASS="l">96</TD><TD>                        documentEntry.setCategory(IXMLSearchConstants.REF);</TD></TR><TR CLASS="z"><TD CLASS="l">97</TD><TD>                        documentEntry.setKey(&#34;import&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">98</TD><TD>                        String namespace = attributes.getValue(&#34;namespace&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">99</TD><TD>                        String location = attributes.getValue(getLocationAttributeName(uri)); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">100</TD><TD>                        documentEntry.setPublicIdentifier(namespace);</TD></TR><TR CLASS="z"><TD CLASS="l">101</TD><TD>                        documentEntry.setRelativeFilePath(location);            </TD></TR><TR CLASS="z"><TD CLASS="l">102</TD><TD>                        document.putEntry(documentEntry);</TD></TR><TR><TD CLASS="l">103</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">104</TD><TD>                if((&#34;redefine&#34;.equals(localName)|| &#34;include&#34;.equals(localName)) &amp;&amp; //$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR CLASS="z"><TD CLASS="l">105</TD><TD>                                namespaceMatches(uri)){</TD></TR><TR CLASS="z"><TD CLASS="l">106</TD><TD>                        FileReferenceEntry documentEntry = new FileReferenceEntry();</TD></TR><TR CLASS="z"><TD CLASS="l">107</TD><TD>                        documentEntry.setCategory(IXMLSearchConstants.REF);</TD></TR><TR CLASS="z"><TD CLASS="l">108</TD><TD>                        documentEntry.setKey(&#34;include&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">109</TD><TD>                        String location = attributes.getValue(getLocationAttributeName(uri)); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">110</TD><TD>                        documentEntry.setPublicIdentifier(uri);</TD></TR><TR CLASS="z"><TD CLASS="l">111</TD><TD>                        documentEntry.setRelativeFilePath(location);</TD></TR><TR CLASS="z"><TD CLASS="l">112</TD><TD>                        document.putEntry(documentEntry);</TD></TR><TR><TD CLASS="l">113</TD><TD>                }</TD></TR><TR><TD CLASS="l">114</TD><TD>                </TD></TR><TR><TD CLASS="l">115</TD><TD>                </TD></TR><TR><TD CLASS="l">116</TD><TD>        // issue (cs) you may want to try perf measurements to compate reusing the same</TD></TR><TR><TD CLASS="l">117</TD><TD>        // instance of a SAXSearchElement instead of newing one each time </TD></TR><TR><TD CLASS="l">118</TD><TD>                //XMLSearchPattern.SAXSearchElement searchElement = new XMLSearchPattern.SAXSearchElement();</TD></TR><TR CLASS="z"><TD CLASS="l">119</TD><TD>                searchElement.setElementName(localName);</TD></TR><TR CLASS="z"><TD CLASS="l">120</TD><TD>                searchElement.setElementNamespace(uri);</TD></TR><TR CLASS="z"><TD CLASS="l">121</TD><TD>                searchElement.setAttributes(attributes);</TD></TR><TR CLASS="z"><TD CLASS="l">122</TD><TD>                searchElement.setNamespaceMap(namespaceMap);</TD></TR><TR CLASS="z"><TD CLASS="l">123</TD><TD>                searchElement.setTargetNamespace(targetNamespace);</TD></TR><TR CLASS="z"><TD CLASS="l">124</TD><TD>                if (currentPath.size() &gt; 0)</TD></TR><TR><TD CLASS="l">125</TD><TD>                {</TD></TR><TR CLASS="z"><TD CLASS="l">126</TD><TD>                  String parentName = (String)currentPath.peek();</TD></TR><TR CLASS="z"><TD CLASS="l">127</TD><TD>                  searchElement.setParentName(parentName);</TD></TR><TR><TD CLASS="l">128</TD><TD>                }                        </TD></TR><TR><TD CLASS="l">129</TD><TD>        </TD></TR><TR><TD CLASS="l">130</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">131</TD><TD>                if(matcher != null){</TD></TR><TR CLASS="z"><TD CLASS="l">132</TD><TD>                        if(matcher.matches(pattern, searchElement)){</TD></TR><TR CLASS="z"><TD CLASS="l">133</TD><TD>                                hasMatch = true;</TD></TR><TR CLASS="z"><TD CLASS="l">134</TD><TD>                                if(pattern instanceof XMLComponentReferencePattern){</TD></TR><TR CLASS="z"><TD CLASS="l">135</TD><TD>                                        ComponentReferenceEntry documentEntry = new ComponentReferenceEntry();</TD></TR><TR CLASS="z"><TD CLASS="l">136</TD><TD>                                        documentEntry.setCategory(IXMLSearchConstants.COMPONENT_REF);</TD></TR><TR CLASS="z"><TD CLASS="l">137</TD><TD>                                        QualifiedName name = new QualifiedName(uri, localName);</TD></TR><TR CLASS="z"><TD CLASS="l">138</TD><TD>                                        documentEntry.setKey(name.toString());</TD></TR><TR CLASS="z"><TD CLASS="l">139</TD><TD>                                        documentEntry.setName(name);</TD></TR><TR CLASS="z"><TD CLASS="l">140</TD><TD>                                        document.putEntry(documentEntry);</TD></TR><TR><TD CLASS="l">141</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">142</TD><TD>                                else if(pattern instanceof XMLComponentDeclarationPattern){</TD></TR><TR CLASS="z"><TD CLASS="l">143</TD><TD>                                        ComponentDeclarationEntry documentEntry = new ComponentDeclarationEntry();</TD></TR><TR CLASS="z"><TD CLASS="l">144</TD><TD>                                        documentEntry.setCategory(IXMLSearchConstants.COMPONENT_DECL);</TD></TR><TR CLASS="z"><TD CLASS="l">145</TD><TD>                    QualifiedName name = new QualifiedName(targetNamespace, attributes.getValue(&#34;name&#34;)); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">146</TD><TD>                                        QualifiedName metaName = new QualifiedName(uri, localName);                    </TD></TR><TR CLASS="z"><TD CLASS="l">147</TD><TD>                                        documentEntry.setKey(name.toString());</TD></TR><TR CLASS="z"><TD CLASS="l">148</TD><TD>                    documentEntry.setName(name);</TD></TR><TR CLASS="z"><TD CLASS="l">149</TD><TD>                                        documentEntry.setMetaName(metaName);</TD></TR><TR CLASS="z"><TD CLASS="l">150</TD><TD>                                        document.putEntry(documentEntry);</TD></TR><TR><TD CLASS="l">151</TD><TD>                                }</TD></TR><TR><TD CLASS="l">152</TD><TD>                        }</TD></TR><TR><TD CLASS="l">153</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">154</TD><TD>                currentPath.push(localName); //$NON-NLS-1$                </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="5">155</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">156</TD><TD> </TD></TR><TR><TD CLASS="l">157</TD><TD>  private String getLocationAttributeName(String uri)</TD></TR><TR><TD CLASS="l">158</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">159</TD><TD>    if (XMLSCHEMA_NAMESPACE.equals(uri))</TD></TR><TR><TD CLASS="l">160</TD><TD>    {</TD></TR><TR CLASS="z"><TD CLASS="l">161</TD><TD>      return &#34;schemaLocation&#34;;</TD></TR><TR><TD CLASS="l">162</TD><TD>    }</TD></TR><TR><TD CLASS="l">163</TD><TD>    </TD></TR><TR CLASS="z"><TD CLASS="l">164</TD><TD>    else if (WSDL_NAMESPACE.equals(uri))</TD></TR><TR><TD CLASS="l">165</TD><TD>    {</TD></TR><TR CLASS="z"><TD CLASS="l">166</TD><TD>      return &#34;location&#34;;</TD></TR><TR><TD CLASS="l">167</TD><TD>    }</TD></TR><TR><TD CLASS="l">168</TD><TD>    </TD></TR><TR CLASS="z"><TD CLASS="l">169</TD><TD>    return &#34;&#34;;</TD></TR><TR><TD CLASS="l"><A NAME="8">170</A></TD><TD>  }</TD></TR><TR><TD CLASS="l">171</TD><TD> </TD></TR><TR><TD CLASS="l">172</TD><TD>  private boolean namespaceMatches(String uri)</TD></TR><TR><TD CLASS="l">173</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">174</TD><TD>    return XMLSCHEMA_NAMESPACE.equals(uri) ||</TD></TR><TR CLASS="z"><TD CLASS="l">175</TD><TD>          WSDL_NAMESPACE.equals(uri);</TD></TR><TR><TD CLASS="l">176</TD><TD>  }</TD></TR><TR><TD CLASS="l"><A NAME="4">177</A></TD><TD>        </TD></TR><TR><TD CLASS="l">178</TD><TD>        public void endElement(String uri, String localName, String qName)</TD></TR><TR><TD CLASS="l">179</TD><TD>                        throws SAXException</TD></TR><TR><TD CLASS="l">180</TD><TD>        {</TD></TR><TR CLASS="z"><TD CLASS="l">181</TD><TD>                currentPath.pop();</TD></TR><TR CLASS="z"><TD CLASS="l">182</TD><TD>        }</TD></TR><TR><TD CLASS="l">183</TD><TD> </TD></TR><TR><TD CLASS="l">184</TD><TD>        /**</TD></TR><TR><TD CLASS="l">185</TD><TD>         * Callback for SAX parser</TD></TR><TR><TD CLASS="l">186</TD><TD>         * </TD></TR><TR><TD CLASS="l">187</TD><TD>         * @see org.xml.sax.ContentHandler#startPrefixMapping(java.lang.String,</TD></TR><TR><TD CLASS="l">188</TD><TD>         *      java.lang.String)</TD></TR><TR><TD CLASS="l"><A NAME="b">189</A></TD><TD>         */</TD></TR><TR><TD CLASS="l">190</TD><TD>        public void startPrefixMapping(String arg0, String arg1)</TD></TR><TR><TD CLASS="l">191</TD><TD>                        throws SAXException</TD></TR><TR><TD CLASS="l">192</TD><TD>        {</TD></TR><TR CLASS="z"><TD CLASS="l">193</TD><TD>                if (arg0 != null &amp;&amp; arg0.length() &gt; 0)</TD></TR><TR><TD CLASS="l">194</TD><TD>                {</TD></TR><TR CLASS="z"><TD CLASS="l">195</TD><TD>                        this.namespaceMap.put(arg0, arg1);</TD></TR><TR><TD CLASS="l"><A NAME="6">196</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">197</TD><TD>        }</TD></TR><TR><TD CLASS="l">198</TD><TD> </TD></TR><TR><TD CLASS="l">199</TD><TD>        public String getTargetNamespace() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="9">200</A></TD><TD>                return targetNamespace;</TD></TR><TR><TD CLASS="l">201</TD><TD>        }</TD></TR><TR><TD CLASS="l">202</TD><TD> </TD></TR><TR><TD CLASS="l">203</TD><TD>        public void setTargetNamespace(String targetNamespace) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="7">204</A></TD><TD>                this.targetNamespace = targetNamespace;</TD></TR><TR CLASS="z"><TD CLASS="l">205</TD><TD>        }</TD></TR><TR><TD CLASS="l">206</TD><TD> </TD></TR><TR><TD CLASS="l">207</TD><TD>        public boolean hasMatch() {</TD></TR><TR CLASS="z"><TD CLASS="l">208</TD><TD>                return hasMatch;</TD></TR><TR><TD CLASS="l">209</TD><TD>        }</TD></TR><TR><TD CLASS="l">210</TD><TD> </TD></TR><TR><TD CLASS="l">211</TD><TD>        </TD></TR><TR><TD CLASS="l">212</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="2b.html">org.eclipse.wst.xml.core.internal.search.quickscan</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/16e.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/16e.html
deleted file mode 100644
index b22cb17..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/16e.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="2c.html">org.eclipse.wst.xml.core.internal.tasks</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">XMLFileTaskScanner.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>XMLFileTaskScanner.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/3)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">XMLFileTaskScanner</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#0">XMLFileTaskScanner (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">isCommentRegion (IStructuredDocumentRegion, ITextRegion): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/1)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2005 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.core.internal.tasks;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.wst.sse.core.internal.tasks.StructuredFileTaskScanner;</TD></TR><TR><TD CLASS="l"><A NAME="0">18</A></TD><TD>import org.eclipse.wst.xml.core.internal.regions.DOMRegionContext;</TD></TR><TR><TD CLASS="l">19</TD><TD> </TD></TR><TR><TD CLASS="l">20</TD><TD>public class XMLFileTaskScanner extends StructuredFileTaskScanner {</TD></TR><TR><TD CLASS="l">21</TD><TD>        public XMLFileTaskScanner() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">22</A></TD><TD>                super();</TD></TR><TR CLASS="z"><TD CLASS="l">23</TD><TD>        }</TD></TR><TR><TD CLASS="l">24</TD><TD> </TD></TR><TR><TD CLASS="l">25</TD><TD>        protected boolean isCommentRegion(IStructuredDocumentRegion region, ITextRegion textRegion) {</TD></TR><TR CLASS="z"><TD CLASS="l">26</TD><TD>                return textRegion.getType().equals(DOMRegionContext.XML_COMMENT_TEXT);</TD></TR><TR><TD CLASS="l">27</TD><TD>        }</TD></TR><TR><TD CLASS="l">28</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="2c.html">org.eclipse.wst.xml.core.internal.tasks</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/16f.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/16f.html
deleted file mode 100644
index cbdc552..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/16f.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="2d.html">org.eclipse.wst.xml.core.internal.validate</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">AbstractPropagatingValidator.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>AbstractPropagatingValidator.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/60)</TD><TD CLASS="h">0%   (0/22)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">AbstractPropagatingValidator</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/60)</TD><TD CLASS="h">0%   (0/22)</TD></TR><TR><TD CLASS="f"><A HREF="#0">AbstractPropagatingValidator (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">propagateToChildElements (ValidationComponent, Node): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/43)</TD><TD CLASS="h">0%   (0/15)</TD></TR><TR><TD CLASS="f"><A HREF="#3">validate (IndexedRegion): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/14)</TD><TD CLASS="h">0%   (0/5)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2008 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.core.internal.validate;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.wst.sse.core.internal.validate.ValidationAdapter;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.w3c.dom.Node;</TD></TR><TR><TD CLASS="l">19</TD><TD> </TD></TR><TR><TD CLASS="l">20</TD><TD> </TD></TR><TR><TD CLASS="l">21</TD><TD>public abstract class AbstractPropagatingValidator extends ValidationComponent {</TD></TR><TR><TD CLASS="l">22</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="0">23</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">24</TD><TD>         * Constructor for AbstractPropagatingValidator.</TD></TR><TR><TD CLASS="l">25</TD><TD>         */</TD></TR><TR><TD CLASS="l">26</TD><TD>        public AbstractPropagatingValidator() {</TD></TR><TR CLASS="z"><TD CLASS="l">27</TD><TD>                super();</TD></TR><TR CLASS="z"><TD CLASS="l">28</TD><TD>        }</TD></TR><TR><TD CLASS="l">29</TD><TD> </TD></TR><TR><TD CLASS="l">30</TD><TD>        protected abstract ValidationComponent getPropagatee();</TD></TR><TR><TD CLASS="l">31</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="3">32</A></TD><TD>        protected abstract ValidationAdapter getValidator();</TD></TR><TR><TD CLASS="l">33</TD><TD> </TD></TR><TR><TD CLASS="l">34</TD><TD> </TD></TR><TR><TD CLASS="l">35</TD><TD>        public void validate(IndexedRegion node) {</TD></TR><TR CLASS="z"><TD CLASS="l">36</TD><TD>                if (node == null)</TD></TR><TR CLASS="z"><TD CLASS="l">37</TD><TD>                        return;</TD></TR><TR CLASS="z"><TD CLASS="l">38</TD><TD>                getValidator().validate(node);</TD></TR><TR><TD CLASS="l">39</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">40</A></TD><TD>                propagateToChildElements(getPropagatee(), (Node) node);</TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>        }</TD></TR><TR><TD CLASS="l">42</TD><TD> </TD></TR><TR><TD CLASS="l">43</TD><TD>        private void propagateToChildElements(ValidationComponent validator, Node parent) {</TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>                if (parent == null)</TD></TR><TR CLASS="z"><TD CLASS="l">45</TD><TD>                        return;</TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>                Class clazz = validator.getClass();</TD></TR><TR><TD CLASS="l">47</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">48</TD><TD>                Node child = parent.getFirstChild();</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>                while (child != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">50</TD><TD>                        if (child.getNodeType() == Node.ELEMENT_NODE) {</TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>                                INodeNotifier notifier = (INodeNotifier) child;</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                                ValidationAdapter va = (ValidationAdapter) notifier.getExistingAdapter(clazz);</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>                                if (va == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">54</TD><TD>                                        notifier.addAdapter(validator);</TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                                        va = validator;</TD></TR><TR><TD CLASS="l">56</TD><TD>                                }</TD></TR><TR><TD CLASS="l">57</TD><TD>                                // bug 143213 - Can't batch validate open HTML files when</TD></TR><TR><TD CLASS="l">58</TD><TD>                                // as-you-type validation is enabled</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>                                va.setReporter(validator.getReporter());</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                                va.validate((IndexedRegion) child);</TD></TR><TR><TD CLASS="l">61</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>                        child = child.getNextSibling();</TD></TR><TR><TD CLASS="l">63</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>        }</TD></TR><TR><TD CLASS="l">65</TD><TD> </TD></TR><TR><TD CLASS="l">66</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="2d.html">org.eclipse.wst.xml.core.internal.validate</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/17.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/17.html
deleted file mode 100644
index 5773c07..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/17.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR PACKAGE [<SPAN CLASS="in">org.eclipse.wst.sse.ui.internal.provisional.extensions</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>org.eclipse.wst.sse.ui.internal.provisional.extensions</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/227)</TD><TD CLASS="h">0%   (0/56)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY SOURCE FILE</H3><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR CLASS="o"><TD><A HREF="133.html">ConfigurationPointCalculator.java</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/227)</TD><TD CLASS="h">0%   (0/56)</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/170.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/170.html
deleted file mode 100644
index 65f6c01..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/170.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="2d.html">org.eclipse.wst.xml.core.internal.validate</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">Propagator.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>Propagator.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/51)</TD><TD CLASS="h">0%   (0/17)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">Propagator</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/51)</TD><TD CLASS="h">0%   (0/17)</TD></TR><TR><TD CLASS="f"><A HREF="#1">Propagator (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#0">propagateToChildElements (ValidationComponent, Node): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/48)</TD><TD CLASS="h">0%   (0/15)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2007 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.core.internal.validate;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.wst.sse.core.internal.validate.ValidationAdapter;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.w3c.dom.Node;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.w3c.dom.NodeList;</TD></TR><TR><TD CLASS="l">20</TD><TD> </TD></TR><TR><TD CLASS="l">21</TD><TD>/**</TD></TR><TR><TD CLASS="l">22</TD><TD> * @deprecated since 2.0 M5 - if propogateToChildElement is needed, just copy</TD></TR><TR><TD CLASS="l">23</TD><TD> *             method to your own class</TD></TR><TR><TD CLASS="l"><A NAME="0">24</A></TD><TD> */</TD></TR><TR><TD CLASS="l">25</TD><TD>public class Propagator {</TD></TR><TR><TD CLASS="l">26</TD><TD> </TD></TR><TR><TD CLASS="l">27</TD><TD>        public static void propagateToChildElements(ValidationComponent validator, Node parent) {</TD></TR><TR CLASS="z"><TD CLASS="l">28</TD><TD>                if (parent == null)</TD></TR><TR CLASS="z"><TD CLASS="l">29</TD><TD>                        return;</TD></TR><TR CLASS="z"><TD CLASS="l">30</TD><TD>                Class clazz = validator.getClass();</TD></TR><TR><TD CLASS="l">31</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">32</TD><TD>                NodeList children = parent.getChildNodes();</TD></TR><TR CLASS="z"><TD CLASS="l">33</TD><TD>                for (int i = 0; i &lt; children.getLength(); i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">34</TD><TD>                        Node child = children.item(i);</TD></TR><TR CLASS="z"><TD CLASS="l">35</TD><TD>                        if (child == null || child.getNodeType() != Node.ELEMENT_NODE)</TD></TR><TR CLASS="z"><TD CLASS="l">36</TD><TD>                                continue;</TD></TR><TR><TD CLASS="l">37</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">38</TD><TD>                        INodeNotifier notifier = (INodeNotifier) child;</TD></TR><TR CLASS="z"><TD CLASS="l">39</TD><TD>                        ValidationAdapter va = (ValidationAdapter) notifier.getExistingAdapter(clazz);</TD></TR><TR CLASS="z"><TD CLASS="l">40</TD><TD>                        if (va == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>                                notifier.addAdapter(validator);</TD></TR><TR CLASS="z"><TD CLASS="l">42</TD><TD>                                va = validator;</TD></TR><TR><TD CLASS="l">43</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>                        va.validate((IndexedRegion) child);</TD></TR><TR><TD CLASS="l">45</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>        }</TD></TR><TR><TD CLASS="l">47</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="1">48</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">49</TD><TD>         * Propagator is just a placeholder of utilities. Don't instantiate.</TD></TR><TR><TD CLASS="l">50</TD><TD>         */</TD></TR><TR><TD CLASS="l">51</TD><TD>        private Propagator() {</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                super();</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>        }</TD></TR><TR><TD CLASS="l">54</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="2d.html">org.eclipse.wst.xml.core.internal.validate</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/171.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/171.html
deleted file mode 100644
index 86b4e49..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/171.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="2d.html">org.eclipse.wst.xml.core.internal.validate</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">ValidationComponent.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>ValidationComponent.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/35)</TD><TD CLASS="h">0%   (0/8)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">ValidationComponent</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/35)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR><TD CLASS="f"><A HREF="#0">ValidationComponent (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">getReporter (): ValidationReporter</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#3">isAdapterForType (Object): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/21)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">notifyChanged (INodeNotifier, int, Object, Object, Object, int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#5">setReporter (ValidationReporter): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2007 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.core.internal.validate;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD> </TD></TR><TR><TD CLASS="l">16</TD><TD> </TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.wst.sse.core.internal.validate.ValidationAdapter;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.wst.sse.core.internal.validate.ValidationReporter;</TD></TR><TR><TD CLASS="l">19</TD><TD> </TD></TR><TR><TD CLASS="l">20</TD><TD>public abstract class ValidationComponent implements ValidationAdapter {</TD></TR><TR><TD CLASS="l">21</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">22</TD><TD>        protected ValidationReporter reporter = null;</TD></TR><TR><TD CLASS="l">23</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="0">24</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">25</TD><TD>         * ValidationComponent constructor comment.</TD></TR><TR><TD CLASS="l">26</TD><TD>         */</TD></TR><TR><TD CLASS="l">27</TD><TD>        public ValidationComponent() {</TD></TR><TR CLASS="z"><TD CLASS="l">28</TD><TD>                super();</TD></TR><TR CLASS="z"><TD CLASS="l">29</TD><TD>        }</TD></TR><TR><TD CLASS="l">30</TD><TD> </TD></TR><TR><TD CLASS="l">31</TD><TD>        /**</TD></TR><TR><TD CLASS="l"><A NAME="3">32</A></TD><TD>         * Allowing the INodeAdapter to compare itself against the type allows it</TD></TR><TR><TD CLASS="l">33</TD><TD>         * to return true in more than one case.</TD></TR><TR><TD CLASS="l">34</TD><TD>         */</TD></TR><TR><TD CLASS="l">35</TD><TD>        public boolean isAdapterForType(Object type) {</TD></TR><TR CLASS="z"><TD CLASS="l">36</TD><TD>                return (type == ValidationAdapter.class);</TD></TR><TR><TD CLASS="l">37</TD><TD>        }</TD></TR><TR><TD CLASS="l">38</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="4">39</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">40</TD><TD>         */</TD></TR><TR><TD CLASS="l">41</TD><TD>        public void notifyChanged(org.eclipse.wst.sse.core.internal.provisional.INodeNotifier notifier, int eventType, Object changedFeature, Object oldValue, Object newValue, int pos) {</TD></TR><TR><TD CLASS="l">42</TD><TD>                // This method will be implemented in the V2.</TD></TR><TR CLASS="z"><TD CLASS="l">43</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="5">44</A></TD><TD> </TD></TR><TR><TD CLASS="l">45</TD><TD>        /**</TD></TR><TR><TD CLASS="l">46</TD><TD>         */</TD></TR><TR><TD CLASS="l">47</TD><TD>        public void setReporter(ValidationReporter reporter) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">48</A></TD><TD>                this.reporter = reporter;</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>        }</TD></TR><TR><TD CLASS="l">50</TD><TD> </TD></TR><TR><TD CLASS="l">51</TD><TD>        ValidationReporter getReporter() {</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                return this.reporter;</TD></TR><TR><TD CLASS="l">53</TD><TD>        }</TD></TR><TR><TD CLASS="l">54</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="2d.html">org.eclipse.wst.xml.core.internal.validate</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/172.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/172.html
deleted file mode 100644
index a92c673..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/172.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="2e.html">org.eclipse.wst.xml.core.internal.validation</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">ValidatorHelper.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>ValidatorHelper.java</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/26)</TD><TD CLASS="h">0%   (0/432)</TD><TD CLASS="h">0%   (0/115)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">ValidatorHelper</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/127)</TD><TD CLASS="h">0%   (0/32)</TD></TR><TR><TD CLASS="f"><A HREF="#0">ValidatorHelper (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/23)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">computeValidationInformation (String, Reader, URIResolver): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/18)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#3">createXMLReader (String): XMLReader</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/46)</TD><TD CLASS="h">0%   (0/11)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">replace (String, String, String): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/40)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#5">ValidatorHelper$1</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/21)</TD><TD CLASS="h">0%   (0/11)</TD></TR><TR><TD CLASS="f"><A HREF="#5">ValidatorHelper$1 (ValidatorHelper): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#7">comment (char [], int, int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#8">endCDATA (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#9">endDTD (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#a">endEntity (String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#b">startCDATA (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#c">startDTD (String, String, String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#d">startEntity (String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#e">ValidatorHelper$InternalErrorHandler</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#e">ValidatorHelper$InternalErrorHandler (ValidatorHelper): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#10">error (SAXParseException): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#11">fatalError (SAXParseException): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#12">warning (SAXParseException): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#13">ValidatorHelper$MyContentHandler</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/275)</TD><TD CLASS="h">0%   (0/68)</TD></TR><TR><TD CLASS="f"><A HREF="#13">ValidatorHelper$MyContentHandler (ValidatorHelper, String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#15">elementDecl (String, String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#16">error (SAXParseException): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#17">fatalError (SAXParseException): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#18">getPrefix (String): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/16)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#19">getPrefixedName (String, String): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/18)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#1a">getSchemaLocationForNamespace (String, String): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/35)</TD><TD CLASS="h">0%   (0/10)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#1b">getUnprefixedName (String): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#1c">startElement (String, String, String, Attributes): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/168)</TD><TD CLASS="h">0%   (0/39)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#1d">warning (SAXParseException): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR CLASS="z"><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2008 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">11</TD><TD> </TD></TR><TR><TD CLASS="l">12</TD><TD>package org.eclipse.wst.xml.core.internal.validation;</TD></TR><TR><TD CLASS="l">13</TD><TD> </TD></TR><TR><TD CLASS="l">14</TD><TD>import java.io.InputStream;</TD></TR><TR><TD CLASS="l">15</TD><TD>import java.io.Reader;</TD></TR><TR><TD CLASS="l">16</TD><TD>import java.net.URL;</TD></TR><TR><TD CLASS="l">17</TD><TD>import java.util.List;</TD></TR><TR><TD CLASS="l">18</TD><TD>import java.util.Vector;</TD></TR><TR><TD CLASS="l">19</TD><TD> </TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.wst.common.uriresolver.internal.provisional.URIResolver;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.wst.common.uriresolver.internal.provisional.URIResolverPlugin;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.wst.common.uriresolver.internal.util.URIHelper;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.xml.sax.Attributes;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.xml.sax.InputSource;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.xml.sax.SAXException;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.xml.sax.SAXParseException;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.xml.sax.XMLReader;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.xml.sax.ext.LexicalHandler;</TD></TR><TR><TD CLASS="l">29</TD><TD> </TD></TR><TR><TD CLASS="l">30</TD><TD>import com.ibm.icu.util.StringTokenizer;</TD></TR><TR><TD CLASS="l">31</TD><TD> </TD></TR><TR><TD CLASS="l">32</TD><TD>/**</TD></TR><TR><TD CLASS="l">33</TD><TD> * A helper class for the XML validator.</TD></TR><TR><TD CLASS="l">34</TD><TD> * </TD></TR><TR><TD CLASS="l">35</TD><TD> * @author Craig Salter, IBM</TD></TR><TR><TD CLASS="l">36</TD><TD> * @author Lawrence Mandel, IBM</TD></TR><TR><TD CLASS="l">37</TD><TD> */</TD></TR><TR><TD CLASS="l">38</TD><TD>public class ValidatorHelper</TD></TR><TR><TD CLASS="l">39</TD><TD>{                           </TD></TR><TR CLASS="z"><TD CLASS="l">40</TD><TD>  public List namespaceURIList = new Vector();</TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>  public boolean isGrammarEncountered = false;    </TD></TR><TR CLASS="z"><TD CLASS="l">42</TD><TD>  public boolean isDTDEncountered = false;</TD></TR><TR CLASS="z"><TD CLASS="l">43</TD><TD>  public boolean isNamespaceEncountered = false;</TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>  public String schemaLocationString = &#34;&#34;; //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">45</TD><TD>  public int numDTDElements = 0;</TD></TR><TR><TD CLASS="l"><A NAME="0">46</A></TD><TD> </TD></TR><TR><TD CLASS="l">47</TD><TD>  /**</TD></TR><TR><TD CLASS="l">48</TD><TD>   * Constructor.</TD></TR><TR><TD CLASS="l">49</TD><TD>   */</TD></TR><TR CLASS="z"><TD CLASS="l">50</TD><TD>  public ValidatorHelper()</TD></TR><TR><TD CLASS="l">51</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>  }</TD></TR><TR><TD CLASS="l">53</TD><TD> </TD></TR><TR><TD CLASS="l">54</TD><TD>  /**</TD></TR><TR><TD CLASS="l">55</TD><TD>   * Create an XML Reader.</TD></TR><TR><TD CLASS="l">56</TD><TD>   * </TD></TR><TR><TD CLASS="l">57</TD><TD>   * @return An XML Reader if one can be created or null.</TD></TR><TR><TD CLASS="l"><A NAME="3">58</A></TD><TD>   * @throws Exception</TD></TR><TR><TD CLASS="l">59</TD><TD>   */</TD></TR><TR><TD CLASS="l">60</TD><TD>  protected XMLReader createXMLReader(String uri) throws Exception</TD></TR><TR><TD CLASS="l">61</TD><TD>  {     </TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>    XMLReader reader = null;</TD></TR><TR><TD CLASS="l">63</TD><TD>    </TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>    reader = new org.apache.xerces.parsers.SAXParser();     </TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>    reader.setFeature(&#34;http://apache.org/xml/features/continue-after-fatal-error&#34;, false); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>    reader.setFeature(&#34;http://xml.org/sax/features/namespace-prefixes&#34;, true); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>    reader.setFeature(&#34;http://xml.org/sax/features/namespaces&#34;, false); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="5">68</A></TD><TD>    reader.setFeature(&#34;http://apache.org/xml/features/nonvalidating/load-external-dtd&#34;, false); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>    reader.setContentHandler(new MyContentHandler(uri));</TD></TR><TR CLASS="z"><TD CLASS="l">70</TD><TD>    reader.setErrorHandler(new InternalErrorHandler()); </TD></TR><TR><TD CLASS="l">71</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="c">72</A></TD><TD>    LexicalHandler lexicalHandler = new LexicalHandler()</TD></TR><TR><TD CLASS="l">73</TD><TD>    {      </TD></TR><TR><TD CLASS="l">74</TD><TD>      public void startDTD (String name, String publicId, String systemId)</TD></TR><TR><TD CLASS="l">75</TD><TD>      {</TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>        isGrammarEncountered = true;   </TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>        isDTDEncountered = true;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="9">78</A></TD><TD>      }</TD></TR><TR><TD CLASS="l">79</TD><TD> </TD></TR><TR><TD CLASS="l">80</TD><TD>      public void endDTD() throws SAXException</TD></TR><TR><TD CLASS="l">81</TD><TD>      {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="d">82</A></TD><TD>      }</TD></TR><TR><TD CLASS="l">83</TD><TD> </TD></TR><TR><TD CLASS="l">84</TD><TD>      public void startEntity(String name) throws SAXException</TD></TR><TR><TD CLASS="l">85</TD><TD>      {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="a">86</A></TD><TD>      }</TD></TR><TR><TD CLASS="l">87</TD><TD> </TD></TR><TR><TD CLASS="l">88</TD><TD>      public void endEntity(String name) throws SAXException</TD></TR><TR><TD CLASS="l">89</TD><TD>      {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="b">90</A></TD><TD>      }</TD></TR><TR><TD CLASS="l">91</TD><TD> </TD></TR><TR><TD CLASS="l">92</TD><TD>      public void startCDATA() throws SAXException</TD></TR><TR><TD CLASS="l">93</TD><TD>      {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="8">94</A></TD><TD>      }</TD></TR><TR><TD CLASS="l">95</TD><TD> </TD></TR><TR><TD CLASS="l">96</TD><TD>      public void endCDATA() throws SAXException</TD></TR><TR><TD CLASS="l">97</TD><TD>      {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="7">98</A></TD><TD>      }</TD></TR><TR><TD CLASS="l">99</TD><TD> </TD></TR><TR><TD CLASS="l">100</TD><TD>      public void comment (char ch[], int start, int length) throws SAXException</TD></TR><TR><TD CLASS="l">101</TD><TD>      {</TD></TR><TR CLASS="z"><TD CLASS="l">102</TD><TD>      }</TD></TR><TR><TD CLASS="l">103</TD><TD>    };</TD></TR><TR CLASS="z"><TD CLASS="l">104</TD><TD>    reader.setProperty(&#34;http://xml.org/sax/properties/lexical-handler&#34;, lexicalHandler); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">105</TD><TD>    </TD></TR><TR CLASS="z"><TD CLASS="l">106</TD><TD>    return reader;</TD></TR><TR><TD CLASS="l">107</TD><TD>  }  </TD></TR><TR><TD CLASS="l">108</TD><TD> </TD></TR><TR><TD CLASS="l">109</TD><TD>  /**</TD></TR><TR><TD CLASS="l">110</TD><TD>   * An error handler to suppress error and warning information.</TD></TR><TR><TD CLASS="l">111</TD><TD>   */</TD></TR><TR><TD CLASS="l"><A NAME="e">112</A></TD><TD>  private class InternalErrorHandler implements org.xml.sax.ErrorHandler</TD></TR><TR><TD CLASS="l">113</TD><TD>  {</TD></TR><TR><TD CLASS="l">114</TD><TD>        public InternalErrorHandler()</TD></TR><TR><TD CLASS="l">115</TD><TD>        {</TD></TR><TR CLASS="z"><TD CLASS="l">116</TD><TD>          super();</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="10">117</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">118</TD><TD>        </TD></TR><TR><TD CLASS="l">119</TD><TD>    public void error(SAXParseException exception) throws SAXException</TD></TR><TR><TD CLASS="l">120</TD><TD>    {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="11">121</A></TD><TD>    }</TD></TR><TR><TD CLASS="l">122</TD><TD> </TD></TR><TR><TD CLASS="l">123</TD><TD>    public void fatalError(SAXParseException exception) throws SAXException</TD></TR><TR><TD CLASS="l">124</TD><TD>    {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="12">125</A></TD><TD>    }</TD></TR><TR><TD CLASS="l">126</TD><TD> </TD></TR><TR><TD CLASS="l">127</TD><TD>    public void warning(SAXParseException exception) throws SAXException</TD></TR><TR><TD CLASS="l">128</TD><TD>    {</TD></TR><TR CLASS="z"><TD CLASS="l">129</TD><TD>    }</TD></TR><TR><TD CLASS="l">130</TD><TD>  }</TD></TR><TR><TD CLASS="l">131</TD><TD> </TD></TR><TR><TD CLASS="l">132</TD><TD> </TD></TR><TR><TD CLASS="l">133</TD><TD>  /**</TD></TR><TR><TD CLASS="l">134</TD><TD>   * Figures out the information needed for validation.</TD></TR><TR><TD CLASS="l">135</TD><TD>   * </TD></TR><TR><TD CLASS="l">136</TD><TD>   * @param uri The uri of the file to validate.</TD></TR><TR><TD CLASS="l">137</TD><TD>   * @param uriResolver A helper to resolve locations.</TD></TR><TR><TD CLASS="l">138</TD><TD>   */</TD></TR><TR><TD CLASS="l"><A NAME="2">139</A></TD><TD>  public void computeValidationInformation(String uri, Reader characterStream, URIResolver uriResolver)</TD></TR><TR><TD CLASS="l">140</TD><TD>  {</TD></TR><TR><TD CLASS="l">141</TD><TD>    try</TD></TR><TR><TD CLASS="l">142</TD><TD>    {</TD></TR><TR CLASS="z"><TD CLASS="l">143</TD><TD>      XMLReader reader = createXMLReader(uri);  </TD></TR><TR CLASS="z"><TD CLASS="l">144</TD><TD>      InputSource inputSource = new InputSource(uri);</TD></TR><TR CLASS="z"><TD CLASS="l">145</TD><TD>      inputSource.setCharacterStream(characterStream);</TD></TR><TR CLASS="z"><TD CLASS="l">146</TD><TD>      reader.parse(inputSource);</TD></TR><TR><TD CLASS="l">147</TD><TD>    }</TD></TR><TR CLASS="z"><TD CLASS="l">148</TD><TD>    catch (Exception e)</TD></TR><TR><TD CLASS="l">149</TD><TD>    {     </TD></TR><TR><TD CLASS="l">150</TD><TD>      //System.out.println(e);</TD></TR><TR><TD CLASS="l">151</TD><TD>    }</TD></TR><TR CLASS="z"><TD CLASS="l">152</TD><TD>  }</TD></TR><TR><TD CLASS="l">153</TD><TD>  </TD></TR><TR><TD CLASS="l">154</TD><TD> </TD></TR><TR><TD CLASS="l">155</TD><TD> </TD></TR><TR><TD CLASS="l">156</TD><TD>  /**</TD></TR><TR><TD CLASS="l">157</TD><TD>   * Handle the content while parsing the file.</TD></TR><TR><TD CLASS="l">158</TD><TD>   */</TD></TR><TR><TD CLASS="l">159</TD><TD>  class MyContentHandler extends org.xml.sax.helpers.DefaultHandler</TD></TR><TR><TD CLASS="l">160</TD><TD>  {      </TD></TR><TR><TD CLASS="l">161</TD><TD>    /* (non-Javadoc)</TD></TR><TR><TD CLASS="l">162</TD><TD>     * @see org.xml.sax.ErrorHandler#error(org.xml.sax.SAXParseException)</TD></TR><TR><TD CLASS="l"><A NAME="13">163</A></TD><TD>     */</TD></TR><TR CLASS="z"><TD CLASS="l">164</TD><TD>    boolean isRootElement = true;</TD></TR><TR><TD CLASS="l">165</TD><TD>    String baseURI;</TD></TR><TR><TD CLASS="l">166</TD><TD>    </TD></TR><TR CLASS="z"><TD CLASS="l">167</TD><TD>    MyContentHandler(String uri)</TD></TR><TR><TD CLASS="l">168</TD><TD>    {</TD></TR><TR CLASS="z"><TD CLASS="l">169</TD><TD>      this.baseURI = uri;  </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="16">170</A></TD><TD>    }</TD></TR><TR><TD CLASS="l">171</TD><TD>    </TD></TR><TR><TD CLASS="l">172</TD><TD>    public void error(SAXParseException e) throws SAXException</TD></TR><TR><TD CLASS="l">173</TD><TD>    {</TD></TR><TR CLASS="z"><TD CLASS="l">174</TD><TD>    }</TD></TR><TR><TD CLASS="l">175</TD><TD>    /* (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="17">176</A></TD><TD>     * @see org.xml.sax.ErrorHandler#fatalError(org.xml.sax.SAXParseException)</TD></TR><TR><TD CLASS="l">177</TD><TD>     */</TD></TR><TR><TD CLASS="l">178</TD><TD>    public void fatalError(SAXParseException e) throws SAXException</TD></TR><TR><TD CLASS="l">179</TD><TD>    {</TD></TR><TR CLASS="z"><TD CLASS="l">180</TD><TD>    }</TD></TR><TR><TD CLASS="l">181</TD><TD>    /* (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="1d">182</A></TD><TD>     * @see org.xml.sax.ErrorHandler#warning(org.xml.sax.SAXParseException)</TD></TR><TR><TD CLASS="l">183</TD><TD>     */</TD></TR><TR><TD CLASS="l">184</TD><TD>    public void warning(SAXParseException e) throws SAXException</TD></TR><TR><TD CLASS="l"><A NAME="18">185</A></TD><TD>    {</TD></TR><TR CLASS="z"><TD CLASS="l">186</TD><TD>    }</TD></TR><TR><TD CLASS="l">187</TD><TD>    public String getPrefix(String name)</TD></TR><TR><TD CLASS="l">188</TD><TD>    {</TD></TR><TR CLASS="z"><TD CLASS="l">189</TD><TD>      String prefix = null;</TD></TR><TR CLASS="z"><TD CLASS="l">190</TD><TD>      int index = name.indexOf(&#34;:&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">191</TD><TD>      if (index != -1)</TD></TR><TR><TD CLASS="l">192</TD><TD>      {</TD></TR><TR CLASS="z"><TD CLASS="l">193</TD><TD>        prefix = name.substring(0, index);</TD></TR><TR><TD CLASS="l">194</TD><TD>      }</TD></TR><TR CLASS="z"><TD CLASS="l">195</TD><TD>      return prefix;</TD></TR><TR><TD CLASS="l"><A NAME="1b">196</A></TD><TD>    }    </TD></TR><TR><TD CLASS="l">197</TD><TD>        </TD></TR><TR><TD CLASS="l">198</TD><TD>    public String getUnprefixedName(String name)</TD></TR><TR><TD CLASS="l">199</TD><TD>    {</TD></TR><TR CLASS="z"><TD CLASS="l">200</TD><TD>      int index = name.indexOf(&#34;:&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">201</TD><TD>      if (index != -1)</TD></TR><TR><TD CLASS="l">202</TD><TD>      {</TD></TR><TR CLASS="z"><TD CLASS="l">203</TD><TD>        name = name.substring(index + 1);</TD></TR><TR><TD CLASS="l">204</TD><TD>      }</TD></TR><TR CLASS="z"><TD CLASS="l">205</TD><TD>      return name;</TD></TR><TR><TD CLASS="l"><A NAME="19">206</A></TD><TD>    }</TD></TR><TR><TD CLASS="l">207</TD><TD>    </TD></TR><TR><TD CLASS="l">208</TD><TD>    public String getPrefixedName(String prefix, String localName)</TD></TR><TR><TD CLASS="l">209</TD><TD>    {</TD></TR><TR CLASS="z"><TD CLASS="l">210</TD><TD>      return prefix != null &amp;&amp; prefix.length() &gt; 0 ? prefix + &#34;:&#34; + localName : localName;      //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">211</TD><TD>    }</TD></TR><TR><TD CLASS="l"><A NAME="1c">212</A></TD><TD> </TD></TR><TR><TD CLASS="l">213</TD><TD>    public void startElement(String namespaceURI, String localName, String rawName, Attributes atts)</TD></TR><TR><TD CLASS="l">214</TD><TD>    {      </TD></TR><TR><TD CLASS="l">215</TD><TD>      //String explicitLocation = null;</TD></TR><TR CLASS="z"><TD CLASS="l">216</TD><TD>      if (isRootElement)</TD></TR><TR><TD CLASS="l">217</TD><TD>      {  </TD></TR><TR><TD CLASS="l">218</TD><TD>        </TD></TR><TR CLASS="z"><TD CLASS="l">219</TD><TD>        isRootElement = false;  </TD></TR><TR CLASS="z"><TD CLASS="l">220</TD><TD>        int nAtts = atts.getLength();    </TD></TR><TR CLASS="z"><TD CLASS="l">221</TD><TD>        String schemaInstancePrefix = null;</TD></TR><TR CLASS="z"><TD CLASS="l">222</TD><TD>        for (int i =0; i &lt; nAtts; i++)</TD></TR><TR><TD CLASS="l">223</TD><TD>        {              </TD></TR><TR CLASS="z"><TD CLASS="l">224</TD><TD>          String attributeName = atts.getQName(i);       </TD></TR><TR CLASS="z"><TD CLASS="l">225</TD><TD>          if (attributeName.equals(&#34;xmlns&#34;) || attributeName.startsWith(&#34;xmlns:&#34;)) //$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR><TD CLASS="l">226</TD><TD>          {                                         </TD></TR><TR CLASS="z"><TD CLASS="l">227</TD><TD>            isNamespaceEncountered = true;    </TD></TR><TR CLASS="z"><TD CLASS="l">228</TD><TD>            String value = atts.getValue(i);                 </TD></TR><TR CLASS="z"><TD CLASS="l">229</TD><TD>            if (value.startsWith(&#34;http://www.w3.org/&#34;) &amp;&amp; value.endsWith(&#34;/XMLSchema-instance&#34;)) //$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR><TD CLASS="l">230</TD><TD>            {</TD></TR><TR CLASS="z"><TD CLASS="l">231</TD><TD>              schemaInstancePrefix = attributeName.equals(&#34;xmlns&#34;) ? &#34;&#34; : getUnprefixedName(attributeName); //$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR><TD CLASS="l">232</TD><TD>            }                   </TD></TR><TR><TD CLASS="l">233</TD><TD>          }                 </TD></TR><TR><TD CLASS="l">234</TD><TD>        }</TD></TR><TR><TD CLASS="l">235</TD><TD>        </TD></TR><TR CLASS="z"><TD CLASS="l">236</TD><TD>        String prefix = getPrefix(rawName);</TD></TR><TR CLASS="z"><TD CLASS="l">237</TD><TD>        String rootElementNamespaceDeclarationName = (prefix != null &amp;&amp; prefix.length() &gt; 0) ? &#34;xmlns:&#34; + prefix : &#34;xmlns&#34;; //$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR CLASS="z"><TD CLASS="l">238</TD><TD>        String rootElementNamespace = rootElementNamespaceDeclarationName != null ? atts.getValue(rootElementNamespaceDeclarationName) : null;        </TD></TR><TR><TD CLASS="l">239</TD><TD>        </TD></TR><TR CLASS="z"><TD CLASS="l">240</TD><TD>        String location = null;</TD></TR><TR><TD CLASS="l">241</TD><TD>        </TD></TR><TR><TD CLASS="l">242</TD><TD>        // first we use any 'xsi:schemaLocation' or 'xsi:noNamespaceSchemaLocation' attribute</TD></TR><TR><TD CLASS="l">243</TD><TD>        // to determine a location</TD></TR><TR CLASS="z"><TD CLASS="l">244</TD><TD>        if (schemaInstancePrefix != null)</TD></TR><TR><TD CLASS="l">245</TD><TD>        {                     </TD></TR><TR CLASS="z"><TD CLASS="l">246</TD><TD>          location = atts.getValue(getPrefixedName(schemaInstancePrefix, &#34;noNamespaceSchemaLocation&#34;)); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">247</TD><TD>          if (location == null)</TD></TR><TR><TD CLASS="l">248</TD><TD>          {            </TD></TR><TR CLASS="z"><TD CLASS="l">249</TD><TD>                String schemaLoc = atts.getValue(getPrefixedName(schemaInstancePrefix, &#34;schemaLocation&#34;));  //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">250</TD><TD>            location = getSchemaLocationForNamespace(schemaLoc, rootElementNamespace);</TD></TR><TR><TD CLASS="l">251</TD><TD>          }  </TD></TR><TR><TD CLASS="l">252</TD><TD>        }  </TD></TR><TR CLASS="z"><TD CLASS="l">253</TD><TD>        if (rootElementNamespace == null)</TD></TR><TR><TD CLASS="l">254</TD><TD>        {</TD></TR><TR CLASS="z"><TD CLASS="l">255</TD><TD>          rootElementNamespace = &#34;&#34;;</TD></TR><TR><TD CLASS="l">256</TD><TD>        }</TD></TR><TR><TD CLASS="l">257</TD><TD>        </TD></TR><TR CLASS="z"><TD CLASS="l">258</TD><TD>        location = URIResolverPlugin.createResolver().resolve(baseURI, rootElementNamespace, location);    </TD></TR><TR CLASS="z"><TD CLASS="l">259</TD><TD>        location = URIResolverPlugin.createResolver().resolvePhysicalLocation(baseURI, rootElementNamespace, location);</TD></TR><TR CLASS="z"><TD CLASS="l">260</TD><TD>        if (location != null)</TD></TR><TR><TD CLASS="l">261</TD><TD>        {</TD></TR><TR CLASS="z"><TD CLASS="l">262</TD><TD>          location = URIHelper.addImpliedFileProtocol(location);</TD></TR><TR><TD CLASS="l">263</TD><TD>        }</TD></TR><TR><TD CLASS="l">264</TD><TD>        </TD></TR><TR CLASS="z"><TD CLASS="l">265</TD><TD>        schemaLocationString = location;</TD></TR><TR><TD CLASS="l">266</TD><TD>        </TD></TR><TR CLASS="z"><TD CLASS="l">267</TD><TD>        if (location != null)</TD></TR><TR><TD CLASS="l">268</TD><TD>        {  </TD></TR><TR CLASS="z"><TD CLASS="l">269</TD><TD>          InputStream is = null;</TD></TR><TR><TD CLASS="l">270</TD><TD>          try</TD></TR><TR><TD CLASS="l">271</TD><TD>          {</TD></TR><TR CLASS="z"><TD CLASS="l">272</TD><TD>            URL url = new URL(location);</TD></TR><TR CLASS="z"><TD CLASS="l">273</TD><TD>            is = url.openStream();</TD></TR><TR CLASS="z"><TD CLASS="l">274</TD><TD>            isGrammarEncountered = true;</TD></TR><TR><TD CLASS="l">275</TD><TD>          }</TD></TR><TR CLASS="z"><TD CLASS="l">276</TD><TD>          catch(Exception e)</TD></TR><TR><TD CLASS="l">277</TD><TD>          {</TD></TR><TR><TD CLASS="l">278</TD><TD>                // Do nothing.</TD></TR><TR><TD CLASS="l">279</TD><TD>          }</TD></TR><TR><TD CLASS="l">280</TD><TD>          finally</TD></TR><TR CLASS="z"><TD CLASS="l">281</TD><TD>          {</TD></TR><TR CLASS="z"><TD CLASS="l">282</TD><TD>                if(is != null)</TD></TR><TR><TD CLASS="l">283</TD><TD>                {</TD></TR><TR><TD CLASS="l">284</TD><TD>                  try</TD></TR><TR><TD CLASS="l">285</TD><TD>                  {</TD></TR><TR CLASS="z"><TD CLASS="l">286</TD><TD>                    is.close();</TD></TR><TR><TD CLASS="l">287</TD><TD>                  }</TD></TR><TR CLASS="z"><TD CLASS="l">288</TD><TD>                  catch(Exception e)</TD></TR><TR><TD CLASS="l">289</TD><TD>                  {</TD></TR><TR><TD CLASS="l">290</TD><TD>                        // Do nothing.</TD></TR><TR><TD CLASS="l">291</TD><TD>                  }</TD></TR><TR><TD CLASS="l">292</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">293</TD><TD>          }</TD></TR><TR><TD CLASS="l">294</TD><TD>        }        </TD></TR><TR><TD CLASS="l">295</TD><TD>      }</TD></TR><TR CLASS="z"><TD CLASS="l">296</TD><TD>    }     </TD></TR><TR><TD CLASS="l">297</TD><TD>    /* (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="15">298</A></TD><TD>     * @see org.xml.sax.ext.DeclHandler#elementDecl(java.lang.String, java.lang.String)</TD></TR><TR><TD CLASS="l">299</TD><TD>     */</TD></TR><TR><TD CLASS="l">300</TD><TD>    public void elementDecl(String name, String model) </TD></TR><TR><TD CLASS="l">301</TD><TD>    {</TD></TR><TR CLASS="z"><TD CLASS="l">302</TD><TD>      numDTDElements++;</TD></TR><TR CLASS="z"><TD CLASS="l">303</TD><TD>    }</TD></TR><TR><TD CLASS="l">304</TD><TD>    </TD></TR><TR><TD CLASS="l">305</TD><TD>    // The xsiSchemaLocationValue is a list of namespace/location pairs that are separated by whitespace </TD></TR><TR><TD CLASS="l">306</TD><TD>    // this method walks the list of pairs looking for the specified namespace and returns the associated</TD></TR><TR><TD CLASS="l"><A NAME="1a">307</A></TD><TD>    // location.</TD></TR><TR><TD CLASS="l">308</TD><TD>    //   </TD></TR><TR><TD CLASS="l">309</TD><TD>    protected String getSchemaLocationForNamespace(String xsiSchemaLocationValue, String namespace)</TD></TR><TR><TD CLASS="l">310</TD><TD>    {      </TD></TR><TR CLASS="z"><TD CLASS="l">311</TD><TD>      String result = null;</TD></TR><TR CLASS="z"><TD CLASS="l">312</TD><TD>      if (xsiSchemaLocationValue != null &amp;&amp; namespace != null)</TD></TR><TR><TD CLASS="l">313</TD><TD>      {</TD></TR><TR><TD CLASS="l">314</TD><TD>        </TD></TR><TR CLASS="z"><TD CLASS="l">315</TD><TD>        StringTokenizer st = new StringTokenizer(xsiSchemaLocationValue);</TD></TR><TR CLASS="z"><TD CLASS="l">316</TD><TD>        while(st.hasMoreTokens())</TD></TR><TR><TD CLASS="l">317</TD><TD>        {</TD></TR><TR CLASS="z"><TD CLASS="l">318</TD><TD>          if(st.nextToken().equals(namespace))</TD></TR><TR><TD CLASS="l">319</TD><TD>          {</TD></TR><TR CLASS="z"><TD CLASS="l">320</TD><TD>            if(st.hasMoreTokens())</TD></TR><TR><TD CLASS="l">321</TD><TD>            {</TD></TR><TR CLASS="z"><TD CLASS="l">322</TD><TD>              result = st.nextToken();</TD></TR><TR><TD CLASS="l">323</TD><TD>            }</TD></TR><TR><TD CLASS="l">324</TD><TD>          }</TD></TR><TR><TD CLASS="l">325</TD><TD>          else</TD></TR><TR><TD CLASS="l">326</TD><TD>          {</TD></TR><TR CLASS="z"><TD CLASS="l">327</TD><TD>            if(st.hasMoreTokens())</TD></TR><TR><TD CLASS="l">328</TD><TD>            {</TD></TR><TR CLASS="z"><TD CLASS="l">329</TD><TD>              st.nextToken();</TD></TR><TR><TD CLASS="l">330</TD><TD>            }</TD></TR><TR><TD CLASS="l">331</TD><TD>          }</TD></TR><TR><TD CLASS="l">332</TD><TD>        }</TD></TR><TR><TD CLASS="l">333</TD><TD>      }</TD></TR><TR CLASS="z"><TD CLASS="l">334</TD><TD>      return result;</TD></TR><TR><TD CLASS="l">335</TD><TD>    }         </TD></TR><TR><TD CLASS="l">336</TD><TD>  }   </TD></TR><TR><TD CLASS="l">337</TD><TD>       </TD></TR><TR><TD CLASS="l">338</TD><TD>  </TD></TR><TR><TD CLASS="l">339</TD><TD>  /**</TD></TR><TR><TD CLASS="l">340</TD><TD>   * Replace all instances in the string of the old pattern with the new pattern.</TD></TR><TR><TD CLASS="l">341</TD><TD>   * </TD></TR><TR><TD CLASS="l">342</TD><TD>   * @param string The string to replace the patterns in.</TD></TR><TR><TD CLASS="l">343</TD><TD>   * @param oldPattern The old pattern to replace.</TD></TR><TR><TD CLASS="l">344</TD><TD>   * @param newPattern The pattern used for replacement.</TD></TR><TR><TD CLASS="l"><A NAME="4">345</A></TD><TD>   * @return The modified string with all occurrances of oldPattern replaced by new Pattern.</TD></TR><TR><TD CLASS="l">346</TD><TD>   */</TD></TR><TR><TD CLASS="l">347</TD><TD>  protected static String replace(String string, String oldPattern, String newPattern)</TD></TR><TR><TD CLASS="l">348</TD><TD>  {     </TD></TR><TR CLASS="z"><TD CLASS="l">349</TD><TD>    int index = 0;</TD></TR><TR CLASS="z"><TD CLASS="l">350</TD><TD>    while (index != -1)</TD></TR><TR><TD CLASS="l">351</TD><TD>    {</TD></TR><TR CLASS="z"><TD CLASS="l">352</TD><TD>      index = string.indexOf(oldPattern, index);</TD></TR><TR CLASS="z"><TD CLASS="l">353</TD><TD>      if (index != -1)</TD></TR><TR><TD CLASS="l">354</TD><TD>      {</TD></TR><TR CLASS="z"><TD CLASS="l">355</TD><TD>        string = string.substring(0, index) + newPattern + string.substring(index + oldPattern.length());</TD></TR><TR CLASS="z"><TD CLASS="l">356</TD><TD>        index = index + oldPattern.length();</TD></TR><TR><TD CLASS="l">357</TD><TD>      }</TD></TR><TR><TD CLASS="l">358</TD><TD>    }</TD></TR><TR CLASS="z"><TD CLASS="l">359</TD><TD>    return string;</TD></TR><TR><TD CLASS="l">360</TD><TD>  }</TD></TR><TR><TD CLASS="l">361</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="2e.html">org.eclipse.wst.xml.core.internal.validation</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/173.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/173.html
deleted file mode 100644
index ac67afb..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/173.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="2e.html">org.eclipse.wst.xml.core.internal.validation</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">XMLNestedValidatorContext.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>XMLNestedValidatorContext.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/27)</TD><TD CLASS="h">0%   (0/6)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">XMLNestedValidatorContext</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/27)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#0">XMLNestedValidatorContext (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">isURIMarkedInaccessible (String): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#3">markURIInaccessible (String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/3)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2008 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">11</TD><TD>package org.eclipse.wst.xml.core.internal.validation;</TD></TR><TR><TD CLASS="l">12</TD><TD> </TD></TR><TR><TD CLASS="l">13</TD><TD> </TD></TR><TR><TD CLASS="l">14</TD><TD>import java.util.HashSet;</TD></TR><TR><TD CLASS="l">15</TD><TD> </TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.wst.xml.core.internal.validation.core.NestedValidatorContext;</TD></TR><TR><TD CLASS="l">17</TD><TD> </TD></TR><TR><TD CLASS="l">18</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="0">19</A></TD><TD>/**</TD></TR><TR><TD CLASS="l">20</TD><TD> * XMLNestedValidatorContext is used to store state data needed during an XML</TD></TR><TR><TD CLASS="l">21</TD><TD> * validation session.</TD></TR><TR><TD CLASS="l">22</TD><TD> */</TD></TR><TR CLASS="z"><TD CLASS="l">23</TD><TD>public class XMLNestedValidatorContext extends NestedValidatorContext</TD></TR><TR><TD CLASS="l">24</TD><TD>{</TD></TR><TR><TD CLASS="l">25</TD><TD>  /**</TD></TR><TR><TD CLASS="l">26</TD><TD>   * A set of inaccessible locations URIs (String).</TD></TR><TR><TD CLASS="l">27</TD><TD>   */</TD></TR><TR CLASS="z"><TD CLASS="l">28</TD><TD>  private HashSet inaccessibleLocationURIs = new HashSet();</TD></TR><TR><TD CLASS="l">29</TD><TD> </TD></TR><TR><TD CLASS="l">30</TD><TD>  /**</TD></TR><TR><TD CLASS="l">31</TD><TD>   * Determines if a location URI was marked as inaccessible.</TD></TR><TR><TD CLASS="l">32</TD><TD>   * </TD></TR><TR><TD CLASS="l">33</TD><TD>   * @param locationURI</TD></TR><TR><TD CLASS="l">34</TD><TD>   *          the location URI to test. Must not be null.</TD></TR><TR><TD CLASS="l"><A NAME="2">35</A></TD><TD>   * @return true if a location URI was marked as inaccessible, false otherwise.</TD></TR><TR><TD CLASS="l">36</TD><TD>   */</TD></TR><TR><TD CLASS="l">37</TD><TD>  public boolean isURIMarkedInaccessible(String locationURI)</TD></TR><TR><TD CLASS="l">38</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">39</TD><TD>    return locationURI != null &amp;&amp; inaccessibleLocationURIs.contains(locationURI);</TD></TR><TR><TD CLASS="l">40</TD><TD>  }</TD></TR><TR><TD CLASS="l">41</TD><TD> </TD></TR><TR><TD CLASS="l">42</TD><TD>  /**</TD></TR><TR><TD CLASS="l">43</TD><TD>   * Marks the given location URI as inaccessible.</TD></TR><TR><TD CLASS="l">44</TD><TD>   * </TD></TR><TR><TD CLASS="l">45</TD><TD>   * @param locationURI</TD></TR><TR><TD CLASS="l"><A NAME="3">46</A></TD><TD>   *          the location URI to mark as inaccessible. Must not be null.</TD></TR><TR><TD CLASS="l">47</TD><TD>   */</TD></TR><TR><TD CLASS="l">48</TD><TD>  public void markURIInaccessible(String locationURI)</TD></TR><TR><TD CLASS="l">49</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">50</TD><TD>    if (locationURI != null)</TD></TR><TR><TD CLASS="l">51</TD><TD>    {</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>      inaccessibleLocationURIs.add(locationURI);</TD></TR><TR><TD CLASS="l">53</TD><TD>    }</TD></TR><TR CLASS="z"><TD CLASS="l">54</TD><TD>  }</TD></TR><TR><TD CLASS="l">55</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="2e.html">org.eclipse.wst.xml.core.internal.validation</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/174.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/174.html
deleted file mode 100644
index 3d1a45b..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/174.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="2e.html">org.eclipse.wst.xml.core.internal.validation</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">XMLValidationConfiguration.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>XMLValidationConfiguration.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/66)</TD><TD CLASS="h">0%   (0/19)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">XMLValidationConfiguration</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/66)</TD><TD CLASS="h">0%   (0/19)</TD></TR><TR><TD CLASS="f"><A HREF="#1">&lt;static initializer&gt;</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#0">XMLValidationConfiguration (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#3">getFeature (String): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">getIntFeature (String): int</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#5">setFeature (String, boolean): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/14)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">setFeature (String, int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/14)</TD><TD CLASS="h">0%   (0/4)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2008 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">11</TD><TD>package org.eclipse.wst.xml.core.internal.validation;</TD></TR><TR><TD CLASS="l">12</TD><TD> </TD></TR><TR><TD CLASS="l">13</TD><TD>/**</TD></TR><TR><TD CLASS="l">14</TD><TD> * An XML validation configuration allows setting specific configuration</TD></TR><TR><TD CLASS="l">15</TD><TD> * information for a WTP XML validation run. Any features and properties</TD></TR><TR><TD CLASS="l"><A NAME="0">16</A></TD><TD> * set on this configuration should not be confused with those from</TD></TR><TR><TD CLASS="l">17</TD><TD> * parsers such as Xerces. (This object does not by default wrap features</TD></TR><TR><TD CLASS="l">18</TD><TD> * and properties from specific parsers.)</TD></TR><TR><TD CLASS="l">19</TD><TD> */</TD></TR><TR CLASS="z"><TD CLASS="l">20</TD><TD>public class XMLValidationConfiguration </TD></TR><TR><TD CLASS="l"><A NAME="1">21</A></TD><TD>{</TD></TR><TR><TD CLASS="l">22</TD><TD>  /**</TD></TR><TR><TD CLASS="l">23</TD><TD>   * @deprecated</TD></TR><TR><TD CLASS="l">24</TD><TD>   */</TD></TR><TR CLASS="z"><TD CLASS="l">25</TD><TD>  public static String WARN_NO_GRAMMAR = &#34;WARN_NO_GRAMMAR&#34;; //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">26</TD><TD>  public static String INDICATE_NO_GRAMMAR = &#34;INDICATE_NO_GRAMMAR&#34;; //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">27</TD><TD>  private boolean warn_no_grammar_value = false;</TD></TR><TR CLASS="z"><TD CLASS="l">28</TD><TD>  private int indicate_no_grammar_value = 1;</TD></TR><TR><TD CLASS="l">29</TD><TD>  </TD></TR><TR><TD CLASS="l">30</TD><TD>  /**</TD></TR><TR><TD CLASS="l">31</TD><TD>   * Set a feature of this configuration.</TD></TR><TR><TD CLASS="l">32</TD><TD>   * </TD></TR><TR><TD CLASS="l">33</TD><TD>   * @param feature</TD></TR><TR><TD CLASS="l">34</TD><TD>   *                 The feature to set.</TD></TR><TR><TD CLASS="l">35</TD><TD>   * @param value</TD></TR><TR><TD CLASS="l">36</TD><TD>   *                 The value to set for the feature.</TD></TR><TR><TD CLASS="l">37</TD><TD>   * @throws </TD></TR><TR><TD CLASS="l"><A NAME="5">38</A></TD><TD>   *                 An exception is thrown if the feature is not recognized.</TD></TR><TR><TD CLASS="l">39</TD><TD>   */</TD></TR><TR><TD CLASS="l">40</TD><TD>  public void setFeature(String feature, boolean value) throws Exception</TD></TR><TR><TD CLASS="l">41</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">42</TD><TD>        if(WARN_NO_GRAMMAR.equals(feature))</TD></TR><TR CLASS="z"><TD CLASS="l">43</TD><TD>          warn_no_grammar_value = value;</TD></TR><TR><TD CLASS="l">44</TD><TD>        else</TD></TR><TR CLASS="z"><TD CLASS="l">45</TD><TD>          throw new Exception(&#34;Feature not recognized.&#34;); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">46</TD><TD>        </TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>  }</TD></TR><TR><TD CLASS="l">48</TD><TD>  </TD></TR><TR><TD CLASS="l">49</TD><TD>  /**</TD></TR><TR><TD CLASS="l">50</TD><TD>   * Set a feature of this configuration.</TD></TR><TR><TD CLASS="l">51</TD><TD>   * </TD></TR><TR><TD CLASS="l">52</TD><TD>   * @param feature</TD></TR><TR><TD CLASS="l">53</TD><TD>   *                 The feature to set.</TD></TR><TR><TD CLASS="l">54</TD><TD>   * @param value</TD></TR><TR><TD CLASS="l">55</TD><TD>   *                 The value to set for the feature.</TD></TR><TR><TD CLASS="l">56</TD><TD>   * @throws </TD></TR><TR><TD CLASS="l"><A NAME="6">57</A></TD><TD>   *                 An exception is thrown if the feature is not recognized.</TD></TR><TR><TD CLASS="l">58</TD><TD>   */</TD></TR><TR><TD CLASS="l">59</TD><TD>  public void setFeature(String feature, int value) throws Exception</TD></TR><TR><TD CLASS="l">60</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>        if(INDICATE_NO_GRAMMAR.equals(feature))</TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>          indicate_no_grammar_value = value;</TD></TR><TR><TD CLASS="l">63</TD><TD>        else</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>          throw new IllegalArgumentException(&#34;Feature not recognized.&#34;); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">65</TD><TD>        </TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>  }</TD></TR><TR><TD CLASS="l">67</TD><TD>  </TD></TR><TR><TD CLASS="l">68</TD><TD>  </TD></TR><TR><TD CLASS="l">69</TD><TD>  /**</TD></TR><TR><TD CLASS="l">70</TD><TD>   * Get the value for a given feature. If the feature is not defined</TD></TR><TR><TD CLASS="l">71</TD><TD>   * this method will throw an exception.</TD></TR><TR><TD CLASS="l">72</TD><TD>   * </TD></TR><TR><TD CLASS="l">73</TD><TD>   * @param feature</TD></TR><TR><TD CLASS="l">74</TD><TD>   *                 The feature for which to retrieve the value.</TD></TR><TR><TD CLASS="l">75</TD><TD>   * @return</TD></TR><TR><TD CLASS="l">76</TD><TD>   *                 The feature's value, true or false.</TD></TR><TR><TD CLASS="l">77</TD><TD>   * @throws </TD></TR><TR><TD CLASS="l"><A NAME="3">78</A></TD><TD>   *                 An exception is thrown if the feature is not recognized.</TD></TR><TR><TD CLASS="l">79</TD><TD>   */</TD></TR><TR><TD CLASS="l">80</TD><TD>  public boolean getFeature(String feature) throws Exception</TD></TR><TR><TD CLASS="l">81</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>        if(WARN_NO_GRAMMAR.equals(feature))</TD></TR><TR CLASS="z"><TD CLASS="l">83</TD><TD>          return warn_no_grammar_value;</TD></TR><TR><TD CLASS="l">84</TD><TD>        </TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>        throw new Exception(&#34;Feature not recognized.&#34;); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">86</TD><TD>  }</TD></TR><TR><TD CLASS="l">87</TD><TD> </TD></TR><TR><TD CLASS="l">88</TD><TD>  /**</TD></TR><TR><TD CLASS="l">89</TD><TD>   * Get the value for a given feature. If the feature is not defined</TD></TR><TR><TD CLASS="l">90</TD><TD>   * this method will throw an exception.</TD></TR><TR><TD CLASS="l">91</TD><TD>   * </TD></TR><TR><TD CLASS="l">92</TD><TD>   * @param feature</TD></TR><TR><TD CLASS="l">93</TD><TD>   *                 The feature for which to retrieve the value.</TD></TR><TR><TD CLASS="l">94</TD><TD>   * @return</TD></TR><TR><TD CLASS="l">95</TD><TD>   *                 The feature's value, true or false.</TD></TR><TR><TD CLASS="l">96</TD><TD>   * @throws </TD></TR><TR><TD CLASS="l"><A NAME="4">97</A></TD><TD>   *                 An exception is thrown if the feature is not recognized.</TD></TR><TR><TD CLASS="l">98</TD><TD>   */</TD></TR><TR><TD CLASS="l">99</TD><TD>  public int getIntFeature(String feature) throws Exception</TD></TR><TR><TD CLASS="l">100</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">101</TD><TD>        if(INDICATE_NO_GRAMMAR.equals(feature))</TD></TR><TR CLASS="z"><TD CLASS="l">102</TD><TD>          return indicate_no_grammar_value;</TD></TR><TR><TD CLASS="l">103</TD><TD>        </TD></TR><TR CLASS="z"><TD CLASS="l">104</TD><TD>        throw new IllegalArgumentException(&#34;Feature not recognized.&#34;); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">105</TD><TD>  }</TD></TR><TR><TD CLASS="l">106</TD><TD> </TD></TR><TR><TD CLASS="l">107</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="2e.html">org.eclipse.wst.xml.core.internal.validation</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/175.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/175.html
deleted file mode 100644
index 13e5d99..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/175.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="2e.html">org.eclipse.wst.xml.core.internal.validation</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">XMLValidationInfo.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>XMLValidationInfo.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/18)</TD><TD CLASS="h">0%   (0/109)</TD><TD CLASS="h">0%   (0/37)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">XMLValidationInfo</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/18)</TD><TD CLASS="h">0%   (0/109)</TD><TD CLASS="h">0%   (0/37)</TD></TR><TR><TD CLASS="f"><A HREF="#0">XMLValidationInfo (String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/30)</TD><TD CLASS="h">0%   (0/10)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">getCurrentErrorKey (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#3">getErrorCustomizationManager (): ErrorCustomizationManager</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">getMessageArguments (): Object []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#5">getStartElementLocations (): Stack</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">getXMLLocator (): XMLLocator</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#7">increaseElementDeclarationCount (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">isDTDWithoutElementDeclarationEncountered (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#9">isGrammarEncountered (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">isNamespaceEncountered (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#b">isUseXInclude (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#c">setCurrentErrorKey (String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#d">setDTDEncountered (boolean): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#e">setElementDeclarationCount (int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#f">setGrammarEncountered (boolean): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#10">setMessageArguments (Object []): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#11">setNamespaceEncountered (boolean): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#12">setXMLLocator (XMLLocator): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     David Carver - STAR - [205989] - [validation] validate XML after XInclude resolution</TD></TR><TR><TD CLASS="l">11</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">12</TD><TD> </TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.core.internal.validation;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.util.Stack;</TD></TR><TR><TD CLASS="l">16</TD><TD> </TD></TR><TR><TD CLASS="l">17</TD><TD>import org.apache.xerces.xni.XMLLocator;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.wst.xml.core.internal.XMLCorePlugin;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.wst.xml.core.internal.preferences.XMLCorePreferenceNames;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.wst.xml.core.internal.validation.core.ValidationInfo;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.wst.xml.core.internal.validation.errorcustomization.ErrorCustomizationManager;</TD></TR><TR><TD CLASS="l">22</TD><TD> </TD></TR><TR><TD CLASS="l">23</TD><TD> </TD></TR><TR><TD CLASS="l">24</TD><TD>/**</TD></TR><TR><TD CLASS="l">25</TD><TD> * A validation information object specific to XML validators.</TD></TR><TR><TD CLASS="l">26</TD><TD> */</TD></TR><TR><TD CLASS="l">27</TD><TD>public class XMLValidationInfo extends ValidationInfo implements XMLValidationReport</TD></TR><TR><TD CLASS="l">28</TD><TD>{</TD></TR><TR CLASS="z"><TD CLASS="l">29</TD><TD>  protected boolean grammarEncountered = false;</TD></TR><TR CLASS="z"><TD CLASS="l">30</TD><TD>  protected boolean dtdEncountered = false;</TD></TR><TR CLASS="z"><TD CLASS="l">31</TD><TD>  protected boolean namespaceEncountered = false;</TD></TR><TR CLASS="z"><TD CLASS="l">32</TD><TD>  protected int elementDeclCount = 0;</TD></TR><TR><TD CLASS="l">33</TD><TD>  protected String currentErrorKey;</TD></TR><TR CLASS="z"><TD CLASS="l">34</TD><TD>  protected Object messageArguments[] = null;</TD></TR><TR CLASS="z"><TD CLASS="l">35</TD><TD>  protected XMLLocator locator = null;</TD></TR><TR CLASS="z"><TD CLASS="l">36</TD><TD>  protected ErrorCustomizationManager errorCustomizationManager = null;</TD></TR><TR><TD CLASS="l">37</TD><TD>  </TD></TR><TR><TD CLASS="l">38</TD><TD>  /**</TD></TR><TR><TD CLASS="l">39</TD><TD>   * A stack of start tag locations, used to move errors</TD></TR><TR><TD CLASS="l">40</TD><TD>   * reported at the close tag to be reported at the start tag.</TD></TR><TR><TD CLASS="l">41</TD><TD>   */</TD></TR><TR CLASS="z"><TD CLASS="l">42</TD><TD>  protected Stack startElementLocations = new Stack();</TD></TR><TR><TD CLASS="l">43</TD><TD>  </TD></TR><TR><TD CLASS="l">44</TD><TD>  /**</TD></TR><TR><TD CLASS="l">45</TD><TD>   * Constructor.</TD></TR><TR><TD CLASS="l">46</TD><TD>   * </TD></TR><TR><TD CLASS="l"><A NAME="0">47</A></TD><TD>   * @param uri The URI of the file this report describes.</TD></TR><TR><TD CLASS="l">48</TD><TD>   */</TD></TR><TR><TD CLASS="l">49</TD><TD>  public XMLValidationInfo(String uri)</TD></TR><TR><TD CLASS="l">50</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>    super(uri);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="9">52</A></TD><TD>  }</TD></TR><TR><TD CLASS="l">53</TD><TD>  </TD></TR><TR><TD CLASS="l">54</TD><TD>  public boolean isGrammarEncountered()</TD></TR><TR><TD CLASS="l">55</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>    return grammarEncountered;</TD></TR><TR><TD CLASS="l">57</TD><TD>  }</TD></TR><TR><TD CLASS="l">58</TD><TD>  </TD></TR><TR><TD CLASS="l">59</TD><TD>  /**</TD></TR><TR><TD CLASS="l">60</TD><TD>   * Set whether a grammar has been encountered or not.</TD></TR><TR><TD CLASS="l">61</TD><TD>   * </TD></TR><TR><TD CLASS="l"><A NAME="f">62</A></TD><TD>   * @param grammarEncountered Set true if a grammar has been encountered, false otherwise.</TD></TR><TR><TD CLASS="l">63</TD><TD>   */</TD></TR><TR><TD CLASS="l">64</TD><TD>  public void setGrammarEncountered(boolean grammarEncountered)</TD></TR><TR><TD CLASS="l">65</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>    this.grammarEncountered = grammarEncountered;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="8">67</A></TD><TD>  }</TD></TR><TR><TD CLASS="l">68</TD><TD>  </TD></TR><TR><TD CLASS="l">69</TD><TD>  public boolean isDTDWithoutElementDeclarationEncountered()</TD></TR><TR><TD CLASS="l">70</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>    return dtdEncountered &amp;&amp; elementDeclCount == 0;</TD></TR><TR><TD CLASS="l">72</TD><TD>  }</TD></TR><TR><TD CLASS="l">73</TD><TD>  </TD></TR><TR><TD CLASS="l">74</TD><TD>  /**</TD></TR><TR><TD CLASS="l">75</TD><TD>   * Set whether a DTD without an element declaration was encountered.</TD></TR><TR><TD CLASS="l">76</TD><TD>   * </TD></TR><TR><TD CLASS="l">77</TD><TD>   * @param dtdWithoutElementDeclarationEncountered Set true if a DTD without an</TD></TR><TR><TD CLASS="l"><A NAME="d">78</A></TD><TD>   *         element declaration was encountered, false otherwise.</TD></TR><TR><TD CLASS="l">79</TD><TD>   */</TD></TR><TR><TD CLASS="l">80</TD><TD>  public void setDTDEncountered(boolean dtdEncountered)</TD></TR><TR><TD CLASS="l">81</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>    this.dtdEncountered = dtdEncountered;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="a">83</A></TD><TD>  }</TD></TR><TR><TD CLASS="l">84</TD><TD>  </TD></TR><TR><TD CLASS="l">85</TD><TD>  public boolean isNamespaceEncountered()</TD></TR><TR><TD CLASS="l">86</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>    return namespaceEncountered;</TD></TR><TR><TD CLASS="l">88</TD><TD>  }</TD></TR><TR><TD CLASS="l">89</TD><TD>  </TD></TR><TR><TD CLASS="l">90</TD><TD>  /**</TD></TR><TR><TD CLASS="l">91</TD><TD>   * Set whether a namespace was encountered.</TD></TR><TR><TD CLASS="l">92</TD><TD>   * </TD></TR><TR><TD CLASS="l"><A NAME="11">93</A></TD><TD>   * @param namespaceEncountered Set true if a namespace was encountered, false otherwise.</TD></TR><TR><TD CLASS="l">94</TD><TD>   */</TD></TR><TR><TD CLASS="l">95</TD><TD>  public void setNamespaceEncountered(boolean namespaceEncountered)</TD></TR><TR><TD CLASS="l">96</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">97</TD><TD>    this.namespaceEncountered = namespaceEncountered;</TD></TR><TR CLASS="z"><TD CLASS="l">98</TD><TD>  }</TD></TR><TR><TD CLASS="l">99</TD><TD>  </TD></TR><TR><TD CLASS="l">100</TD><TD>  /**</TD></TR><TR><TD CLASS="l"><A NAME="7">101</A></TD><TD>   * Increase the element declaration count for DTD elements by one.</TD></TR><TR><TD CLASS="l">102</TD><TD>   */</TD></TR><TR><TD CLASS="l">103</TD><TD>  public void increaseElementDeclarationCount()</TD></TR><TR><TD CLASS="l">104</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">105</TD><TD>    this.elementDeclCount++;</TD></TR><TR CLASS="z"><TD CLASS="l">106</TD><TD>  }</TD></TR><TR><TD CLASS="l">107</TD><TD>  </TD></TR><TR><TD CLASS="l">108</TD><TD>  /**</TD></TR><TR><TD CLASS="l">109</TD><TD>   * Set the number of DTD elements encountered.</TD></TR><TR><TD CLASS="l">110</TD><TD>   * </TD></TR><TR><TD CLASS="l"><A NAME="e">111</A></TD><TD>   * @param count The number of DTD elements encountered.</TD></TR><TR><TD CLASS="l">112</TD><TD>   */</TD></TR><TR><TD CLASS="l">113</TD><TD>  public void setElementDeclarationCount(int count)</TD></TR><TR><TD CLASS="l">114</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">115</TD><TD>          elementDeclCount = count;</TD></TR><TR CLASS="z"><TD CLASS="l">116</TD><TD>  }</TD></TR><TR><TD CLASS="l">117</TD><TD>  </TD></TR><TR><TD CLASS="l">118</TD><TD>  /**</TD></TR><TR><TD CLASS="l">119</TD><TD>   * Get the XML locator if one has been specified.</TD></TR><TR><TD CLASS="l">120</TD><TD>   * </TD></TR><TR><TD CLASS="l"><A NAME="6">121</A></TD><TD>   * @return The XML locator if one has been specified or null.</TD></TR><TR><TD CLASS="l">122</TD><TD>   */</TD></TR><TR><TD CLASS="l">123</TD><TD>  public XMLLocator getXMLLocator()</TD></TR><TR><TD CLASS="l">124</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">125</TD><TD>    return locator;</TD></TR><TR><TD CLASS="l">126</TD><TD>  }</TD></TR><TR><TD CLASS="l">127</TD><TD>  </TD></TR><TR><TD CLASS="l">128</TD><TD>  /**</TD></TR><TR><TD CLASS="l">129</TD><TD>   * Set the XMLLocator.</TD></TR><TR><TD CLASS="l">130</TD><TD>   * </TD></TR><TR><TD CLASS="l"><A NAME="12">131</A></TD><TD>   * @param locator The XMLLocator to set.</TD></TR><TR><TD CLASS="l">132</TD><TD>   */</TD></TR><TR><TD CLASS="l">133</TD><TD>  public void setXMLLocator(XMLLocator locator)</TD></TR><TR><TD CLASS="l">134</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">135</TD><TD>    this.locator = locator;</TD></TR><TR CLASS="z"><TD CLASS="l">136</TD><TD>  }</TD></TR><TR><TD CLASS="l">137</TD><TD>  </TD></TR><TR><TD CLASS="l">138</TD><TD>  /**</TD></TR><TR><TD CLASS="l">139</TD><TD>   * Get the current error key.</TD></TR><TR><TD CLASS="l">140</TD><TD>   * </TD></TR><TR><TD CLASS="l"><A NAME="2">141</A></TD><TD>   * @return Returns the currentErrorKey.</TD></TR><TR><TD CLASS="l">142</TD><TD>   */</TD></TR><TR><TD CLASS="l">143</TD><TD>  public String getCurrentErrorKey()</TD></TR><TR><TD CLASS="l">144</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">145</TD><TD>    return currentErrorKey;</TD></TR><TR><TD CLASS="l">146</TD><TD>  }</TD></TR><TR><TD CLASS="l">147</TD><TD>  </TD></TR><TR><TD CLASS="l">148</TD><TD>  /**</TD></TR><TR><TD CLASS="l">149</TD><TD>   * Set the current error key.</TD></TR><TR><TD CLASS="l">150</TD><TD>   * </TD></TR><TR><TD CLASS="l"><A NAME="c">151</A></TD><TD>   * @param currentErrorKey The currentErrorKey to set.</TD></TR><TR><TD CLASS="l">152</TD><TD>   */</TD></TR><TR><TD CLASS="l">153</TD><TD>  public void setCurrentErrorKey(String currentErrorKey)</TD></TR><TR><TD CLASS="l">154</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">155</A></TD><TD>    this.currentErrorKey = currentErrorKey;</TD></TR><TR CLASS="z"><TD CLASS="l">156</TD><TD>  }</TD></TR><TR><TD CLASS="l">157</TD><TD> </TD></TR><TR><TD CLASS="l">158</TD><TD>public Object[] getMessageArguments() {</TD></TR><TR CLASS="z"><TD CLASS="l">159</TD><TD>        return messageArguments;</TD></TR><TR><TD CLASS="l"><A NAME="10">160</A></TD><TD>}</TD></TR><TR><TD CLASS="l">161</TD><TD> </TD></TR><TR><TD CLASS="l">162</TD><TD> </TD></TR><TR><TD CLASS="l">163</TD><TD>public void setMessageArguments(Object[] messageArguments) {</TD></TR><TR CLASS="z"><TD CLASS="l">164</TD><TD>        this.messageArguments = messageArguments;</TD></TR><TR CLASS="z"><TD CLASS="l">165</TD><TD>}</TD></TR><TR><TD CLASS="l">166</TD><TD> </TD></TR><TR><TD CLASS="l">167</TD><TD>  /**</TD></TR><TR><TD CLASS="l">168</TD><TD>   * Get the start elements locations.</TD></TR><TR><TD CLASS="l">169</TD><TD>   * </TD></TR><TR><TD CLASS="l">170</TD><TD>   * @return </TD></TR><TR><TD CLASS="l"><A NAME="5">171</A></TD><TD>   *                 A stack containing the start element locations.</TD></TR><TR><TD CLASS="l">172</TD><TD>   */</TD></TR><TR><TD CLASS="l">173</TD><TD>  protected Stack getStartElementLocations()</TD></TR><TR><TD CLASS="l">174</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">175</TD><TD>    return startElementLocations;</TD></TR><TR><TD CLASS="l">176</TD><TD>  }</TD></TR><TR><TD CLASS="l">177</TD><TD>  </TD></TR><TR><TD CLASS="l">178</TD><TD>  /**</TD></TR><TR><TD CLASS="l">179</TD><TD>   * Get the error customization manager for this validation run.</TD></TR><TR><TD CLASS="l">180</TD><TD>   * </TD></TR><TR><TD CLASS="l">181</TD><TD>   * @return</TD></TR><TR><TD CLASS="l"><A NAME="3">182</A></TD><TD>   *         The error customization manager for this validation run.</TD></TR><TR><TD CLASS="l">183</TD><TD>   */</TD></TR><TR><TD CLASS="l">184</TD><TD>  protected ErrorCustomizationManager getErrorCustomizationManager()</TD></TR><TR><TD CLASS="l">185</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">186</TD><TD>          if(errorCustomizationManager == null)</TD></TR><TR><TD CLASS="l">187</TD><TD>          {</TD></TR><TR CLASS="z"><TD CLASS="l">188</TD><TD>                  errorCustomizationManager = new ErrorCustomizationManager();</TD></TR><TR><TD CLASS="l">189</TD><TD>          }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="b">190</A></TD><TD>          return errorCustomizationManager;</TD></TR><TR><TD CLASS="l">191</TD><TD>  }</TD></TR><TR><TD CLASS="l">192</TD><TD>  </TD></TR><TR><TD CLASS="l">193</TD><TD>  public boolean isUseXInclude() {</TD></TR><TR CLASS="z"><TD CLASS="l">194</TD><TD>          return XMLCorePlugin.getDefault().getPluginPreferences().getBoolean(XMLCorePreferenceNames.USE_XINCLUDE);</TD></TR><TR><TD CLASS="l">195</TD><TD>  }</TD></TR><TR><TD CLASS="l">196</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="2e.html">org.eclipse.wst.xml.core.internal.validation</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/176.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/176.html
deleted file mode 100644
index 7997a1c..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/176.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="2e.html">org.eclipse.wst.xml.core.internal.validation</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">XMLValidationMessages.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>XMLValidationMessages.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/21)</TD><TD CLASS="h">0%   (0/4)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">XMLValidationMessages</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/21)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#0">&lt;static initializer&gt;</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/18)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">XMLValidationMessages (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/2)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2005, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     </TD></TR><TR><TD CLASS="l">11</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">12</TD><TD>package org.eclipse.wst.xml.core.internal.validation;</TD></TR><TR><TD CLASS="l">13</TD><TD> </TD></TR><TR><TD CLASS="l">14</TD><TD>import org.eclipse.osgi.util.NLS;</TD></TR><TR><TD CLASS="l">15</TD><TD> </TD></TR><TR><TD CLASS="l">16</TD><TD>/**</TD></TR><TR><TD CLASS="l">17</TD><TD> * Strings used by XML Validation</TD></TR><TR><TD CLASS="l">18</TD><TD> */</TD></TR><TR CLASS="z"><TD CLASS="l">19</TD><TD>public class XMLValidationMessages extends NLS {</TD></TR><TR><TD CLASS="l">20</TD><TD>        private static final String BUNDLE_NAME = &#34;org.eclipse.wst.xml.core.internal.validation.xmlvalidation&#34;;//$NON-NLS-1$</TD></TR><TR><TD CLASS="l">21</TD><TD> </TD></TR><TR><TD CLASS="l">22</TD><TD>        public static String _UI_PROBLEMS_VALIDATING_UNKNOWN_HOST;</TD></TR><TR><TD CLASS="l">23</TD><TD>        public static String _UI_PROBLEMS_VALIDATING_FILE_NOT_FOUND;</TD></TR><TR><TD CLASS="l">24</TD><TD>        public static String _UI_PROBLEMS_CONNECTION_REFUSED;</TD></TR><TR><TD CLASS="l">25</TD><TD>        public static String _UI_REF_FILE_ERROR_MESSAGE;</TD></TR><TR><TD CLASS="l"><A NAME="0">26</A></TD><TD>        public static String _WARN_NO_GRAMMAR;</TD></TR><TR><TD CLASS="l">27</TD><TD> </TD></TR><TR><TD CLASS="l">28</TD><TD>        static {</TD></TR><TR><TD CLASS="l"><A NAME="2">29</A></TD><TD>                // load message values from bundle file</TD></TR><TR CLASS="z"><TD CLASS="l">30</TD><TD>                NLS.initializeMessages(BUNDLE_NAME, XMLValidationMessages.class);</TD></TR><TR><TD CLASS="l">31</TD><TD>        }</TD></TR><TR><TD CLASS="l">32</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">33</TD><TD>        private XMLValidationMessages() {</TD></TR><TR><TD CLASS="l">34</TD><TD>                // cannot create new instance</TD></TR><TR CLASS="z"><TD CLASS="l">35</TD><TD>        }</TD></TR><TR><TD CLASS="l">36</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="2e.html">org.eclipse.wst.xml.core.internal.validation</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/177.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/177.html
deleted file mode 100644
index 9452ec7..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/177.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="2e.html">org.eclipse.wst.xml.core.internal.validation</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">XMLValidator.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>XMLValidator.java</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/41)</TD><TD CLASS="h">0%   (0/1012)</TD><TD CLASS="h">0%   (0/244)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">XMLValidator</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/14)</TD><TD CLASS="h">0%   (0/621)</TD><TD CLASS="h">0%   (0/148)</TD></TR><TR><TD CLASS="f"><A HREF="#0">XMLValidator (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/54)</TD><TD CLASS="h">0%   (0/12)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">_internalResolveEntity (URIResolver, XMLResourceIdentifier): XMLInputSource</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#3">_internalResolveEntity (URIResolver, XMLResourceIdentifier, NestedValidatorCo...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/99)</TD><TD CLASS="h">0%   (0/28)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">addValidationMessage (XMLValidationInfo, IOException): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/86)</TD><TD CLASS="h">0%   (0/18)</TD></TR><TR><TD CLASS="f"><A HREF="#5">addValidationMessage (XMLValidationInfo, SAXParseException): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/14)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">createStringForInputStream (InputStream): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/41)</TD><TD CLASS="h">0%   (0/10)</TD></TR><TR><TD CLASS="f"><A HREF="#7">createXMLReader (XMLValidationInfo, XMLEntityResolver): XMLReader</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/89)</TD><TD CLASS="h">0%   (0/21)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">getWorkspaceFileFromLocation (String): IResource</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/25)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#9">setURIResolver (URIResolver): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">validate (String): XMLValidationReport</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#b">validate (String, InputStream): XMLValidationReport</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#c">validate (String, InputStream, XMLValidationConfiguration): XMLValidationReport</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#d">validate (String, InputStream, XMLValidationConfiguration, ValidationResult):...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#e">validate (String, InputStream, XMLValidationConfiguration, ValidationResult, ...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/173)</TD><TD CLASS="h">0%   (0/43)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#f">XMLValidator$1</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/93)</TD><TD CLASS="h">0%   (0/21)</TD></TR><TR><TD CLASS="f"><A HREF="#f">XMLValidator$1 (XMLValidator$MyStandardParserConfiguration): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#11">reportError (String, String, Object [], short): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/87)</TD><TD CLASS="h">0%   (0/19)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#12">XMLValidator$2</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/59)</TD><TD CLASS="h">0%   (0/13)</TD></TR><TR><TD CLASS="f"><A HREF="#12">XMLValidator$2 (XMLValidator, XMLParserConfiguration, XMLValidationInfo): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#14">endElement (QName, Augmentations): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#15">startDocument (XMLLocator, String, NamespaceContext, Augmentations): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/14)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#16">startElement (QName, XMLAttributes, Augmentations): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/22)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#17">XMLValidator$3</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/23)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#17">XMLValidator$3 (XMLValidator, XMLValidationInfo): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#19">endElement (String, String, String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#1a">startElement (String, String, String, Attributes): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#1b">XMLValidator$LocationCoordinate</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/24)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR><TD CLASS="f"><A HREF="#1b">XMLValidator$LocationCoordinate (XMLValidator, int, int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/18)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#1d">getColumnNumner (): int</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#1e">getLineNumber (): int</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#1f">XMLValidator$MyDeclHandler</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#1f">XMLValidator$MyDeclHandler (XMLValidator): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#21">attributeDecl (String, String, String, String, String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#22">elementDecl (String, String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#23">externalEntityDecl (String, String, String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#24">internalEntityDecl (String, String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#25">XMLValidator$MyEntityResolver</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/30)</TD><TD CLASS="h">0%   (0/9)</TD></TR><TR><TD CLASS="f"><A HREF="#25">XMLValidator$MyEntityResolver (XMLValidator, URIResolver, NestedValidatorCont...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#27">getLocation (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#28">resolveEntity (XMLResourceIdentifier): XMLInputSource</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#29">XMLValidator$MyStandardParserConfiguration</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/60)</TD><TD CLASS="h">0%   (0/15)</TD></TR><TR><TD CLASS="f"><A HREF="#29">XMLValidator$MyStandardParserConfiguration (XMLValidator, XMLValidationInfo):...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/55)</TD><TD CLASS="h">0%   (0/14)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#f">createErrorReporter (): XMLErrorReporter</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#2c">XMLValidator$XMLErrorHandler</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/92)</TD><TD CLASS="h">0%   (0/23)</TD></TR><TR><TD CLASS="f"><A HREF="#2c">XMLValidator$XMLErrorHandler (XMLValidator, XMLValidationInfo): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2e">addValidationMessage (SAXParseException, int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/62)</TD><TD CLASS="h">0%   (0/12)</TD></TR><TR><TD CLASS="f"><A HREF="#2f">error (SAXParseException): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#30">fatalError (SAXParseException): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#31">warning (SAXParseException): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/2)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR CLASS="z"><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2008 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     David Carver - STAR - [205989] - [validation] validate XML after XInclude resolution</TD></TR><TR><TD CLASS="l">11</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">12</TD><TD> </TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.core.internal.validation;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.io.BufferedReader;</TD></TR><TR><TD CLASS="l">16</TD><TD>import java.io.FileNotFoundException;</TD></TR><TR><TD CLASS="l">17</TD><TD>import java.io.IOException;</TD></TR><TR><TD CLASS="l">18</TD><TD>import java.io.InputStream;</TD></TR><TR><TD CLASS="l">19</TD><TD>import java.io.InputStreamReader;</TD></TR><TR><TD CLASS="l">20</TD><TD>import java.io.Reader;</TD></TR><TR><TD CLASS="l">21</TD><TD>import java.io.StringReader;</TD></TR><TR><TD CLASS="l">22</TD><TD>import java.net.ConnectException;</TD></TR><TR><TD CLASS="l">23</TD><TD>import java.net.URL;</TD></TR><TR><TD CLASS="l">24</TD><TD>import java.net.UnknownHostException;</TD></TR><TR><TD CLASS="l">25</TD><TD>import java.util.ArrayList;</TD></TR><TR><TD CLASS="l">26</TD><TD>import java.util.Hashtable;</TD></TR><TR><TD CLASS="l">27</TD><TD>import java.util.List;</TD></TR><TR><TD CLASS="l">28</TD><TD>import java.util.Set;</TD></TR><TR><TD CLASS="l">29</TD><TD>import java.util.TreeSet;</TD></TR><TR><TD CLASS="l">30</TD><TD> </TD></TR><TR><TD CLASS="l">31</TD><TD>import org.apache.xerces.impl.XMLErrorReporter;</TD></TR><TR><TD CLASS="l">32</TD><TD>import org.apache.xerces.impl.msg.XMLMessageFormatter;</TD></TR><TR><TD CLASS="l">33</TD><TD>import org.apache.xerces.parsers.XIncludeAwareParserConfiguration;</TD></TR><TR><TD CLASS="l">34</TD><TD>import org.apache.xerces.xni.Augmentations;</TD></TR><TR><TD CLASS="l">35</TD><TD>import org.apache.xerces.xni.NamespaceContext;</TD></TR><TR><TD CLASS="l">36</TD><TD>import org.apache.xerces.xni.QName;</TD></TR><TR><TD CLASS="l">37</TD><TD>import org.apache.xerces.xni.XMLAttributes;</TD></TR><TR><TD CLASS="l">38</TD><TD>import org.apache.xerces.xni.XMLLocator;</TD></TR><TR><TD CLASS="l">39</TD><TD>import org.apache.xerces.xni.XMLResourceIdentifier;</TD></TR><TR><TD CLASS="l">40</TD><TD>import org.apache.xerces.xni.XNIException;</TD></TR><TR><TD CLASS="l">41</TD><TD>import org.apache.xerces.xni.parser.XMLEntityResolver;</TD></TR><TR><TD CLASS="l">42</TD><TD>import org.apache.xerces.xni.parser.XMLInputSource;</TD></TR><TR><TD CLASS="l">43</TD><TD>import org.eclipse.core.resources.IResource;</TD></TR><TR><TD CLASS="l">44</TD><TD>import org.eclipse.core.resources.IWorkspace;</TD></TR><TR><TD CLASS="l">45</TD><TD>import org.eclipse.core.resources.ResourcesPlugin;</TD></TR><TR><TD CLASS="l">46</TD><TD>import org.eclipse.core.runtime.IPath;</TD></TR><TR><TD CLASS="l">47</TD><TD>import org.eclipse.core.runtime.Path;</TD></TR><TR><TD CLASS="l">48</TD><TD>import org.eclipse.osgi.util.NLS;</TD></TR><TR><TD CLASS="l">49</TD><TD>import org.eclipse.wst.common.uriresolver.internal.provisional.URIResolver;</TD></TR><TR><TD CLASS="l">50</TD><TD>import org.eclipse.wst.common.uriresolver.internal.util.URIHelper;</TD></TR><TR><TD CLASS="l">51</TD><TD>import org.eclipse.wst.validation.ValidationResult;</TD></TR><TR><TD CLASS="l">52</TD><TD>import org.eclipse.wst.xml.core.internal.Logger;</TD></TR><TR><TD CLASS="l">53</TD><TD>import org.eclipse.wst.xml.core.internal.validation.core.LazyURLInputStream;</TD></TR><TR><TD CLASS="l">54</TD><TD>import org.eclipse.wst.xml.core.internal.validation.core.NestedValidatorContext;</TD></TR><TR><TD CLASS="l">55</TD><TD>import org.xml.sax.Attributes;</TD></TR><TR><TD CLASS="l">56</TD><TD>import org.xml.sax.InputSource;</TD></TR><TR><TD CLASS="l">57</TD><TD>import org.xml.sax.SAXException;</TD></TR><TR><TD CLASS="l">58</TD><TD>import org.xml.sax.SAXParseException;</TD></TR><TR><TD CLASS="l">59</TD><TD>import org.xml.sax.XMLReader;</TD></TR><TR><TD CLASS="l">60</TD><TD>import org.xml.sax.ext.DeclHandler;</TD></TR><TR><TD CLASS="l">61</TD><TD>import org.xml.sax.helpers.DefaultHandler;</TD></TR><TR><TD CLASS="l">62</TD><TD> </TD></TR><TR><TD CLASS="l">63</TD><TD>/**</TD></TR><TR><TD CLASS="l">64</TD><TD> * This class performs validation using a xerces sax parser.  </TD></TR><TR><TD CLASS="l">65</TD><TD> * Here's a quick overview of the details : </TD></TR><TR><TD CLASS="l">66</TD><TD> *   - an ErrorHandler is used to collect errors into a list (so they may be displayed by the UI)</TD></TR><TR><TD CLASS="l">67</TD><TD> *   - an EntityResolver is used along with the xerces &#34;external-schemaLocation&#34; property to implement XML Catalog support</TD></TR><TR><TD CLASS="l">68</TD><TD> */</TD></TR><TR><TD CLASS="l">69</TD><TD>public class XMLValidator</TD></TR><TR><TD CLASS="l">70</TD><TD>{</TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>  protected URIResolver uriResolver = null;</TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>  protected Hashtable ingoredErrorKeyTable = new Hashtable();</TD></TR><TR CLASS="z"><TD CLASS="l">73</TD><TD>  protected Set adjustLocationErrorKeySet = new TreeSet();</TD></TR><TR><TD CLASS="l">74</TD><TD> </TD></TR><TR><TD CLASS="l">75</TD><TD>  protected static final String IGNORE_ALWAYS = &#34;IGNORE_ALWAYS&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">76</TD><TD>  protected static final String IGNORE_IF_DTD_WITHOUT_ELEMENT_DECL = &#34;IGNORE_IF_DTD_WITHOUT_ELEMENT_DECL&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">77</TD><TD>  protected static final String PREMATURE_EOF = &#34;PrematureEOF&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">78</TD><TD>  protected static final String ROOT_ELEMENT_TYPE_MUST_MATCH_DOCTYPEDECL = &#34;RootElementTypeMustMatchDoctypedecl&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">79</TD><TD>  protected static final String MSG_ELEMENT_NOT_DECLARED = &#34;MSG_ELEMENT_NOT_DECLARED&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">80</TD><TD>  </TD></TR><TR><TD CLASS="l">81</TD><TD>  // WTP XML validator specific key.</TD></TR><TR><TD CLASS="l">82</TD><TD>  protected static final String NO_GRAMMAR_FOUND = &#34;NO_GRAMMAR_FOUND&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">83</TD><TD>  </TD></TR><TR><TD CLASS="l">84</TD><TD>  private static final String FILE_NOT_FOUND_KEY = &#34;FILE_NOT_FOUND&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l"><A NAME="0">85</A></TD><TD> </TD></TR><TR><TD CLASS="l">86</TD><TD>  /**</TD></TR><TR><TD CLASS="l">87</TD><TD>   * Constructor.</TD></TR><TR><TD CLASS="l">88</TD><TD>   */</TD></TR><TR CLASS="z"><TD CLASS="l">89</TD><TD>  public XMLValidator()</TD></TR><TR><TD CLASS="l">90</TD><TD>  {                          </TD></TR><TR><TD CLASS="l">91</TD><TD>    // Here we add some error keys that we need to filter out when we're validation </TD></TR><TR><TD CLASS="l">92</TD><TD>    // against a DTD without any element declarations.       </TD></TR><TR CLASS="z"><TD CLASS="l">93</TD><TD>    ingoredErrorKeyTable.put(PREMATURE_EOF, IGNORE_ALWAYS);</TD></TR><TR CLASS="z"><TD CLASS="l">94</TD><TD>    ingoredErrorKeyTable.put(ROOT_ELEMENT_TYPE_MUST_MATCH_DOCTYPEDECL, IGNORE_IF_DTD_WITHOUT_ELEMENT_DECL);</TD></TR><TR CLASS="z"><TD CLASS="l">95</TD><TD>    ingoredErrorKeyTable.put(MSG_ELEMENT_NOT_DECLARED, IGNORE_IF_DTD_WITHOUT_ELEMENT_DECL);</TD></TR><TR><TD CLASS="l">96</TD><TD>    </TD></TR><TR><TD CLASS="l">97</TD><TD>    // Here we add some error keys that we need to adjust the location information for.</TD></TR><TR><TD CLASS="l">98</TD><TD>    // The location information will be adjusted to place the message on the line of the starting</TD></TR><TR><TD CLASS="l">99</TD><TD>    // element instead of on the line of the closing element.</TD></TR><TR CLASS="z"><TD CLASS="l">100</TD><TD>    adjustLocationErrorKeySet.add(&#34;MSG_CONTENT_INVALID&#34;);</TD></TR><TR CLASS="z"><TD CLASS="l">101</TD><TD>    adjustLocationErrorKeySet.add(&#34;MSG_CONTENT_INCOMPLETE&#34;);</TD></TR><TR CLASS="z"><TD CLASS="l">102</TD><TD>    adjustLocationErrorKeySet.add(&#34;cvc-complex-type.2.4.b&#34;);</TD></TR><TR CLASS="z"><TD CLASS="l">103</TD><TD>    adjustLocationErrorKeySet.add(&#34;cvc-complex-type.2.3&#34;);</TD></TR><TR CLASS="z"><TD CLASS="l">104</TD><TD>  }</TD></TR><TR><TD CLASS="l">105</TD><TD> </TD></TR><TR><TD CLASS="l">106</TD><TD>  /**</TD></TR><TR><TD CLASS="l">107</TD><TD>   * Set the URI Resolver to use.</TD></TR><TR><TD CLASS="l">108</TD><TD>   * </TD></TR><TR><TD CLASS="l"><A NAME="9">109</A></TD><TD>   * @param uriResolver The URI Resolver to use.</TD></TR><TR><TD CLASS="l">110</TD><TD>   */</TD></TR><TR><TD CLASS="l">111</TD><TD>  public void setURIResolver(URIResolver uriResolver)</TD></TR><TR><TD CLASS="l">112</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">113</TD><TD>    this.uriResolver = uriResolver;</TD></TR><TR><TD CLASS="l">114</TD><TD>    //entityResolver = new MyEntityResolver(uriResolver);</TD></TR><TR CLASS="z"><TD CLASS="l">115</TD><TD>  }</TD></TR><TR><TD CLASS="l">116</TD><TD> </TD></TR><TR><TD CLASS="l">117</TD><TD> </TD></TR><TR><TD CLASS="l">118</TD><TD>  /**</TD></TR><TR><TD CLASS="l">119</TD><TD>   * Create an XML Reader.</TD></TR><TR><TD CLASS="l">120</TD><TD>   * </TD></TR><TR><TD CLASS="l">121</TD><TD>   * @return The newly created XML reader or null if unsuccessful.</TD></TR><TR><TD CLASS="l"><A NAME="7">122</A></TD><TD>   * @throws Exception</TD></TR><TR><TD CLASS="l">123</TD><TD>   */</TD></TR><TR><TD CLASS="l">124</TD><TD>  protected XMLReader createXMLReader(final XMLValidationInfo valinfo, XMLEntityResolver entityResolver) throws Exception</TD></TR><TR><TD CLASS="l">125</TD><TD>  {     </TD></TR><TR CLASS="z"><TD CLASS="l">126</TD><TD>    XMLReader reader = null;</TD></TR><TR><TD CLASS="l">127</TD><TD>    // move to Xerces-2... add the contextClassLoader stuff</TD></TR><TR CLASS="z"><TD CLASS="l">128</TD><TD>    ClassLoader prevClassLoader = Thread.currentThread().getContextClassLoader();</TD></TR><TR><TD CLASS="l"><A NAME="12">129</A></TD><TD>    try</TD></TR><TR><TD CLASS="l">130</TD><TD>    {</TD></TR><TR CLASS="z"><TD CLASS="l">131</TD><TD>      Thread.currentThread().setContextClassLoader(getClass().getClassLoader());</TD></TR><TR CLASS="z"><TD CLASS="l">132</TD><TD>      MyStandardParserConfiguration configuration = new MyStandardParserConfiguration(valinfo);</TD></TR><TR CLASS="z"><TD CLASS="l">133</TD><TD>      reader = new org.apache.xerces.parsers.SAXParser(configuration)</TD></TR><TR><TD CLASS="l">134</TD><TD>      {</TD></TR><TR CLASS="z"><TD CLASS="l">135</TD><TD>            private XMLLocator locator = null;</TD></TR><TR><TD CLASS="l">136</TD><TD>            </TD></TR><TR><TD CLASS="l">137</TD><TD>        /* (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="15">138</A></TD><TD>         * @see org.apache.xerces.parsers.AbstractSAXParser#startDocument(org.apache.xerces.xni.XMLLocator, java.lang.String, org.apache.xerces.xni.NamespaceContext, org.apache.xerces.xni.Augmentations)</TD></TR><TR><TD CLASS="l">139</TD><TD>         */</TD></TR><TR><TD CLASS="l">140</TD><TD>        public void startDocument(org.apache.xerces.xni.XMLLocator theLocator, java.lang.String encoding, NamespaceContext nscontext, org.apache.xerces.xni.Augmentations augs) </TD></TR><TR><TD CLASS="l">141</TD><TD>        {</TD></TR><TR CLASS="z"><TD CLASS="l">142</TD><TD>          locator = theLocator;</TD></TR><TR CLASS="z"><TD CLASS="l">143</TD><TD>          valinfo.setXMLLocator(theLocator);</TD></TR><TR CLASS="z"><TD CLASS="l">144</TD><TD>          super.startDocument(theLocator, encoding, nscontext, augs); </TD></TR><TR CLASS="z"><TD CLASS="l">145</TD><TD>        }</TD></TR><TR><TD CLASS="l">146</TD><TD> </TD></TR><TR><TD CLASS="l">147</TD><TD>        /* (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="16">148</A></TD><TD>         * @see org.apache.xerces.parsers.AbstractSAXParser#startElement(org.apache.xerces.xni.QName, org.apache.xerces.xni.XMLAttributes, org.apache.xerces.xni.Augmentations)</TD></TR><TR><TD CLASS="l">149</TD><TD>         */</TD></TR><TR><TD CLASS="l">150</TD><TD>        public void startElement(QName arg0, XMLAttributes arg1, Augmentations arg2) throws XNIException </TD></TR><TR><TD CLASS="l">151</TD><TD>        {</TD></TR><TR CLASS="z"><TD CLASS="l">152</TD><TD>          valinfo.getStartElementLocations().push(new LocationCoordinate(locator.getLineNumber(), locator.getColumnNumber()));</TD></TR><TR CLASS="z"><TD CLASS="l">153</TD><TD>                  super.startElement(arg0, arg1, arg2);</TD></TR><TR CLASS="z"><TD CLASS="l">154</TD><TD>                }</TD></TR><TR><TD CLASS="l">155</TD><TD>        </TD></TR><TR><TD CLASS="l"><A NAME="14">156</A></TD><TD>                /* (non-Javadoc)</TD></TR><TR><TD CLASS="l">157</TD><TD>                 * @see org.apache.xerces.parsers.AbstractSAXParser#endElement(org.apache.xerces.xni.QName, org.apache.xerces.xni.Augmentations)</TD></TR><TR><TD CLASS="l">158</TD><TD>                 */</TD></TR><TR><TD CLASS="l">159</TD><TD>                public void endElement(QName arg0, Augmentations arg1) throws XNIException {</TD></TR><TR CLASS="z"><TD CLASS="l">160</TD><TD>                        super.endElement(arg0, arg1);</TD></TR><TR CLASS="z"><TD CLASS="l">161</TD><TD>                        valinfo.getStartElementLocations().pop();</TD></TR><TR CLASS="z"><TD CLASS="l">162</TD><TD>                }</TD></TR><TR><TD CLASS="l">163</TD><TD>      };</TD></TR><TR><TD CLASS="l">164</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">165</TD><TD>      reader.setFeature(&#34;http://apache.org/xml/features/continue-after-fatal-error&#34;, false); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">166</TD><TD>      reader.setFeature(&#34;http://xml.org/sax/features/namespace-prefixes&#34;, valinfo.isNamespaceEncountered()); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="17">167</A></TD><TD>      reader.setFeature(&#34;http://xml.org/sax/features/namespaces&#34;, valinfo.isNamespaceEncountered());               //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">168</TD><TD>      reader.setFeature(&#34;http://xml.org/sax/features/validation&#34;, valinfo.isGrammarEncountered());  //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">169</TD><TD>      reader.setFeature(&#34;http://apache.org/xml/features/validation/schema&#34;, valinfo.isGrammarEncountered()); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="1a">170</A></TD><TD>             reader.setFeature(&#34;http://apache.org/xml/features/xinclude&#34;, valinfo.isUseXInclude()); //$NON-NLS-1$      </TD></TR><TR CLASS="z"><TD CLASS="l">171</TD><TD>      reader.setContentHandler(new DefaultHandler()</TD></TR><TR><TD CLASS="l">172</TD><TD>      {</TD></TR><TR><TD CLASS="l">173</TD><TD>        public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="19">174</A></TD><TD>          valinfo.getErrorCustomizationManager().startElement(uri, localName);                    </TD></TR><TR CLASS="z"><TD CLASS="l">175</TD><TD>        }</TD></TR><TR><TD CLASS="l">176</TD><TD>        </TD></TR><TR><TD CLASS="l">177</TD><TD>        public void endElement(String uri, String localName, String qName) throws SAXException {</TD></TR><TR CLASS="z"><TD CLASS="l">178</TD><TD>          valinfo.getErrorCustomizationManager().endElement(uri, localName);</TD></TR><TR CLASS="z"><TD CLASS="l">179</TD><TD>        }</TD></TR><TR><TD CLASS="l">180</TD><TD>      });      </TD></TR><TR><TD CLASS="l">181</TD><TD>      </TD></TR><TR><TD CLASS="l">182</TD><TD>      // MH make sure validation works even when a customer entityResolver is note set (i.e. via setURIResolver())</TD></TR><TR CLASS="z"><TD CLASS="l">183</TD><TD>      if (entityResolver != null)</TD></TR><TR><TD CLASS="l">184</TD><TD>      {  </TD></TR><TR CLASS="z"><TD CLASS="l">185</TD><TD>        reader.setProperty(&#34;http://apache.org/xml/properties/internal/entity-resolver&#34;, entityResolver); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">186</TD><TD>      }  </TD></TR><TR CLASS="z"><TD CLASS="l">187</TD><TD>      reader.setProperty(&#34;http://xml.org/sax/properties/declaration-handler&#34;, new MyDeclHandler());      //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">188</TD><TD>    } </TD></TR><TR CLASS="z"><TD CLASS="l">189</TD><TD>    catch(Exception e)</TD></TR><TR><TD CLASS="l">190</TD><TD>    { </TD></TR><TR CLASS="z"><TD CLASS="l">191</TD><TD>      Logger.logException(e);</TD></TR><TR><TD CLASS="l">192</TD><TD>      //e.printStackTrace();</TD></TR><TR><TD CLASS="l">193</TD><TD>    }</TD></TR><TR><TD CLASS="l">194</TD><TD>    finally</TD></TR><TR CLASS="z"><TD CLASS="l">195</TD><TD>    {</TD></TR><TR CLASS="z"><TD CLASS="l">196</TD><TD>      Thread.currentThread().setContextClassLoader(prevClassLoader);</TD></TR><TR CLASS="z"><TD CLASS="l">197</TD><TD>    }</TD></TR><TR CLASS="z"><TD CLASS="l">198</TD><TD>    return reader;</TD></TR><TR><TD CLASS="l">199</TD><TD>  }  </TD></TR><TR><TD CLASS="l">200</TD><TD> </TD></TR><TR><TD CLASS="l">201</TD><TD>  /**</TD></TR><TR><TD CLASS="l">202</TD><TD>   * Validate the file located at the given URI.</TD></TR><TR><TD CLASS="l">203</TD><TD>   * </TD></TR><TR><TD CLASS="l">204</TD><TD>   * @param uri The URI of the file to validate.</TD></TR><TR><TD CLASS="l"><A NAME="a">205</A></TD><TD>   * @return Returns an XML validation report.</TD></TR><TR><TD CLASS="l">206</TD><TD>   */</TD></TR><TR><TD CLASS="l">207</TD><TD>  public XMLValidationReport validate(String uri)</TD></TR><TR><TD CLASS="l">208</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">209</TD><TD>    return validate(uri, null, new XMLValidationConfiguration());  </TD></TR><TR><TD CLASS="l">210</TD><TD>  }</TD></TR><TR><TD CLASS="l"><A NAME="6">211</A></TD><TD> </TD></TR><TR><TD CLASS="l">212</TD><TD>  final String createStringForInputStream(InputStream inputStream)</TD></TR><TR><TD CLASS="l">213</TD><TD>  {</TD></TR><TR><TD CLASS="l">214</TD><TD>    // Here we are reading the file and storing to a stringbuffer.</TD></TR><TR CLASS="z"><TD CLASS="l">215</TD><TD>    StringBuffer fileString = new StringBuffer();</TD></TR><TR><TD CLASS="l">216</TD><TD>    try</TD></TR><TR><TD CLASS="l">217</TD><TD>    {</TD></TR><TR CLASS="z"><TD CLASS="l">218</TD><TD>      InputStreamReader inputReader = new InputStreamReader(inputStream, &#34;UTF-8&#34;);</TD></TR><TR CLASS="z"><TD CLASS="l">219</TD><TD>      BufferedReader reader = new BufferedReader(inputReader);</TD></TR><TR CLASS="z"><TD CLASS="l">220</TD><TD>      char[] chars = new char[1024];</TD></TR><TR CLASS="z"><TD CLASS="l">221</TD><TD>      int numberRead = reader.read(chars);</TD></TR><TR CLASS="z"><TD CLASS="l">222</TD><TD>      while (numberRead != -1)</TD></TR><TR><TD CLASS="l">223</TD><TD>      {</TD></TR><TR CLASS="z"><TD CLASS="l">224</TD><TD>        fileString.append(chars, 0, numberRead);</TD></TR><TR CLASS="z"><TD CLASS="l">225</TD><TD>        numberRead = reader.read(chars);</TD></TR><TR><TD CLASS="l">226</TD><TD>      }</TD></TR><TR><TD CLASS="l">227</TD><TD>    }</TD></TR><TR CLASS="z"><TD CLASS="l">228</TD><TD>    catch (Exception e)</TD></TR><TR><TD CLASS="l">229</TD><TD>    {</TD></TR><TR><TD CLASS="l">230</TD><TD>      //TODO: log error message</TD></TR><TR><TD CLASS="l">231</TD><TD>      //e.printStackTrace();</TD></TR><TR><TD CLASS="l">232</TD><TD>    }</TD></TR><TR CLASS="z"><TD CLASS="l">233</TD><TD>    return fileString.toString();</TD></TR><TR><TD CLASS="l">234</TD><TD>  }</TD></TR><TR><TD CLASS="l">235</TD><TD>  /**</TD></TR><TR><TD CLASS="l">236</TD><TD>   * Validate the inputStream</TD></TR><TR><TD CLASS="l">237</TD><TD>   * </TD></TR><TR><TD CLASS="l">238</TD><TD>   * @param uri The URI of the file to validate.</TD></TR><TR><TD CLASS="l">239</TD><TD>   * @param the inputStream of the file to validate</TD></TR><TR><TD CLASS="l"><A NAME="b">240</A></TD><TD>   * @return Returns an XML validation report.</TD></TR><TR><TD CLASS="l">241</TD><TD>   */</TD></TR><TR><TD CLASS="l">242</TD><TD>  public XMLValidationReport validate(String uri, InputStream inputStream)</TD></TR><TR><TD CLASS="l">243</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">244</TD><TD>        return validate(uri, inputStream, new XMLValidationConfiguration());</TD></TR><TR><TD CLASS="l">245</TD><TD>  }</TD></TR><TR><TD CLASS="l">246</TD><TD>  /**</TD></TR><TR><TD CLASS="l">247</TD><TD>   * Validate the inputStream</TD></TR><TR><TD CLASS="l">248</TD><TD>   * </TD></TR><TR><TD CLASS="l">249</TD><TD>   * @param uri </TD></TR><TR><TD CLASS="l">250</TD><TD>   *                 The URI of the file to validate.</TD></TR><TR><TD CLASS="l">251</TD><TD>   * @param inputstream</TD></TR><TR><TD CLASS="l">252</TD><TD>   *                 The inputStream of the file to validate</TD></TR><TR><TD CLASS="l">253</TD><TD>   * @param configuration</TD></TR><TR><TD CLASS="l">254</TD><TD>   *                 A configuration for this validation session.</TD></TR><TR><TD CLASS="l">255</TD><TD>   * @return </TD></TR><TR><TD CLASS="l"><A NAME="c">256</A></TD><TD>   *                 Returns an XML validation report.</TD></TR><TR><TD CLASS="l">257</TD><TD>   */</TD></TR><TR><TD CLASS="l">258</TD><TD>  public XMLValidationReport validate(String uri, InputStream inputStream, XMLValidationConfiguration configuration)</TD></TR><TR><TD CLASS="l">259</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">260</TD><TD>    return validate(uri, inputStream, configuration, null);  </TD></TR><TR><TD CLASS="l">261</TD><TD>  }</TD></TR><TR><TD CLASS="l">262</TD><TD> </TD></TR><TR><TD CLASS="l">263</TD><TD>  /**</TD></TR><TR><TD CLASS="l">264</TD><TD>   * Validate the inputStream</TD></TR><TR><TD CLASS="l">265</TD><TD>   * </TD></TR><TR><TD CLASS="l">266</TD><TD>   * @param uri </TD></TR><TR><TD CLASS="l">267</TD><TD>   *    The URI of the file to validate.</TD></TR><TR><TD CLASS="l">268</TD><TD>   * @param inputstream</TD></TR><TR><TD CLASS="l">269</TD><TD>   *    The inputStream of the file to validate</TD></TR><TR><TD CLASS="l">270</TD><TD>   * @param configuration</TD></TR><TR><TD CLASS="l">271</TD><TD>   *    A configuration for this validation session.</TD></TR><TR><TD CLASS="l">272</TD><TD>   * @param result</TD></TR><TR><TD CLASS="l">273</TD><TD>   *    The validation result</TD></TR><TR><TD CLASS="l">274</TD><TD>   * @return </TD></TR><TR><TD CLASS="l"><A NAME="d">275</A></TD><TD>   *    Returns an XML validation report.</TD></TR><TR><TD CLASS="l">276</TD><TD>   */</TD></TR><TR><TD CLASS="l">277</TD><TD>  public XMLValidationReport validate(String uri, InputStream inputStream, XMLValidationConfiguration configuration, ValidationResult result)</TD></TR><TR><TD CLASS="l">278</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">279</TD><TD>          return validate(uri, inputStream, configuration, null, null);</TD></TR><TR><TD CLASS="l">280</TD><TD>  }</TD></TR><TR><TD CLASS="l">281</TD><TD>  </TD></TR><TR><TD CLASS="l">282</TD><TD>  /**</TD></TR><TR><TD CLASS="l">283</TD><TD>   * Validate the inputStream</TD></TR><TR><TD CLASS="l">284</TD><TD>   * </TD></TR><TR><TD CLASS="l">285</TD><TD>   * @param uri </TD></TR><TR><TD CLASS="l">286</TD><TD>   *    The URI of the file to validate.</TD></TR><TR><TD CLASS="l">287</TD><TD>   * @param inputstream</TD></TR><TR><TD CLASS="l">288</TD><TD>   *    The inputStream of the file to validate</TD></TR><TR><TD CLASS="l">289</TD><TD>   * @param configuration</TD></TR><TR><TD CLASS="l">290</TD><TD>   *    A configuration for this validation session.</TD></TR><TR><TD CLASS="l">291</TD><TD>   * @param result</TD></TR><TR><TD CLASS="l">292</TD><TD>   *    The validation result</TD></TR><TR><TD CLASS="l">293</TD><TD>   * @param context</TD></TR><TR><TD CLASS="l">294</TD><TD>   *    The validation context   </TD></TR><TR><TD CLASS="l">295</TD><TD>   * @return </TD></TR><TR><TD CLASS="l"><A NAME="e">296</A></TD><TD>   *    Returns an XML validation report.</TD></TR><TR><TD CLASS="l">297</TD><TD>   */</TD></TR><TR><TD CLASS="l">298</TD><TD>  public XMLValidationReport validate(String uri, InputStream inputStream, XMLValidationConfiguration configuration, ValidationResult result, NestedValidatorContext context)</TD></TR><TR><TD CLASS="l">299</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">300</TD><TD>    String grammarFile = &#34;&#34;;</TD></TR><TR CLASS="z"><TD CLASS="l">301</TD><TD>    Reader reader1 = null; // Used for the preparse.</TD></TR><TR CLASS="z"><TD CLASS="l">302</TD><TD>    Reader reader2 = null; // Used for validation parse.</TD></TR><TR><TD CLASS="l">303</TD><TD>    </TD></TR><TR CLASS="z"><TD CLASS="l">304</TD><TD>    if (inputStream != null)</TD></TR><TR><TD CLASS="l">305</TD><TD>    {  </TD></TR><TR CLASS="z"><TD CLASS="l">306</TD><TD>      String string = createStringForInputStream(inputStream);</TD></TR><TR CLASS="z"><TD CLASS="l">307</TD><TD>      reader1 = new StringReader(string);</TD></TR><TR CLASS="z"><TD CLASS="l">308</TD><TD>      reader2 = new StringReader(string);</TD></TR><TR><TD CLASS="l">309</TD><TD>    } </TD></TR><TR><TD CLASS="l">310</TD><TD>        </TD></TR><TR CLASS="z"><TD CLASS="l">311</TD><TD>    XMLValidationInfo valinfo = new XMLValidationInfo(uri);</TD></TR><TR CLASS="z"><TD CLASS="l">312</TD><TD>    MyEntityResolver entityResolver = new MyEntityResolver(uriResolver, context); </TD></TR><TR CLASS="z"><TD CLASS="l">313</TD><TD>    ValidatorHelper helper = new ValidatorHelper(); </TD></TR><TR><TD CLASS="l">314</TD><TD>    try</TD></TR><TR><TD CLASS="l">315</TD><TD>    {  </TD></TR><TR CLASS="z"><TD CLASS="l">316</TD><TD>        helper.computeValidationInformation(uri, reader1, uriResolver);</TD></TR><TR CLASS="z"><TD CLASS="l">317</TD><TD>        valinfo.setDTDEncountered(helper.isDTDEncountered);</TD></TR><TR CLASS="z"><TD CLASS="l">318</TD><TD>        valinfo.setElementDeclarationCount(helper.numDTDElements);</TD></TR><TR CLASS="z"><TD CLASS="l">319</TD><TD>        valinfo.setNamespaceEncountered(helper.isNamespaceEncountered);</TD></TR><TR CLASS="z"><TD CLASS="l">320</TD><TD>        valinfo.setGrammarEncountered(helper.isGrammarEncountered);</TD></TR><TR><TD CLASS="l">321</TD><TD>        </TD></TR><TR CLASS="z"><TD CLASS="l">322</TD><TD>        XMLReader reader = createXMLReader(valinfo, entityResolver);</TD></TR><TR CLASS="z"><TD CLASS="l">323</TD><TD>        XMLErrorHandler errorhandler = new XMLErrorHandler(valinfo);</TD></TR><TR CLASS="z"><TD CLASS="l">324</TD><TD>        reader.setErrorHandler(errorhandler);</TD></TR><TR><TD CLASS="l">325</TD><TD>        </TD></TR><TR CLASS="z"><TD CLASS="l">326</TD><TD>        InputSource inputSource = new InputSource(uri);</TD></TR><TR CLASS="z"><TD CLASS="l">327</TD><TD>        inputSource.setCharacterStream(reader2);</TD></TR><TR CLASS="z"><TD CLASS="l">328</TD><TD>        reader.parse(inputSource);   </TD></TR><TR CLASS="z"><TD CLASS="l">329</TD><TD>        if(configuration.getIntFeature(XMLValidationConfiguration.INDICATE_NO_GRAMMAR) &gt; 0 &amp;&amp; </TD></TR><TR CLASS="z"><TD CLASS="l">330</TD><TD>                        valinfo.isValid() &amp;&amp; !helper.isGrammarEncountered)</TD></TR><TR><TD CLASS="l">331</TD><TD>        {</TD></TR><TR CLASS="z"><TD CLASS="l">332</TD><TD>          if(configuration.getIntFeature(XMLValidationConfiguration.INDICATE_NO_GRAMMAR) == 1)</TD></TR><TR CLASS="z"><TD CLASS="l">333</TD><TD>            valinfo.addWarning(XMLValidationMessages._WARN_NO_GRAMMAR, 1, 0, uri, NO_GRAMMAR_FOUND, null);</TD></TR><TR><TD CLASS="l">334</TD><TD>          else // 2</TD></TR><TR CLASS="z"><TD CLASS="l">335</TD><TD>              valinfo.addError(XMLValidationMessages._WARN_NO_GRAMMAR, 1, 0, uri, NO_GRAMMAR_FOUND, null);</TD></TR><TR><TD CLASS="l">336</TD><TD>        }</TD></TR><TR><TD CLASS="l">337</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">338</TD><TD>        if (helper.isDTDEncountered)</TD></TR><TR CLASS="z"><TD CLASS="l">339</TD><TD>          grammarFile = entityResolver.getLocation();</TD></TR><TR><TD CLASS="l">340</TD><TD>        else</TD></TR><TR CLASS="z"><TD CLASS="l">341</TD><TD>          grammarFile = helper.schemaLocationString;</TD></TR><TR><TD CLASS="l">342</TD><TD>    }</TD></TR><TR CLASS="z"><TD CLASS="l">343</TD><TD>    catch (SAXParseException saxParseException)</TD></TR><TR><TD CLASS="l">344</TD><TD>    {</TD></TR><TR><TD CLASS="l">345</TD><TD>      // These errors are caught by the error handler.</TD></TR><TR><TD CLASS="l">346</TD><TD>      //addValidationMessage(valinfo, saxParseException);</TD></TR><TR><TD CLASS="l">347</TD><TD>    }                 </TD></TR><TR CLASS="z"><TD CLASS="l">348</TD><TD>    catch (IOException ioException)</TD></TR><TR><TD CLASS="l">349</TD><TD>    {</TD></TR><TR CLASS="z"><TD CLASS="l">350</TD><TD>      addValidationMessage(valinfo, ioException);</TD></TR><TR><TD CLASS="l">351</TD><TD>    }                 </TD></TR><TR CLASS="z"><TD CLASS="l">352</TD><TD>    catch (Exception exception)</TD></TR><TR><TD CLASS="l">353</TD><TD>    {  </TD></TR><TR CLASS="z"><TD CLASS="l">354</TD><TD>            Logger.logException(exception.getLocalizedMessage(), exception);</TD></TR><TR><TD CLASS="l">355</TD><TD>    }</TD></TR><TR><TD CLASS="l">356</TD><TD> </TD></TR><TR><TD CLASS="l">357</TD><TD>    // Now set up the dependencies</TD></TR><TR><TD CLASS="l">358</TD><TD>    // Wrap with try catch so that if something wrong happens, validation can</TD></TR><TR><TD CLASS="l">359</TD><TD>    // still proceed as before</TD></TR><TR CLASS="z"><TD CLASS="l">360</TD><TD>    if (result != null)</TD></TR><TR><TD CLASS="l">361</TD><TD>    {</TD></TR><TR><TD CLASS="l">362</TD><TD>      try</TD></TR><TR><TD CLASS="l">363</TD><TD>      {</TD></TR><TR CLASS="z"><TD CLASS="l">364</TD><TD>        IResource resource = getWorkspaceFileFromLocation(grammarFile);</TD></TR><TR CLASS="z"><TD CLASS="l">365</TD><TD>        ArrayList resources = new ArrayList();</TD></TR><TR CLASS="z"><TD CLASS="l">366</TD><TD>        if (resource != null)</TD></TR><TR CLASS="z"><TD CLASS="l">367</TD><TD>          resources.add(resource);</TD></TR><TR CLASS="z"><TD CLASS="l">368</TD><TD>        result.setDependsOn((IResource [])resources.toArray(new IResource [0]));</TD></TR><TR><TD CLASS="l">369</TD><TD>      }</TD></TR><TR CLASS="z"><TD CLASS="l">370</TD><TD>      catch (Exception e)</TD></TR><TR><TD CLASS="l">371</TD><TD>      {</TD></TR><TR CLASS="z"><TD CLASS="l">372</TD><TD>        Logger.logException(e.getLocalizedMessage(), e);</TD></TR><TR><TD CLASS="l">373</TD><TD>      }</TD></TR><TR><TD CLASS="l">374</TD><TD>    }</TD></TR><TR><TD CLASS="l">375</TD><TD>    </TD></TR><TR CLASS="z"><TD CLASS="l">376</TD><TD>    return valinfo;</TD></TR><TR><TD CLASS="l">377</TD><TD>       </TD></TR><TR><TD CLASS="l">378</TD><TD>  }</TD></TR><TR><TD CLASS="l">379</TD><TD> </TD></TR><TR><TD CLASS="l">380</TD><TD>  /**</TD></TR><TR><TD CLASS="l">381</TD><TD>   * Add a validation message to the specified list.</TD></TR><TR><TD CLASS="l">382</TD><TD>   * </TD></TR><TR><TD CLASS="l">383</TD><TD>   * @param valinfo The validation info object to add the error to.</TD></TR><TR><TD CLASS="l"><A NAME="4">384</A></TD><TD>   * @param exception The exception that contains the validation information.</TD></TR><TR><TD CLASS="l">385</TD><TD>   */</TD></TR><TR><TD CLASS="l">386</TD><TD>  protected void addValidationMessage(XMLValidationInfo valinfo, IOException exception)</TD></TR><TR><TD CLASS="l">387</TD><TD>  { </TD></TR><TR CLASS="z"><TD CLASS="l">388</TD><TD>    String validationMessageStr = exception.getMessage();</TD></TR><TR CLASS="z"><TD CLASS="l">389</TD><TD>        Throwable cause = exception.getCause() != null ? exception.getCause() : exception;</TD></TR><TR CLASS="z"><TD CLASS="l">390</TD><TD>        while(validationMessageStr == null &amp;&amp; cause != null){</TD></TR><TR CLASS="z"><TD CLASS="l">391</TD><TD>                String localizedMessage = cause.getLocalizedMessage();</TD></TR><TR CLASS="z"><TD CLASS="l">392</TD><TD>            cause = cause.getCause();</TD></TR><TR CLASS="z"><TD CLASS="l">393</TD><TD>            if(cause == null &amp;&amp; localizedMessage != null )</TD></TR><TR><TD CLASS="l">394</TD><TD>            {</TD></TR><TR CLASS="z"><TD CLASS="l">395</TD><TD>              validationMessageStr = localizedMessage;</TD></TR><TR><TD CLASS="l">396</TD><TD>            }</TD></TR><TR><TD CLASS="l">397</TD><TD>        }</TD></TR><TR><TD CLASS="l">398</TD><TD>        </TD></TR><TR CLASS="z"><TD CLASS="l">399</TD><TD>        if (validationMessageStr != null)</TD></TR><TR><TD CLASS="l">400</TD><TD>    {</TD></TR><TR CLASS="z"><TD CLASS="l">401</TD><TD>      if (cause instanceof FileNotFoundException)</TD></TR><TR><TD CLASS="l">402</TD><TD>      {</TD></TR><TR CLASS="z"><TD CLASS="l">403</TD><TD>        validationMessageStr = NLS.bind(XMLValidationMessages._UI_PROBLEMS_VALIDATING_FILE_NOT_FOUND, new Object [] { validationMessageStr });</TD></TR><TR><TD CLASS="l">404</TD><TD>      }</TD></TR><TR CLASS="z"><TD CLASS="l">405</TD><TD>      else if (cause instanceof UnknownHostException)</TD></TR><TR><TD CLASS="l">406</TD><TD>      {</TD></TR><TR CLASS="z"><TD CLASS="l">407</TD><TD>            validationMessageStr = NLS.bind(XMLValidationMessages._UI_PROBLEMS_VALIDATING_UNKNOWN_HOST, new Object [] { validationMessageStr });</TD></TR><TR><TD CLASS="l">408</TD><TD>      }</TD></TR><TR CLASS="z"><TD CLASS="l">409</TD><TD>      else if(cause instanceof ConnectException)</TD></TR><TR><TD CLASS="l">410</TD><TD>      {</TD></TR><TR CLASS="z"><TD CLASS="l">411</TD><TD>            validationMessageStr = XMLValidationMessages._UI_PROBLEMS_CONNECTION_REFUSED;</TD></TR><TR><TD CLASS="l">412</TD><TD>      }</TD></TR><TR><TD CLASS="l">413</TD><TD>    }</TD></TR><TR><TD CLASS="l">414</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">415</TD><TD>    if (validationMessageStr != null)</TD></TR><TR><TD CLASS="l">416</TD><TD>    {</TD></TR><TR CLASS="z"><TD CLASS="l">417</TD><TD>      XMLLocator locator = valinfo.getXMLLocator();</TD></TR><TR CLASS="z"><TD CLASS="l">418</TD><TD>      valinfo.addWarning(validationMessageStr, locator != null ? locator.getLineNumber() : 1, locator != null ? locator.getColumnNumber() : 0, valinfo.getFileURI(), FILE_NOT_FOUND_KEY, null);</TD></TR><TR><TD CLASS="l">419</TD><TD>    }</TD></TR><TR CLASS="z"><TD CLASS="l">420</TD><TD>  }</TD></TR><TR><TD CLASS="l">421</TD><TD>                                                                    </TD></TR><TR><TD CLASS="l">422</TD><TD>  /**</TD></TR><TR><TD CLASS="l">423</TD><TD>   * Add a validation message to the specified list.</TD></TR><TR><TD CLASS="l">424</TD><TD>   * </TD></TR><TR><TD CLASS="l">425</TD><TD>   * @param valinfo The validation info object to add the error to.</TD></TR><TR><TD CLASS="l"><A NAME="5">426</A></TD><TD>   * @param exception The exception that contains the validation information.</TD></TR><TR><TD CLASS="l">427</TD><TD>   */</TD></TR><TR><TD CLASS="l">428</TD><TD>  protected void addValidationMessage(XMLValidationInfo valinfo, SAXParseException exception)</TD></TR><TR><TD CLASS="l">429</TD><TD>  { </TD></TR><TR CLASS="z"><TD CLASS="l">430</TD><TD>    if (exception.getMessage() != null)</TD></TR><TR><TD CLASS="l">431</TD><TD>    { </TD></TR><TR CLASS="z"><TD CLASS="l">432</TD><TD>      valinfo.addError(exception.getLocalizedMessage(), exception.getLineNumber(), exception.getColumnNumber(), exception.getSystemId());</TD></TR><TR><TD CLASS="l">433</TD><TD>    }</TD></TR><TR CLASS="z"><TD CLASS="l">434</TD><TD>  }</TD></TR><TR><TD CLASS="l">435</TD><TD> </TD></TR><TR><TD CLASS="l">436</TD><TD>  </TD></TR><TR><TD CLASS="l">437</TD><TD>  /**</TD></TR><TR><TD CLASS="l">438</TD><TD>   * A custom entity resolver that uses the URI resolver specified to resolve entities.</TD></TR><TR><TD CLASS="l">439</TD><TD>   */</TD></TR><TR><TD CLASS="l">440</TD><TD>  protected class MyEntityResolver implements XMLEntityResolver </TD></TR><TR><TD CLASS="l">441</TD><TD>  {</TD></TR><TR><TD CLASS="l">442</TD><TD>    private URIResolver uriResolver;</TD></TR><TR><TD CLASS="l">443</TD><TD>    private String resolvedDTDLocation;</TD></TR><TR><TD CLASS="l">444</TD><TD>    private NestedValidatorContext context;</TD></TR><TR><TD CLASS="l">445</TD><TD>   </TD></TR><TR><TD CLASS="l">446</TD><TD>    /**</TD></TR><TR><TD CLASS="l">447</TD><TD>     * Constructor.</TD></TR><TR><TD CLASS="l"><A NAME="25">448</A></TD><TD>     * </TD></TR><TR><TD CLASS="l">449</TD><TD>     * @param uriResolver The URI resolver to use with this entity resolver.</TD></TR><TR><TD CLASS="l">450</TD><TD>     * @param context The XML validator context.</TD></TR><TR><TD CLASS="l">451</TD><TD>     */</TD></TR><TR CLASS="z"><TD CLASS="l">452</TD><TD>    public MyEntityResolver(URIResolver uriResolver, NestedValidatorContext context)</TD></TR><TR><TD CLASS="l">453</TD><TD>    {</TD></TR><TR CLASS="z"><TD CLASS="l">454</TD><TD>      this.uriResolver = uriResolver;</TD></TR><TR CLASS="z"><TD CLASS="l">455</TD><TD>      this.context = context;</TD></TR><TR CLASS="z"><TD CLASS="l">456</TD><TD>    }</TD></TR><TR><TD CLASS="l">457</TD><TD>    </TD></TR><TR><TD CLASS="l">458</TD><TD>    /* (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="28">459</A></TD><TD>     * @see org.apache.xerces.xni.parser.XMLEntityResolver#resolveEntity(org.apache.xerces.xni.XMLResourceIdentifier)</TD></TR><TR><TD CLASS="l">460</TD><TD>     */</TD></TR><TR><TD CLASS="l">461</TD><TD>    public XMLInputSource resolveEntity(XMLResourceIdentifier rid) throws XNIException, IOException</TD></TR><TR><TD CLASS="l">462</TD><TD>    {</TD></TR><TR CLASS="z"><TD CLASS="l">463</TD><TD>        XMLInputSource inputSource = _internalResolveEntity(uriResolver, rid, context);</TD></TR><TR CLASS="z"><TD CLASS="l">464</TD><TD>        if (inputSource != null)</TD></TR><TR><TD CLASS="l">465</TD><TD>        {</TD></TR><TR CLASS="z"><TD CLASS="l">466</TD><TD>          resolvedDTDLocation = inputSource.getSystemId();</TD></TR><TR><TD CLASS="l">467</TD><TD>        }</TD></TR><TR CLASS="z"><TD CLASS="l">468</TD><TD>        return inputSource;</TD></TR><TR><TD CLASS="l"><A NAME="27">469</A></TD><TD>    }</TD></TR><TR><TD CLASS="l">470</TD><TD>   </TD></TR><TR><TD CLASS="l">471</TD><TD>    public String getLocation()</TD></TR><TR><TD CLASS="l">472</TD><TD>    {</TD></TR><TR CLASS="z"><TD CLASS="l">473</TD><TD>      return resolvedDTDLocation;</TD></TR><TR><TD CLASS="l">474</TD><TD>    }</TD></TR><TR><TD CLASS="l">475</TD><TD>  }</TD></TR><TR><TD CLASS="l">476</TD><TD>  </TD></TR><TR><TD CLASS="l">477</TD><TD>  // cs : I've refactored the common SAX based resolution code into this method for use by other validators </TD></TR><TR><TD CLASS="l"><A NAME="2">478</A></TD><TD>  // (i.e. XML Schema, WSDL etc).   The other approach is maintain a copy for each validator that has</TD></TR><TR><TD CLASS="l">479</TD><TD>  // identical code.  In any case we should strive to ensure that the validators perform resolution consistently. </TD></TR><TR><TD CLASS="l">480</TD><TD>  public static XMLInputSource _internalResolveEntity(URIResolver uriResolver, XMLResourceIdentifier rid) throws  IOException</TD></TR><TR><TD CLASS="l">481</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">482</TD><TD>    return _internalResolveEntity(uriResolver, rid, null);</TD></TR><TR><TD CLASS="l"><A NAME="3">483</A></TD><TD>  }</TD></TR><TR><TD CLASS="l">484</TD><TD>  </TD></TR><TR><TD CLASS="l">485</TD><TD>  public static XMLInputSource _internalResolveEntity(URIResolver uriResolver, XMLResourceIdentifier rid, NestedValidatorContext context) throws  IOException</TD></TR><TR><TD CLASS="l">486</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">487</TD><TD>    XMLInputSource is = null;</TD></TR><TR><TD CLASS="l">488</TD><TD>    </TD></TR><TR CLASS="z"><TD CLASS="l">489</TD><TD>    if (uriResolver != null)</TD></TR><TR><TD CLASS="l">490</TD><TD>    {         </TD></TR><TR CLASS="z"><TD CLASS="l">491</TD><TD>      String id = rid.getPublicId();</TD></TR><TR CLASS="z"><TD CLASS="l">492</TD><TD>      if(id == null)</TD></TR><TR><TD CLASS="l">493</TD><TD>      {</TD></TR><TR CLASS="z"><TD CLASS="l">494</TD><TD>        id = rid.getNamespace();</TD></TR><TR><TD CLASS="l">495</TD><TD>      }</TD></TR><TR><TD CLASS="l">496</TD><TD>      </TD></TR><TR CLASS="z"><TD CLASS="l">497</TD><TD>      String location = null;</TD></TR><TR CLASS="z"><TD CLASS="l">498</TD><TD>      if (id != null || rid.getLiteralSystemId() != null)</TD></TR><TR><TD CLASS="l">499</TD><TD>      {  </TD></TR><TR CLASS="z"><TD CLASS="l">500</TD><TD>        location = uriResolver.resolve(rid.getBaseSystemId(), id, rid.getLiteralSystemId());</TD></TR><TR><TD CLASS="l">501</TD><TD>      }  </TD></TR><TR><TD CLASS="l">502</TD><TD>      </TD></TR><TR CLASS="z"><TD CLASS="l">503</TD><TD>      if (location != null)</TD></TR><TR><TD CLASS="l">504</TD><TD>      {                     </TD></TR><TR CLASS="z"><TD CLASS="l">505</TD><TD>        String physical = uriResolver.resolvePhysicalLocation(rid.getBaseSystemId(), id, location);</TD></TR><TR><TD CLASS="l">506</TD><TD> </TD></TR><TR><TD CLASS="l">507</TD><TD>        // if physical is already a known bad uri, just go ahead and throw an exception</TD></TR><TR CLASS="z"><TD CLASS="l">508</TD><TD>        if (context instanceof XMLNestedValidatorContext)</TD></TR><TR><TD CLASS="l">509</TD><TD>        {</TD></TR><TR CLASS="z"><TD CLASS="l">510</TD><TD>          XMLNestedValidatorContext xmlContext = ((XMLNestedValidatorContext)context);</TD></TR><TR><TD CLASS="l">511</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">512</TD><TD>          if (xmlContext.isURIMarkedInaccessible(physical))</TD></TR><TR><TD CLASS="l">513</TD><TD>          {</TD></TR><TR CLASS="z"><TD CLASS="l">514</TD><TD>                 throw new FileNotFoundException(physical);</TD></TR><TR><TD CLASS="l">515</TD><TD>          }</TD></TR><TR><TD CLASS="l">516</TD><TD>        }</TD></TR><TR><TD CLASS="l">517</TD><TD>        </TD></TR><TR CLASS="z"><TD CLASS="l">518</TD><TD>        is = new XMLInputSource(rid.getPublicId(), location, location);</TD></TR><TR><TD CLASS="l">519</TD><TD>        </TD></TR><TR><TD CLASS="l">520</TD><TD>        // This block checks that the file exists. If it doesn't we need to throw</TD></TR><TR><TD CLASS="l">521</TD><TD>        // an exception so Xerces will report an error. note: This may not be</TD></TR><TR><TD CLASS="l">522</TD><TD>        // necessary with all versions of Xerces but has specifically been </TD></TR><TR><TD CLASS="l">523</TD><TD>        // experienced with the version included in IBM's 1.4.2 JDK.</TD></TR><TR CLASS="z"><TD CLASS="l">524</TD><TD>        InputStream isTemp = null;</TD></TR><TR><TD CLASS="l">525</TD><TD>        try</TD></TR><TR><TD CLASS="l">526</TD><TD>        {</TD></TR><TR CLASS="z"><TD CLASS="l">527</TD><TD>          isTemp = new URL(physical).openStream();</TD></TR><TR><TD CLASS="l">528</TD><TD>        }</TD></TR><TR CLASS="z"><TD CLASS="l">529</TD><TD>        catch (IOException e)</TD></TR><TR><TD CLASS="l">530</TD><TD>        {</TD></TR><TR><TD CLASS="l">531</TD><TD>          // physical was a bad url, so cache it so we know next time</TD></TR><TR CLASS="z"><TD CLASS="l">532</TD><TD>          if (context instanceof XMLNestedValidatorContext)</TD></TR><TR><TD CLASS="l">533</TD><TD>          {</TD></TR><TR CLASS="z"><TD CLASS="l">534</TD><TD>            XMLNestedValidatorContext xmlContext = ((XMLNestedValidatorContext)context);</TD></TR><TR CLASS="z"><TD CLASS="l">535</TD><TD>            xmlContext.markURIInaccessible(physical);</TD></TR><TR><TD CLASS="l">536</TD><TD>          }</TD></TR><TR CLASS="z"><TD CLASS="l">537</TD><TD>          throw e;</TD></TR><TR><TD CLASS="l">538</TD><TD>        }</TD></TR><TR><TD CLASS="l">539</TD><TD>        finally</TD></TR><TR CLASS="z"><TD CLASS="l">540</TD><TD>        {</TD></TR><TR CLASS="z"><TD CLASS="l">541</TD><TD>          if(isTemp != null)</TD></TR><TR><TD CLASS="l">542</TD><TD>          {</TD></TR><TR CLASS="z"><TD CLASS="l">543</TD><TD>            isTemp.close();</TD></TR><TR><TD CLASS="l">544</TD><TD>          }</TD></TR><TR CLASS="z"><TD CLASS="l">545</TD><TD>        }</TD></TR><TR CLASS="z"><TD CLASS="l">546</TD><TD>        is.setByteStream(new LazyURLInputStream(physical));      </TD></TR><TR><TD CLASS="l">547</TD><TD>      }</TD></TR><TR><TD CLASS="l">548</TD><TD>    }</TD></TR><TR CLASS="z"><TD CLASS="l">549</TD><TD>    return is;    </TD></TR><TR><TD CLASS="l">550</TD><TD>  }      </TD></TR><TR><TD CLASS="l">551</TD><TD>  </TD></TR><TR><TD CLASS="l">552</TD><TD>  /**</TD></TR><TR><TD CLASS="l">553</TD><TD>   * An error handler to catch errors encountered while parsing the XML document.</TD></TR><TR><TD CLASS="l">554</TD><TD>   */</TD></TR><TR><TD CLASS="l">555</TD><TD>  protected class XMLErrorHandler implements org.xml.sax.ErrorHandler</TD></TR><TR><TD CLASS="l">556</TD><TD>  {</TD></TR><TR><TD CLASS="l">557</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">558</TD><TD>    private final int ERROR = 0;</TD></TR><TR CLASS="z"><TD CLASS="l">559</TD><TD>    private final int WARNING = 1;</TD></TR><TR><TD CLASS="l">560</TD><TD>    private XMLValidationInfo valinfo;</TD></TR><TR><TD CLASS="l">561</TD><TD>    </TD></TR><TR><TD CLASS="l">562</TD><TD>    /**</TD></TR><TR><TD CLASS="l"><A NAME="2c">563</A></TD><TD>     * Constructor.</TD></TR><TR><TD CLASS="l">564</TD><TD>     * </TD></TR><TR><TD CLASS="l">565</TD><TD>     * @param valinfo The XML validation info object that will hold the validation messages.</TD></TR><TR><TD CLASS="l">566</TD><TD>     */</TD></TR><TR CLASS="z"><TD CLASS="l">567</TD><TD>    public XMLErrorHandler(XMLValidationInfo valinfo)</TD></TR><TR><TD CLASS="l">568</TD><TD>    {</TD></TR><TR CLASS="z"><TD CLASS="l">569</TD><TD>      this.valinfo = valinfo;</TD></TR><TR CLASS="z"><TD CLASS="l">570</TD><TD>    }</TD></TR><TR><TD CLASS="l">571</TD><TD> </TD></TR><TR><TD CLASS="l">572</TD><TD>    /**</TD></TR><TR><TD CLASS="l">573</TD><TD>     * Add a validation message with the given severity.</TD></TR><TR><TD CLASS="l">574</TD><TD>     * </TD></TR><TR><TD CLASS="l">575</TD><TD>     * @param exception The exception that contains the message.</TD></TR><TR><TD CLASS="l">576</TD><TD>     * @param severity The severity of the message.</TD></TR><TR><TD CLASS="l"><A NAME="2e">577</A></TD><TD>     */</TD></TR><TR><TD CLASS="l">578</TD><TD>    </TD></TR><TR><TD CLASS="l">579</TD><TD>    protected void addValidationMessage(SAXParseException exception, int severity)</TD></TR><TR><TD CLASS="l">580</TD><TD>    {</TD></TR><TR CLASS="z"><TD CLASS="l">581</TD><TD>      if(exception.getSystemId() != null)</TD></TR><TR><TD CLASS="l">582</TD><TD>      {               </TD></TR><TR CLASS="z"><TD CLASS="l">583</TD><TD>            int lineNumber = exception.getLineNumber();</TD></TR><TR CLASS="z"><TD CLASS="l">584</TD><TD>            int columnNumber = exception.getColumnNumber();</TD></TR><TR><TD CLASS="l">585</TD><TD>            </TD></TR><TR><TD CLASS="l">586</TD><TD>            // For the following three errors the line number will be modified to use that of the start</TD></TR><TR><TD CLASS="l">587</TD><TD>            // tag instead of the end tag.</TD></TR><TR CLASS="z"><TD CLASS="l">588</TD><TD>            String currentErrorKey = valinfo.currentErrorKey;</TD></TR><TR CLASS="z"><TD CLASS="l">589</TD><TD>            if (currentErrorKey != null &amp;&amp; adjustLocationErrorKeySet.contains(currentErrorKey))  </TD></TR><TR><TD CLASS="l">590</TD><TD>            {</TD></TR><TR CLASS="z"><TD CLASS="l">591</TD><TD>              LocationCoordinate adjustedCoordinates = (LocationCoordinate)valinfo.getStartElementLocations().peek();</TD></TR><TR CLASS="z"><TD CLASS="l">592</TD><TD>              lineNumber = adjustedCoordinates.getLineNumber();</TD></TR><TR CLASS="z"><TD CLASS="l">593</TD><TD>              columnNumber = adjustedCoordinates.getColumnNumner();</TD></TR><TR><TD CLASS="l">594</TD><TD>            }</TD></TR><TR><TD CLASS="l">595</TD><TD>            </TD></TR><TR CLASS="z"><TD CLASS="l">596</TD><TD>        if(severity == WARNING)</TD></TR><TR><TD CLASS="l">597</TD><TD>        {</TD></TR><TR CLASS="z"><TD CLASS="l">598</TD><TD>          valinfo.addWarning(exception.getLocalizedMessage(), lineNumber, columnNumber, exception.getSystemId());</TD></TR><TR><TD CLASS="l">599</TD><TD>        }</TD></TR><TR><TD CLASS="l">600</TD><TD>        else</TD></TR><TR><TD CLASS="l">601</TD><TD>        {</TD></TR><TR CLASS="z"><TD CLASS="l">602</TD><TD>          valinfo.addError(exception.getLocalizedMessage(), lineNumber, columnNumber, exception.getSystemId(), valinfo.getCurrentErrorKey(), valinfo.getMessageArguments());</TD></TR><TR><TD CLASS="l">603</TD><TD>        }</TD></TR><TR><TD CLASS="l">604</TD><TD>      }</TD></TR><TR CLASS="z"><TD CLASS="l">605</TD><TD>    }</TD></TR><TR><TD CLASS="l">606</TD><TD> </TD></TR><TR><TD CLASS="l">607</TD><TD>    /* (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="2f">608</A></TD><TD>     * @see org.xml.sax.ErrorHandler#error(org.xml.sax.SAXParseException)</TD></TR><TR><TD CLASS="l">609</TD><TD>     */</TD></TR><TR><TD CLASS="l">610</TD><TD>    public void error(SAXParseException exception) throws SAXException</TD></TR><TR><TD CLASS="l">611</TD><TD>    {</TD></TR><TR CLASS="z"><TD CLASS="l">612</TD><TD>      addValidationMessage(exception, ERROR);</TD></TR><TR CLASS="z"><TD CLASS="l">613</TD><TD>    }</TD></TR><TR><TD CLASS="l">614</TD><TD> </TD></TR><TR><TD CLASS="l">615</TD><TD>    /* (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="30">616</A></TD><TD>     * @see org.xml.sax.ErrorHandler#fatalError(org.xml.sax.SAXParseException)</TD></TR><TR><TD CLASS="l">617</TD><TD>     */</TD></TR><TR><TD CLASS="l">618</TD><TD>    public void fatalError(SAXParseException exception) throws SAXException</TD></TR><TR><TD CLASS="l">619</TD><TD>    {</TD></TR><TR CLASS="z"><TD CLASS="l">620</TD><TD>      addValidationMessage(exception, ERROR);</TD></TR><TR CLASS="z"><TD CLASS="l">621</TD><TD>    }</TD></TR><TR><TD CLASS="l">622</TD><TD> </TD></TR><TR><TD CLASS="l">623</TD><TD>    /* (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="31">624</A></TD><TD>     * @see org.xml.sax.ErrorHandler#warning(org.xml.sax.SAXParseException)</TD></TR><TR><TD CLASS="l">625</TD><TD>     */</TD></TR><TR><TD CLASS="l">626</TD><TD>    public void warning(SAXParseException exception) throws SAXException</TD></TR><TR><TD CLASS="l">627</TD><TD>    {</TD></TR><TR CLASS="z"><TD CLASS="l">628</TD><TD>      addValidationMessage(exception, WARNING);</TD></TR><TR CLASS="z"><TD CLASS="l">629</TD><TD>    }</TD></TR><TR><TD CLASS="l">630</TD><TD>  }</TD></TR><TR><TD CLASS="l">631</TD><TD>                                                                          </TD></TR><TR><TD CLASS="l">632</TD><TD>  /** </TD></TR><TR><TD CLASS="l">633</TD><TD>   * This class is used to count the elementDecls that are encountered in a DTD.</TD></TR><TR><TD CLASS="l">634</TD><TD>   */</TD></TR><TR><TD CLASS="l">635</TD><TD>  protected class MyDeclHandler implements DeclHandler </TD></TR><TR><TD CLASS="l">636</TD><TD>  {</TD></TR><TR><TD CLASS="l">637</TD><TD>    </TD></TR><TR><TD CLASS="l">638</TD><TD>    /**</TD></TR><TR><TD CLASS="l"><A NAME="1f">639</A></TD><TD>     * Constructor.</TD></TR><TR><TD CLASS="l">640</TD><TD>     * </TD></TR><TR><TD CLASS="l">641</TD><TD>     * @param valinfo The XMLValidationInfo object that will count the declarations.</TD></TR><TR><TD CLASS="l">642</TD><TD>     */</TD></TR><TR CLASS="z"><TD CLASS="l">643</TD><TD>    public MyDeclHandler()</TD></TR><TR><TD CLASS="l">644</TD><TD>    {</TD></TR><TR CLASS="z"><TD CLASS="l">645</TD><TD>    }</TD></TR><TR><TD CLASS="l">646</TD><TD>    </TD></TR><TR><TD CLASS="l">647</TD><TD>    /* (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="21">648</A></TD><TD>     * @see org.xml.sax.ext.DeclHandler#attributeDecl(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String)</TD></TR><TR><TD CLASS="l">649</TD><TD>     */</TD></TR><TR><TD CLASS="l">650</TD><TD>    public void attributeDecl(String eName, String aName, String type, String valueDefault, String value) </TD></TR><TR><TD CLASS="l">651</TD><TD>    {</TD></TR><TR CLASS="z"><TD CLASS="l">652</TD><TD>    }                                    </TD></TR><TR><TD CLASS="l">653</TD><TD> </TD></TR><TR><TD CLASS="l">654</TD><TD>    /* (non-Javadoc)</TD></TR><TR><TD CLASS="l">655</TD><TD>     * @see org.xml.sax.ext.DeclHandler#elementDecl(java.lang.String, java.lang.String)</TD></TR><TR><TD CLASS="l"><A NAME="22">656</A></TD><TD>     */</TD></TR><TR><TD CLASS="l">657</TD><TD>    public void elementDecl(String name, String model) </TD></TR><TR><TD CLASS="l">658</TD><TD>    {</TD></TR><TR><TD CLASS="l">659</TD><TD>      //valinfo.increaseElementDeclarationCount();</TD></TR><TR CLASS="z"><TD CLASS="l">660</TD><TD>    }</TD></TR><TR><TD CLASS="l">661</TD><TD>  </TD></TR><TR><TD CLASS="l">662</TD><TD>    /* (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="23">663</A></TD><TD>     * @see org.xml.sax.ext.DeclHandler#externalEntityDecl(java.lang.String, java.lang.String, java.lang.String)</TD></TR><TR><TD CLASS="l">664</TD><TD>     */</TD></TR><TR><TD CLASS="l">665</TD><TD>    public void externalEntityDecl(String name, String publicId, String systemId) </TD></TR><TR><TD CLASS="l">666</TD><TD>    {</TD></TR><TR CLASS="z"><TD CLASS="l">667</TD><TD>    }      </TD></TR><TR><TD CLASS="l">668</TD><TD> </TD></TR><TR><TD CLASS="l">669</TD><TD>    /* (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="24">670</A></TD><TD>     * @see org.xml.sax.ext.DeclHandler#internalEntityDecl(java.lang.String, java.lang.String)</TD></TR><TR><TD CLASS="l">671</TD><TD>     */</TD></TR><TR><TD CLASS="l">672</TD><TD>    public void internalEntityDecl(String name, String value) </TD></TR><TR><TD CLASS="l">673</TD><TD>    {</TD></TR><TR CLASS="z"><TD CLASS="l">674</TD><TD>    }</TD></TR><TR><TD CLASS="l">675</TD><TD>  }</TD></TR><TR><TD CLASS="l">676</TD><TD> </TD></TR><TR><TD CLASS="l">677</TD><TD>  /**</TD></TR><TR><TD CLASS="l">678</TD><TD>   * A XIncludeAwareParserConfiguration that creates an error reporter which can ignore</TD></TR><TR><TD CLASS="l">679</TD><TD>   * DTD error messages for DTD's with no elements defined.</TD></TR><TR><TD CLASS="l">680</TD><TD>   */</TD></TR><TR><TD CLASS="l">681</TD><TD> </TD></TR><TR><TD CLASS="l">682</TD><TD>  protected class MyStandardParserConfiguration extends XIncludeAwareParserConfiguration</TD></TR><TR><TD CLASS="l">683</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">684</TD><TD>          XMLValidationInfo valinfo = null;</TD></TR><TR CLASS="z"><TD CLASS="l">685</TD><TD>    List reportedExceptions = new ArrayList(); </TD></TR><TR><TD CLASS="l">686</TD><TD>          </TD></TR><TR><TD CLASS="l">687</TD><TD>          /**</TD></TR><TR><TD CLASS="l"><A NAME="29">688</A></TD><TD>           * Constructor.</TD></TR><TR><TD CLASS="l">689</TD><TD>           * </TD></TR><TR><TD CLASS="l">690</TD><TD>           * @param valinfo The XMLValidationInfo object to use.</TD></TR><TR><TD CLASS="l">691</TD><TD>           */</TD></TR><TR CLASS="z"><TD CLASS="l">692</TD><TD>          public MyStandardParserConfiguration(XMLValidationInfo valinfo)</TD></TR><TR><TD CLASS="l">693</TD><TD>          {</TD></TR><TR CLASS="z"><TD CLASS="l">694</TD><TD>            this.valinfo = valinfo;</TD></TR><TR><TD CLASS="l">695</TD><TD>            </TD></TR><TR CLASS="z"><TD CLASS="l">696</TD><TD>            XMLErrorReporter errorReporter = createErrorReporter();</TD></TR><TR CLASS="z"><TD CLASS="l">697</TD><TD>      if (errorReporter.getMessageFormatter(XMLMessageFormatter.XML_DOMAIN) == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">698</TD><TD>          XMLMessageFormatter xmft = new XMLMessageFormatter();</TD></TR><TR CLASS="z"><TD CLASS="l">699</TD><TD>          errorReporter.putMessageFormatter(XMLMessageFormatter.XML_DOMAIN, xmft);</TD></TR><TR CLASS="z"><TD CLASS="l">700</TD><TD>          errorReporter.putMessageFormatter(XMLMessageFormatter.XMLNS_DOMAIN, xmft);</TD></TR><TR><TD CLASS="l">701</TD><TD>      }            </TD></TR><TR CLASS="z"><TD CLASS="l">702</TD><TD>      fErrorReporter = errorReporter;</TD></TR><TR CLASS="z"><TD CLASS="l">703</TD><TD>          setProperty(ERROR_REPORTER, errorReporter);</TD></TR><TR CLASS="z"><TD CLASS="l">704</TD><TD>          fCommonComponents.remove(fErrorReporter);</TD></TR><TR CLASS="z"><TD CLASS="l">705</TD><TD>          fCommonComponents.add(fErrorReporter);</TD></TR><TR CLASS="z"><TD CLASS="l">706</TD><TD>          }</TD></TR><TR><TD CLASS="l">707</TD><TD> </TD></TR><TR><TD CLASS="l">708</TD><TD>    /* (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="f">709</A></TD><TD>     * @see org.apache.xerces.parsers.DTDConfiguration#createErrorReporter()</TD></TR><TR><TD CLASS="l">710</TD><TD>     */</TD></TR><TR><TD CLASS="l">711</TD><TD>    protected XMLErrorReporter createErrorReporter() </TD></TR><TR><TD CLASS="l">712</TD><TD>    {</TD></TR><TR CLASS="z"><TD CLASS="l">713</TD><TD>            return new XMLErrorReporter()</TD></TR><TR><TD CLASS="l">714</TD><TD>                {</TD></TR><TR><TD CLASS="l">715</TD><TD>                    /* (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="11">716</A></TD><TD>                     * @see org.apache.xerces.impl.XMLErrorReporter#reportError(java.lang.String, java.lang.String, java.lang.Object[], short)</TD></TR><TR><TD CLASS="l">717</TD><TD>                     */</TD></TR><TR><TD CLASS="l">718</TD><TD>                    public void reportError(String domain, String key, Object[] arguments, short severity) throws XNIException </TD></TR><TR><TD CLASS="l">719</TD><TD>                {                    </TD></TR><TR CLASS="z"><TD CLASS="l">720</TD><TD>                      boolean reportError = true;</TD></TR><TR CLASS="z"><TD CLASS="l">721</TD><TD>              valinfo.setCurrentErrorKey(key);  </TD></TR><TR CLASS="z"><TD CLASS="l">722</TD><TD>                          valinfo.setMessageArguments(arguments);</TD></TR><TR CLASS="z"><TD CLASS="l">723</TD><TD>                      String ignoreCondition = (String)ingoredErrorKeyTable.get(key);</TD></TR><TR CLASS="z"><TD CLASS="l">724</TD><TD>                      if (ignoreCondition != null)</TD></TR><TR><TD CLASS="l">725</TD><TD>                      {</TD></TR><TR CLASS="z"><TD CLASS="l">726</TD><TD>                        if (ignoreCondition.equals(XMLValidator.IGNORE_IF_DTD_WITHOUT_ELEMENT_DECL))</TD></TR><TR><TD CLASS="l">727</TD><TD>                        {                    </TD></TR><TR CLASS="z"><TD CLASS="l">728</TD><TD>                          boolean isDTDWithoutElementDeclarationEncountered = valinfo.isDTDWithoutElementDeclarationEncountered(); </TD></TR><TR CLASS="z"><TD CLASS="l">729</TD><TD>                          reportError = !isDTDWithoutElementDeclarationEncountered;  </TD></TR><TR><TD CLASS="l">730</TD><TD>                        }</TD></TR><TR><TD CLASS="l">731</TD><TD>                        else </TD></TR><TR><TD CLASS="l">732</TD><TD>                        {</TD></TR><TR CLASS="z"><TD CLASS="l">733</TD><TD>                          reportError = false;</TD></TR><TR><TD CLASS="l">734</TD><TD>                        }</TD></TR><TR><TD CLASS="l">735</TD><TD>                      }</TD></TR><TR CLASS="z"><TD CLASS="l">736</TD><TD>                      if (&#34;schema_reference.4&#34;.equals(key) &amp;&amp; arguments.length &gt; 0) //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">737</TD><TD>              {</TD></TR><TR CLASS="z"><TD CLASS="l">738</TD><TD>                Object location = arguments[0];  </TD></TR><TR CLASS="z"><TD CLASS="l">739</TD><TD>                if (location != null)</TD></TR><TR><TD CLASS="l">740</TD><TD>                {  </TD></TR><TR CLASS="z"><TD CLASS="l">741</TD><TD>                  if(reportedExceptions.contains(location))</TD></TR><TR><TD CLASS="l">742</TD><TD>                  {</TD></TR><TR CLASS="z"><TD CLASS="l">743</TD><TD>                    reportError = false;</TD></TR><TR><TD CLASS="l">744</TD><TD>                  }</TD></TR><TR><TD CLASS="l">745</TD><TD>                  else</TD></TR><TR><TD CLASS="l">746</TD><TD>                  {</TD></TR><TR CLASS="z"><TD CLASS="l">747</TD><TD>                    reportedExceptions.add(location);</TD></TR><TR><TD CLASS="l">748</TD><TD>                  }</TD></TR><TR><TD CLASS="l">749</TD><TD>                }</TD></TR><TR><TD CLASS="l">750</TD><TD>              }          </TD></TR><TR CLASS="z"><TD CLASS="l">751</TD><TD>                      if (reportError)</TD></TR><TR><TD CLASS="l">752</TD><TD>                      {</TD></TR><TR CLASS="z"><TD CLASS="l">753</TD><TD>                        super.reportError(domain, key, arguments, severity);</TD></TR><TR CLASS="z"><TD CLASS="l">754</TD><TD>                        valinfo.getErrorCustomizationManager().considerReportedError(valinfo, key, arguments);</TD></TR><TR><TD CLASS="l">755</TD><TD>                      }</TD></TR><TR CLASS="z"><TD CLASS="l">756</TD><TD>                    }</TD></TR><TR><TD CLASS="l">757</TD><TD>                };</TD></TR><TR><TD CLASS="l">758</TD><TD>    }</TD></TR><TR><TD CLASS="l">759</TD><TD>  }</TD></TR><TR><TD CLASS="l">760</TD><TD>  </TD></TR><TR><TD CLASS="l">761</TD><TD>  /** </TD></TR><TR><TD CLASS="l">762</TD><TD>   * A line and column number coordinate.</TD></TR><TR><TD CLASS="l">763</TD><TD>   */</TD></TR><TR><TD CLASS="l">764</TD><TD>  protected class LocationCoordinate</TD></TR><TR><TD CLASS="l"><A NAME="1b">765</A></TD><TD>  {        </TD></TR><TR CLASS="z"><TD CLASS="l">766</TD><TD>        private int lineNo = -1;</TD></TR><TR CLASS="z"><TD CLASS="l">767</TD><TD>    private int columnNo = -1;</TD></TR><TR><TD CLASS="l">768</TD><TD>    </TD></TR><TR CLASS="z"><TD CLASS="l">769</TD><TD>    public LocationCoordinate(int lineNumber, int columnNumber)</TD></TR><TR><TD CLASS="l">770</TD><TD>    {</TD></TR><TR CLASS="z"><TD CLASS="l">771</TD><TD>      this.lineNo = lineNumber;</TD></TR><TR CLASS="z"><TD CLASS="l">772</TD><TD>      this.columnNo = columnNumber;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="1e">773</A></TD><TD>    }</TD></TR><TR><TD CLASS="l">774</TD><TD>            </TD></TR><TR><TD CLASS="l">775</TD><TD>    public int getLineNumber()</TD></TR><TR><TD CLASS="l">776</TD><TD>    { </TD></TR><TR CLASS="z"><TD CLASS="l">777</TD><TD>      return this.lineNo;</TD></TR><TR><TD CLASS="l"><A NAME="1d">778</A></TD><TD>    }</TD></TR><TR><TD CLASS="l">779</TD><TD>            </TD></TR><TR><TD CLASS="l">780</TD><TD>    public int getColumnNumner()</TD></TR><TR><TD CLASS="l">781</TD><TD>    { </TD></TR><TR CLASS="z"><TD CLASS="l">782</TD><TD>      return this.columnNo;</TD></TR><TR><TD CLASS="l">783</TD><TD>    } </TD></TR><TR><TD CLASS="l"><A NAME="8">784</A></TD><TD>  }</TD></TR><TR><TD CLASS="l">785</TD><TD>  </TD></TR><TR><TD CLASS="l">786</TD><TD>  protected IResource getWorkspaceFileFromLocation(String location)</TD></TR><TR><TD CLASS="l">787</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">788</TD><TD>    if (location == null) return null;</TD></TR><TR CLASS="z"><TD CLASS="l">789</TD><TD>    IWorkspace workspace = ResourcesPlugin.getWorkspace();</TD></TR><TR><TD CLASS="l">790</TD><TD>    // To canonicalize the EMF URI</TD></TR><TR CLASS="z"><TD CLASS="l">791</TD><TD>    IPath canonicalForm = new Path(location);</TD></TR><TR><TD CLASS="l">792</TD><TD>    // Need to convert to absolute location...</TD></TR><TR CLASS="z"><TD CLASS="l">793</TD><TD>    IPath pathLocation = new Path(URIHelper.removeProtocol(canonicalForm.toString()));</TD></TR><TR><TD CLASS="l">794</TD><TD>    // ...to find the resource file that is in the workspace</TD></TR><TR CLASS="z"><TD CLASS="l">795</TD><TD>    IResource resourceFile = workspace.getRoot().getFileForLocation(pathLocation);</TD></TR><TR><TD CLASS="l">796</TD><TD>    // If the resource is resolved to a file from http, or a file outside</TD></TR><TR><TD CLASS="l">797</TD><TD>    // the workspace, then we will just ignore it.</TD></TR><TR CLASS="z"><TD CLASS="l">798</TD><TD>    return resourceFile;</TD></TR><TR><TD CLASS="l">799</TD><TD>  }</TD></TR><TR><TD CLASS="l">800</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="2e.html">org.eclipse.wst.xml.core.internal.validation</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/178.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/178.html
deleted file mode 100644
index b10bfb1..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/178.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="2f.html">org.eclipse.wst.xml.core.internal.validation.core.logging</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">CommandLineLogger.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>CommandLineLogger.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/19)</TD><TD CLASS="h">0%   (0/7)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">CommandLineLogger</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/19)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR><TD CLASS="f"><A HREF="#0">CommandLineLogger (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">logError (String, Throwable): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#3">logWarning (String, Throwable): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/3)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2005 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">11</TD><TD> </TD></TR><TR><TD CLASS="l">12</TD><TD>package org.eclipse.wst.xml.core.internal.validation.core.logging;</TD></TR><TR><TD CLASS="l">13</TD><TD> </TD></TR><TR><TD CLASS="l">14</TD><TD>/**</TD></TR><TR><TD CLASS="l"><A NAME="0">15</A></TD><TD> * A logger that will print log info to System.out.</TD></TR><TR><TD CLASS="l">16</TD><TD> * </TD></TR><TR><TD CLASS="l">17</TD><TD> * @author Lawrence Mandel, IBM</TD></TR><TR><TD CLASS="l">18</TD><TD> */</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">19</A></TD><TD>public class CommandLineLogger implements ILogger</TD></TR><TR><TD CLASS="l">20</TD><TD>{</TD></TR><TR><TD CLASS="l">21</TD><TD>  public void logError(String error, Throwable exception)</TD></TR><TR><TD CLASS="l">22</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">23</TD><TD>    System.out.println(error);</TD></TR><TR CLASS="z"><TD CLASS="l">24</TD><TD>    System.out.println(exception.toString());</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">25</A></TD><TD>  }</TD></TR><TR><TD CLASS="l">26</TD><TD> </TD></TR><TR><TD CLASS="l">27</TD><TD>  public void logWarning(String warning, Throwable exception)</TD></TR><TR><TD CLASS="l">28</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">29</TD><TD>    System.out.println(warning);</TD></TR><TR CLASS="z"><TD CLASS="l">30</TD><TD>    System.out.println(exception.toString());</TD></TR><TR CLASS="z"><TD CLASS="l">31</TD><TD>  }</TD></TR><TR><TD CLASS="l">32</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="2f.html">org.eclipse.wst.xml.core.internal.validation.core.logging</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/179.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/179.html
deleted file mode 100644
index 7a4e539..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/179.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="2f.html">org.eclipse.wst.xml.core.internal.validation.core.logging</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">EclipseLogger.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>EclipseLogger.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/31)</TD><TD CLASS="h">0%   (0/5)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">EclipseLogger</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/31)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#0">EclipseLogger (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">logError (String, Throwable): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/14)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#3">logWarning (String, Throwable): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/14)</TD><TD CLASS="h">0%   (0/2)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2005 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">11</TD><TD> </TD></TR><TR><TD CLASS="l">12</TD><TD>package org.eclipse.wst.xml.core.internal.validation.core.logging;</TD></TR><TR><TD CLASS="l">13</TD><TD> </TD></TR><TR><TD CLASS="l">14</TD><TD>import org.eclipse.core.runtime.IStatus;</TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.core.runtime.Status;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.wst.xml.core.internal.XMLCorePlugin;</TD></TR><TR><TD CLASS="l">17</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="0">18</A></TD><TD> </TD></TR><TR><TD CLASS="l">19</TD><TD>/**</TD></TR><TR><TD CLASS="l">20</TD><TD> * A logger that will log to the log file in the eclipse metadata directory.</TD></TR><TR><TD CLASS="l">21</TD><TD> */</TD></TR><TR CLASS="z"><TD CLASS="l">22</TD><TD>public class EclipseLogger implements ILogger</TD></TR><TR><TD CLASS="l"><A NAME="2">23</A></TD><TD>{</TD></TR><TR><TD CLASS="l">24</TD><TD>  </TD></TR><TR><TD CLASS="l">25</TD><TD>  public void logError(String error, Throwable exception)</TD></TR><TR><TD CLASS="l">26</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">27</TD><TD>    XMLCorePlugin.getDefault().getLog().log(new Status(IStatus.ERROR, XMLCorePlugin.getDefault().getBundle().getSymbolicName(), IStatus.ERROR, error, exception));</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">28</A></TD><TD>  }</TD></TR><TR><TD CLASS="l">29</TD><TD> </TD></TR><TR><TD CLASS="l">30</TD><TD>  public void logWarning(String warning, Throwable exception)</TD></TR><TR><TD CLASS="l">31</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">32</TD><TD>    XMLCorePlugin.getDefault().getLog().log(new Status(IStatus.WARNING, XMLCorePlugin.getDefault().getBundle().getSymbolicName(), IStatus.WARNING, warning, exception));</TD></TR><TR CLASS="z"><TD CLASS="l">33</TD><TD>  }</TD></TR><TR><TD CLASS="l">34</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="2f.html">org.eclipse.wst.xml.core.internal.validation.core.logging</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/17a.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/17a.html
deleted file mode 100644
index 8f72ff9..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/17a.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="2f.html">org.eclipse.wst.xml.core.internal.validation.core.logging</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">LoggerFactory.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>LoggerFactory.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/92)</TD><TD CLASS="h">0%   (0/25)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">LoggerFactory</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/92)</TD><TD CLASS="h">0%   (0/25)</TD></TR><TR><TD CLASS="f"><A HREF="#1">&lt;static initializer&gt;</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#0">LoggerFactory (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#3">getLoggerInstance (): ILogger</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/72)</TD><TD CLASS="h">0%   (0/15)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">specifyLogger (String, ClassLoader): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#5">useEclipseLogger (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/2)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2007 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">11</TD><TD>package org.eclipse.wst.xml.core.internal.validation.core.logging;</TD></TR><TR><TD CLASS="l">12</TD><TD> </TD></TR><TR><TD CLASS="l">13</TD><TD>/**</TD></TR><TR><TD CLASS="l">14</TD><TD> * The logger factory allows for simple use of whatever logging mechanism is in</TD></TR><TR><TD CLASS="l">15</TD><TD> * place. The tool can specify a custom logging class and can request the</TD></TR><TR><TD CLASS="l">16</TD><TD> * logger from this class.</TD></TR><TR><TD CLASS="l">17</TD><TD> * </TD></TR><TR><TD CLASS="l"><A NAME="0">18</A></TD><TD> * @author Lawrence Mandel, IBM</TD></TR><TR><TD CLASS="l">19</TD><TD> * </TD></TR><TR><TD CLASS="l"><A NAME="1">20</A></TD><TD> * @deprecated - not used in WTP or by any adopters as of 9/12/2007</TD></TR><TR><TD CLASS="l">21</TD><TD> */</TD></TR><TR CLASS="z"><TD CLASS="l">22</TD><TD>public class LoggerFactory</TD></TR><TR><TD CLASS="l">23</TD><TD>{</TD></TR><TR CLASS="z"><TD CLASS="l">24</TD><TD>  private static ILogger      logger            = null;</TD></TR><TR CLASS="z"><TD CLASS="l">25</TD><TD>  private static ClassLoader  classloader       = null;</TD></TR><TR CLASS="z"><TD CLASS="l">26</TD><TD>  private static String       loggerClass       = null;</TD></TR><TR><TD CLASS="l">27</TD><TD>  private static final String commandlinelogger = &#34;org.eclipse.wst.xml.validation.internal.core.logging.CommandLineLogger&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">28</TD><TD>  private static final String eclipselogger     = &#34;org.eclipse.wst.xml.validation.internal.core.logging.EclipseLogger&#34;; //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">29</TD><TD>  private static String       defaultlogger     = commandlinelogger;</TD></TR><TR><TD CLASS="l">30</TD><TD> </TD></TR><TR><TD CLASS="l">31</TD><TD>  /**</TD></TR><TR><TD CLASS="l">32</TD><TD>   * Get the one and only instance of the logger.</TD></TR><TR><TD CLASS="l">33</TD><TD>   * </TD></TR><TR><TD CLASS="l"><A NAME="3">34</A></TD><TD>   * @return The one and only instance of the logger.</TD></TR><TR><TD CLASS="l">35</TD><TD>   */</TD></TR><TR><TD CLASS="l">36</TD><TD>  public static ILogger getLoggerInstance()</TD></TR><TR><TD CLASS="l">37</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">38</TD><TD>    if(logger == null)</TD></TR><TR><TD CLASS="l">39</TD><TD>    {</TD></TR><TR CLASS="z"><TD CLASS="l">40</TD><TD>      if(loggerClass != null)</TD></TR><TR><TD CLASS="l">41</TD><TD>      {</TD></TR><TR CLASS="z"><TD CLASS="l">42</TD><TD>        if(classloader != null)</TD></TR><TR><TD CLASS="l">43</TD><TD>        {</TD></TR><TR><TD CLASS="l">44</TD><TD>          try</TD></TR><TR><TD CLASS="l">45</TD><TD>          {</TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>            Class lc = classloader.loadClass(loggerClass);</TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>            logger = (ILogger) lc.newInstance();</TD></TR><TR><TD CLASS="l">48</TD><TD>          }</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>          catch (Exception e)</TD></TR><TR><TD CLASS="l">50</TD><TD>          {</TD></TR><TR><TD CLASS="l">51</TD><TD>          }</TD></TR><TR><TD CLASS="l">52</TD><TD>        }</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>        if(logger == null)</TD></TR><TR><TD CLASS="l">54</TD><TD>        {</TD></TR><TR><TD CLASS="l">55</TD><TD>          try</TD></TR><TR><TD CLASS="l">56</TD><TD>          {</TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>            Class lc = LoggerFactory.class.getClassLoader().loadClass(loggerClass);</TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>            logger = (ILogger) lc.newInstance();</TD></TR><TR><TD CLASS="l">59</TD><TD>          }</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>          catch (Exception e)</TD></TR><TR><TD CLASS="l">61</TD><TD>          {</TD></TR><TR><TD CLASS="l">62</TD><TD>          }</TD></TR><TR><TD CLASS="l">63</TD><TD>        }</TD></TR><TR><TD CLASS="l">64</TD><TD>      }</TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>      if(logger == null)</TD></TR><TR><TD CLASS="l">66</TD><TD>      {</TD></TR><TR><TD CLASS="l">67</TD><TD>        try</TD></TR><TR><TD CLASS="l">68</TD><TD>        {</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>          Class lc = LoggerFactory.class.getClassLoader().loadClass(defaultlogger);</TD></TR><TR CLASS="z"><TD CLASS="l">70</TD><TD>          logger = (ILogger) lc.newInstance();</TD></TR><TR><TD CLASS="l">71</TD><TD>        }</TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>        catch (Exception e)</TD></TR><TR><TD CLASS="l">73</TD><TD>        {</TD></TR><TR><TD CLASS="l">74</TD><TD>        }</TD></TR><TR><TD CLASS="l">75</TD><TD>      }</TD></TR><TR><TD CLASS="l">76</TD><TD>    }</TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>    return logger;</TD></TR><TR><TD CLASS="l">78</TD><TD>  }</TD></TR><TR><TD CLASS="l">79</TD><TD> </TD></TR><TR><TD CLASS="l">80</TD><TD>  /**</TD></TR><TR><TD CLASS="l">81</TD><TD>   * Specify the logger implementation to be used.</TD></TR><TR><TD CLASS="l">82</TD><TD>   * </TD></TR><TR><TD CLASS="l">83</TD><TD>   * @param classname</TD></TR><TR><TD CLASS="l">84</TD><TD>   *            The name of the logger class.</TD></TR><TR><TD CLASS="l">85</TD><TD>   * @param loggerclassloader</TD></TR><TR><TD CLASS="l">86</TD><TD>   *            The classloader to use to load the logger. If null, the default</TD></TR><TR><TD CLASS="l"><A NAME="4">87</A></TD><TD>   *            classloader will be used.</TD></TR><TR><TD CLASS="l">88</TD><TD>   */</TD></TR><TR><TD CLASS="l">89</TD><TD>  public static void specifyLogger(String classname, ClassLoader loggerclassloader)</TD></TR><TR><TD CLASS="l">90</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">91</TD><TD>    loggerClass = classname;</TD></TR><TR CLASS="z"><TD CLASS="l">92</TD><TD>    classloader = loggerclassloader;</TD></TR><TR CLASS="z"><TD CLASS="l">93</TD><TD>  }</TD></TR><TR><TD CLASS="l">94</TD><TD> </TD></TR><TR><TD CLASS="l">95</TD><TD>  /**</TD></TR><TR><TD CLASS="l"><A NAME="5">96</A></TD><TD>   * Set the default logger to the eclipse logger.</TD></TR><TR><TD CLASS="l">97</TD><TD>   */</TD></TR><TR><TD CLASS="l">98</TD><TD>  public static void useEclipseLogger()</TD></TR><TR><TD CLASS="l">99</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">100</TD><TD>    defaultlogger = eclipselogger;</TD></TR><TR CLASS="z"><TD CLASS="l">101</TD><TD>  }</TD></TR><TR><TD CLASS="l">102</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="2f.html">org.eclipse.wst.xml.core.internal.validation.core.logging</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/17b.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/17b.html
deleted file mode 100644
index cfbeafb..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/17b.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="30.html">org.eclipse.wst.xml.core.internal.validation.eclipse</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">ErrorCustomizationPluginRegistryReader.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>ErrorCustomizationPluginRegistryReader.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/63)</TD><TD CLASS="h">0%   (0/17)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">ErrorCustomizationPluginRegistryReader</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/63)</TD><TD CLASS="h">0%   (0/17)</TD></TR><TR><TD CLASS="f"><A HREF="#0">ErrorCustomizationPluginRegistryReader (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">readElement (IConfigurationElement): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/34)</TD><TD CLASS="h">0%   (0/9)</TD></TR><TR><TD CLASS="f"><A HREF="#3">readRegistry (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/26)</TD><TD CLASS="h">0%   (0/7)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">11</TD><TD>package org.eclipse.wst.xml.core.internal.validation.eclipse;</TD></TR><TR><TD CLASS="l">12</TD><TD> </TD></TR><TR><TD CLASS="l">13</TD><TD>import org.eclipse.core.runtime.IConfigurationElement;</TD></TR><TR><TD CLASS="l">14</TD><TD>import org.eclipse.core.runtime.IExtensionPoint;</TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.core.runtime.IExtensionRegistry;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.core.runtime.Platform;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.wst.xml.core.internal.validation.errorcustomization.ErrorCustomizationRegistry;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.wst.xml.core.internal.validation.errorcustomization.ErrorMessageCustomizerDelegate;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.osgi.framework.Bundle;</TD></TR><TR><TD CLASS="l"><A NAME="0">20</A></TD><TD>/**</TD></TR><TR><TD CLASS="l">21</TD><TD> * This class reads the plug-in manifests and registers each extension</TD></TR><TR><TD CLASS="l">22</TD><TD> * error customizer with the ErrorCustomizationRegistry.</TD></TR><TR><TD CLASS="l">23</TD><TD> */</TD></TR><TR CLASS="z"><TD CLASS="l">24</TD><TD>public class ErrorCustomizationPluginRegistryReader {</TD></TR><TR><TD CLASS="l">25</TD><TD>        </TD></TR><TR><TD CLASS="l">26</TD><TD>          protected static final String PLUGIN_ID = &#34;org.eclipse.wst.xml.core&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">27</TD><TD>          protected static final String ATT_CLASS = &#34;class&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">28</TD><TD>          protected static final String ATT_NAMESPACE = &#34;namespace&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">29</TD><TD>          protected static final String EXTENSION_POINT_ID = &#34;errorCustomizer&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">30</TD><TD>          protected static final String tagName = EXTENSION_POINT_ID;</TD></TR><TR><TD CLASS="l">31</TD><TD> </TD></TR><TR><TD CLASS="l">32</TD><TD>          /**</TD></TR><TR><TD CLASS="l"><A NAME="3">33</A></TD><TD>           * Read from plugin registry for the errorcustomizer extension.</TD></TR><TR><TD CLASS="l">34</TD><TD>           */</TD></TR><TR><TD CLASS="l">35</TD><TD>          public void readRegistry()</TD></TR><TR><TD CLASS="l">36</TD><TD>          {</TD></TR><TR CLASS="z"><TD CLASS="l">37</TD><TD>            IExtensionRegistry pluginRegistry = Platform.getExtensionRegistry();</TD></TR><TR CLASS="z"><TD CLASS="l">38</TD><TD>            IExtensionPoint point = pluginRegistry.getExtensionPoint(PLUGIN_ID, EXTENSION_POINT_ID);</TD></TR><TR CLASS="z"><TD CLASS="l">39</TD><TD>            if (point != null)</TD></TR><TR><TD CLASS="l">40</TD><TD>            {</TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>              IConfigurationElement[] elements = point.getConfigurationElements();</TD></TR><TR CLASS="z"><TD CLASS="l">42</TD><TD>              for (int i = 0; i &lt; elements.length; i++)</TD></TR><TR><TD CLASS="l">43</TD><TD>              {</TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>                readElement(elements[i]);</TD></TR><TR><TD CLASS="l">45</TD><TD>              }</TD></TR><TR><TD CLASS="l">46</TD><TD>            }</TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>          }</TD></TR><TR><TD CLASS="l">48</TD><TD> </TD></TR><TR><TD CLASS="l">49</TD><TD>          /**</TD></TR><TR><TD CLASS="l">50</TD><TD>           * readElement() - parse and deal with an extension like:</TD></TR><TR><TD CLASS="l">51</TD><TD>           *</TD></TR><TR><TD CLASS="l">52</TD><TD>           * &lt;extension point=&#34;org.eclipse.wst.xml.core.errorCustomizer&#34;</TD></TR><TR><TD CLASS="l">53</TD><TD>           *            id=&#34;specificErrorCustomizer&#34;</TD></TR><TR><TD CLASS="l">54</TD><TD>           *            name=&#34;Specific Error Customizer&#34;&gt;</TD></TR><TR><TD CLASS="l">55</TD><TD>           *   &lt;errorCustomizer</TD></TR><TR><TD CLASS="l">56</TD><TD>           *                           namespace=&#34;http://specificnamespace&#34;</TD></TR><TR><TD CLASS="l">57</TD><TD>           *                           class=&#34;org.eclipse.wst.xml.core.MySpecificErrorCustomizer/&gt;</TD></TR><TR><TD CLASS="l"><A NAME="2">58</A></TD><TD>           * &lt;/extension&gt;</TD></TR><TR><TD CLASS="l">59</TD><TD>           */</TD></TR><TR><TD CLASS="l">60</TD><TD>          protected void readElement(IConfigurationElement element)</TD></TR><TR><TD CLASS="l">61</TD><TD>          {</TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>            if (element.getName().equals(tagName))</TD></TR><TR><TD CLASS="l">63</TD><TD>            {</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>              String errorCustomizerClass = element.getAttribute(ATT_CLASS);</TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>              String namespace = element.getAttribute(ATT_NAMESPACE);</TD></TR><TR><TD CLASS="l">66</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>              if (errorCustomizerClass != null)</TD></TR><TR><TD CLASS="l">68</TD><TD>              {</TD></TR><TR><TD CLASS="l">69</TD><TD>                try</TD></TR><TR><TD CLASS="l">70</TD><TD>                {</TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>                  Bundle pluginBundle = Platform.getBundle(element.getDeclaringExtension().getContributor().getName());</TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>                  ErrorMessageCustomizerDelegate delegate = new ErrorMessageCustomizerDelegate(pluginBundle, errorCustomizerClass);</TD></TR><TR CLASS="z"><TD CLASS="l">73</TD><TD>                  ErrorCustomizationRegistry.getInstance().addErrorMessageCustomizer(namespace, delegate);</TD></TR><TR><TD CLASS="l">74</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>                catch (Exception e)</TD></TR><TR><TD CLASS="l">76</TD><TD>                {</TD></TR><TR><TD CLASS="l">77</TD><TD>                }</TD></TR><TR><TD CLASS="l">78</TD><TD>              }</TD></TR><TR><TD CLASS="l">79</TD><TD>            }</TD></TR><TR CLASS="z"><TD CLASS="l">80</TD><TD>          }</TD></TR><TR><TD CLASS="l">81</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="30.html">org.eclipse.wst.xml.core.internal.validation.eclipse</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/17c.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/17c.html
deleted file mode 100644
index 546274e..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/17c.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="30.html">org.eclipse.wst.xml.core.internal.validation.eclipse</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">Validator.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>Validator.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/152)</TD><TD CLASS="h">0%   (0/42)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">Validator</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/152)</TD><TD CLASS="h">0%   (0/42)</TD></TR><TR><TD CLASS="f"><A HREF="#0">Validator (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">addInfoToMessage (ValidationMessage, IMessage): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/36)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR><TD CLASS="f"><A HREF="#3">getNestedContext (ValidationState, boolean): NestedValidatorContext</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/21)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">setupValidation (NestedValidatorContext): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#5">validate (String, InputStream, NestedValidatorContext): ValidationReport</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">validate (String, InputStream, NestedValidatorContext, ValidationResult): Val...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/23)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#7">validationFinishing (IProject, ValidationState, IProgressMonitor): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/22)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">validationStarting (IProject, ValidationState, IProgressMonitor): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/27)</TD><TD CLASS="h">0%   (0/8)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2008 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">11</TD><TD> </TD></TR><TR><TD CLASS="l">12</TD><TD>package org.eclipse.wst.xml.core.internal.validation.eclipse;</TD></TR><TR><TD CLASS="l">13</TD><TD> </TD></TR><TR><TD CLASS="l">14</TD><TD>import java.io.InputStream;</TD></TR><TR><TD CLASS="l">15</TD><TD> </TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.core.resources.IProject;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.core.runtime.IProgressMonitor;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.wst.validation.ValidationResult;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.wst.validation.ValidationState;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.wst.validation.internal.provisional.core.IMessage;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.wst.xml.core.internal.XMLCorePlugin;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.wst.xml.core.internal.preferences.XMLCorePreferenceNames;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.wst.xml.core.internal.validation.XMLNestedValidatorContext;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.wst.xml.core.internal.validation.XMLValidationConfiguration;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.wst.xml.core.internal.validation.XMLValidationReport;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.wst.xml.core.internal.validation.core.AbstractNestedValidator;</TD></TR><TR><TD CLASS="l"><A NAME="0">27</A></TD><TD>import org.eclipse.wst.xml.core.internal.validation.core.NestedValidatorContext;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.wst.xml.core.internal.validation.core.ValidationMessage;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.wst.xml.core.internal.validation.core.ValidationReport;</TD></TR><TR><TD CLASS="l">30</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">31</TD><TD>public class Validator extends AbstractNestedValidator</TD></TR><TR><TD CLASS="l">32</TD><TD>{</TD></TR><TR><TD CLASS="l">33</TD><TD>  private static final String XML_VALIDATOR_CONTEXT = &#34;org.eclipse.wst.xml.core.validatorContext&#34;; //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">34</TD><TD>  protected int indicateNoGrammar = 0;</TD></TR><TR><TD CLASS="l">35</TD><TD>  </TD></TR><TR><TD CLASS="l">36</TD><TD>  /**</TD></TR><TR><TD CLASS="l">37</TD><TD>   * Set any preferences for XML validation.</TD></TR><TR><TD CLASS="l">38</TD><TD>   * </TD></TR><TR><TD CLASS="l"><A NAME="4">39</A></TD><TD>   * @see org.eclipse.wst.xml.core.internal.validation.core.AbstractNestedValidator#setupValidation(org.eclipse.wst.xml.core.internal.validation.core.NestedValidatorContext)</TD></TR><TR><TD CLASS="l">40</TD><TD>   */</TD></TR><TR><TD CLASS="l">41</TD><TD>  protected void setupValidation(NestedValidatorContext context) </TD></TR><TR><TD CLASS="l">42</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">43</TD><TD>        super.setupValidation(context);</TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>        indicateNoGrammar = XMLCorePlugin.getDefault().getPluginPreferences().getInt(XMLCorePreferenceNames.INDICATE_NO_GRAMMAR);</TD></TR><TR CLASS="z"><TD CLASS="l">45</TD><TD>  }</TD></TR><TR><TD CLASS="l">46</TD><TD> </TD></TR><TR><TD CLASS="l">47</TD><TD>  /* (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="5">48</A></TD><TD>   * @see org.eclipse.wst.xml.core.internal.validation.core.AbstractNestedValidator#validate(java.lang.String, java.io.InputStream, org.eclipse.wst.xml.core.internal.validation.core.NestedValidatorContext)</TD></TR><TR><TD CLASS="l">49</TD><TD>   */</TD></TR><TR><TD CLASS="l">50</TD><TD>  public ValidationReport validate(String uri, InputStream inputstream, NestedValidatorContext context)</TD></TR><TR><TD CLASS="l">51</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>    return validate(uri, inputstream, context, null);</TD></TR><TR><TD CLASS="l"><A NAME="6">53</A></TD><TD>  }</TD></TR><TR><TD CLASS="l">54</TD><TD> </TD></TR><TR><TD CLASS="l">55</TD><TD>  public ValidationReport validate(String uri, InputStream inputstream, NestedValidatorContext context, ValidationResult result)</TD></TR><TR><TD CLASS="l">56</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>    XMLValidator validator = XMLValidator.getInstance();</TD></TR><TR><TD CLASS="l">58</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>    XMLValidationConfiguration configuration = new XMLValidationConfiguration();</TD></TR><TR><TD CLASS="l">60</TD><TD>    try</TD></TR><TR><TD CLASS="l">61</TD><TD>    {</TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>      configuration.setFeature(XMLValidationConfiguration.INDICATE_NO_GRAMMAR, indicateNoGrammar);</TD></TR><TR><TD CLASS="l">63</TD><TD>    }</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>    catch(Exception e)</TD></TR><TR><TD CLASS="l">65</TD><TD>    {</TD></TR><TR><TD CLASS="l">66</TD><TD>      // TODO: Unable to set the preference. Log this problem.</TD></TR><TR><TD CLASS="l">67</TD><TD>    }</TD></TR><TR><TD CLASS="l">68</TD><TD>    </TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>    XMLValidationReport valreport = validator.validate(uri, inputstream, configuration, result, context);</TD></TR><TR><TD CLASS="l">70</TD><TD>              </TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>    return valreport;</TD></TR><TR><TD CLASS="l">72</TD><TD>  }</TD></TR><TR><TD CLASS="l">73</TD><TD>          </TD></TR><TR><TD CLASS="l">74</TD><TD>  /**</TD></TR><TR><TD CLASS="l">75</TD><TD>   * Store additional information in the message parameters. For XML validation there</TD></TR><TR><TD CLASS="l">76</TD><TD>   * are three additional pieces of information to store:</TD></TR><TR><TD CLASS="l">77</TD><TD>   * param[0] = the column number of the error</TD></TR><TR><TD CLASS="l">78</TD><TD>   * param[1] = the 'squiggle selection strategy' for which DOM part to squiggle</TD></TR><TR><TD CLASS="l">79</TD><TD>   * param[2] = the name or value of what is to be squiggled</TD></TR><TR><TD CLASS="l">80</TD><TD>   * </TD></TR><TR><TD CLASS="l"><A NAME="2">81</A></TD><TD>   * @see org.eclipse.wst.xml.core.internal.validation.core.AbstractNestedValidator#addInfoToMessage(org.eclipse.wst.xml.core.internal.validation.core.ValidationMessage, org.eclipse.wst.validation.internal.provisional.core.IMessage)</TD></TR><TR><TD CLASS="l">82</TD><TD>   */</TD></TR><TR><TD CLASS="l">83</TD><TD>  protected void addInfoToMessage(ValidationMessage validationMessage, IMessage message)</TD></TR><TR><TD CLASS="l">84</TD><TD>  { </TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>        String key = validationMessage.getKey();</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>        if(key != null)</TD></TR><TR><TD CLASS="l">87</TD><TD>        {</TD></TR><TR CLASS="z"><TD CLASS="l">88</TD><TD>      XMLMessageInfoHelper messageInfoHelper = new XMLMessageInfoHelper();</TD></TR><TR CLASS="z"><TD CLASS="l">89</TD><TD>      String[] messageInfo = messageInfoHelper.createMessageInfo(key, validationMessage.getMessageArguments());</TD></TR><TR><TD CLASS="l">90</TD><TD>      </TD></TR><TR CLASS="z"><TD CLASS="l">91</TD><TD>      message.setAttribute(COLUMN_NUMBER_ATTRIBUTE, new Integer(validationMessage.getColumnNumber()));</TD></TR><TR CLASS="z"><TD CLASS="l">92</TD><TD>      message.setAttribute(SQUIGGLE_SELECTION_STRATEGY_ATTRIBUTE, messageInfo[0]);</TD></TR><TR CLASS="z"><TD CLASS="l">93</TD><TD>      message.setAttribute(SQUIGGLE_NAME_OR_VALUE_ATTRIBUTE, messageInfo[1]);</TD></TR><TR><TD CLASS="l">94</TD><TD>        }</TD></TR><TR CLASS="z"><TD CLASS="l">95</TD><TD>  }</TD></TR><TR><TD CLASS="l">96</TD><TD>  </TD></TR><TR><TD CLASS="l">97</TD><TD>  /**</TD></TR><TR><TD CLASS="l">98</TD><TD>   * Get the nested validation context.</TD></TR><TR><TD CLASS="l">99</TD><TD>   * </TD></TR><TR><TD CLASS="l">100</TD><TD>   * @param state</TD></TR><TR><TD CLASS="l">101</TD><TD>   *          the validation state.</TD></TR><TR><TD CLASS="l">102</TD><TD>   * @param create</TD></TR><TR><TD CLASS="l">103</TD><TD>   *          when true, a new context will be created if one is not found</TD></TR><TR><TD CLASS="l"><A NAME="3">104</A></TD><TD>   * @return the nested validation context.</TD></TR><TR><TD CLASS="l">105</TD><TD>   */</TD></TR><TR><TD CLASS="l">106</TD><TD>  protected NestedValidatorContext getNestedContext(ValidationState state, boolean create)</TD></TR><TR><TD CLASS="l">107</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">108</TD><TD>    NestedValidatorContext context = null;</TD></TR><TR CLASS="z"><TD CLASS="l">109</TD><TD>    Object o = state.get(XML_VALIDATOR_CONTEXT);</TD></TR><TR CLASS="z"><TD CLASS="l">110</TD><TD>    if (o instanceof XMLNestedValidatorContext)</TD></TR><TR CLASS="z"><TD CLASS="l">111</TD><TD>      context = (XMLNestedValidatorContext)o;</TD></TR><TR CLASS="z"><TD CLASS="l">112</TD><TD>    else if (create)</TD></TR><TR><TD CLASS="l">113</TD><TD>    {</TD></TR><TR CLASS="z"><TD CLASS="l">114</TD><TD>      context = new XMLNestedValidatorContext();</TD></TR><TR><TD CLASS="l">115</TD><TD>    }</TD></TR><TR CLASS="z"><TD CLASS="l">116</TD><TD>    return context;</TD></TR><TR><TD CLASS="l"><A NAME="8">117</A></TD><TD>  }</TD></TR><TR><TD CLASS="l">118</TD><TD>  </TD></TR><TR><TD CLASS="l">119</TD><TD>  public void validationStarting(IProject project, ValidationState state, IProgressMonitor monitor)</TD></TR><TR><TD CLASS="l">120</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">121</TD><TD>    if (project != null)</TD></TR><TR><TD CLASS="l">122</TD><TD>    {</TD></TR><TR CLASS="z"><TD CLASS="l">123</TD><TD>      NestedValidatorContext context = getNestedContext(state, false);</TD></TR><TR CLASS="z"><TD CLASS="l">124</TD><TD>      if (context == null)</TD></TR><TR><TD CLASS="l">125</TD><TD>      {</TD></TR><TR CLASS="z"><TD CLASS="l">126</TD><TD>        context = getNestedContext(state, true);</TD></TR><TR CLASS="z"><TD CLASS="l">127</TD><TD>        setupValidation(context);</TD></TR><TR CLASS="z"><TD CLASS="l">128</TD><TD>        state.put(XML_VALIDATOR_CONTEXT, context);</TD></TR><TR><TD CLASS="l">129</TD><TD>      }</TD></TR><TR CLASS="z"><TD CLASS="l">130</TD><TD>      super.validationStarting(project, state, monitor);</TD></TR><TR><TD CLASS="l">131</TD><TD>    }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="7">132</A></TD><TD>  }</TD></TR><TR><TD CLASS="l">133</TD><TD>  </TD></TR><TR><TD CLASS="l">134</TD><TD>  public void validationFinishing(IProject project, ValidationState state, IProgressMonitor monitor)</TD></TR><TR><TD CLASS="l">135</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">136</TD><TD>    if (project != null)</TD></TR><TR><TD CLASS="l">137</TD><TD>    {</TD></TR><TR CLASS="z"><TD CLASS="l">138</TD><TD>      super.validationFinishing(project, state, monitor);</TD></TR><TR CLASS="z"><TD CLASS="l">139</TD><TD>      NestedValidatorContext context = getNestedContext(state, false);</TD></TR><TR CLASS="z"><TD CLASS="l">140</TD><TD>      if (context != null)</TD></TR><TR><TD CLASS="l">141</TD><TD>      {</TD></TR><TR CLASS="z"><TD CLASS="l">142</TD><TD>        teardownValidation(context);</TD></TR><TR CLASS="z"><TD CLASS="l">143</TD><TD>        state.put(XML_VALIDATOR_CONTEXT, null);</TD></TR><TR><TD CLASS="l">144</TD><TD>      }</TD></TR><TR><TD CLASS="l">145</TD><TD>    }</TD></TR><TR CLASS="z"><TD CLASS="l">146</TD><TD>  }</TD></TR><TR><TD CLASS="l">147</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="30.html">org.eclipse.wst.xml.core.internal.validation.eclipse</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/17d.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/17d.html
deleted file mode 100644
index 959a0b2..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/17d.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="30.html">org.eclipse.wst.xml.core.internal.validation.eclipse</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">XMLMessageInfoHelper.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>XMLMessageInfoHelper.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/173)</TD><TD CLASS="h">0%   (0/37)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">XMLMessageInfoHelper</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/173)</TD><TD CLASS="h">0%   (0/37)</TD></TR><TR><TD CLASS="f"><A HREF="#0">XMLMessageInfoHelper (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">createMessageInfo (String, Object []): String []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/170)</TD><TD CLASS="h">0%   (0/35)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2005, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">11</TD><TD> </TD></TR><TR><TD CLASS="l">12</TD><TD>package org.eclipse.wst.xml.core.internal.validation.eclipse;</TD></TR><TR><TD CLASS="l">13</TD><TD> </TD></TR><TR><TD CLASS="l">14</TD><TD>/**</TD></TR><TR><TD CLASS="l">15</TD><TD> * The message info helper determines the selection strategy for elements</TD></TR><TR><TD CLASS="l">16</TD><TD> * in a SSE editor.</TD></TR><TR><TD CLASS="l">17</TD><TD> *</TD></TR><TR><TD CLASS="l">18</TD><TD> */</TD></TR><TR><TD CLASS="l"><A NAME="0">19</A></TD><TD>public class XMLMessageInfoHelper</TD></TR><TR><TD CLASS="l">20</TD><TD>{</TD></TR><TR><TD CLASS="l">21</TD><TD>  public XMLMessageInfoHelper()</TD></TR><TR><TD CLASS="l">22</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">23</TD><TD>    super();</TD></TR><TR CLASS="z"><TD CLASS="l">24</TD><TD>  }</TD></TR><TR><TD CLASS="l">25</TD><TD> </TD></TR><TR><TD CLASS="l">26</TD><TD>  /**</TD></TR><TR><TD CLASS="l">27</TD><TD>   *  Returns an array containing information about what should be underlined with the red &#34;squiggles&#34;</TD></TR><TR><TD CLASS="l">28</TD><TD>   *  using the errorKey, and the messageArguments.</TD></TR><TR><TD CLASS="l">29</TD><TD>   *  &lt;br&gt;Position 0 of the array returned contains the selection Strategy, or what DOM Element to underline.  </TD></TR><TR><TD CLASS="l">30</TD><TD>   *  For example &#34;ATTRIBUTE_NAME&#34;  </TD></TR><TR><TD CLASS="l">31</TD><TD>   *  &lt;br&gt;Position 1 contains the name or value to squiggle.</TD></TR><TR><TD CLASS="l">32</TD><TD>   *  &lt;p&gt;For example, if we wanted to squiggle the attribute name of an attribute name</TD></TR><TR><TD CLASS="l">33</TD><TD>   *  foo this method would return {&#34;ATTRIBUTE_NAME&#34;, &#34;foo&#34;}</TD></TR><TR><TD CLASS="l">34</TD><TD>   *  &lt;/p&gt;</TD></TR><TR><TD CLASS="l">35</TD><TD>   *  @param errorKey </TD></TR><TR><TD CLASS="l">36</TD><TD>   *                  The error key given by the Xerces parser.</TD></TR><TR><TD CLASS="l">37</TD><TD>   *  @param messageArguments </TD></TR><TR><TD CLASS="l">38</TD><TD>   *                  The arguments used by Xerces to &#34;fill in the blanks&#34; of their messages.</TD></TR><TR><TD CLASS="l">39</TD><TD>   *  @return </TD></TR><TR><TD CLASS="l">40</TD><TD>   *                  An array containing the squiggle information.</TD></TR><TR><TD CLASS="l">41</TD><TD>   *  @see org.eclipse.wst.xml.ui.internal.validation.DelegatingSourceValidator</TD></TR><TR><TD CLASS="l"><A NAME="2">42</A></TD><TD>   *  </TD></TR><TR><TD CLASS="l">43</TD><TD>   */</TD></TR><TR><TD CLASS="l">44</TD><TD>  public String[] createMessageInfo(String errorKey, Object[] messageArguments)</TD></TR><TR><TD CLASS="l">45</TD><TD>  { </TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>    String selectionStrategy = null;</TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>    String nameOrValue = null;</TD></TR><TR><TD CLASS="l">48</TD><TD>    </TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>    if(errorKey != null)</TD></TR><TR><TD CLASS="l">50</TD><TD>    {</TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>      if (errorKey.equals(&#34;cvc-complex-type.2.4.a&#34;) || errorKey.equals(&#34;cvc-complex-type.2.4.d&#34;) || errorKey.equals(&#34;cvc-complex-type.2.4.b&#34;) || errorKey.equals(&#34;MSG_CONTENT_INVALID&#34;) //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>        | errorKey.equals(&#34;MSG_CONTENT_INCOMPLETE&#34;) || errorKey.equals(&#34;MSG_REQUIRED_ATTRIBUTE_NOT_SPECIFIED&#34;) || errorKey.equals(&#34;cvc-complex-type.4&#34;)) //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$</TD></TR><TR><TD CLASS="l">53</TD><TD>      {</TD></TR><TR CLASS="z"><TD CLASS="l">54</TD><TD>        selectionStrategy = &#34;START_TAG&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">55</TD><TD>      }</TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>      else if (errorKey.equals(&#34;cvc-type.3.1.3&#34;)) //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">57</TD><TD>      {</TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>        selectionStrategy = &#34;TEXT&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">59</TD><TD>      }</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>      else if (errorKey.equals(&#34;cvc-complex-type.2.3&#34;)) //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">61</TD><TD>      {</TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>            selectionStrategy = &#34;FIRST_NON_WHITESPACE_TEXT&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">63</TD><TD>      }</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>      else if (errorKey.equals(&#34;cvc-type.3.1.1&#34;)) //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">65</TD><TD>      {</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>        selectionStrategy = &#34;ALL_ATTRIBUTES&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">67</TD><TD>      }</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>      else if (errorKey.equals(&#34;cvc-complex-type.3.2.2&#34;) || errorKey.equals(&#34;MSG_ATTRIBUTE_NOT_DECLARED&#34;)) //$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR><TD CLASS="l">69</TD><TD>      {</TD></TR><TR CLASS="z"><TD CLASS="l">70</TD><TD>        selectionStrategy = &#34;ATTRIBUTE_NAME&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">71</TD><TD>            //in this case we need nameOrValue to be the name of the attribute to underline</TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>            nameOrValue = (String)messageArguments[1];</TD></TR><TR><TD CLASS="l">73</TD><TD>      }</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>      else if (errorKey.equals(&#34;cvc-attribute.3&#34;) || errorKey.equals(&#34;MSG_ATTRIBUTE_VALUE_NOT_IN_LIST&#34;) || errorKey.equals(&#34;cvc-complex-type.3.1&#34;)) //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$</TD></TR><TR><TD CLASS="l">75</TD><TD>      {        </TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>            selectionStrategy = &#34;ATTRIBUTE_VALUE&#34;;   //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">77</TD><TD>                //in this case we need nameOrValue to be the name of the Attribute</TD></TR><TR CLASS="z"><TD CLASS="l">78</TD><TD>            if (errorKey.equals(&#34;cvc-attribute.3&#34;) || errorKey.equals(&#34;cvc-complex-type.3.1&#34;)) //$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR><TD CLASS="l">79</TD><TD>            { </TD></TR><TR CLASS="z"><TD CLASS="l">80</TD><TD>              nameOrValue = (String)messageArguments[1];</TD></TR><TR><TD CLASS="l">81</TD><TD>            }</TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>            else if (errorKey.equals(&#34;MSG_ATTRIBUTE_VALUE_NOT_IN_LIST&#34;)) //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">83</TD><TD>            {        </TD></TR><TR CLASS="z"><TD CLASS="l">84</TD><TD>              nameOrValue = (String)messageArguments[0];</TD></TR><TR><TD CLASS="l">85</TD><TD>            }</TD></TR><TR><TD CLASS="l">86</TD><TD>      }</TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>      else if (errorKey.equals(&#34;cvc-elt.4.2&#34;)) //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">88</TD><TD>      {        </TD></TR><TR CLASS="z"><TD CLASS="l">89</TD><TD>            selectionStrategy=&#34;VALUE_OF_ATTRIBUTE_WITH_GIVEN_VALUE&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">90</TD><TD>                //in this case we need nameOrValue to be the value of the attribute we want to unerline</TD></TR><TR CLASS="z"><TD CLASS="l">91</TD><TD>            nameOrValue = (String)messageArguments[1];        </TD></TR><TR><TD CLASS="l">92</TD><TD>      }</TD></TR><TR CLASS="z"><TD CLASS="l">93</TD><TD>      else if (errorKey.equals(&#34;EntityNotDeclared&#34;)) //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">94</TD><TD>      {          </TD></TR><TR CLASS="z"><TD CLASS="l">95</TD><TD>            selectionStrategy=&#34;TEXT_ENTITY_REFERENCE&#34;; //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">96</TD><TD>        nameOrValue = (String)messageArguments[0];</TD></TR><TR><TD CLASS="l">97</TD><TD>      }</TD></TR><TR CLASS="z"><TD CLASS="l">98</TD><TD>      else if (errorKey.equals(&#34;ElementUnterminated&#34;)) //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">99</TD><TD>      {</TD></TR><TR CLASS="z"><TD CLASS="l">100</TD><TD>        selectionStrategy = &#34;ENTIRE_ELEMENT&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">101</TD><TD>      }</TD></TR><TR CLASS="z"><TD CLASS="l">102</TD><TD>      else if (errorKey.equals(&#34;ETagUnterminated&#34;) || errorKey.equals(&#34;ETagRequired&#34;))  //$NON-NLS-1$  //$NON-NLS-2$</TD></TR><TR><TD CLASS="l">103</TD><TD>      {</TD></TR><TR CLASS="z"><TD CLASS="l">104</TD><TD>        selectionStrategy = &#34;END_TAG&#34;;   //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">105</TD><TD>      }</TD></TR><TR><TD CLASS="l">106</TD><TD>    }</TD></TR><TR CLASS="z"><TD CLASS="l">107</TD><TD>    String messageInfo[] = new String[2];</TD></TR><TR CLASS="z"><TD CLASS="l">108</TD><TD>    messageInfo[0] = selectionStrategy != null? selectionStrategy: &#34;&#34;; //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">109</TD><TD>    messageInfo[1] = nameOrValue;</TD></TR><TR CLASS="z"><TD CLASS="l">110</TD><TD>    return messageInfo;</TD></TR><TR><TD CLASS="l">111</TD><TD>  }</TD></TR><TR><TD CLASS="l">112</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="30.html">org.eclipse.wst.xml.core.internal.validation.eclipse</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/17e.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/17e.html
deleted file mode 100644
index f6fe41b..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/17e.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="30.html">org.eclipse.wst.xml.core.internal.validation.eclipse</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">XMLValidator.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>XMLValidator.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/21)</TD><TD CLASS="h">0%   (0/9)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">XMLValidator</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/21)</TD><TD CLASS="h">0%   (0/9)</TD></TR><TR><TD CLASS="f"><A HREF="#0">&lt;static initializer&gt;</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">XMLValidator (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#3">getInstance (): XMLValidator</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/3)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">11</TD><TD> </TD></TR><TR><TD CLASS="l">12</TD><TD>package org.eclipse.wst.xml.core.internal.validation.eclipse;</TD></TR><TR><TD CLASS="l">13</TD><TD> </TD></TR><TR><TD CLASS="l">14</TD><TD>import org.eclipse.wst.common.uriresolver.internal.provisional.URIResolverPlugin;</TD></TR><TR><TD CLASS="l">15</TD><TD> </TD></TR><TR><TD CLASS="l">16</TD><TD>/**</TD></TR><TR><TD CLASS="l">17</TD><TD> * An XML validator specific to Eclipse. This validator will wrap the internal</TD></TR><TR><TD CLASS="l">18</TD><TD> * XML validator and provide automatic URI resolution support. This class also</TD></TR><TR><TD CLASS="l">19</TD><TD> * reads from the plug-in registry and registers all error customizers with the</TD></TR><TR><TD CLASS="l"><A NAME="0">20</A></TD><TD> * registry.</TD></TR><TR><TD CLASS="l">21</TD><TD> */</TD></TR><TR CLASS="z"><TD CLASS="l">22</TD><TD>public class XMLValidator extends org.eclipse.wst.xml.core.internal.validation.XMLValidator</TD></TR><TR><TD CLASS="l">23</TD><TD>{</TD></TR><TR CLASS="z"><TD CLASS="l">24</TD><TD>  private static XMLValidator instance = null;</TD></TR><TR><TD CLASS="l">25</TD><TD>  </TD></TR><TR><TD CLASS="l">26</TD><TD>  /**</TD></TR><TR><TD CLASS="l">27</TD><TD>   * Return the one and only instance of the XML validator. The validator</TD></TR><TR><TD CLASS="l">28</TD><TD>   * can be reused and cannot be customized so there should only be one instance of it.</TD></TR><TR><TD CLASS="l">29</TD><TD>   * </TD></TR><TR><TD CLASS="l"><A NAME="3">30</A></TD><TD>   * @return The one and only instance of the XML validator.</TD></TR><TR><TD CLASS="l">31</TD><TD>   */</TD></TR><TR><TD CLASS="l">32</TD><TD>  public static XMLValidator getInstance()</TD></TR><TR><TD CLASS="l">33</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">34</TD><TD>    if(instance == null)</TD></TR><TR><TD CLASS="l">35</TD><TD>    {</TD></TR><TR CLASS="z"><TD CLASS="l">36</TD><TD>      instance = new XMLValidator();</TD></TR><TR><TD CLASS="l">37</TD><TD>    }</TD></TR><TR CLASS="z"><TD CLASS="l">38</TD><TD>    return instance;</TD></TR><TR><TD CLASS="l">39</TD><TD>  }</TD></TR><TR><TD CLASS="l"><A NAME="2">40</A></TD><TD>  /**</TD></TR><TR><TD CLASS="l">41</TD><TD>   * Constructor. Create the XML validator, set the URI resolver and</TD></TR><TR><TD CLASS="l">42</TD><TD>   * get the extension error customizers from the registry.</TD></TR><TR><TD CLASS="l">43</TD><TD>   */</TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>  protected XMLValidator()</TD></TR><TR><TD CLASS="l">45</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>    setURIResolver(URIResolverPlugin.createResolver());</TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>    new ErrorCustomizationPluginRegistryReader().readRegistry();</TD></TR><TR CLASS="z"><TD CLASS="l">48</TD><TD>  }</TD></TR><TR><TD CLASS="l">49</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="30.html">org.eclipse.wst.xml.core.internal.validation.eclipse</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/17f.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/17f.html
deleted file mode 100644
index d17162e..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/17f.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="31.html">org.eclipse.wst.xml.core.internal.validation.errorcustomization</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">ElementInformation.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>ElementInformation.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/23)</TD><TD CLASS="h">0%   (0/8)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">ElementInformation</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/23)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR><TD CLASS="f"><A HREF="#0">ElementInformation (String, String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/14)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">getChildren (): List</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#3">getLocalname (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">getNamespace (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">11</TD><TD>package org.eclipse.wst.xml.core.internal.validation.errorcustomization;</TD></TR><TR><TD CLASS="l">12</TD><TD> </TD></TR><TR><TD CLASS="l">13</TD><TD>import java.util.ArrayList;</TD></TR><TR><TD CLASS="l">14</TD><TD>import java.util.List;</TD></TR><TR><TD CLASS="l">15</TD><TD> </TD></TR><TR><TD CLASS="l">16</TD><TD>/**</TD></TR><TR><TD CLASS="l">17</TD><TD> * A simple class to store information about an XML element.</TD></TR><TR><TD CLASS="l">18</TD><TD> */</TD></TR><TR><TD CLASS="l">19</TD><TD>public class ElementInformation</TD></TR><TR><TD CLASS="l">20</TD><TD>{</TD></TR><TR><TD CLASS="l">21</TD><TD>  protected String localName;</TD></TR><TR><TD CLASS="l">22</TD><TD>  protected String namespace;</TD></TR><TR CLASS="z"><TD CLASS="l">23</TD><TD>  protected List children = new ArrayList();</TD></TR><TR><TD CLASS="l">24</TD><TD> </TD></TR><TR><TD CLASS="l">25</TD><TD>  /**</TD></TR><TR><TD CLASS="l">26</TD><TD>   * Constructor.</TD></TR><TR><TD CLASS="l">27</TD><TD>   * </TD></TR><TR><TD CLASS="l">28</TD><TD>   * @param uri</TD></TR><TR><TD CLASS="l"><A NAME="0">29</A></TD><TD>   *                 The namespace URI of the element.</TD></TR><TR><TD CLASS="l">30</TD><TD>   * @param localName</TD></TR><TR><TD CLASS="l">31</TD><TD>   *                 The local name of the element.</TD></TR><TR><TD CLASS="l">32</TD><TD>   */</TD></TR><TR CLASS="z"><TD CLASS="l">33</TD><TD>  public ElementInformation(String uri, String localName)</TD></TR><TR><TD CLASS="l">34</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">35</TD><TD>    this.localName = localName;</TD></TR><TR CLASS="z"><TD CLASS="l">36</TD><TD>    this.namespace = uri;</TD></TR><TR CLASS="z"><TD CLASS="l">37</TD><TD>  }</TD></TR><TR><TD CLASS="l">38</TD><TD>  </TD></TR><TR><TD CLASS="l">39</TD><TD>  /**</TD></TR><TR><TD CLASS="l">40</TD><TD>   * Get the namespace of this element.</TD></TR><TR><TD CLASS="l">41</TD><TD>   * </TD></TR><TR><TD CLASS="l">42</TD><TD>   * @return</TD></TR><TR><TD CLASS="l"><A NAME="4">43</A></TD><TD>   *                 The namespace of this element.</TD></TR><TR><TD CLASS="l">44</TD><TD>   */</TD></TR><TR><TD CLASS="l">45</TD><TD>  public String getNamespace()</TD></TR><TR><TD CLASS="l">46</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>        return namespace;</TD></TR><TR><TD CLASS="l">48</TD><TD>  }</TD></TR><TR><TD CLASS="l">49</TD><TD>  </TD></TR><TR><TD CLASS="l">50</TD><TD>  /**</TD></TR><TR><TD CLASS="l">51</TD><TD>   * Get the local name of this element.</TD></TR><TR><TD CLASS="l">52</TD><TD>   * </TD></TR><TR><TD CLASS="l">53</TD><TD>   * @return</TD></TR><TR><TD CLASS="l"><A NAME="3">54</A></TD><TD>   *                 The local name of this element.</TD></TR><TR><TD CLASS="l">55</TD><TD>   */</TD></TR><TR><TD CLASS="l">56</TD><TD>  public String getLocalname()</TD></TR><TR><TD CLASS="l">57</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>        return localName;</TD></TR><TR><TD CLASS="l">59</TD><TD>  }</TD></TR><TR><TD CLASS="l">60</TD><TD>  </TD></TR><TR><TD CLASS="l">61</TD><TD>  /**</TD></TR><TR><TD CLASS="l">62</TD><TD>   * Get the list of children of this element. The list contains</TD></TR><TR><TD CLASS="l">63</TD><TD>   * ElementInformation objects representing the children of this element.</TD></TR><TR><TD CLASS="l">64</TD><TD>   * </TD></TR><TR><TD CLASS="l">65</TD><TD>   * @return</TD></TR><TR><TD CLASS="l"><A NAME="2">66</A></TD><TD>   *                 The list of children of this element.</TD></TR><TR><TD CLASS="l">67</TD><TD>   */</TD></TR><TR><TD CLASS="l">68</TD><TD>  public List getChildren()</TD></TR><TR><TD CLASS="l">69</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">70</TD><TD>        return children;</TD></TR><TR><TD CLASS="l">71</TD><TD>  }</TD></TR><TR><TD CLASS="l">72</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="31.html">org.eclipse.wst.xml.core.internal.validation.errorcustomization</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/18.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/18.html
deleted file mode 100644
index 980b079..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/18.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR PACKAGE [<SPAN CLASS="in">org.eclipse.wst.sse.ui.internal.provisional.extensions.breakpoint</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>org.eclipse.wst.sse.ui.internal.provisional.extensions.breakpoint</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/47)</TD><TD CLASS="h">0%   (0/14)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY SOURCE FILE</H3><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR CLASS="o"><TD><A HREF="134.html">NullSourceEditingTextTools.java</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/47)</TD><TD CLASS="h">0%   (0/14)</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/180.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/180.html
deleted file mode 100644
index 154f749..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/180.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="31.html">org.eclipse.wst.xml.core.internal.validation.errorcustomization</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">ErrorCustomizationManager.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>ErrorCustomizationManager.java</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/130)</TD><TD CLASS="h">0%   (0/31)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">ErrorCustomizationManager</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/115)</TD><TD CLASS="h">0%   (0/27)</TD></TR><TR><TD CLASS="f"><A HREF="#0">ErrorCustomizationManager (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">considerReportedError (ValidationInfo, String, Object []): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/33)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR><TD CLASS="f"><A HREF="#3">endElement (String, String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/48)</TD><TD CLASS="h">0%   (0/11)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">startElement (String, String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/26)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#5">ErrorCustomizationManager$ErrorMessageInformation</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#5">ErrorCustomizationManager$ErrorMessageInformation (ErrorCustomizationManager)...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/4)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">11</TD><TD>package org.eclipse.wst.xml.core.internal.validation.errorcustomization;</TD></TR><TR><TD CLASS="l">12</TD><TD> </TD></TR><TR><TD CLASS="l">13</TD><TD>import java.util.Stack;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.wst.xml.core.internal.validation.core.ValidationInfo;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.wst.xml.core.internal.validation.core.ValidationMessage;</TD></TR><TR><TD CLASS="l">17</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="0">18</A></TD><TD>/**</TD></TR><TR><TD CLASS="l">19</TD><TD> * This class tracks the context of the parsed document to help identify error</TD></TR><TR><TD CLASS="l">20</TD><TD> * conditions</TD></TR><TR><TD CLASS="l">21</TD><TD> */</TD></TR><TR CLASS="z"><TD CLASS="l">22</TD><TD>public class ErrorCustomizationManager</TD></TR><TR><TD CLASS="l">23</TD><TD>{</TD></TR><TR CLASS="z"><TD CLASS="l">24</TD><TD>  protected Stack elementInformationStack = new Stack();</TD></TR><TR><TD CLASS="l">25</TD><TD>  protected ErrorMessageInformation messageForConsideration;</TD></TR><TR><TD CLASS="l">26</TD><TD> </TD></TR><TR><TD CLASS="l">27</TD><TD>  /**</TD></TR><TR><TD CLASS="l">28</TD><TD>   * This method should be called in the start element method of the XML validator's</TD></TR><TR><TD CLASS="l">29</TD><TD>   * content handler.</TD></TR><TR><TD CLASS="l">30</TD><TD>   * </TD></TR><TR><TD CLASS="l">31</TD><TD>   * @param uri</TD></TR><TR><TD CLASS="l">32</TD><TD>   *                 The namespace of the element.</TD></TR><TR><TD CLASS="l">33</TD><TD>   * @param localName</TD></TR><TR><TD CLASS="l"><A NAME="4">34</A></TD><TD>   *                 The local name of the element.</TD></TR><TR><TD CLASS="l">35</TD><TD>   */</TD></TR><TR><TD CLASS="l">36</TD><TD>  public void startElement(String uri, String localName)</TD></TR><TR><TD CLASS="l">37</TD><TD>  { </TD></TR><TR CLASS="z"><TD CLASS="l">38</TD><TD>    ElementInformation elementInformation = new ElementInformation(uri, localName);</TD></TR><TR CLASS="z"><TD CLASS="l">39</TD><TD>    if (elementInformationStack.size() &gt; 0)</TD></TR><TR><TD CLASS="l">40</TD><TD>    {</TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>      ElementInformation parent = (ElementInformation) elementInformationStack.peek();</TD></TR><TR CLASS="z"><TD CLASS="l">42</TD><TD>      parent.children.add(elementInformation);</TD></TR><TR><TD CLASS="l">43</TD><TD>    }</TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>    elementInformationStack.push(elementInformation);</TD></TR><TR CLASS="z"><TD CLASS="l">45</TD><TD>  }</TD></TR><TR><TD CLASS="l">46</TD><TD> </TD></TR><TR><TD CLASS="l">47</TD><TD>  /**</TD></TR><TR><TD CLASS="l">48</TD><TD>   * This method should be called in the end element method of the XML validator's</TD></TR><TR><TD CLASS="l">49</TD><TD>   * content handler.</TD></TR><TR><TD CLASS="l">50</TD><TD>   * </TD></TR><TR><TD CLASS="l">51</TD><TD>   * @param uri</TD></TR><TR><TD CLASS="l">52</TD><TD>   *                 The namespace of the element.</TD></TR><TR><TD CLASS="l">53</TD><TD>   * @param localName</TD></TR><TR><TD CLASS="l"><A NAME="3">54</A></TD><TD>   *                 The local name of the element.</TD></TR><TR><TD CLASS="l">55</TD><TD>   */</TD></TR><TR><TD CLASS="l">56</TD><TD>  public void endElement(String uri, String localName)</TD></TR><TR><TD CLASS="l">57</TD><TD>  {   </TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>    if (elementInformationStack.size() &gt; 0)</TD></TR><TR><TD CLASS="l">59</TD><TD>    {</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>      ElementInformation elementInformation = (ElementInformation)elementInformationStack.pop();</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>      if (messageForConsideration != null)</TD></TR><TR><TD CLASS="l">62</TD><TD>      {  </TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>        IErrorMessageCustomizer[] customizers = ErrorCustomizationRegistry.getInstance().getCustomizers(elementInformation.getNamespace());</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>        int numCustomizers = customizers.length;</TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>        for(int i = 0; i &lt; numCustomizers; i++)</TD></TR><TR><TD CLASS="l">66</TD><TD>        {</TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>          String message = customizers[i].customizeMessage(elementInformation, messageForConsideration.key, messageForConsideration.arguments);</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>          if(message != null)</TD></TR><TR><TD CLASS="l">69</TD><TD>          {</TD></TR><TR CLASS="z"><TD CLASS="l">70</TD><TD>                messageForConsideration.message.setMessage(message);</TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>                break;</TD></TR><TR><TD CLASS="l">72</TD><TD>          }</TD></TR><TR><TD CLASS="l">73</TD><TD>        }</TD></TR><TR><TD CLASS="l">74</TD><TD>      }  </TD></TR><TR><TD CLASS="l">75</TD><TD>    }</TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>  }</TD></TR><TR><TD CLASS="l">77</TD><TD> </TD></TR><TR><TD CLASS="l">78</TD><TD>  /**</TD></TR><TR><TD CLASS="l">79</TD><TD>   * Consider the reported error for customization.</TD></TR><TR><TD CLASS="l">80</TD><TD>   * </TD></TR><TR><TD CLASS="l">81</TD><TD>   * @param valInfo</TD></TR><TR><TD CLASS="l">82</TD><TD>   *                 The current ValidationInfo object containing validation specific information.</TD></TR><TR><TD CLASS="l">83</TD><TD>   * @param key</TD></TR><TR><TD CLASS="l">84</TD><TD>   *                 The key related to the message.</TD></TR><TR><TD CLASS="l">85</TD><TD>   * @param arguments</TD></TR><TR><TD CLASS="l"><A NAME="2">86</A></TD><TD>   *                 Any message arguments.</TD></TR><TR><TD CLASS="l">87</TD><TD>   */</TD></TR><TR><TD CLASS="l">88</TD><TD>  public void considerReportedError(ValidationInfo valInfo, String key, Object[] arguments)</TD></TR><TR><TD CLASS="l">89</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">90</TD><TD>    messageForConsideration = null;</TD></TR><TR CLASS="z"><TD CLASS="l">91</TD><TD>    ValidationMessage[] messages = valInfo.getValidationMessages();</TD></TR><TR CLASS="z"><TD CLASS="l">92</TD><TD>    if (messages.length &gt; 0)</TD></TR><TR><TD CLASS="l">93</TD><TD>    {  </TD></TR><TR CLASS="z"><TD CLASS="l">94</TD><TD>      messageForConsideration = new ErrorMessageInformation();</TD></TR><TR CLASS="z"><TD CLASS="l">95</TD><TD>      messageForConsideration.key = key;</TD></TR><TR CLASS="z"><TD CLASS="l">96</TD><TD>      messageForConsideration.arguments = arguments;</TD></TR><TR CLASS="z"><TD CLASS="l">97</TD><TD>      messageForConsideration.message = messages[messages.length - 1]; </TD></TR><TR><TD CLASS="l">98</TD><TD>    }</TD></TR><TR CLASS="z"><TD CLASS="l">99</TD><TD>  }</TD></TR><TR><TD CLASS="l"><A NAME="5">100</A></TD><TD>  </TD></TR><TR><TD CLASS="l">101</TD><TD>  /**</TD></TR><TR><TD CLASS="l">102</TD><TD>   * A simple class to hold error message information.</TD></TR><TR><TD CLASS="l">103</TD><TD>   */</TD></TR><TR CLASS="z"><TD CLASS="l">104</TD><TD>  public class ErrorMessageInformation</TD></TR><TR><TD CLASS="l">105</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">106</TD><TD>        public String key = null;</TD></TR><TR CLASS="z"><TD CLASS="l">107</TD><TD>        public Object[] arguments = null;</TD></TR><TR CLASS="z"><TD CLASS="l">108</TD><TD>        public ValidationMessage message = null;</TD></TR><TR><TD CLASS="l">109</TD><TD>  }</TD></TR><TR><TD CLASS="l">110</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="31.html">org.eclipse.wst.xml.core.internal.validation.errorcustomization</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/181.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/181.html
deleted file mode 100644
index 89ddacf..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/181.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="31.html">org.eclipse.wst.xml.core.internal.validation.errorcustomization</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">ErrorCustomizationRegistry.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>ErrorCustomizationRegistry.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/71)</TD><TD CLASS="h">0%   (0/23)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">ErrorCustomizationRegistry</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/71)</TD><TD CLASS="h">0%   (0/23)</TD></TR><TR><TD CLASS="f"><A HREF="#0">&lt;static initializer&gt;</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">ErrorCustomizationRegistry (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#3">addErrorMessageCustomizer (String, IErrorMessageCustomizer): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/29)</TD><TD CLASS="h">0%   (0/9)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">getCustomizers (String): IErrorMessageCustomizer []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/23)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#5">getInstance (): ErrorCustomizationRegistry</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/3)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">11</TD><TD>package org.eclipse.wst.xml.core.internal.validation.errorcustomization;</TD></TR><TR><TD CLASS="l">12</TD><TD> </TD></TR><TR><TD CLASS="l">13</TD><TD>import java.util.ArrayList;</TD></TR><TR><TD CLASS="l">14</TD><TD>import java.util.HashMap;</TD></TR><TR><TD CLASS="l">15</TD><TD>import java.util.List;</TD></TR><TR><TD CLASS="l">16</TD><TD>import java.util.Map;</TD></TR><TR><TD CLASS="l">17</TD><TD> </TD></TR><TR><TD CLASS="l">18</TD><TD>/**</TD></TR><TR><TD CLASS="l">19</TD><TD> * The error customization regsitry manages all registered</TD></TR><TR><TD CLASS="l"><A NAME="0">20</A></TD><TD> * IErrorMessageCustomizers by namespace.</TD></TR><TR><TD CLASS="l">21</TD><TD> */</TD></TR><TR CLASS="z"><TD CLASS="l">22</TD><TD>public class ErrorCustomizationRegistry </TD></TR><TR><TD CLASS="l">23</TD><TD>{</TD></TR><TR CLASS="z"><TD CLASS="l">24</TD><TD>  protected static ErrorCustomizationRegistry registry = null;</TD></TR><TR CLASS="z"><TD CLASS="l">25</TD><TD>  protected Map customizers = new HashMap();</TD></TR><TR><TD CLASS="l"><A NAME="2">26</A></TD><TD>  </TD></TR><TR><TD CLASS="l">27</TD><TD>  /**</TD></TR><TR><TD CLASS="l">28</TD><TD>   * Restricted constructor in keeping with the singleton pattern.</TD></TR><TR><TD CLASS="l">29</TD><TD>   */</TD></TR><TR CLASS="z"><TD CLASS="l">30</TD><TD>  protected ErrorCustomizationRegistry()</TD></TR><TR><TD CLASS="l">31</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">32</TD><TD>  }</TD></TR><TR><TD CLASS="l">33</TD><TD>  </TD></TR><TR><TD CLASS="l">34</TD><TD>  /**</TD></TR><TR><TD CLASS="l">35</TD><TD>   * Get the one and only instance of the registry.</TD></TR><TR><TD CLASS="l">36</TD><TD>   * </TD></TR><TR><TD CLASS="l">37</TD><TD>   * @return</TD></TR><TR><TD CLASS="l"><A NAME="5">38</A></TD><TD>   *                 The one and only instance of the registry.</TD></TR><TR><TD CLASS="l">39</TD><TD>   */</TD></TR><TR><TD CLASS="l">40</TD><TD>  public static ErrorCustomizationRegistry getInstance()</TD></TR><TR><TD CLASS="l">41</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">42</TD><TD>        if(registry == null)</TD></TR><TR><TD CLASS="l">43</TD><TD>        {</TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>          registry = new ErrorCustomizationRegistry();</TD></TR><TR><TD CLASS="l">45</TD><TD>        }</TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>        return registry;</TD></TR><TR><TD CLASS="l">47</TD><TD>  }</TD></TR><TR><TD CLASS="l">48</TD><TD>  </TD></TR><TR><TD CLASS="l">49</TD><TD>  /**</TD></TR><TR><TD CLASS="l">50</TD><TD>   * Add a customizer to the registry. </TD></TR><TR><TD CLASS="l">51</TD><TD>   * </TD></TR><TR><TD CLASS="l">52</TD><TD>   * @param namespace</TD></TR><TR><TD CLASS="l">53</TD><TD>   *                 The namespace the customizer will act on.</TD></TR><TR><TD CLASS="l">54</TD><TD>   * @param customizer</TD></TR><TR><TD CLASS="l">55</TD><TD>   *                 The error customizer to register.</TD></TR><TR><TD CLASS="l"><A NAME="3">56</A></TD><TD>   */</TD></TR><TR><TD CLASS="l">57</TD><TD>  public void addErrorMessageCustomizer(String namespace, IErrorMessageCustomizer customizer)</TD></TR><TR><TD CLASS="l">58</TD><TD>  {</TD></TR><TR><TD CLASS="l">59</TD><TD>        // To register a customizer for the no namespace use an empty string.</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>        if(namespace == null)</TD></TR><TR><TD CLASS="l">61</TD><TD>        {</TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>          namespace = &#34;&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">63</TD><TD>        }</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>        List customizersForNS = (List)customizers.get(namespace);</TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>        if(customizersForNS == null)</TD></TR><TR><TD CLASS="l">66</TD><TD>        {</TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>          customizersForNS = new ArrayList();</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>          customizers.put(namespace, customizersForNS);</TD></TR><TR><TD CLASS="l">69</TD><TD>        }</TD></TR><TR CLASS="z"><TD CLASS="l">70</TD><TD>        if(customizer != null)</TD></TR><TR><TD CLASS="l">71</TD><TD>        {</TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>          customizersForNS.add(customizer);</TD></TR><TR><TD CLASS="l">73</TD><TD>        }</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>  }</TD></TR><TR><TD CLASS="l">75</TD><TD>  </TD></TR><TR><TD CLASS="l">76</TD><TD>  /**</TD></TR><TR><TD CLASS="l">77</TD><TD>   * Get the error customizers for a given namespace.</TD></TR><TR><TD CLASS="l">78</TD><TD>   * </TD></TR><TR><TD CLASS="l">79</TD><TD>   * @param namespace</TD></TR><TR><TD CLASS="l">80</TD><TD>   *                 The namespace for which to retrieve the customizers.</TD></TR><TR><TD CLASS="l">81</TD><TD>   * @return</TD></TR><TR><TD CLASS="l"><A NAME="4">82</A></TD><TD>   *                 An array of customizers registered for this namespace.</TD></TR><TR><TD CLASS="l">83</TD><TD>   */</TD></TR><TR><TD CLASS="l">84</TD><TD>  public IErrorMessageCustomizer[] getCustomizers(String namespace)</TD></TR><TR><TD CLASS="l">85</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>        if(namespace == null)</TD></TR><TR><TD CLASS="l">87</TD><TD>        {</TD></TR><TR CLASS="z"><TD CLASS="l">88</TD><TD>          namespace = &#34;&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">89</TD><TD>        }</TD></TR><TR CLASS="z"><TD CLASS="l">90</TD><TD>        List customizersForNS = (List)customizers.get(namespace);</TD></TR><TR CLASS="z"><TD CLASS="l">91</TD><TD>        if(customizersForNS == null)</TD></TR><TR><TD CLASS="l">92</TD><TD>        {</TD></TR><TR CLASS="z"><TD CLASS="l">93</TD><TD>          customizersForNS = new ArrayList();</TD></TR><TR><TD CLASS="l">94</TD><TD>        }</TD></TR><TR CLASS="z"><TD CLASS="l">95</TD><TD>        return (IErrorMessageCustomizer[])customizersForNS.toArray(new IErrorMessageCustomizer[customizersForNS.size()]);</TD></TR><TR><TD CLASS="l">96</TD><TD>  }</TD></TR><TR><TD CLASS="l">97</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="31.html">org.eclipse.wst.xml.core.internal.validation.errorcustomization</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/182.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/182.html
deleted file mode 100644
index 02f55fc..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/182.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="31.html">org.eclipse.wst.xml.core.internal.validation.errorcustomization</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">ErrorMessageCustomizerDelegate.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>ErrorMessageCustomizerDelegate.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/69)</TD><TD CLASS="h">0%   (0/21)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">ErrorMessageCustomizerDelegate</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/69)</TD><TD CLASS="h">0%   (0/21)</TD></TR><TR><TD CLASS="f"><A HREF="#0">ErrorMessageCustomizerDelegate (Bundle, String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/18)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">customizeMessage (ElementInformation, String, Object []): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/17)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#3">loadCustomizer (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/34)</TD><TD CLASS="h">0%   (0/9)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">11</TD><TD>package org.eclipse.wst.xml.core.internal.validation.errorcustomization;</TD></TR><TR><TD CLASS="l">12</TD><TD> </TD></TR><TR><TD CLASS="l">13</TD><TD>import org.eclipse.core.runtime.IStatus;</TD></TR><TR><TD CLASS="l">14</TD><TD>import org.eclipse.core.runtime.Status;</TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.wst.xml.core.internal.XMLCorePlugin;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.osgi.framework.Bundle;</TD></TR><TR><TD CLASS="l">17</TD><TD> </TD></TR><TR><TD CLASS="l">18</TD><TD>/**</TD></TR><TR><TD CLASS="l">19</TD><TD> * An error message customizer delegate is used to allow for</TD></TR><TR><TD CLASS="l">20</TD><TD> * lazy loading of error customizers.</TD></TR><TR><TD CLASS="l">21</TD><TD> *</TD></TR><TR><TD CLASS="l">22</TD><TD> */</TD></TR><TR><TD CLASS="l">23</TD><TD>public class ErrorMessageCustomizerDelegate implements IErrorMessageCustomizer</TD></TR><TR><TD CLASS="l">24</TD><TD>{</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="0">25</A></TD><TD>  protected Bundle bundle = null;</TD></TR><TR CLASS="z"><TD CLASS="l">26</TD><TD>  protected String classname = null;</TD></TR><TR CLASS="z"><TD CLASS="l">27</TD><TD>  protected IErrorMessageCustomizer customizer = null;</TD></TR><TR><TD CLASS="l">28</TD><TD>  </TD></TR><TR CLASS="z"><TD CLASS="l">29</TD><TD>  public ErrorMessageCustomizerDelegate(Bundle bundle, String classname)</TD></TR><TR><TD CLASS="l">30</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">31</TD><TD>        this.bundle = bundle;</TD></TR><TR CLASS="z"><TD CLASS="l">32</TD><TD>        this.classname = classname;</TD></TR><TR CLASS="z"><TD CLASS="l">33</TD><TD>  }</TD></TR><TR><TD CLASS="l">34</TD><TD> </TD></TR><TR><TD CLASS="l">35</TD><TD>  /* (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="2">36</A></TD><TD>   * @see org.eclipse.wst.xml.core.internal.validation.errorcustomization.IErrorMessageCustomizer#customizeMessage(org.eclipse.wst.xml.core.internal.validation.errorcustomization.ElementInformation, java.lang.String, java.lang.Object[])</TD></TR><TR><TD CLASS="l">37</TD><TD>   */</TD></TR><TR><TD CLASS="l">38</TD><TD>  public String customizeMessage(ElementInformation elementInfo, String errorKey, Object[] arguments) </TD></TR><TR><TD CLASS="l">39</TD><TD>  {</TD></TR><TR CLASS="z"><TD CLASS="l">40</TD><TD>        if(customizer == null)</TD></TR><TR><TD CLASS="l">41</TD><TD>        {</TD></TR><TR CLASS="z"><TD CLASS="l">42</TD><TD>          loadCustomizer();</TD></TR><TR><TD CLASS="l">43</TD><TD>        }</TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>        if(customizer == null)</TD></TR><TR><TD CLASS="l">45</TD><TD>        {</TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>          return null;</TD></TR><TR><TD CLASS="l">47</TD><TD>        }</TD></TR><TR CLASS="z"><TD CLASS="l">48</TD><TD>        return customizer.customizeMessage(elementInfo, errorKey, arguments);</TD></TR><TR><TD CLASS="l">49</TD><TD>  }</TD></TR><TR><TD CLASS="l">50</TD><TD>  </TD></TR><TR><TD CLASS="l">51</TD><TD>  /**</TD></TR><TR><TD CLASS="l">52</TD><TD>   * Load the customizer class.</TD></TR><TR><TD CLASS="l">53</TD><TD>   */</TD></TR><TR><TD CLASS="l"><A NAME="3">54</A></TD><TD>  protected void loadCustomizer()</TD></TR><TR><TD CLASS="l">55</TD><TD>  {</TD></TR><TR><TD CLASS="l">56</TD><TD>        try</TD></TR><TR><TD CLASS="l">57</TD><TD>        {</TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>          Class customizerClass = bundle.loadClass(classname);</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>          customizer = (IErrorMessageCustomizer)customizerClass.newInstance();</TD></TR><TR><TD CLASS="l">60</TD><TD>        }</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>        catch(Exception e)</TD></TR><TR><TD CLASS="l">62</TD><TD>        {</TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>          XMLCorePlugin.getDefault().getLog().log(</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                          new Status(IStatus.WARNING, </TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>                                             XMLCorePlugin.getDefault().getBundle().getSymbolicName(), </TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                                             IStatus.OK, </TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>                                             &#34;The XML validator error customizer was unable to load class &#34; + classname, e)); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">68</TD><TD>        }</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>  }</TD></TR><TR><TD CLASS="l">70</TD><TD>  </TD></TR><TR><TD CLASS="l">71</TD><TD>  </TD></TR><TR><TD CLASS="l">72</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="31.html">org.eclipse.wst.xml.core.internal.validation.errorcustomization</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/183.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/183.html
deleted file mode 100644
index 9e88af7..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/183.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="32.html">org.eclipse.wst.xml.ui.internal.actions</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">AbstractCommentActionXMLDelegate.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>AbstractCommentActionXMLDelegate.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/138)</TD><TD CLASS="h">0%   (0/40)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">AbstractCommentActionXMLDelegate</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/138)</TD><TD CLASS="h">0%   (0/40)</TD></TR><TR><TD CLASS="f"><A HREF="#0">AbstractCommentActionXMLDelegate (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">dispose (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#3">getCurrentSelection (): ITextSelection</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/22)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">init (IViewPart): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#5">removeOpenCloseComments (IDocument, int, int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/71)</TD><TD CLASS="h">0%   (0/15)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">run (IAction): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/28)</TD><TD CLASS="h">0%   (0/9)</TD></TR><TR><TD CLASS="f"><A HREF="#7">runWithEvent (IAction, Event): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">selectionChanged (IAction, ISelection): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#9">setActiveEditor (IAction, IEditorPart): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2005, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     </TD></TR><TR><TD CLASS="l">11</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">12</TD><TD> </TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.ui.internal.actions;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.jface.action.IAction;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.jface.text.BadLocationException;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.jface.text.IDocument;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.jface.text.ITextSelection;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.jface.text.TextSelection;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.jface.viewers.ISelection;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.jface.viewers.ISelectionProvider;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.swt.widgets.Event;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.ui.IActionDelegate2;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.ui.IEditorActionDelegate;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.ui.IEditorPart;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.ui.IViewActionDelegate;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.ui.IViewPart;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.ui.texteditor.ITextEditor;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.wst.xml.ui.internal.Logger;</TD></TR><TR><TD CLASS="l"><A NAME="0">30</A></TD><TD> </TD></TR><TR><TD CLASS="l">31</TD><TD>/**</TD></TR><TR><TD CLASS="l">32</TD><TD> * Abstract comment action delegate for XML editors</TD></TR><TR><TD CLASS="l">33</TD><TD> */</TD></TR><TR CLASS="z"><TD CLASS="l">34</TD><TD>abstract public class AbstractCommentActionXMLDelegate implements IEditorActionDelegate, IActionDelegate2, IViewActionDelegate {</TD></TR><TR><TD CLASS="l">35</TD><TD>        static final String CLOSE_COMMENT = &#34;--&gt;&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">36</TD><TD>        static final String OPEN_COMMENT = &#34;&lt;!--&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l"><A NAME="9">37</A></TD><TD> </TD></TR><TR><TD CLASS="l">38</TD><TD>        IEditorPart fEditor;</TD></TR><TR><TD CLASS="l">39</TD><TD> </TD></TR><TR><TD CLASS="l">40</TD><TD>        public void setActiveEditor(IAction action, IEditorPart targetEditor) {</TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>                fEditor = targetEditor;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">42</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">43</TD><TD> </TD></TR><TR><TD CLASS="l">44</TD><TD>        public void dispose() {</TD></TR><TR><TD CLASS="l">45</TD><TD>                // nulling out just in case</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="7">46</A></TD><TD>                fEditor = null;</TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>        }</TD></TR><TR><TD CLASS="l">48</TD><TD> </TD></TR><TR><TD CLASS="l">49</TD><TD>        public void runWithEvent(IAction action, Event event) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="6">50</A></TD><TD>                run(action);</TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>        }</TD></TR><TR><TD CLASS="l">52</TD><TD> </TD></TR><TR><TD CLASS="l">53</TD><TD>        public void run(IAction action) {</TD></TR><TR CLASS="z"><TD CLASS="l">54</TD><TD>                if (fEditor instanceof ITextEditor) {</TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                        ITextEditor textEditor = (ITextEditor) fEditor;</TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>                        IDocument document = textEditor.getDocumentProvider().getDocument(textEditor.getEditorInput());</TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>                        if (document != null) {</TD></TR><TR><TD CLASS="l">58</TD><TD>                                // get current text selection</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>                                ITextSelection textSelection = getCurrentSelection();</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                                if (textSelection.isEmpty()) {</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                                        return;</TD></TR><TR><TD CLASS="l">62</TD><TD>                                }</TD></TR><TR><TD CLASS="l">63</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                                processAction(document, textSelection);</TD></TR><TR><TD CLASS="l">65</TD><TD>                        }</TD></TR><TR><TD CLASS="l">66</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">67</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">68</TD><TD> </TD></TR><TR><TD CLASS="l">69</TD><TD>        public void init(IViewPart view) {</TD></TR><TR><TD CLASS="l">70</TD><TD>                // do nothing</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="8">71</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">72</TD><TD> </TD></TR><TR><TD CLASS="l">73</TD><TD>        public void selectionChanged(IAction action, ISelection selection) {</TD></TR><TR><TD CLASS="l"><A NAME="3">74</A></TD><TD>                // do nothing</TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>        }</TD></TR><TR><TD CLASS="l">76</TD><TD> </TD></TR><TR><TD CLASS="l">77</TD><TD>        private ITextSelection getCurrentSelection() {</TD></TR><TR CLASS="z"><TD CLASS="l">78</TD><TD>                if (fEditor instanceof ITextEditor) {</TD></TR><TR CLASS="z"><TD CLASS="l">79</TD><TD>                        ISelectionProvider provider = ((ITextEditor) fEditor).getSelectionProvider();</TD></TR><TR CLASS="z"><TD CLASS="l">80</TD><TD>                        if (provider != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">81</TD><TD>                                ISelection selection = provider.getSelection();</TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>                                if (selection instanceof ITextSelection) {</TD></TR><TR CLASS="z"><TD CLASS="l">83</TD><TD>                                        return (ITextSelection) selection;</TD></TR><TR><TD CLASS="l">84</TD><TD>                                }</TD></TR><TR><TD CLASS="l">85</TD><TD>                        }</TD></TR><TR><TD CLASS="l">86</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>                return TextSelection.emptySelection();</TD></TR><TR><TD CLASS="l">88</TD><TD>        }</TD></TR><TR><TD CLASS="l">89</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="5">90</A></TD><TD>        abstract void processAction(IDocument document, ITextSelection textSelection);</TD></TR><TR><TD CLASS="l">91</TD><TD> </TD></TR><TR><TD CLASS="l">92</TD><TD>        void removeOpenCloseComments(IDocument document, int offset, int length) {</TD></TR><TR><TD CLASS="l">93</TD><TD>                try {</TD></TR><TR CLASS="z"><TD CLASS="l">94</TD><TD>                        int adjusted_length = length;</TD></TR><TR><TD CLASS="l">95</TD><TD> </TD></TR><TR><TD CLASS="l">96</TD><TD>                        // remove open comments</TD></TR><TR CLASS="z"><TD CLASS="l">97</TD><TD>                        String string = document.get(offset, length);</TD></TR><TR CLASS="z"><TD CLASS="l">98</TD><TD>                        int index = string.lastIndexOf(OPEN_COMMENT);</TD></TR><TR CLASS="z"><TD CLASS="l">99</TD><TD>                        while (index != -1) {</TD></TR><TR CLASS="z"><TD CLASS="l">100</TD><TD>                                document.replace(offset + index, OPEN_COMMENT.length(), &#34;&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">101</TD><TD>                                index = string.lastIndexOf(OPEN_COMMENT, index - 1);</TD></TR><TR CLASS="z"><TD CLASS="l">102</TD><TD>                                adjusted_length -= OPEN_COMMENT.length();</TD></TR><TR><TD CLASS="l">103</TD><TD>                        }</TD></TR><TR><TD CLASS="l">104</TD><TD> </TD></TR><TR><TD CLASS="l">105</TD><TD>                        // remove close comments</TD></TR><TR CLASS="z"><TD CLASS="l">106</TD><TD>                        string = document.get(offset, adjusted_length);</TD></TR><TR CLASS="z"><TD CLASS="l">107</TD><TD>                        index = string.lastIndexOf(CLOSE_COMMENT);</TD></TR><TR CLASS="z"><TD CLASS="l">108</TD><TD>                        while (index != -1) {</TD></TR><TR CLASS="z"><TD CLASS="l">109</TD><TD>                                document.replace(offset + index, CLOSE_COMMENT.length(), &#34;&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">110</TD><TD>                                index = string.lastIndexOf(CLOSE_COMMENT, index - 1);</TD></TR><TR><TD CLASS="l">111</TD><TD>                        }</TD></TR><TR><TD CLASS="l">112</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">113</TD><TD>                catch (BadLocationException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">114</TD><TD>                        Logger.log(Logger.WARNING_DEBUG, e.getMessage(), e);</TD></TR><TR><TD CLASS="l">115</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">116</TD><TD>        }</TD></TR><TR><TD CLASS="l">117</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="32.html">org.eclipse.wst.xml.ui.internal.actions</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/184.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/184.html
deleted file mode 100644
index de8ba21..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/184.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="32.html">org.eclipse.wst.xml.ui.internal.actions</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">AbstractNodeActionManager.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>AbstractNodeActionManager.java</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/48)</TD><TD CLASS="h">0%   (0/1158)</TD><TD CLASS="h">0%   (0/289)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">AbstractNodeActionManager</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/29)</TD><TD CLASS="h">0%   (0/504)</TD><TD CLASS="h">0%   (0/109)</TD></TR><TR><TD CLASS="f"><A HREF="#0">AbstractNodeActionManager (IStructuredModel, ModelQuery, Viewer): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/14)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">beginNodeAction (NodeAction): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#3">createAddAttributeAction (Element, CMAttributeDeclaration): Action</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/24)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">createAddCDataSectionAction (Node, int): Action</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#5">createAddCommentAction (Node, int): Action</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">createAddDoctypeAction (Document, int): Action</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#7">createAddElementAction (Node, CMElementDeclaration, int): Action</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/24)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">createAddPCDataAction (Node, CMDataType, int): Action</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/23)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#9">createAddProcessingInstructionAction (Node, int): Action</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/25)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">createAddSchemaInfoAction (Element): Action</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#b">createDOMContentBuilder (Document): DOMContentBuilder</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#c">createDeleteAction (List): Action</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/16)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#d">createEditAttributeAction (Attr, CMAttributeDeclaration): Action</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#e">createEditDoctypeAction (DocumentType): Action</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#f">createEditProcessingInstructionAction (ProcessingInstruction): Action</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#10">createEditSchemaInfoAction (Element): Action</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#11">createRenameAction (Node): Action</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/16)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#12">createReplaceAction (Node, CMNode, int, int): Action</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#13">endNodeAction (NodeAction): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#14">fillContextMenu (IMenuManager, ISelection): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/24)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR><TD CLASS="f"><A HREF="#15">getLabel (Node, CMNode): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/47)</TD><TD CLASS="h">0%   (0/11)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#16">getModel (): IStructuredModel</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#17">getWorkbenchWindowShell (): Shell</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#18">insert (Node, CMNode, int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/28)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#19">insertNodesAtIndex (Node, List, int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#1a">insertNodesAtIndex (Node, List, int, boolean): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/97)</TD><TD CLASS="h">0%   (0/23)</TD></TR><TR><TD CLASS="f"><A HREF="#1b">remove (Node, int, int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/21)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#1c">setViewerSelection (List): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#1d">setViewerSelection (Node): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#1e">AbstractNodeActionManager$AddNodeAction</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/206)</TD><TD CLASS="h">0%   (0/59)</TD></TR><TR><TD CLASS="f"><A HREF="#1e">AbstractNodeActionManager$AddNodeAction (AbstractNodeActionManager, CMNode, N...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/51)</TD><TD CLASS="h">0%   (0/13)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#20">AbstractNodeActionManager$AddNodeAction (AbstractNodeActionManager, int, Node...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/57)</TD><TD CLASS="h">0%   (0/19)</TD></TR><TR><TD CLASS="f"><A HREF="#21">addNodeForCMNode (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#22">addNodeForNodeType (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/65)</TD><TD CLASS="h">0%   (0/17)</TD></TR><TR><TD CLASS="f"><A HREF="#23">getUndoDescription (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#24">run (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/17)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#25">AbstractNodeActionManager$DeleteAction</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/90)</TD><TD CLASS="h">0%   (0/24)</TD></TR><TR><TD CLASS="f"><A HREF="#25">AbstractNodeActionManager$DeleteAction (AbstractNodeActionManager, List): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#27">AbstractNodeActionManager$DeleteAction (AbstractNodeActionManager, Node): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/19)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#28">getUndoDescription (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#29">run (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/57)</TD><TD CLASS="h">0%   (0/14)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#2a">AbstractNodeActionManager$ImageDescriptorCache</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/113)</TD><TD CLASS="h">0%   (0/37)</TD></TR><TR><TD CLASS="f"><A HREF="#2a">AbstractNodeActionManager$ImageDescriptorCache (AbstractNodeActionManager): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/41)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2c">getImageDescriptor (Object): ImageDescriptor</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/72)</TD><TD CLASS="h">0%   (0/29)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#2d">AbstractNodeActionManager$InsertAction</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/161)</TD><TD CLASS="h">0%   (0/43)</TD></TR><TR><TD CLASS="f"><A HREF="#2d">AbstractNodeActionManager$InsertAction (AbstractNodeActionManager, int, Node,...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/45)</TD><TD CLASS="h">0%   (0/15)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2f">AbstractNodeActionManager$InsertAction (AbstractNodeActionManager, int, Node,...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/31)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR><TD CLASS="f"><A HREF="#30">getUndoDescription (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#31">run (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/73)</TD><TD CLASS="h">0%   (0/19)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#32">AbstractNodeActionManager$ReplaceNodeAction</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/84)</TD><TD CLASS="h">0%   (0/17)</TD></TR><TR><TD CLASS="f"><A HREF="#32">AbstractNodeActionManager$ReplaceNodeAction (AbstractNodeActionManager, Node,...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/30)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#34">getUndoDescription (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/21)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#35">run (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/33)</TD><TD CLASS="h">0%   (0/6)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2008 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.ui.internal.actions;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.util.ArrayList;</TD></TR><TR><TD CLASS="l">16</TD><TD>import java.util.Iterator;</TD></TR><TR><TD CLASS="l">17</TD><TD>import java.util.List;</TD></TR><TR><TD CLASS="l">18</TD><TD>import java.util.Vector;</TD></TR><TR><TD CLASS="l">19</TD><TD> </TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.jface.action.Action;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.jface.action.IMenuManager;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.jface.resource.ImageDescriptor;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.jface.viewers.ISelection;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.jface.viewers.IStructuredSelection;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.jface.viewers.StructuredSelection;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.jface.viewers.Viewer;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.swt.widgets.Shell;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;</TD></TR><TR><TD CLASS="l">30</TD><TD>import org.eclipse.wst.xml.core.internal.contentmodel.CMDataType;</TD></TR><TR><TD CLASS="l">31</TD><TD>import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;</TD></TR><TR><TD CLASS="l">32</TD><TD>import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;</TD></TR><TR><TD CLASS="l">33</TD><TD>import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQuery;</TD></TR><TR><TD CLASS="l">34</TD><TD>import org.eclipse.wst.xml.core.internal.contentmodel.util.CMDescriptionBuilder;</TD></TR><TR><TD CLASS="l">35</TD><TD>import org.eclipse.wst.xml.core.internal.contentmodel.util.DOMContentBuilder;</TD></TR><TR><TD CLASS="l">36</TD><TD>import org.eclipse.wst.xml.core.internal.contentmodel.util.DOMContentBuilderImpl;</TD></TR><TR><TD CLASS="l">37</TD><TD>import org.eclipse.wst.xml.core.internal.contentmodel.util.DOMNamespaceHelper;</TD></TR><TR><TD CLASS="l">38</TD><TD>import org.eclipse.wst.xml.ui.internal.XMLUIMessages;</TD></TR><TR><TD CLASS="l">39</TD><TD>import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;</TD></TR><TR><TD CLASS="l">40</TD><TD>import org.eclipse.wst.xml.ui.internal.editor.CMImageUtil;</TD></TR><TR><TD CLASS="l">41</TD><TD>import org.eclipse.wst.xml.ui.internal.editor.XMLEditorPluginImageHelper;</TD></TR><TR><TD CLASS="l">42</TD><TD>import org.eclipse.wst.xml.ui.internal.editor.XMLEditorPluginImages;</TD></TR><TR><TD CLASS="l">43</TD><TD>import org.w3c.dom.Attr;</TD></TR><TR><TD CLASS="l">44</TD><TD>import org.w3c.dom.Document;</TD></TR><TR><TD CLASS="l">45</TD><TD>import org.w3c.dom.DocumentType;</TD></TR><TR><TD CLASS="l">46</TD><TD>import org.w3c.dom.Element;</TD></TR><TR><TD CLASS="l">47</TD><TD>import org.w3c.dom.Node;</TD></TR><TR><TD CLASS="l">48</TD><TD>import org.w3c.dom.NodeList;</TD></TR><TR><TD CLASS="l">49</TD><TD>import org.w3c.dom.ProcessingInstruction;</TD></TR><TR><TD CLASS="l">50</TD><TD> </TD></TR><TR><TD CLASS="l">51</TD><TD>public abstract class AbstractNodeActionManager extends BaseNodeActionManager {</TD></TR><TR><TD CLASS="l">52</TD><TD> </TD></TR><TR><TD CLASS="l">53</TD><TD> </TD></TR><TR><TD CLASS="l">54</TD><TD>        /**</TD></TR><TR><TD CLASS="l">55</TD><TD>         * AddNodeAction</TD></TR><TR><TD CLASS="l">56</TD><TD>         */</TD></TR><TR><TD CLASS="l">57</TD><TD>        public class AddNodeAction extends NodeAction {</TD></TR><TR><TD CLASS="l">58</TD><TD>                protected CMNode cmnode;</TD></TR><TR><TD CLASS="l">59</TD><TD>                protected String description;</TD></TR><TR><TD CLASS="l">60</TD><TD>                protected int index;</TD></TR><TR><TD CLASS="l">61</TD><TD>                protected int nodeType;</TD></TR><TR><TD CLASS="l"><A NAME="1e">62</A></TD><TD>                protected Node parent;</TD></TR><TR><TD CLASS="l">63</TD><TD>                protected String undoDescription;</TD></TR><TR><TD CLASS="l">64</TD><TD> </TD></TR><TR><TD CLASS="l">65</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                public AddNodeAction(CMNode cmnode, Node parent, int index) {</TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>                        this.cmnode = cmnode;</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>                        this.parent = parent;</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                        this.index = index;</TD></TR><TR><TD CLASS="l">70</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>                        String text = getLabel(parent, cmnode);</TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>                        setText(text);</TD></TR><TR CLASS="z"><TD CLASS="l">73</TD><TD>                        description = text;</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>                        undoDescription = XMLUIMessages._UI_MENU_ADD + &#34; &#34; + text; //$NON-NLS-1$ </TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>                        ImageDescriptor descriptor = CMImageUtil.getImageDescriptor(cmnode);</TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>                        if (descriptor == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>                                descriptor = imageDescriptorCache.getImageDescriptor(cmnode);</TD></TR><TR><TD CLASS="l">78</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="20">79</A></TD><TD>                        setImageDescriptor(descriptor);</TD></TR><TR CLASS="z"><TD CLASS="l">80</TD><TD>                }</TD></TR><TR><TD CLASS="l">81</TD><TD> </TD></TR><TR><TD CLASS="l">82</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">83</TD><TD>                public AddNodeAction(int nodeType, Node parent, int index) {</TD></TR><TR CLASS="z"><TD CLASS="l">84</TD><TD>                        this.nodeType = nodeType;</TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>                        this.index = index;</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                        this.parent = parent;</TD></TR><TR><TD CLASS="l">87</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">88</TD><TD>                        switch (nodeType) {</TD></TR><TR><TD CLASS="l">89</TD><TD>                                case Node.COMMENT_NODE : {</TD></TR><TR CLASS="z"><TD CLASS="l">90</TD><TD>                                        description = XMLUIMessages._UI_MENU_COMMENT;</TD></TR><TR CLASS="z"><TD CLASS="l">91</TD><TD>                                        undoDescription = XMLUIMessages._UI_MENU_ADD_COMMENT;</TD></TR><TR CLASS="z"><TD CLASS="l">92</TD><TD>                                        break;</TD></TR><TR><TD CLASS="l">93</TD><TD>                                }</TD></TR><TR><TD CLASS="l">94</TD><TD>                                case Node.PROCESSING_INSTRUCTION_NODE : {</TD></TR><TR CLASS="z"><TD CLASS="l">95</TD><TD>                                        description = XMLUIMessages._UI_MENU_PROCESSING_INSTRUCTION;</TD></TR><TR CLASS="z"><TD CLASS="l">96</TD><TD>                                        undoDescription = XMLUIMessages._UI_MENU_ADD_PROCESSING_INSTRUCTION;</TD></TR><TR CLASS="z"><TD CLASS="l">97</TD><TD>                                        break;</TD></TR><TR><TD CLASS="l">98</TD><TD>                                }</TD></TR><TR><TD CLASS="l">99</TD><TD>                                case Node.CDATA_SECTION_NODE : {</TD></TR><TR CLASS="z"><TD CLASS="l">100</TD><TD>                                        description = XMLUIMessages._UI_MENU_CDATA_SECTION;</TD></TR><TR CLASS="z"><TD CLASS="l">101</TD><TD>                                        undoDescription = XMLUIMessages._UI_MENU_ADD_CDATA_SECTION;</TD></TR><TR CLASS="z"><TD CLASS="l">102</TD><TD>                                        break;</TD></TR><TR><TD CLASS="l">103</TD><TD>                                }</TD></TR><TR><TD CLASS="l">104</TD><TD>                                case Node.TEXT_NODE : {</TD></TR><TR CLASS="z"><TD CLASS="l">105</TD><TD>                                        description = XMLUIMessages._UI_MENU_PCDATA;</TD></TR><TR CLASS="z"><TD CLASS="l">106</TD><TD>                                        undoDescription = XMLUIMessages._UI_MENU_ADD_PCDATA;</TD></TR><TR><TD CLASS="l">107</TD><TD>                                        break;</TD></TR><TR><TD CLASS="l">108</TD><TD>                                }</TD></TR><TR><TD CLASS="l">109</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">110</TD><TD>                        setText(description);</TD></TR><TR CLASS="z"><TD CLASS="l">111</TD><TD>                        setImageDescriptor(imageDescriptorCache.getImageDescriptor(new Integer(nodeType)));</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="21">112</A></TD><TD>                }</TD></TR><TR><TD CLASS="l">113</TD><TD> </TD></TR><TR><TD CLASS="l">114</TD><TD> </TD></TR><TR><TD CLASS="l">115</TD><TD>                protected void addNodeForCMNode() {</TD></TR><TR CLASS="z"><TD CLASS="l">116</TD><TD>                        if (parent != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">117</TD><TD>                                insert(parent, cmnode, index);</TD></TR><TR><TD CLASS="l">118</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="22">119</A></TD><TD>                }</TD></TR><TR><TD CLASS="l">120</TD><TD> </TD></TR><TR><TD CLASS="l">121</TD><TD> </TD></TR><TR><TD CLASS="l">122</TD><TD>                protected void addNodeForNodeType() {</TD></TR><TR CLASS="z"><TD CLASS="l">123</TD><TD>                        Document document = parent.getNodeType() == Node.DOCUMENT_NODE ? (Document) parent : parent.getOwnerDocument();</TD></TR><TR CLASS="z"><TD CLASS="l">124</TD><TD>                        Node newChildNode = null;</TD></TR><TR CLASS="z"><TD CLASS="l">125</TD><TD>                        boolean format = true;</TD></TR><TR CLASS="z"><TD CLASS="l">126</TD><TD>                        switch (nodeType) {</TD></TR><TR><TD CLASS="l">127</TD><TD>                                case Node.COMMENT_NODE : {</TD></TR><TR CLASS="z"><TD CLASS="l">128</TD><TD>                                        newChildNode = document.createComment(XMLUIMessages._UI_COMMENT_VALUE);</TD></TR><TR CLASS="z"><TD CLASS="l">129</TD><TD>                                        break;</TD></TR><TR><TD CLASS="l">130</TD><TD>                                }</TD></TR><TR><TD CLASS="l">131</TD><TD>                                case Node.PROCESSING_INSTRUCTION_NODE : {</TD></TR><TR CLASS="z"><TD CLASS="l">132</TD><TD>                                        newChildNode = document.createProcessingInstruction(XMLUIMessages._UI_PI_TARGET_VALUE, XMLUIMessages._UI_PI_DATA_VALUE);</TD></TR><TR CLASS="z"><TD CLASS="l">133</TD><TD>                                        break;</TD></TR><TR><TD CLASS="l">134</TD><TD>                                }</TD></TR><TR><TD CLASS="l">135</TD><TD>                                case Node.CDATA_SECTION_NODE : {</TD></TR><TR CLASS="z"><TD CLASS="l">136</TD><TD>                                        newChildNode = document.createCDATASection(&#34;&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">137</TD><TD>                                        break;</TD></TR><TR><TD CLASS="l">138</TD><TD>                                }</TD></TR><TR><TD CLASS="l">139</TD><TD>                                case Node.TEXT_NODE : {</TD></TR><TR CLASS="z"><TD CLASS="l">140</TD><TD>                                        format = false;</TD></TR><TR CLASS="z"><TD CLASS="l">141</TD><TD>                                        newChildNode = document.createTextNode(parent.getNodeName());</TD></TR><TR><TD CLASS="l">142</TD><TD>                                        break;</TD></TR><TR><TD CLASS="l">143</TD><TD>                                }</TD></TR><TR><TD CLASS="l">144</TD><TD>                        }</TD></TR><TR><TD CLASS="l">145</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">146</TD><TD>                        if (newChildNode != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">147</TD><TD>                                List list = new Vector(1);</TD></TR><TR CLASS="z"><TD CLASS="l">148</TD><TD>                                list.add(newChildNode);</TD></TR><TR CLASS="z"><TD CLASS="l">149</TD><TD>                                insertNodesAtIndex(parent, list, index, format);</TD></TR><TR><TD CLASS="l">150</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="23">151</A></TD><TD>                }</TD></TR><TR><TD CLASS="l">152</TD><TD> </TD></TR><TR><TD CLASS="l">153</TD><TD> </TD></TR><TR><TD CLASS="l">154</TD><TD>                public String getUndoDescription() {</TD></TR><TR CLASS="z"><TD CLASS="l">155</TD><TD>                        return undoDescription;</TD></TR><TR><TD CLASS="l">156</TD><TD>                }</TD></TR><TR><TD CLASS="l">157</TD><TD> </TD></TR><TR><TD CLASS="l">158</TD><TD> </TD></TR><TR><TD CLASS="l">159</TD><TD>                public void run() {</TD></TR><TR CLASS="z"><TD CLASS="l">160</TD><TD>                        beginNodeAction(this);</TD></TR><TR CLASS="z"><TD CLASS="l">161</TD><TD>                        if (cmnode != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">162</TD><TD>                                addNodeForCMNode();</TD></TR><TR><TD CLASS="l">163</TD><TD>                        }</TD></TR><TR><TD CLASS="l"><A NAME="24">164</A></TD><TD>                        else {</TD></TR><TR CLASS="z"><TD CLASS="l">165</TD><TD>                                addNodeForNodeType();</TD></TR><TR><TD CLASS="l">166</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">167</TD><TD>                        endNodeAction(this);</TD></TR><TR CLASS="z"><TD CLASS="l">168</TD><TD>                }</TD></TR><TR><TD CLASS="l">169</TD><TD>        }</TD></TR><TR><TD CLASS="l">170</TD><TD> </TD></TR><TR><TD CLASS="l">171</TD><TD> </TD></TR><TR><TD CLASS="l">172</TD><TD>        /**</TD></TR><TR><TD CLASS="l">173</TD><TD>         * DeleteAction</TD></TR><TR><TD CLASS="l"><A NAME="25">174</A></TD><TD>         */</TD></TR><TR><TD CLASS="l">175</TD><TD>        public class DeleteAction extends NodeAction {</TD></TR><TR><TD CLASS="l">176</TD><TD>                protected List list;</TD></TR><TR><TD CLASS="l">177</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">178</TD><TD>                public DeleteAction(List list) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="27">179</A></TD><TD>                        setText(XMLUIMessages._UI_MENU_REMOVE);</TD></TR><TR CLASS="z"><TD CLASS="l">180</TD><TD>                        this.list = list;</TD></TR><TR CLASS="z"><TD CLASS="l">181</TD><TD>                }</TD></TR><TR><TD CLASS="l">182</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">183</TD><TD>                public DeleteAction(Node node) {</TD></TR><TR CLASS="z"><TD CLASS="l">184</TD><TD>                        setText(XMLUIMessages._UI_MENU_REMOVE);</TD></TR><TR CLASS="z"><TD CLASS="l">185</TD><TD>                        list = new Vector();</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="28">186</A></TD><TD>                        list.add(node);</TD></TR><TR CLASS="z"><TD CLASS="l">187</TD><TD>                }</TD></TR><TR><TD CLASS="l">188</TD><TD> </TD></TR><TR><TD CLASS="l">189</TD><TD>                public String getUndoDescription() {</TD></TR><TR CLASS="z"><TD CLASS="l">190</TD><TD>                        return XMLUIMessages.DELETE;</TD></TR><TR><TD CLASS="l">191</TD><TD>                }</TD></TR><TR><TD CLASS="l">192</TD><TD> </TD></TR><TR><TD CLASS="l">193</TD><TD>                public void run() {</TD></TR><TR CLASS="z"><TD CLASS="l">194</TD><TD>                        beginNodeAction(this);</TD></TR><TR><TD CLASS="l">195</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">196</TD><TD>                        for (Iterator i = list.iterator(); i.hasNext();) {</TD></TR><TR CLASS="z"><TD CLASS="l">197</TD><TD>                                Node node = (Node) i.next();</TD></TR><TR CLASS="z"><TD CLASS="l">198</TD><TD>                                if (node.getNodeType() == Node.ATTRIBUTE_NODE) {</TD></TR><TR CLASS="z"><TD CLASS="l">199</TD><TD>                                        Attr attr = (Attr) node;</TD></TR><TR CLASS="z"><TD CLASS="l">200</TD><TD>                                        attr.getOwnerElement().removeAttributeNode(attr);</TD></TR><TR><TD CLASS="l">201</TD><TD>                                }</TD></TR><TR><TD CLASS="l">202</TD><TD>                                else {</TD></TR><TR CLASS="z"><TD CLASS="l">203</TD><TD>                                        Node parent = node.getParentNode();</TD></TR><TR CLASS="z"><TD CLASS="l">204</TD><TD>                                        if (parent != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">205</TD><TD>                                                Node previousSibling = node.getPreviousSibling();</TD></TR><TR CLASS="z"><TD CLASS="l">206</TD><TD>                                                if ((previousSibling != null) &amp;&amp; isWhitespaceTextNode(previousSibling)) {</TD></TR><TR CLASS="z"><TD CLASS="l">207</TD><TD>                                                        parent.removeChild(previousSibling);</TD></TR><TR><TD CLASS="l">208</TD><TD>                                                }</TD></TR><TR CLASS="z"><TD CLASS="l">209</TD><TD>                                                parent.removeChild(node);</TD></TR><TR><TD CLASS="l">210</TD><TD>                                        }</TD></TR><TR><TD CLASS="l"><A NAME="29">211</A></TD><TD>                                }</TD></TR><TR><TD CLASS="l">212</TD><TD>                        }</TD></TR><TR><TD CLASS="l">213</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">214</TD><TD>                        endNodeAction(this);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2a">215</A></TD><TD>                }</TD></TR><TR><TD CLASS="l">216</TD><TD>        }</TD></TR><TR><TD CLASS="l">217</TD><TD> </TD></TR><TR><TD CLASS="l">218</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">219</TD><TD>        class ImageDescriptorCache {</TD></TR><TR CLASS="z"><TD CLASS="l">220</TD><TD>                protected ImageDescriptor attributeImage = XMLEditorPluginImageHelper.getInstance().getImageDescriptor(XMLEditorPluginImages.IMG_OBJ_ATTRIBUTE);</TD></TR><TR CLASS="z"><TD CLASS="l">221</TD><TD>                protected ImageDescriptor attributeReqImage = XMLEditorPluginImageHelper.getInstance().getImageDescriptor(XMLEditorPluginImages.IMG_OBJ_ATT_REQ_OBJ);</TD></TR><TR CLASS="z"><TD CLASS="l">222</TD><TD>                protected ImageDescriptor cdataSectionImage = XMLEditorPluginImageHelper.getInstance().getImageDescriptor(XMLEditorPluginImages.IMG_OBJ_CDATASECTION);</TD></TR><TR CLASS="z"><TD CLASS="l">223</TD><TD>                protected ImageDescriptor commentImage = XMLEditorPluginImageHelper.getInstance().getImageDescriptor(XMLEditorPluginImages.IMG_OBJ_COMMENT);</TD></TR><TR CLASS="z"><TD CLASS="l">224</TD><TD>                protected ImageDescriptor elementImage = XMLEditorPluginImageHelper.getInstance().getImageDescriptor(XMLEditorPluginImages.IMG_OBJ_ELEMENT);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2c">225</A></TD><TD>                protected ImageDescriptor piImage = XMLEditorPluginImageHelper.getInstance().getImageDescriptor(XMLEditorPluginImages.IMG_OBJ_PROCESSINGINSTRUCTION);</TD></TR><TR CLASS="z"><TD CLASS="l">226</TD><TD>                protected ImageDescriptor textImage = XMLEditorPluginImageHelper.getInstance().getImageDescriptor(XMLEditorPluginImages.IMG_OBJ_TXTEXT);</TD></TR><TR><TD CLASS="l">227</TD><TD> </TD></TR><TR><TD CLASS="l">228</TD><TD>                public ImageDescriptor getImageDescriptor(Object object) {</TD></TR><TR CLASS="z"><TD CLASS="l">229</TD><TD>                        ImageDescriptor result = null;</TD></TR><TR CLASS="z"><TD CLASS="l">230</TD><TD>                        if (object instanceof CMNode) {</TD></TR><TR CLASS="z"><TD CLASS="l">231</TD><TD>                                CMNode cmnode = (CMNode) object;</TD></TR><TR CLASS="z"><TD CLASS="l">232</TD><TD>                                switch (cmnode.getNodeType()) {</TD></TR><TR><TD CLASS="l">233</TD><TD>                                        case CMNode.ATTRIBUTE_DECLARATION : {</TD></TR><TR CLASS="z"><TD CLASS="l">234</TD><TD>                                                result = CMImageUtil.getImageDescriptor(cmnode);</TD></TR><TR CLASS="z"><TD CLASS="l">235</TD><TD>                                                if (result == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">236</TD><TD>                                                        if (((CMAttributeDeclaration) cmnode).getUsage() == CMAttributeDeclaration.REQUIRED) {</TD></TR><TR CLASS="z"><TD CLASS="l">237</TD><TD>                                                                result = attributeReqImage;</TD></TR><TR><TD CLASS="l">238</TD><TD>                                                        }</TD></TR><TR><TD CLASS="l">239</TD><TD>                                                        else {</TD></TR><TR CLASS="z"><TD CLASS="l">240</TD><TD>                                                                result = attributeImage;</TD></TR><TR><TD CLASS="l">241</TD><TD>                                                        }</TD></TR><TR><TD CLASS="l">242</TD><TD>                                                }</TD></TR><TR CLASS="z"><TD CLASS="l">243</TD><TD>                                                break;</TD></TR><TR><TD CLASS="l">244</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">245</TD><TD>                                        case CMNode.DATA_TYPE : {</TD></TR><TR CLASS="z"><TD CLASS="l">246</TD><TD>                                                result = textImage;</TD></TR><TR CLASS="z"><TD CLASS="l">247</TD><TD>                                                break;</TD></TR><TR><TD CLASS="l">248</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">249</TD><TD>                                        case CMNode.ELEMENT_DECLARATION : {</TD></TR><TR CLASS="z"><TD CLASS="l">250</TD><TD>                                                result = CMImageUtil.getImageDescriptor(cmnode);</TD></TR><TR CLASS="z"><TD CLASS="l">251</TD><TD>                                                if (result == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">252</TD><TD>                                                        result = elementImage;</TD></TR><TR><TD CLASS="l">253</TD><TD>                                                }</TD></TR><TR CLASS="z"><TD CLASS="l">254</TD><TD>                                                break;</TD></TR><TR><TD CLASS="l">255</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">256</TD><TD>                                        case CMNode.GROUP : {</TD></TR><TR CLASS="z"><TD CLASS="l">257</TD><TD>                                                result = elementImage;</TD></TR><TR><TD CLASS="l">258</TD><TD>                                                break;</TD></TR><TR><TD CLASS="l">259</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">260</TD><TD>                                }</TD></TR><TR><TD CLASS="l">261</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">262</TD><TD>                        else if (object instanceof Integer) {</TD></TR><TR CLASS="z"><TD CLASS="l">263</TD><TD>                                Integer integer = (Integer) object;</TD></TR><TR CLASS="z"><TD CLASS="l">264</TD><TD>                                switch (integer.intValue()) {</TD></TR><TR><TD CLASS="l">265</TD><TD>                                        case Node.COMMENT_NODE : {</TD></TR><TR CLASS="z"><TD CLASS="l">266</TD><TD>                                                result = commentImage;</TD></TR><TR CLASS="z"><TD CLASS="l">267</TD><TD>                                                break;</TD></TR><TR><TD CLASS="l">268</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">269</TD><TD>                                        case Node.PROCESSING_INSTRUCTION_NODE : {</TD></TR><TR CLASS="z"><TD CLASS="l">270</TD><TD>                                                result = piImage;</TD></TR><TR CLASS="z"><TD CLASS="l">271</TD><TD>                                                break;</TD></TR><TR><TD CLASS="l">272</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">273</TD><TD>                                        case Node.CDATA_SECTION_NODE : {</TD></TR><TR CLASS="z"><TD CLASS="l">274</TD><TD>                                                result = cdataSectionImage;</TD></TR><TR CLASS="z"><TD CLASS="l">275</TD><TD>                                                break;</TD></TR><TR><TD CLASS="l">276</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">277</TD><TD>                                        case Node.TEXT_NODE : {</TD></TR><TR CLASS="z"><TD CLASS="l">278</TD><TD>                                                result = textImage;</TD></TR><TR><TD CLASS="l">279</TD><TD>                                                break;</TD></TR><TR><TD CLASS="l">280</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">281</TD><TD>                                }</TD></TR><TR><TD CLASS="l">282</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">283</TD><TD>                        return result;</TD></TR><TR><TD CLASS="l">284</TD><TD>                }</TD></TR><TR><TD CLASS="l">285</TD><TD>        }</TD></TR><TR><TD CLASS="l">286</TD><TD> </TD></TR><TR><TD CLASS="l">287</TD><TD>        // TODO... remove this class. I'm pretty sure it is no longer used by</TD></TR><TR><TD CLASS="l">288</TD><TD>        // anyone.</TD></TR><TR><TD CLASS="l">289</TD><TD>        /**</TD></TR><TR><TD CLASS="l">290</TD><TD>         * @depracated</TD></TR><TR><TD CLASS="l">291</TD><TD>         */</TD></TR><TR><TD CLASS="l">292</TD><TD>        public class InsertAction extends NodeAction {</TD></TR><TR><TD CLASS="l">293</TD><TD>                protected String description;</TD></TR><TR><TD CLASS="l"><A NAME="2d">294</A></TD><TD>                protected int index;</TD></TR><TR><TD CLASS="l">295</TD><TD>                protected int nodeType;</TD></TR><TR><TD CLASS="l">296</TD><TD>                protected Node parent;</TD></TR><TR><TD CLASS="l">297</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">298</TD><TD>                public InsertAction(int nodeType, Node parent, int index) {</TD></TR><TR CLASS="z"><TD CLASS="l">299</TD><TD>                        this.nodeType = nodeType;</TD></TR><TR CLASS="z"><TD CLASS="l">300</TD><TD>                        this.index = index;</TD></TR><TR CLASS="z"><TD CLASS="l">301</TD><TD>                        this.parent = parent;</TD></TR><TR CLASS="z"><TD CLASS="l">302</TD><TD>                        switch (nodeType) {</TD></TR><TR><TD CLASS="l">303</TD><TD>                                case Node.COMMENT_NODE : {</TD></TR><TR CLASS="z"><TD CLASS="l">304</TD><TD>                                        description = XMLUIMessages._UI_MENU_COMMENT;</TD></TR><TR CLASS="z"><TD CLASS="l">305</TD><TD>                                        break;</TD></TR><TR><TD CLASS="l">306</TD><TD>                                }</TD></TR><TR><TD CLASS="l">307</TD><TD>                                case Node.PROCESSING_INSTRUCTION_NODE : {</TD></TR><TR CLASS="z"><TD CLASS="l">308</TD><TD>                                        description = XMLUIMessages._UI_MENU_PROCESSING_INSTRUCTION;</TD></TR><TR CLASS="z"><TD CLASS="l">309</TD><TD>                                        break;</TD></TR><TR><TD CLASS="l">310</TD><TD>                                }</TD></TR><TR><TD CLASS="l">311</TD><TD>                                case Node.CDATA_SECTION_NODE : {</TD></TR><TR CLASS="z"><TD CLASS="l">312</TD><TD>                                        description = XMLUIMessages._UI_MENU_CDATA_SECTION;</TD></TR><TR CLASS="z"><TD CLASS="l">313</TD><TD>                                        break;</TD></TR><TR><TD CLASS="l">314</TD><TD>                                }</TD></TR><TR><TD CLASS="l">315</TD><TD>                                case Node.TEXT_NODE : {</TD></TR><TR CLASS="z"><TD CLASS="l">316</TD><TD>                                        description = XMLUIMessages._UI_MENU_PCDATA;</TD></TR><TR><TD CLASS="l">317</TD><TD>                                        break;</TD></TR><TR><TD CLASS="l">318</TD><TD>                                }</TD></TR><TR><TD CLASS="l">319</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2f">320</A></TD><TD>                        setText(description);</TD></TR><TR CLASS="z"><TD CLASS="l">321</TD><TD>                        setImageDescriptor(imageDescriptorCache.getImageDescriptor(new Integer(nodeType)));</TD></TR><TR CLASS="z"><TD CLASS="l">322</TD><TD>                }</TD></TR><TR><TD CLASS="l">323</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">324</TD><TD>                public InsertAction(int nodeType, Node parent, int index, String title) {</TD></TR><TR CLASS="z"><TD CLASS="l">325</TD><TD>                        this.nodeType = nodeType;</TD></TR><TR CLASS="z"><TD CLASS="l">326</TD><TD>                        this.index = index;</TD></TR><TR CLASS="z"><TD CLASS="l">327</TD><TD>                        this.parent = parent;</TD></TR><TR CLASS="z"><TD CLASS="l">328</TD><TD>                        description = title;</TD></TR><TR CLASS="z"><TD CLASS="l">329</TD><TD>                        setText(description);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="30">330</A></TD><TD>                        setImageDescriptor(imageDescriptorCache.getImageDescriptor(new Integer(nodeType)));</TD></TR><TR CLASS="z"><TD CLASS="l">331</TD><TD>                }</TD></TR><TR><TD CLASS="l">332</TD><TD> </TD></TR><TR><TD CLASS="l">333</TD><TD>                public String getUndoDescription() {</TD></TR><TR CLASS="z"><TD CLASS="l">334</TD><TD>                        return XMLUIMessages._UI_MENU_ADD + &#34; &#34; + description; //$NON-NLS-1$ </TD></TR><TR><TD CLASS="l">335</TD><TD>                }</TD></TR><TR><TD CLASS="l">336</TD><TD> </TD></TR><TR><TD CLASS="l">337</TD><TD>                public void run() {</TD></TR><TR CLASS="z"><TD CLASS="l">338</TD><TD>                        beginNodeAction(this);</TD></TR><TR><TD CLASS="l">339</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">340</TD><TD>                        Document document = parent.getNodeType() == Node.DOCUMENT_NODE ? (Document) parent : parent.getOwnerDocument();</TD></TR><TR CLASS="z"><TD CLASS="l">341</TD><TD>                        Node newChildNode = null;</TD></TR><TR CLASS="z"><TD CLASS="l">342</TD><TD>                        boolean format = true;</TD></TR><TR CLASS="z"><TD CLASS="l">343</TD><TD>                        switch (nodeType) {</TD></TR><TR><TD CLASS="l">344</TD><TD>                                case Node.COMMENT_NODE : {</TD></TR><TR CLASS="z"><TD CLASS="l">345</TD><TD>                                        newChildNode = document.createComment(XMLUIMessages._UI_COMMENT_VALUE);</TD></TR><TR CLASS="z"><TD CLASS="l">346</TD><TD>                                        break;</TD></TR><TR><TD CLASS="l">347</TD><TD>                                }</TD></TR><TR><TD CLASS="l">348</TD><TD>                                case Node.PROCESSING_INSTRUCTION_NODE : {</TD></TR><TR CLASS="z"><TD CLASS="l">349</TD><TD>                                        newChildNode = document.createProcessingInstruction(XMLUIMessages._UI_PI_TARGET_VALUE, XMLUIMessages._UI_PI_DATA_VALUE);</TD></TR><TR CLASS="z"><TD CLASS="l">350</TD><TD>                                        break;</TD></TR><TR><TD CLASS="l">351</TD><TD>                                }</TD></TR><TR><TD CLASS="l">352</TD><TD>                                case Node.CDATA_SECTION_NODE : {</TD></TR><TR CLASS="z"><TD CLASS="l">353</TD><TD>                                        newChildNode = document.createCDATASection(&#34;&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">354</TD><TD>                                        break;</TD></TR><TR><TD CLASS="l">355</TD><TD>                                }</TD></TR><TR><TD CLASS="l">356</TD><TD>                                case Node.TEXT_NODE : {</TD></TR><TR CLASS="z"><TD CLASS="l">357</TD><TD>                                        format = false;</TD></TR><TR CLASS="z"><TD CLASS="l">358</TD><TD>                                        newChildNode = document.createTextNode(parent.getNodeName());</TD></TR><TR><TD CLASS="l">359</TD><TD>                                        break;</TD></TR><TR><TD CLASS="l">360</TD><TD>                                }</TD></TR><TR><TD CLASS="l">361</TD><TD>                        }</TD></TR><TR><TD CLASS="l">362</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">363</TD><TD>                        if (newChildNode != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">364</TD><TD>                                List list = new Vector(1);</TD></TR><TR CLASS="z"><TD CLASS="l">365</TD><TD>                                list.add(newChildNode);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="31">366</A></TD><TD>                                insertNodesAtIndex(parent, list, index, format);</TD></TR><TR><TD CLASS="l">367</TD><TD>                        }</TD></TR><TR><TD CLASS="l">368</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">369</TD><TD>                        endNodeAction(this);</TD></TR><TR CLASS="z"><TD CLASS="l">370</TD><TD>                }</TD></TR><TR><TD CLASS="l">371</TD><TD>        }</TD></TR><TR><TD CLASS="l">372</TD><TD> </TD></TR><TR><TD CLASS="l">373</TD><TD> </TD></TR><TR><TD CLASS="l">374</TD><TD>        /**</TD></TR><TR><TD CLASS="l">375</TD><TD>         * ReplaceNodeAction</TD></TR><TR><TD CLASS="l">376</TD><TD>         */</TD></TR><TR><TD CLASS="l">377</TD><TD>        public class ReplaceNodeAction extends NodeAction {</TD></TR><TR><TD CLASS="l">378</TD><TD>                protected CMNode cmnode;</TD></TR><TR><TD CLASS="l">379</TD><TD>                protected String description;</TD></TR><TR><TD CLASS="l">380</TD><TD>                protected int endIndex;</TD></TR><TR><TD CLASS="l"><A NAME="32">381</A></TD><TD>                protected Node parent;</TD></TR><TR><TD CLASS="l">382</TD><TD>                protected int startIndex;</TD></TR><TR><TD CLASS="l">383</TD><TD> </TD></TR><TR><TD CLASS="l">384</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">385</TD><TD>                public ReplaceNodeAction(Node parent, CMNode cmnode, int startIndex, int endIndex) {</TD></TR><TR CLASS="z"><TD CLASS="l">386</TD><TD>                        this.parent = parent;</TD></TR><TR CLASS="z"><TD CLASS="l">387</TD><TD>                        this.cmnode = cmnode;</TD></TR><TR CLASS="z"><TD CLASS="l">388</TD><TD>                        this.startIndex = startIndex;</TD></TR><TR CLASS="z"><TD CLASS="l">389</TD><TD>                        this.endIndex = endIndex;</TD></TR><TR><TD CLASS="l">390</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">391</TD><TD>                        setText(getLabel(parent, cmnode));</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="34">392</A></TD><TD>                        setImageDescriptor(imageDescriptorCache.getImageDescriptor(cmnode));</TD></TR><TR CLASS="z"><TD CLASS="l">393</TD><TD>                }</TD></TR><TR><TD CLASS="l">394</TD><TD> </TD></TR><TR><TD CLASS="l">395</TD><TD>                public String getUndoDescription() {</TD></TR><TR CLASS="z"><TD CLASS="l">396</TD><TD>                        String result = XMLUIMessages._UI_LABEL_UNDO_REPLACE_DESCRIPTION;</TD></TR><TR CLASS="z"><TD CLASS="l">397</TD><TD>                        result += &#34; &#34; + getLabel(parent, cmnode); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">398</TD><TD>                        return result;</TD></TR><TR><TD CLASS="l">399</TD><TD>                }</TD></TR><TR><TD CLASS="l">400</TD><TD> </TD></TR><TR><TD CLASS="l">401</TD><TD>                public void run() {</TD></TR><TR CLASS="z"><TD CLASS="l">402</TD><TD>                        beginNodeAction(this);</TD></TR><TR><TD CLASS="l">403</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">404</TD><TD>                        if ((parent != null) &amp;&amp; (cmnode != null)) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="35">405</A></TD><TD>                                remove(parent, startIndex, endIndex);</TD></TR><TR CLASS="z"><TD CLASS="l">406</TD><TD>                                insert(parent, cmnode, startIndex);</TD></TR><TR><TD CLASS="l">407</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">408</TD><TD>                        endNodeAction(this);</TD></TR><TR CLASS="z"><TD CLASS="l">409</TD><TD>                }</TD></TR><TR><TD CLASS="l">410</TD><TD>        }</TD></TR><TR><TD CLASS="l">411</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="0">412</A></TD><TD>        protected ImageDescriptorCache imageDescriptorCache = new ImageDescriptorCache();</TD></TR><TR><TD CLASS="l">413</TD><TD>        protected Viewer fViewer;</TD></TR><TR><TD CLASS="l">414</TD><TD> </TD></TR><TR><TD CLASS="l">415</TD><TD>        public AbstractNodeActionManager(IStructuredModel model, ModelQuery modelQuery, Viewer viewer) {</TD></TR><TR CLASS="z"><TD CLASS="l">416</TD><TD>                super(model, modelQuery);</TD></TR><TR CLASS="z"><TD CLASS="l">417</TD><TD>                this.fViewer = viewer;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">418</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">419</TD><TD> </TD></TR><TR><TD CLASS="l">420</TD><TD> </TD></TR><TR><TD CLASS="l">421</TD><TD>        public void beginNodeAction(NodeAction action) {</TD></TR><TR CLASS="z"><TD CLASS="l">422</TD><TD>                fModel.beginRecording(action, action.getUndoDescription());</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">423</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">424</TD><TD> </TD></TR><TR><TD CLASS="l">425</TD><TD> </TD></TR><TR><TD CLASS="l">426</TD><TD>        protected Action createAddAttributeAction(Element parent, CMAttributeDeclaration ad) {</TD></TR><TR CLASS="z"><TD CLASS="l">427</TD><TD>                Action action = null;</TD></TR><TR CLASS="z"><TD CLASS="l">428</TD><TD>                if (ad == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">429</TD><TD>                        action = new EditAttributeAction(this, parent, null, XMLUIMessages._UI_MENU_NEW_ATTRIBUTE, XMLUIMessages._UI_MENU_NEW_ATTRIBUTE_TITLE);</TD></TR><TR><TD CLASS="l">430</TD><TD>                }</TD></TR><TR><TD CLASS="l">431</TD><TD>                else {</TD></TR><TR CLASS="z"><TD CLASS="l">432</TD><TD>                        action = new AddNodeAction(ad, parent, -1);</TD></TR><TR><TD CLASS="l">433</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">434</TD><TD>                return action;</TD></TR><TR><TD CLASS="l"><A NAME="4">435</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">436</TD><TD> </TD></TR><TR><TD CLASS="l">437</TD><TD> </TD></TR><TR><TD CLASS="l">438</TD><TD>        protected Action createAddCDataSectionAction(Node parent, int index) {</TD></TR><TR CLASS="z"><TD CLASS="l">439</TD><TD>                return new AddNodeAction(Node.CDATA_SECTION_NODE, parent, index);</TD></TR><TR><TD CLASS="l"><A NAME="5">440</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">441</TD><TD> </TD></TR><TR><TD CLASS="l">442</TD><TD> </TD></TR><TR><TD CLASS="l">443</TD><TD>        protected Action createAddCommentAction(Node parent, int index) {</TD></TR><TR CLASS="z"><TD CLASS="l">444</TD><TD>                return new AddNodeAction(Node.COMMENT_NODE, parent, index);</TD></TR><TR><TD CLASS="l"><A NAME="6">445</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">446</TD><TD> </TD></TR><TR><TD CLASS="l">447</TD><TD> </TD></TR><TR><TD CLASS="l">448</TD><TD>        protected Action createAddDoctypeAction(Document document, int index) {</TD></TR><TR CLASS="z"><TD CLASS="l">449</TD><TD>                return new EditDoctypeAction(fModel, document, fModel.getBaseLocation(), XMLUIMessages._UI_MENU_ADD_DTD_INFORMATION);</TD></TR><TR><TD CLASS="l"><A NAME="7">450</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">451</TD><TD> </TD></TR><TR><TD CLASS="l">452</TD><TD> </TD></TR><TR><TD CLASS="l">453</TD><TD>        protected Action createAddElementAction(Node parent, CMElementDeclaration ed, int index) {</TD></TR><TR CLASS="z"><TD CLASS="l">454</TD><TD>                Action action = null;</TD></TR><TR CLASS="z"><TD CLASS="l">455</TD><TD>                if (ed == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">456</TD><TD>                        action = new EditElementAction(this, parent, index, XMLUIMessages._UI_MENU_NEW_ELEMENT, XMLUIMessages._UI_MENU_NEW_ELEMENT_TITLE);</TD></TR><TR><TD CLASS="l">457</TD><TD>                }</TD></TR><TR><TD CLASS="l">458</TD><TD>                else {</TD></TR><TR CLASS="z"><TD CLASS="l">459</TD><TD>                        action = new AddNodeAction(ed, parent, index);</TD></TR><TR><TD CLASS="l">460</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">461</TD><TD>                return action;</TD></TR><TR><TD CLASS="l"><A NAME="8">462</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">463</TD><TD> </TD></TR><TR><TD CLASS="l">464</TD><TD> </TD></TR><TR><TD CLASS="l">465</TD><TD>        protected Action createAddPCDataAction(Node parent, CMDataType dataType, int index) {</TD></TR><TR CLASS="z"><TD CLASS="l">466</TD><TD>                Action action = null;</TD></TR><TR CLASS="z"><TD CLASS="l">467</TD><TD>                if (dataType == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">468</TD><TD>                        action = new AddNodeAction(Node.TEXT_NODE, parent, index);</TD></TR><TR><TD CLASS="l">469</TD><TD>                }</TD></TR><TR><TD CLASS="l">470</TD><TD>                else {</TD></TR><TR CLASS="z"><TD CLASS="l">471</TD><TD>                        action = new AddNodeAction(dataType, parent, index);</TD></TR><TR><TD CLASS="l">472</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">473</TD><TD>                return action;</TD></TR><TR><TD CLASS="l"><A NAME="9">474</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">475</TD><TD> </TD></TR><TR><TD CLASS="l">476</TD><TD> </TD></TR><TR><TD CLASS="l">477</TD><TD>        protected Action createAddProcessingInstructionAction(Node parent, int index) {</TD></TR><TR CLASS="z"><TD CLASS="l">478</TD><TD>                Node refChild = getRefChildNodeAtIndex(parent, index);</TD></TR><TR CLASS="z"><TD CLASS="l">479</TD><TD>                Action action = new EditProcessingInstructionAction(this, parent, refChild, XMLUIMessages._UI_MENU_ADD_PROCESSING_INSTRUCTION, XMLUIMessages.ADD_PROCESSING_INSTRUCTION);</TD></TR><TR CLASS="z"><TD CLASS="l">480</TD><TD>                action.setImageDescriptor(imageDescriptorCache.getImageDescriptor(new Integer(Node.PROCESSING_INSTRUCTION_NODE)));</TD></TR><TR CLASS="z"><TD CLASS="l">481</TD><TD>                return action;</TD></TR><TR><TD CLASS="l"><A NAME="a">482</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">483</TD><TD> </TD></TR><TR><TD CLASS="l">484</TD><TD> </TD></TR><TR><TD CLASS="l">485</TD><TD>        protected Action createAddSchemaInfoAction(Element element) {</TD></TR><TR CLASS="z"><TD CLASS="l">486</TD><TD>                return new EditSchemaInfoAction(this, element.getOwnerDocument(), fModel.getBaseLocation(), XMLUIMessages._UI_MENU_ADD_SCHEMA_INFORMATION);</TD></TR><TR><TD CLASS="l"><A NAME="c">487</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">488</TD><TD> </TD></TR><TR><TD CLASS="l">489</TD><TD> </TD></TR><TR><TD CLASS="l">490</TD><TD>        protected Action createDeleteAction(List selection) {</TD></TR><TR CLASS="z"><TD CLASS="l">491</TD><TD>                DeleteAction deleteAction = new DeleteAction(selection);</TD></TR><TR CLASS="z"><TD CLASS="l">492</TD><TD>                deleteAction.setEnabled(selection.size() &gt; 0);</TD></TR><TR CLASS="z"><TD CLASS="l">493</TD><TD>                return deleteAction;</TD></TR><TR><TD CLASS="l"><A NAME="b">494</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">495</TD><TD> </TD></TR><TR><TD CLASS="l">496</TD><TD> </TD></TR><TR><TD CLASS="l">497</TD><TD>        public DOMContentBuilder createDOMContentBuilder(Document document) {</TD></TR><TR CLASS="z"><TD CLASS="l">498</TD><TD>                DOMContentBuilderImpl builder = new DOMContentBuilderImpl(document);</TD></TR><TR CLASS="z"><TD CLASS="l">499</TD><TD>                return builder;</TD></TR><TR><TD CLASS="l"><A NAME="d">500</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">501</TD><TD> </TD></TR><TR><TD CLASS="l">502</TD><TD> </TD></TR><TR><TD CLASS="l">503</TD><TD>        protected Action createEditAttributeAction(Attr attr, CMAttributeDeclaration ad) {</TD></TR><TR CLASS="z"><TD CLASS="l">504</TD><TD>                return new EditAttributeAction(this, attr.getOwnerElement(), attr, XMLUIMessages._UI_MENU_EDIT_ATTRIBUTE, XMLUIMessages._UI_MENU_EDIT_ATTRIBUTE_TITLE);</TD></TR><TR><TD CLASS="l"><A NAME="e">505</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">506</TD><TD> </TD></TR><TR><TD CLASS="l">507</TD><TD> </TD></TR><TR><TD CLASS="l">508</TD><TD>        protected Action createEditDoctypeAction(DocumentType doctype) {</TD></TR><TR CLASS="z"><TD CLASS="l">509</TD><TD>                return new EditDoctypeAction(fModel, doctype, fModel.getBaseLocation(), XMLUIMessages._UI_MENU_EDIT_DOCTYPE);</TD></TR><TR><TD CLASS="l"><A NAME="f">510</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">511</TD><TD> </TD></TR><TR><TD CLASS="l">512</TD><TD> </TD></TR><TR><TD CLASS="l">513</TD><TD>        protected Action createEditProcessingInstructionAction(ProcessingInstruction pi) {</TD></TR><TR CLASS="z"><TD CLASS="l">514</TD><TD>                return new EditProcessingInstructionAction(this, pi, XMLUIMessages._UI_MENU_EDIT_PROCESSING_INSTRUCTION, XMLUIMessages._UI_MENU_EDIT_PROCESSING_INSTRUCTION_TITLE);</TD></TR><TR><TD CLASS="l"><A NAME="10">515</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">516</TD><TD> </TD></TR><TR><TD CLASS="l">517</TD><TD> </TD></TR><TR><TD CLASS="l">518</TD><TD>        protected Action createEditSchemaInfoAction(Element element) {</TD></TR><TR CLASS="z"><TD CLASS="l">519</TD><TD>                return new EditSchemaInfoAction(this, element.getOwnerDocument(), fModel.getBaseLocation(), XMLUIMessages._UI_MENU_EDIT_NAMESPACES);</TD></TR><TR><TD CLASS="l"><A NAME="11">520</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">521</TD><TD> </TD></TR><TR><TD CLASS="l">522</TD><TD> </TD></TR><TR><TD CLASS="l">523</TD><TD>        protected Action createRenameAction(Node node) {</TD></TR><TR CLASS="z"><TD CLASS="l">524</TD><TD>                Action result = null;</TD></TR><TR CLASS="z"><TD CLASS="l">525</TD><TD>                if (node instanceof Element) {</TD></TR><TR CLASS="z"><TD CLASS="l">526</TD><TD>                        result = new EditElementAction(this, (Element) node, XMLUIMessages._UI_MENU_RENAME, XMLUIMessages._UI_MENU_RENAME_TITLE);</TD></TR><TR><TD CLASS="l">527</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">528</TD><TD>                return result;</TD></TR><TR><TD CLASS="l"><A NAME="12">529</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">530</TD><TD> </TD></TR><TR><TD CLASS="l">531</TD><TD> </TD></TR><TR><TD CLASS="l">532</TD><TD>        protected Action createReplaceAction(Node parent, CMNode cmnode, int startIndex, int endIndex) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="13">533</A></TD><TD>                return new ReplaceNodeAction(parent, cmnode, startIndex, endIndex);</TD></TR><TR><TD CLASS="l">534</TD><TD>        }</TD></TR><TR><TD CLASS="l">535</TD><TD> </TD></TR><TR><TD CLASS="l">536</TD><TD>        public void endNodeAction(NodeAction action) {</TD></TR><TR CLASS="z"><TD CLASS="l">537</TD><TD>                fModel.endRecording(action);</TD></TR><TR CLASS="z"><TD CLASS="l">538</TD><TD>        }</TD></TR><TR><TD CLASS="l">539</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="14">540</A></TD><TD> </TD></TR><TR><TD CLASS="l">541</TD><TD> </TD></TR><TR><TD CLASS="l">542</TD><TD>        public void fillContextMenu(IMenuManager menuManager, ISelection selection) {</TD></TR><TR><TD CLASS="l">543</TD><TD>                try {</TD></TR><TR CLASS="z"><TD CLASS="l">544</TD><TD>                        List selectionList = new ArrayList();</TD></TR><TR CLASS="z"><TD CLASS="l">545</TD><TD>                        if (selection instanceof IStructuredSelection) {</TD></TR><TR CLASS="z"><TD CLASS="l">546</TD><TD>                                IStructuredSelection es = (IStructuredSelection) selection;</TD></TR><TR CLASS="z"><TD CLASS="l">547</TD><TD>                                selectionList.addAll(es.toList());</TD></TR><TR><TD CLASS="l">548</TD><TD>                        }</TD></TR><TR><TD CLASS="l">549</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">550</TD><TD>                        contributeActions(menuManager, selectionList);</TD></TR><TR><TD CLASS="l">551</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">552</TD><TD>                catch (Exception e) {</TD></TR><TR CLASS="z"><TD CLASS="l">553</TD><TD>                        e.printStackTrace();</TD></TR><TR><TD CLASS="l">554</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">555</TD><TD>        }</TD></TR><TR><TD CLASS="l">556</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="15">557</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">558</TD><TD>         * </TD></TR><TR><TD CLASS="l">559</TD><TD>         */</TD></TR><TR><TD CLASS="l">560</TD><TD>        public String getLabel(Node parent, CMNode cmnode) {</TD></TR><TR CLASS="z"><TD CLASS="l">561</TD><TD>                String result = &#34;?&#34; + cmnode + &#34;?&#34;; //$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR CLASS="z"><TD CLASS="l">562</TD><TD>                if (cmnode != null) {</TD></TR><TR><TD CLASS="l">563</TD><TD>                        // https://bugs.eclipse.org/bugs/show_bug.cgi?id=155800</TD></TR><TR CLASS="z"><TD CLASS="l">564</TD><TD>                        result = cmnode.getNodeName();</TD></TR><TR CLASS="z"><TD CLASS="l">565</TD><TD>                        if(result == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">566</TD><TD>                                result = (String) cmnode.getProperty(&#34;description&#34;); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">567</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">568</TD><TD>                        if (result == null || result.length() == 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">569</TD><TD>                                if (cmnode.getNodeType() == CMNode.GROUP) {</TD></TR><TR CLASS="z"><TD CLASS="l">570</TD><TD>                                        CMDescriptionBuilder descriptionBuilder = new CMDescriptionBuilder();</TD></TR><TR CLASS="z"><TD CLASS="l">571</TD><TD>                                        result = descriptionBuilder.buildDescription(cmnode);</TD></TR><TR><TD CLASS="l">572</TD><TD>                                }</TD></TR><TR><TD CLASS="l">573</TD><TD>                                else {</TD></TR><TR CLASS="z"><TD CLASS="l">574</TD><TD>                                        result = DOMNamespaceHelper.computeName(cmnode, parent, null);</TD></TR><TR><TD CLASS="l">575</TD><TD>                                }</TD></TR><TR><TD CLASS="l">576</TD><TD>                        }</TD></TR><TR><TD CLASS="l">577</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">578</TD><TD>                return result;</TD></TR><TR><TD CLASS="l"><A NAME="16">579</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">580</TD><TD> </TD></TR><TR><TD CLASS="l">581</TD><TD> </TD></TR><TR><TD CLASS="l">582</TD><TD>        public IStructuredModel getModel() {</TD></TR><TR CLASS="z"><TD CLASS="l">583</TD><TD>                return fModel;</TD></TR><TR><TD CLASS="l"><A NAME="17">584</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">585</TD><TD> </TD></TR><TR><TD CLASS="l">586</TD><TD> </TD></TR><TR><TD CLASS="l">587</TD><TD>        public Shell getWorkbenchWindowShell() {</TD></TR><TR CLASS="z"><TD CLASS="l">588</TD><TD>                return XMLUIPlugin.getInstance().getWorkbench().getActiveWorkbenchWindow().getShell();</TD></TR><TR><TD CLASS="l"><A NAME="18">589</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">590</TD><TD> </TD></TR><TR><TD CLASS="l">591</TD><TD> </TD></TR><TR><TD CLASS="l">592</TD><TD>        public void insert(Node parent, CMNode cmnode, int index) {</TD></TR><TR CLASS="z"><TD CLASS="l">593</TD><TD>                Document document = parent.getNodeType() == Node.DOCUMENT_NODE ? (Document) parent : parent.getOwnerDocument();</TD></TR><TR CLASS="z"><TD CLASS="l">594</TD><TD>                DOMContentBuilder builder = createDOMContentBuilder(document);</TD></TR><TR CLASS="z"><TD CLASS="l">595</TD><TD>                builder.setBuildPolicy(DOMContentBuilder.BUILD_ONLY_REQUIRED_CONTENT);</TD></TR><TR CLASS="z"><TD CLASS="l">596</TD><TD>                builder.build(parent, cmnode);</TD></TR><TR CLASS="z"><TD CLASS="l">597</TD><TD>                insertNodesAtIndex(parent, builder.getResult(), index);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="19">598</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">599</TD><TD> </TD></TR><TR><TD CLASS="l">600</TD><TD> </TD></TR><TR><TD CLASS="l">601</TD><TD>        public void insertNodesAtIndex(Node parent, List list, int index) {</TD></TR><TR CLASS="z"><TD CLASS="l">602</TD><TD>                insertNodesAtIndex(parent, list, index, true);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="1a">603</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">604</TD><TD> </TD></TR><TR><TD CLASS="l">605</TD><TD> </TD></TR><TR><TD CLASS="l">606</TD><TD>        public void insertNodesAtIndex(Node parent, List list, int index, boolean format) {</TD></TR><TR CLASS="z"><TD CLASS="l">607</TD><TD>                NodeList nodeList = parent.getChildNodes();</TD></TR><TR CLASS="z"><TD CLASS="l">608</TD><TD>                if (index == -1) {</TD></TR><TR CLASS="z"><TD CLASS="l">609</TD><TD>                        index = nodeList.getLength();</TD></TR><TR><TD CLASS="l">610</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">611</TD><TD>                Node refChild = (index &lt; nodeList.getLength()) ? nodeList.item(index) : null;</TD></TR><TR><TD CLASS="l">612</TD><TD> </TD></TR><TR><TD CLASS="l">613</TD><TD>                // here we consider the case where the previous node is a 'white</TD></TR><TR><TD CLASS="l">614</TD><TD>                // space' Text node</TD></TR><TR><TD CLASS="l">615</TD><TD>                // we should really do the insert before this node</TD></TR><TR><TD CLASS="l">616</TD><TD>                //</TD></TR><TR CLASS="z"><TD CLASS="l">617</TD><TD>                int prevIndex = index - 1;</TD></TR><TR CLASS="z"><TD CLASS="l">618</TD><TD>                Node prevChild = (prevIndex &lt; nodeList.getLength()) ? nodeList.item(prevIndex) : null;</TD></TR><TR CLASS="z"><TD CLASS="l">619</TD><TD>                if (isWhitespaceTextNode(prevChild)) {</TD></TR><TR CLASS="z"><TD CLASS="l">620</TD><TD>                        refChild = prevChild;</TD></TR><TR><TD CLASS="l">621</TD><TD>                }</TD></TR><TR><TD CLASS="l">622</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">623</TD><TD>                for (Iterator i = list.iterator(); i.hasNext();) {</TD></TR><TR CLASS="z"><TD CLASS="l">624</TD><TD>                        Node newNode = (Node) i.next();</TD></TR><TR><TD CLASS="l">625</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">626</TD><TD>                        if (newNode.getNodeType() == Node.ATTRIBUTE_NODE) {</TD></TR><TR CLASS="z"><TD CLASS="l">627</TD><TD>                                Element parentElement = (Element) parent;</TD></TR><TR CLASS="z"><TD CLASS="l">628</TD><TD>                                parentElement.setAttributeNode((Attr) newNode);</TD></TR><TR><TD CLASS="l">629</TD><TD>                        }</TD></TR><TR><TD CLASS="l">630</TD><TD>                        else {</TD></TR><TR CLASS="z"><TD CLASS="l">631</TD><TD>                                parent.insertBefore(newNode, refChild);</TD></TR><TR><TD CLASS="l">632</TD><TD>                        }</TD></TR><TR><TD CLASS="l">633</TD><TD>                }</TD></TR><TR><TD CLASS="l">634</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">635</TD><TD>                boolean formatDeep = false;</TD></TR><TR CLASS="z"><TD CLASS="l">636</TD><TD>                for (Iterator i = list.iterator(); i.hasNext();) {</TD></TR><TR CLASS="z"><TD CLASS="l">637</TD><TD>                        Node newNode = (Node) i.next();</TD></TR><TR CLASS="z"><TD CLASS="l">638</TD><TD>                        if (newNode.getNodeType() == Node.ELEMENT_NODE) {</TD></TR><TR CLASS="z"><TD CLASS="l">639</TD><TD>                                formatDeep = true;</TD></TR><TR><TD CLASS="l">640</TD><TD>                        }</TD></TR><TR><TD CLASS="l">641</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">642</TD><TD>                        if (format) {</TD></TR><TR CLASS="z"><TD CLASS="l">643</TD><TD>                                reformat(newNode, formatDeep);</TD></TR><TR><TD CLASS="l">644</TD><TD>                        }</TD></TR><TR><TD CLASS="l">645</TD><TD>                }</TD></TR><TR><TD CLASS="l">646</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">647</TD><TD>                setViewerSelection(list);</TD></TR><TR CLASS="z"><TD CLASS="l">648</TD><TD>        }</TD></TR><TR><TD CLASS="l">649</TD><TD> </TD></TR><TR><TD CLASS="l">650</TD><TD> </TD></TR><TR><TD CLASS="l">651</TD><TD>        /**</TD></TR><TR><TD CLASS="l">652</TD><TD>         * This method is abstract since currently, the sed editor is required to</TD></TR><TR><TD CLASS="l">653</TD><TD>         * perform formating and we don't want to create a dependency on the sed</TD></TR><TR><TD CLASS="l">654</TD><TD>         * editor.</TD></TR><TR><TD CLASS="l">655</TD><TD>         */</TD></TR><TR><TD CLASS="l"><A NAME="1b">656</A></TD><TD>        public abstract void reformat(Node parent, boolean deep);</TD></TR><TR><TD CLASS="l">657</TD><TD> </TD></TR><TR><TD CLASS="l">658</TD><TD> </TD></TR><TR><TD CLASS="l">659</TD><TD>        public void remove(Node parent, int startIndex, int endIndex) {</TD></TR><TR CLASS="z"><TD CLASS="l">660</TD><TD>                NodeList nodeList = parent.getChildNodes();</TD></TR><TR CLASS="z"><TD CLASS="l">661</TD><TD>                for (int i = endIndex; i &gt;= startIndex; i--) {</TD></TR><TR CLASS="z"><TD CLASS="l">662</TD><TD>                        Node node = nodeList.item(i);</TD></TR><TR CLASS="z"><TD CLASS="l">663</TD><TD>                        if (node != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">664</TD><TD>                                parent.removeChild(node);</TD></TR><TR><TD CLASS="l">665</TD><TD>                        }</TD></TR><TR><TD CLASS="l">666</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="1c">667</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">668</TD><TD> </TD></TR><TR><TD CLASS="l">669</TD><TD> </TD></TR><TR><TD CLASS="l">670</TD><TD>        public void setViewerSelection(List list) {</TD></TR><TR CLASS="z"><TD CLASS="l">671</TD><TD>                if (fViewer != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">672</TD><TD>                        fViewer.setSelection(new StructuredSelection(list), true);</TD></TR><TR><TD CLASS="l">673</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="1d">674</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">675</TD><TD> </TD></TR><TR><TD CLASS="l">676</TD><TD> </TD></TR><TR><TD CLASS="l">677</TD><TD>        public void setViewerSelection(Node node) {</TD></TR><TR CLASS="z"><TD CLASS="l">678</TD><TD>                if (fViewer != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">679</TD><TD>                        fViewer.setSelection(new StructuredSelection(node), true);</TD></TR><TR><TD CLASS="l">680</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">681</TD><TD>        }</TD></TR><TR><TD CLASS="l">682</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="32.html">org.eclipse.wst.xml.ui.internal.actions</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/185.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/185.html
deleted file mode 100644
index c783cb5..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/185.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="32.html">org.eclipse.wst.xml.ui.internal.actions</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">ActionContributorXML.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>ActionContributorXML.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/304)</TD><TD CLASS="h">0%   (0/70)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">ActionContributorXML</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/304)</TD><TD CLASS="h">0%   (0/70)</TD></TR><TR><TD CLASS="f"><A HREF="#0">&lt;static initializer&gt;</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/16)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">ActionContributorXML (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/111)</TD><TD CLASS="h">0%   (0/26)</TD></TR><TR><TD CLASS="f"><A HREF="#3">addToMenu (IMenuManager): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">contributeToMenu (IMenuManager): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/31)</TD><TD CLASS="h">0%   (0/9)</TD></TR><TR><TD CLASS="f"><A HREF="#5">getExtensionIDs (): String []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">setActiveEditor (IEditorPart): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/115)</TD><TD CLASS="h">0%   (0/23)</TD></TR><TR><TD CLASS="f"><A HREF="#7">setViewerSpecificContributionsEnabled (boolean): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/28)</TD><TD CLASS="h">0%   (0/8)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2008 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.ui.internal.actions;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.util.ResourceBundle;</TD></TR><TR><TD CLASS="l">16</TD><TD> </TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.jface.action.IMenuManager;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.jface.action.IStatusLineManager;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.ui.IActionBars;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.ui.IEditorPart;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.ui.IWorkbenchActionConstants;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.ui.texteditor.ITextEditor;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.ui.texteditor.ITextEditorActionDefinitionIds;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.ui.texteditor.RetargetTextEditorAction;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.wst.sse.ui.internal.actions.ActionContributor;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.wst.sse.ui.internal.actions.ActionDefinitionIds;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.wst.sse.ui.internal.actions.StructuredTextEditorActionConstants;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.wst.xml.ui.internal.XMLUIMessages;</TD></TR><TR><TD CLASS="l">29</TD><TD> </TD></TR><TR><TD CLASS="l">30</TD><TD>/**</TD></TR><TR><TD CLASS="l">31</TD><TD> * XMLEditorActionContributor</TD></TR><TR><TD CLASS="l">32</TD><TD> * </TD></TR><TR><TD CLASS="l">33</TD><TD> * This class should not be used inside multi page editor's</TD></TR><TR><TD CLASS="l">34</TD><TD> * ActionBarContributor, since cascaded init() call from the</TD></TR><TR><TD CLASS="l">35</TD><TD> * ActionBarContributor will causes exception and it leads to lose whole</TD></TR><TR><TD CLASS="l">36</TD><TD> * toolbars.</TD></TR><TR><TD CLASS="l">37</TD><TD> * </TD></TR><TR><TD CLASS="l">38</TD><TD> * Instead, use SourcePageActionContributor for source page contributor of</TD></TR><TR><TD CLASS="l">39</TD><TD> * multi page editor.</TD></TR><TR><TD CLASS="l"><A NAME="0">40</A></TD><TD> * </TD></TR><TR><TD CLASS="l">41</TD><TD> * Note that this class is still valid for single page editor.</TD></TR><TR><TD CLASS="l">42</TD><TD> */</TD></TR><TR CLASS="z"><TD CLASS="l">43</TD><TD>public class ActionContributorXML extends ActionContributor {</TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>        private static final String[] EDITOR_IDS = {&#34;org.eclipse.core.runtime.xml.source&#34;, &#34;org.eclipse.core.runtime.xml.source2&#34;, &#34;org.eclipse.wst.sse.ui.StructuredTextEditor&#34;}; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$</TD></TR><TR><TD CLASS="l">45</TD><TD>        private static final String GO_TO_MATCHING_TAG_ID = &#34;org.eclipse.wst.xml.ui.gotoMatchingTag&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">46</TD><TD>        </TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>        protected RetargetTextEditorAction fCleanupDocument = null;</TD></TR><TR CLASS="z"><TD CLASS="l">48</TD><TD>        protected RetargetTextEditorAction fComment = null;</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>        protected RetargetTextEditorAction fContentAssist = null;</TD></TR><TR CLASS="z"><TD CLASS="l">50</TD><TD>        protected RetargetTextEditorAction fFindOccurrences = null;</TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>        protected RetargetTextEditorAction fFormatActiveElements = null;</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>        protected RetargetTextEditorAction fFormatDocument = null;</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>        protected RetargetTextEditorAction fOpenFileAction = null; // open file</TD></TR><TR><TD CLASS="l">54</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">55</A></TD><TD>        protected RetargetTextEditorAction fUncomment = null;</TD></TR><TR><TD CLASS="l">56</TD><TD>        private GoToMatchingTagAction fGoToMatchingTagAction;</TD></TR><TR><TD CLASS="l">57</TD><TD> </TD></TR><TR><TD CLASS="l">58</TD><TD>        public ActionContributorXML() {</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>                super();</TD></TR><TR><TD CLASS="l">60</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                ResourceBundle resourceBundle = XMLUIMessages.getResourceBundle();</TD></TR><TR><TD CLASS="l">62</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>                fContentAssist = new RetargetTextEditorAction(resourceBundle, &#34;&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                fContentAssist.setActionDefinitionId(ITextEditorActionDefinitionIds.CONTENT_ASSIST_PROPOSALS);</TD></TR><TR><TD CLASS="l">65</TD><TD> </TD></TR><TR><TD CLASS="l">66</TD><TD>                // source commands</TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>                fCleanupDocument = new RetargetTextEditorAction(resourceBundle, &#34;&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>                fCleanupDocument.setActionDefinitionId(ActionDefinitionIds.CLEANUP_DOCUMENT);</TD></TR><TR><TD CLASS="l">69</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">70</TD><TD>                fFormatDocument = new RetargetTextEditorAction(resourceBundle, &#34;&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>                fFormatDocument.setActionDefinitionId(ActionDefinitionIds.FORMAT_DOCUMENT);</TD></TR><TR><TD CLASS="l">72</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">73</TD><TD>                fFormatActiveElements = new RetargetTextEditorAction(resourceBundle, &#34;&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>                fFormatActiveElements.setActionDefinitionId(ActionDefinitionIds.FORMAT_ACTIVE_ELEMENTS);</TD></TR><TR><TD CLASS="l">75</TD><TD> </TD></TR><TR><TD CLASS="l">76</TD><TD>                // navigate commands</TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>                fOpenFileAction = new RetargetTextEditorAction(resourceBundle, &#34;&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">78</TD><TD>                fOpenFileAction.setActionDefinitionId(ActionDefinitionIds.OPEN_FILE);</TD></TR><TR><TD CLASS="l">79</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">80</TD><TD>                fFindOccurrences = new RetargetTextEditorAction(resourceBundle, &#34;&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">81</TD><TD>                fFindOccurrences.setActionDefinitionId(ActionDefinitionIds.FIND_OCCURRENCES);</TD></TR><TR><TD CLASS="l">82</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">83</TD><TD>                fGoToMatchingTagAction = new GoToMatchingTagAction(resourceBundle, &#34;gotoMatchingTag_&#34;, null); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">84</TD><TD>                fGoToMatchingTagAction.setActionDefinitionId(GO_TO_MATCHING_TAG_ID);</TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>                fGoToMatchingTagAction.setId(GO_TO_MATCHING_TAG_ID);</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>        }</TD></TR><TR><TD CLASS="l">87</TD><TD>        </TD></TR><TR><TD CLASS="l">88</TD><TD>        /**</TD></TR><TR><TD CLASS="l"><A NAME="4">89</A></TD><TD>         * @see org.eclipse.ui.part.EditorActionBarContributor#contributeToMenu(IMenuManager)</TD></TR><TR><TD CLASS="l">90</TD><TD>         */</TD></TR><TR><TD CLASS="l">91</TD><TD>        public void contributeToMenu(IMenuManager menu) {</TD></TR><TR><TD CLASS="l">92</TD><TD>                // navigate commands</TD></TR><TR CLASS="z"><TD CLASS="l">93</TD><TD>                IMenuManager navigateMenu = menu.findMenuUsingPath(IWorkbenchActionConstants.M_NAVIGATE);</TD></TR><TR CLASS="z"><TD CLASS="l">94</TD><TD>                if (navigateMenu != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">95</TD><TD>                        navigateMenu.appendToGroup(IWorkbenchActionConstants.OPEN_EXT, fCommandsSeparator);</TD></TR><TR CLASS="z"><TD CLASS="l">96</TD><TD>                        navigateMenu.appendToGroup(IWorkbenchActionConstants.OPEN_EXT, fOpenFileAction);</TD></TR><TR><TD CLASS="l">97</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">98</TD><TD>                        IMenuManager gotoGroup = navigateMenu.findMenuUsingPath(IWorkbenchActionConstants.GO_TO);</TD></TR><TR CLASS="z"><TD CLASS="l">99</TD><TD>                        if (gotoGroup != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">100</TD><TD>                                gotoGroup.appendToGroup(&#34;matchingBegin&#34;, fGoToMatchingTagAction); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">101</TD><TD>                        }</TD></TR><TR><TD CLASS="l">102</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">103</TD><TD>                super.contributeToMenu(menu);</TD></TR><TR CLASS="z"><TD CLASS="l">104</TD><TD>        }</TD></TR><TR><TD CLASS="l">105</TD><TD> </TD></TR><TR><TD CLASS="l">106</TD><TD>        protected void addToMenu(IMenuManager menu) {</TD></TR><TR><TD CLASS="l">107</TD><TD>/*</TD></TR><TR><TD CLASS="l">108</TD><TD>                // edit commands</TD></TR><TR><TD CLASS="l">109</TD><TD>                IMenuManager editMenu = menu.findMenuUsingPath(IWorkbenchActionConstants.M_EDIT);</TD></TR><TR><TD CLASS="l">110</TD><TD>                if (editMenu != null) {</TD></TR><TR><TD CLASS="l">111</TD><TD>                        editMenu.add(fCommandsSeparator);</TD></TR><TR><TD CLASS="l">112</TD><TD>                        editMenu.add(fToggleInsertModeAction);</TD></TR><TR><TD CLASS="l">113</TD><TD>                        editMenu.add(fCommandsSeparator);</TD></TR><TR><TD CLASS="l">114</TD><TD>                        editMenu.add(fExpandSelectionToMenu);</TD></TR><TR><TD CLASS="l">115</TD><TD>                        editMenu.add(fCommandsSeparator);</TD></TR><TR><TD CLASS="l">116</TD><TD>                        editMenu.add(fContentAssist);</TD></TR><TR><TD CLASS="l">117</TD><TD>                        editMenu.add(fMenuAdditionsGroupMarker);</TD></TR><TR><TD CLASS="l">118</TD><TD>                }</TD></TR><TR><TD CLASS="l">119</TD><TD> </TD></TR><TR><TD CLASS="l">120</TD><TD>                // source commands</TD></TR><TR><TD CLASS="l">121</TD><TD>                String sourceMenuLabel = XMLUIMessages.SourceMenu_label;</TD></TR><TR><TD CLASS="l">122</TD><TD>                String sourceMenuId = &#34;sourceMenuId&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">123</TD><TD>                IMenuManager sourceMenu = new MenuManager(sourceMenuLabel, sourceMenuId);</TD></TR><TR><TD CLASS="l">124</TD><TD>                menu.insertAfter(IWorkbenchActionConstants.M_EDIT, sourceMenu);</TD></TR><TR><TD CLASS="l">125</TD><TD>                if (sourceMenu != null) {</TD></TR><TR><TD CLASS="l">126</TD><TD>                        sourceMenu.add(fCommandsSeparator);</TD></TR><TR><TD CLASS="l">127</TD><TD>                        sourceMenu.add(fToggleComment);</TD></TR><TR><TD CLASS="l">128</TD><TD>                        sourceMenu.add(fAddBlockComment);</TD></TR><TR><TD CLASS="l">129</TD><TD>                        sourceMenu.add(fRemoveBlockComment);</TD></TR><TR><TD CLASS="l">130</TD><TD>                        sourceMenu.add(fShiftRight);</TD></TR><TR><TD CLASS="l">131</TD><TD>                        sourceMenu.add(fShiftLeft);</TD></TR><TR><TD CLASS="l">132</TD><TD>                        sourceMenu.add(fCleanupDocument);</TD></TR><TR><TD CLASS="l">133</TD><TD>                        sourceMenu.add(fFormatDocument);</TD></TR><TR><TD CLASS="l">134</TD><TD>                        sourceMenu.add(fFormatActiveElements);</TD></TR><TR><TD CLASS="l">135</TD><TD>                        sourceMenu.add(fCommandsSeparator);</TD></TR><TR><TD CLASS="l">136</TD><TD>                        sourceMenu.add(fFindOccurrences);</TD></TR><TR><TD CLASS="l">137</TD><TD>                }</TD></TR><TR><TD CLASS="l">138</TD><TD> </TD></TR><TR><TD CLASS="l">139</TD><TD>                // navigate commands</TD></TR><TR><TD CLASS="l">140</TD><TD>                IMenuManager navigateMenu = menu.findMenuUsingPath(IWorkbenchActionConstants.M_NAVIGATE);</TD></TR><TR><TD CLASS="l">141</TD><TD>                if (navigateMenu != null) {</TD></TR><TR><TD CLASS="l">142</TD><TD>                        navigateMenu.appendToGroup(IWorkbenchActionConstants.OPEN_EXT, fCommandsSeparator);</TD></TR><TR><TD CLASS="l">143</TD><TD>                        navigateMenu.appendToGroup(IWorkbenchActionConstants.OPEN_EXT, fOpenFileAction);</TD></TR><TR><TD CLASS="l">144</TD><TD> </TD></TR><TR><TD CLASS="l">145</TD><TD>                        IMenuManager gotoGroup = navigateMenu.findMenuUsingPath(IWorkbenchActionConstants.GO_TO);</TD></TR><TR><TD CLASS="l">146</TD><TD>                        if (gotoGroup != null) {</TD></TR><TR><TD CLASS="l">147</TD><TD>                                gotoGroup.add(fGotoMatchingBracketAction);</TD></TR><TR><TD CLASS="l">148</TD><TD>                                gotoGroup.add(fGoToMatchingTagAction);</TD></TR><TR><TD CLASS="l"><A NAME="3">149</A></TD><TD>                                gotoGroup.add(new Separator());</TD></TR><TR><TD CLASS="l">150</TD><TD>                        }</TD></TR><TR><TD CLASS="l">151</TD><TD>                }</TD></TR><TR><TD CLASS="l">152</TD><TD>*/</TD></TR><TR CLASS="z"><TD CLASS="l">153</TD><TD>        }</TD></TR><TR><TD CLASS="l">154</TD><TD> </TD></TR><TR><TD CLASS="l">155</TD><TD>        /*</TD></TR><TR><TD CLASS="l">156</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="5">157</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">158</TD><TD>         * @see org.eclipse.wst.sse.ui.edit.util.ActionContributor#getExtensionIDs()</TD></TR><TR><TD CLASS="l">159</TD><TD>         */</TD></TR><TR><TD CLASS="l">160</TD><TD>        protected String[] getExtensionIDs() {</TD></TR><TR CLASS="z"><TD CLASS="l">161</TD><TD>                return EDITOR_IDS;</TD></TR><TR><TD CLASS="l">162</TD><TD>        }</TD></TR><TR><TD CLASS="l">163</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="6">164</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">165</TD><TD>         * @see org.eclipse.ui.IEditorActionBarContributor#setActiveEditor(IEditorPart)</TD></TR><TR><TD CLASS="l">166</TD><TD>         */</TD></TR><TR><TD CLASS="l">167</TD><TD>        public void setActiveEditor(IEditorPart activeEditor) {</TD></TR><TR CLASS="z"><TD CLASS="l">168</TD><TD>                if (getActiveEditorPart() == activeEditor) {</TD></TR><TR CLASS="z"><TD CLASS="l">169</TD><TD>                        return;</TD></TR><TR><TD CLASS="l">170</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">171</TD><TD>                super.setActiveEditor(activeEditor);</TD></TR><TR><TD CLASS="l">172</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">173</TD><TD>                IActionBars actionBars = getActionBars();</TD></TR><TR CLASS="z"><TD CLASS="l">174</TD><TD>                if (actionBars != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">175</TD><TD>                        IStatusLineManager statusLineManager = actionBars.getStatusLineManager();</TD></TR><TR CLASS="z"><TD CLASS="l">176</TD><TD>                        if (statusLineManager != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">177</TD><TD>                                statusLineManager.setMessage(null);</TD></TR><TR CLASS="z"><TD CLASS="l">178</TD><TD>                                statusLineManager.setErrorMessage(null);</TD></TR><TR><TD CLASS="l">179</TD><TD>                        }</TD></TR><TR><TD CLASS="l">180</TD><TD>                }</TD></TR><TR><TD CLASS="l">181</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">182</TD><TD>                ITextEditor textEditor = getTextEditor(activeEditor);</TD></TR><TR><TD CLASS="l">183</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">184</TD><TD>                fContentAssist.setAction(getAction(textEditor, StructuredTextEditorActionConstants.ACTION_NAME_CONTENTASSIST_PROPOSALS));</TD></TR><TR><TD CLASS="l">185</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">186</TD><TD>                fCleanupDocument.setAction(getAction(textEditor, StructuredTextEditorActionConstants.ACTION_NAME_CLEANUP_DOCUMENT));</TD></TR><TR CLASS="z"><TD CLASS="l">187</TD><TD>                fFormatDocument.setAction(getAction(textEditor, StructuredTextEditorActionConstants.ACTION_NAME_FORMAT_DOCUMENT));</TD></TR><TR CLASS="z"><TD CLASS="l">188</TD><TD>                fFormatActiveElements.setAction(getAction(textEditor, StructuredTextEditorActionConstants.ACTION_NAME_FORMAT_ACTIVE_ELEMENTS));</TD></TR><TR CLASS="z"><TD CLASS="l">189</TD><TD>                fCleanupDocument.setEnabled((textEditor != null) &amp;&amp; textEditor.isEditable());</TD></TR><TR CLASS="z"><TD CLASS="l">190</TD><TD>                fFormatDocument.setEnabled((textEditor != null) &amp;&amp; textEditor.isEditable());</TD></TR><TR CLASS="z"><TD CLASS="l">191</TD><TD>                fFormatActiveElements.setEnabled((textEditor != null) &amp;&amp; textEditor.isEditable());</TD></TR><TR><TD CLASS="l">192</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">193</TD><TD>                fOpenFileAction.setAction(getAction(textEditor, StructuredTextEditorActionConstants.ACTION_NAME_OPEN_FILE));</TD></TR><TR><TD CLASS="l">194</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">195</TD><TD>                fFindOccurrences.setAction(getAction(textEditor, StructuredTextEditorActionConstants.ACTION_NAME_FIND_OCCURRENCES));</TD></TR><TR><TD CLASS="l">196</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">197</TD><TD>                fGoToMatchingTagAction.setEditor(textEditor);</TD></TR><TR CLASS="z"><TD CLASS="l">198</TD><TD>                if (textEditor != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">199</TD><TD>                        textEditor.setAction(GO_TO_MATCHING_TAG_ID, fGoToMatchingTagAction);</TD></TR><TR><TD CLASS="l">200</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">201</TD><TD>        }</TD></TR><TR><TD CLASS="l">202</TD><TD> </TD></TR><TR><TD CLASS="l">203</TD><TD>        /*</TD></TR><TR><TD CLASS="l">204</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="7">205</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">206</TD><TD>         * @see org.eclipse.wst.sse.ui.ISourceViewerActionBarContributor#setViewerSpecificContributionsEnabled(boolean)</TD></TR><TR><TD CLASS="l">207</TD><TD>         */</TD></TR><TR><TD CLASS="l">208</TD><TD>        public void setViewerSpecificContributionsEnabled(boolean enabled) {</TD></TR><TR CLASS="z"><TD CLASS="l">209</TD><TD>                super.setViewerSpecificContributionsEnabled(enabled);</TD></TR><TR><TD CLASS="l">210</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">211</TD><TD>                fContentAssist.setEnabled(enabled);</TD></TR><TR><TD CLASS="l">212</TD><TD>                // cleanup and format document actions do not rely on source viewer</TD></TR><TR><TD CLASS="l">213</TD><TD>                // being enabled</TD></TR><TR><TD CLASS="l">214</TD><TD>                // fCleanupDocument.setEnabled(enabled);</TD></TR><TR><TD CLASS="l">215</TD><TD>                // fFormatDocument.setEnabled(enabled);</TD></TR><TR><TD CLASS="l">216</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">217</TD><TD>                fFormatActiveElements.setEnabled(enabled);</TD></TR><TR CLASS="z"><TD CLASS="l">218</TD><TD>                fOpenFileAction.setEnabled(enabled);</TD></TR><TR CLASS="z"><TD CLASS="l">219</TD><TD>                fFindOccurrences.setEnabled(enabled);</TD></TR><TR><TD CLASS="l">220</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">221</TD><TD>                fGoToMatchingTagAction.setEnabled(enabled);</TD></TR><TR CLASS="z"><TD CLASS="l">222</TD><TD>                fGotoMatchingBracketAction.setEnabled(enabled);</TD></TR><TR CLASS="z"><TD CLASS="l">223</TD><TD>        }</TD></TR><TR><TD CLASS="l">224</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="32.html">org.eclipse.wst.xml.ui.internal.actions</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/186.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/186.html
deleted file mode 100644
index c5686fc..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/186.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="32.html">org.eclipse.wst.xml.ui.internal.actions</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">AddBlockCommentActionXMLDelegate.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>AddBlockCommentActionXMLDelegate.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/132)</TD><TD CLASS="h">0%   (0/35)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">AddBlockCommentActionXMLDelegate</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/132)</TD><TD CLASS="h">0%   (0/35)</TD></TR><TR><TD CLASS="f"><A HREF="#0">AddBlockCommentActionXMLDelegate (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">init (IAction): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#3">processAction (IDocument, ITextSelection): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/117)</TD><TD CLASS="h">0%   (0/29)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2005, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     </TD></TR><TR><TD CLASS="l">11</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">12</TD><TD> </TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.ui.internal.actions;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.jface.action.IAction;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.jface.text.BadLocationException;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.jface.text.IDocument;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.jface.text.ITextSelection;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.wst.sse.core.StructuredModelManager;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.wst.xml.core.internal.document.CommentImpl;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.wst.xml.ui.internal.Logger;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.wst.xml.ui.internal.XMLUIMessages;</TD></TR><TR><TD CLASS="l"><A NAME="0">25</A></TD><TD> </TD></TR><TR><TD CLASS="l">26</TD><TD>/**</TD></TR><TR><TD CLASS="l">27</TD><TD> * Add block comment action delegate for XML editor</TD></TR><TR><TD CLASS="l"><A NAME="2">28</A></TD><TD> */</TD></TR><TR CLASS="z"><TD CLASS="l">29</TD><TD>public class AddBlockCommentActionXMLDelegate extends AbstractCommentActionXMLDelegate {</TD></TR><TR><TD CLASS="l">30</TD><TD> </TD></TR><TR><TD CLASS="l">31</TD><TD>        public void init(IAction action) {</TD></TR><TR CLASS="z"><TD CLASS="l">32</TD><TD>                if (action != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">33</TD><TD>                        action.setText(XMLUIMessages.AddBlockComment_label);</TD></TR><TR CLASS="z"><TD CLASS="l">34</TD><TD>                        action.setToolTipText(XMLUIMessages.AddBlockComment_tooltip);</TD></TR><TR CLASS="z"><TD CLASS="l">35</TD><TD>                        action.setDescription(XMLUIMessages.AddBlockComment_description);</TD></TR><TR><TD CLASS="l"><A NAME="3">36</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">37</TD><TD>        }</TD></TR><TR><TD CLASS="l">38</TD><TD> </TD></TR><TR><TD CLASS="l">39</TD><TD>        void processAction(IDocument document, ITextSelection textSelection) {</TD></TR><TR CLASS="z"><TD CLASS="l">40</TD><TD>                IStructuredModel model = StructuredModelManager.getModelManager().getExistingModelForEdit(document);</TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>                if (model != null) {</TD></TR><TR><TD CLASS="l">42</TD><TD>                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">43</TD><TD>                                IndexedRegion selectionStartIndexedRegion = model.getIndexedRegion(textSelection.getOffset());</TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>                                IndexedRegion selectionEndIndexedRegion = model.getIndexedRegion(textSelection.getOffset() + textSelection.getLength());</TD></TR><TR><TD CLASS="l">45</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>                                if (selectionStartIndexedRegion == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>                                        return;</TD></TR><TR><TD CLASS="l">48</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>                                if ((selectionEndIndexedRegion == null) &amp;&amp; (textSelection.getLength() &gt; 0)) {</TD></TR><TR CLASS="z"><TD CLASS="l">50</TD><TD>                                        selectionEndIndexedRegion = model.getIndexedRegion(textSelection.getOffset() + textSelection.getLength() - 1);</TD></TR><TR><TD CLASS="l">51</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                                if (selectionEndIndexedRegion == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>                                        return;</TD></TR><TR><TD CLASS="l">54</TD><TD>                                }</TD></TR><TR><TD CLASS="l">55</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>                                int openCommentOffset = selectionStartIndexedRegion.getStartOffset();</TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>                                int closeCommentOffset = selectionEndIndexedRegion.getEndOffset() + OPEN_COMMENT.length();</TD></TR><TR><TD CLASS="l">58</TD><TD> </TD></TR><TR><TD CLASS="l">59</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                                if ((textSelection.getLength() == 0) &amp;&amp; (selectionStartIndexedRegion instanceof CommentImpl)) {</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                                        return;</TD></TR><TR><TD CLASS="l">62</TD><TD>                                }</TD></TR><TR><TD CLASS="l">63</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                                model.beginRecording(this, XMLUIMessages.AddBlockComment_tooltip);</TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>                                model.aboutToChangeModel();</TD></TR><TR><TD CLASS="l">66</TD><TD> </TD></TR><TR><TD CLASS="l">67</TD><TD>                                try {</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>                                        document.replace(openCommentOffset, 0, OPEN_COMMENT);</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                                        document.replace(closeCommentOffset, 0, CLOSE_COMMENT);</TD></TR><TR CLASS="z"><TD CLASS="l">70</TD><TD>                                        removeOpenCloseComments(document, openCommentOffset + OPEN_COMMENT.length(), closeCommentOffset - openCommentOffset - CLOSE_COMMENT.length());</TD></TR><TR><TD CLASS="l">71</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>                                catch (BadLocationException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">73</TD><TD>                                        Logger.log(Logger.WARNING_DEBUG, e.getMessage(), e);</TD></TR><TR><TD CLASS="l">74</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>                                finally {</TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>                                        model.changedModel();</TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>                                        model.endRecording(this);</TD></TR><TR CLASS="z"><TD CLASS="l">78</TD><TD>                                }</TD></TR><TR><TD CLASS="l">79</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">80</TD><TD>                        finally {</TD></TR><TR CLASS="z"><TD CLASS="l">81</TD><TD>                                model.releaseFromEdit();</TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>                        }</TD></TR><TR><TD CLASS="l">83</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">84</TD><TD>        }</TD></TR><TR><TD CLASS="l">85</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="32.html">org.eclipse.wst.xml.ui.internal.actions</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/187.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/187.html
deleted file mode 100644
index 73c70fd..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/187.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="32.html">org.eclipse.wst.xml.ui.internal.actions</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">BaseNodeActionManager.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>BaseNodeActionManager.java</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/30)</TD><TD CLASS="h">0%   (0/1036)</TD><TD CLASS="h">0%   (0/222)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">BaseNodeActionManager</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/27)</TD><TD CLASS="h">0%   (0/1019)</TD><TD CLASS="h">0%   (0/217)</TD></TR><TR><TD CLASS="f"><A HREF="#1">BaseNodeActionManager (IStructuredModel, ModelQuery): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/14)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">addActionHelper (IMenuManager, List): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/83)</TD><TD CLASS="h">0%   (0/16)</TD></TR><TR><TD CLASS="f"><A HREF="#3">contributeAction (IMenuManager, Action): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">contributeActions (IMenuManager, List): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/82)</TD><TD CLASS="h">0%   (0/19)</TD></TR><TR><TD CLASS="f"><A HREF="#5">contributeAddChildActions (IMenuManager, Node, int, int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/90)</TD><TD CLASS="h">0%   (0/20)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">contributeAddDocumentChildActions (IMenuManager, Document, int, int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/19)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#7">contributeAddSiblingActions (IMenuManager, Node, int, int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/194)</TD><TD CLASS="h">0%   (0/38)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">contributeDeleteActions (IMenuManager, List, int, int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/19)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#9">contributeEditActions (IMenuManager, Node): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/29)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">contributeEditGrammarInformationActions (IMenuManager, Node): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/48)</TD><TD CLASS="h">0%   (0/9)</TD></TR><TR><TD CLASS="f"><A HREF="#b">contributePIAndCommentActions (IMenuManager, Document, int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#c">contributePIAndCommentActions (IMenuManager, Element, CMElementDeclaration, i...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/21)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#d">contributeReplaceActions (IMenuManager, List, int, int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/58)</TD><TD CLASS="h">0%   (0/13)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#e">contributeTextNodeActions (IMenuManager, Element, CMElementDeclaration, int):...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/29)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#f">contributeUnconstrainedAddElementAction (IMenuManager, Document, int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/74)</TD><TD CLASS="h">0%   (0/19)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#10">contributeUnconstrainedAddElementAction (IMenuManager, Element, CMElementDecl...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/28)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#11">contributeUnconstrainedAttributeActions (IMenuManager, Element, CMElementDecl...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/23)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#0">getDoctype (Node): DocumentType</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#13">getIndex (Node, Node): int</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/25)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#14">getRefChildNodeAtIndex (Node, int): Node</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/17)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#15">getRootElement (Document): Element</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/29)</TD><TD CLASS="h">0%   (0/9)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#16">getSelectedNodes (List, boolean): List</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/38)</TD><TD CLASS="h">0%   (0/10)</TD></TR><TR><TD CLASS="f"><A HREF="#17">isCommentAllowed (CMElementDeclaration): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/18)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#18">isElementAllowed (CMElementDeclaration): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#19">isTextAllowed (CMElementDeclaration): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#1a">isUnconstrainedActionAllowed (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#1b">isWhitespaceTextNode (Node): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#1c">BaseNodeActionManager$MyMenuManager</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/17)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#1c">BaseNodeActionManager$MyMenuManager (String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#1e">isEnabled (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#1f">toString (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.ui.internal.actions;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.util.ArrayList;</TD></TR><TR><TD CLASS="l">16</TD><TD>import java.util.Collections;</TD></TR><TR><TD CLASS="l">17</TD><TD>import java.util.Iterator;</TD></TR><TR><TD CLASS="l">18</TD><TD>import java.util.List;</TD></TR><TR><TD CLASS="l">19</TD><TD>import java.util.Vector;</TD></TR><TR><TD CLASS="l">20</TD><TD> </TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.jface.action.Action;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.jface.action.IMenuManager;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.jface.action.MenuManager;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.wst.xml.core.internal.contentmodel.CMDataType;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;</TD></TR><TR><TD CLASS="l">30</TD><TD>import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQuery;</TD></TR><TR><TD CLASS="l">31</TD><TD>import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQueryAction;</TD></TR><TR><TD CLASS="l">32</TD><TD>import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;</TD></TR><TR><TD CLASS="l">33</TD><TD>import org.eclipse.wst.xml.ui.internal.XMLUIMessages;</TD></TR><TR><TD CLASS="l">34</TD><TD>import org.w3c.dom.Attr;</TD></TR><TR><TD CLASS="l">35</TD><TD>import org.w3c.dom.Document;</TD></TR><TR><TD CLASS="l">36</TD><TD>import org.w3c.dom.DocumentType;</TD></TR><TR><TD CLASS="l">37</TD><TD>import org.w3c.dom.Element;</TD></TR><TR><TD CLASS="l">38</TD><TD>import org.w3c.dom.Node;</TD></TR><TR><TD CLASS="l">39</TD><TD>import org.w3c.dom.NodeList;</TD></TR><TR><TD CLASS="l">40</TD><TD>import org.w3c.dom.ProcessingInstruction;</TD></TR><TR><TD CLASS="l">41</TD><TD> </TD></TR><TR><TD CLASS="l">42</TD><TD>public abstract class BaseNodeActionManager {</TD></TR><TR><TD CLASS="l">43</TD><TD> </TD></TR><TR><TD CLASS="l">44</TD><TD> </TD></TR><TR><TD CLASS="l">45</TD><TD>        /**</TD></TR><TR><TD CLASS="l">46</TD><TD>         * MyMenuManager</TD></TR><TR><TD CLASS="l">47</TD><TD>         */</TD></TR><TR><TD CLASS="l"><A NAME="1c">48</A></TD><TD>        public static class MyMenuManager extends MenuManager {</TD></TR><TR><TD CLASS="l">49</TD><TD>                protected String title;</TD></TR><TR><TD CLASS="l">50</TD><TD> </TD></TR><TR><TD CLASS="l">51</TD><TD>                public MyMenuManager(String s) {</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                        super(s);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="1e">53</A></TD><TD>                        title = s;</TD></TR><TR CLASS="z"><TD CLASS="l">54</TD><TD>                }</TD></TR><TR><TD CLASS="l">55</TD><TD> </TD></TR><TR><TD CLASS="l">56</TD><TD>                public boolean isEnabled() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="1f">57</A></TD><TD>                        return !isEmpty();</TD></TR><TR><TD CLASS="l">58</TD><TD>                }</TD></TR><TR><TD CLASS="l">59</TD><TD> </TD></TR><TR><TD CLASS="l">60</TD><TD>                public String toString() {</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                        return title;</TD></TR><TR><TD CLASS="l"><A NAME="0">62</A></TD><TD>                }</TD></TR><TR><TD CLASS="l">63</TD><TD>        }</TD></TR><TR><TD CLASS="l">64</TD><TD> </TD></TR><TR><TD CLASS="l">65</TD><TD>        public static DocumentType getDoctype(Node node) {</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                Document document = (node.getNodeType() == Node.DOCUMENT_NODE) ? (Document) node : node.getOwnerDocument();</TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>                return document.getDoctype();</TD></TR><TR><TD CLASS="l">68</TD><TD>        }</TD></TR><TR><TD CLASS="l">69</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="1">70</A></TD><TD>        protected MenuBuilder menuBuilder = new MenuBuilder();</TD></TR><TR><TD CLASS="l">71</TD><TD>        protected IStructuredModel fModel;</TD></TR><TR><TD CLASS="l">72</TD><TD>        protected ModelQuery modelQuery;</TD></TR><TR><TD CLASS="l">73</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>        protected BaseNodeActionManager(IStructuredModel model, ModelQuery modelQuery) {</TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>                this.fModel = model;</TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>                this.modelQuery = modelQuery;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">77</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">78</TD><TD> </TD></TR><TR><TD CLASS="l">79</TD><TD> </TD></TR><TR><TD CLASS="l">80</TD><TD>        protected void addActionHelper(IMenuManager menu, List modelQueryActionList) {</TD></TR><TR CLASS="z"><TD CLASS="l">81</TD><TD>                List actionList = new Vector();</TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>                for (Iterator i = modelQueryActionList.iterator(); i.hasNext();) {</TD></TR><TR CLASS="z"><TD CLASS="l">83</TD><TD>                        ModelQueryAction action = (ModelQueryAction) i.next();</TD></TR><TR CLASS="z"><TD CLASS="l">84</TD><TD>                        if (action.getCMNode() != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>                                int cmNodeType = action.getCMNode().getNodeType();</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                                if (action.getKind() == ModelQueryAction.INSERT) {</TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>                                        switch (cmNodeType) {</TD></TR><TR><TD CLASS="l">88</TD><TD>                                                case CMNode.ATTRIBUTE_DECLARATION : {</TD></TR><TR CLASS="z"><TD CLASS="l">89</TD><TD>                                                        actionList.add(createAddAttributeAction((Element) action.getParent(), (CMAttributeDeclaration) action.getCMNode()));</TD></TR><TR CLASS="z"><TD CLASS="l">90</TD><TD>                                                        break;</TD></TR><TR><TD CLASS="l">91</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">92</TD><TD>                                                case CMNode.ELEMENT_DECLARATION : {</TD></TR><TR CLASS="z"><TD CLASS="l">93</TD><TD>                                                        actionList.add(createAddElementAction(action.getParent(), (CMElementDeclaration) action.getCMNode(), action.getStartIndex()));</TD></TR><TR><TD CLASS="l">94</TD><TD>                                                        break;</TD></TR><TR><TD CLASS="l">95</TD><TD>                                                }</TD></TR><TR CLASS="z"><TD CLASS="l">96</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">97</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">98</TD><TD>                                else if (action.getKind() == ModelQueryAction.REPLACE) {</TD></TR><TR CLASS="z"><TD CLASS="l">99</TD><TD>                                        if ((action.getParent() != null) &amp;&amp; (action.getCMNode() != null)) {</TD></TR><TR CLASS="z"><TD CLASS="l">100</TD><TD>                                                actionList.add(createReplaceAction(action.getParent(), action.getCMNode(), action.getStartIndex(), action.getEndIndex()));</TD></TR><TR><TD CLASS="l">101</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">102</TD><TD>                                }</TD></TR><TR><TD CLASS="l">103</TD><TD>                        }</TD></TR><TR><TD CLASS="l">104</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">105</A></TD><TD>                menuBuilder.populateMenu(menu, actionList, false);</TD></TR><TR CLASS="z"><TD CLASS="l">106</TD><TD>        }</TD></TR><TR><TD CLASS="l">107</TD><TD> </TD></TR><TR><TD CLASS="l">108</TD><TD>        protected void contributeAction(IMenuManager menu, Action action) {</TD></TR><TR CLASS="z"><TD CLASS="l">109</TD><TD>                if (action != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">110</TD><TD>                        menu.add(action);</TD></TR><TR><TD CLASS="l">111</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">112</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">113</TD><TD> </TD></TR><TR><TD CLASS="l">114</TD><TD> </TD></TR><TR><TD CLASS="l">115</TD><TD>        public void contributeActions(IMenuManager menu, List selection) {</TD></TR><TR CLASS="z"><TD CLASS="l">116</TD><TD>                int editMode = modelQuery.getEditMode();</TD></TR><TR CLASS="z"><TD CLASS="l">117</TD><TD>                int ic = ModelQuery.INCLUDE_CHILD_NODES;</TD></TR><TR CLASS="z"><TD CLASS="l">118</TD><TD>                int vc = (editMode == ModelQuery.EDIT_MODE_CONSTRAINED_STRICT) ? ModelQuery.VALIDITY_STRICT : ModelQuery.VALIDITY_NONE;</TD></TR><TR><TD CLASS="l">119</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">120</TD><TD>                List implicitlySelectedNodeList = null;</TD></TR><TR><TD CLASS="l">121</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">122</TD><TD>                if (selection.size() &gt; 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">123</TD><TD>                        implicitlySelectedNodeList = getSelectedNodes(selection, true);</TD></TR><TR><TD CLASS="l">124</TD><TD> </TD></TR><TR><TD CLASS="l">125</TD><TD>                        // contribute delete actions</TD></TR><TR CLASS="z"><TD CLASS="l">126</TD><TD>                        contributeDeleteActions(menu, implicitlySelectedNodeList, ic, vc);</TD></TR><TR><TD CLASS="l">127</TD><TD>                }</TD></TR><TR><TD CLASS="l">128</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">129</TD><TD>                if (selection.size() == 1) {</TD></TR><TR CLASS="z"><TD CLASS="l">130</TD><TD>                        Node node = (Node) selection.get(0);</TD></TR><TR><TD CLASS="l">131</TD><TD> </TD></TR><TR><TD CLASS="l">132</TD><TD>                        // contribute edit actions</TD></TR><TR CLASS="z"><TD CLASS="l">133</TD><TD>                        contributeEditActions(menu, node);</TD></TR><TR><TD CLASS="l">134</TD><TD> </TD></TR><TR><TD CLASS="l">135</TD><TD>                        // contribute add child actions</TD></TR><TR CLASS="z"><TD CLASS="l">136</TD><TD>                        contributeAddChildActions(menu, node, ic, vc);</TD></TR><TR><TD CLASS="l">137</TD><TD> </TD></TR><TR><TD CLASS="l">138</TD><TD>                        // contribute add before actions</TD></TR><TR CLASS="z"><TD CLASS="l">139</TD><TD>                        contributeAddSiblingActions(menu, node, ic, vc);</TD></TR><TR><TD CLASS="l">140</TD><TD>                }</TD></TR><TR><TD CLASS="l">141</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">142</TD><TD>                if (selection.size() &gt; 0) {</TD></TR><TR><TD CLASS="l">143</TD><TD>                        // contribute replace actions</TD></TR><TR CLASS="z"><TD CLASS="l">144</TD><TD>                        contributeReplaceActions(menu, implicitlySelectedNodeList, ic, vc);</TD></TR><TR><TD CLASS="l">145</TD><TD>                }</TD></TR><TR><TD CLASS="l">146</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">147</TD><TD>                if (selection.size() == 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">148</TD><TD>                        Document document = ((IDOMModel) fModel).getDocument();</TD></TR><TR CLASS="z"><TD CLASS="l">149</TD><TD>                        contributeAddDocumentChildActions(menu, document, ic, vc);</TD></TR><TR CLASS="z"><TD CLASS="l">150</TD><TD>                        contributeEditGrammarInformationActions(menu, document);</TD></TR><TR><TD CLASS="l">151</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="5">152</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">153</TD><TD> </TD></TR><TR><TD CLASS="l">154</TD><TD> </TD></TR><TR><TD CLASS="l">155</TD><TD>        protected void contributeAddChildActions(IMenuManager menu, Node node, int ic, int vc) {</TD></TR><TR CLASS="z"><TD CLASS="l">156</TD><TD>                int nodeType = node.getNodeType();</TD></TR><TR><TD CLASS="l">157</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">158</TD><TD>                if (nodeType == Node.ELEMENT_NODE) {</TD></TR><TR><TD CLASS="l">159</TD><TD>                        // 'Add Child...' and 'Add Attribute...' actions</TD></TR><TR><TD CLASS="l">160</TD><TD>                        //</TD></TR><TR CLASS="z"><TD CLASS="l">161</TD><TD>                        Element element = (Element) node;</TD></TR><TR><TD CLASS="l">162</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">163</TD><TD>                        IMenuManager addAttributeMenu = new MyMenuManager(XMLUIMessages._UI_MENU_ADD_ATTRIBUTE);</TD></TR><TR CLASS="z"><TD CLASS="l">164</TD><TD>                        IMenuManager addChildMenu = new MyMenuManager(XMLUIMessages._UI_MENU_ADD_CHILD);</TD></TR><TR CLASS="z"><TD CLASS="l">165</TD><TD>                        menu.add(addAttributeMenu);</TD></TR><TR CLASS="z"><TD CLASS="l">166</TD><TD>                        menu.add(addChildMenu);</TD></TR><TR><TD CLASS="l">167</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">168</TD><TD>                        CMElementDeclaration ed = modelQuery.getCMElementDeclaration(element);</TD></TR><TR CLASS="z"><TD CLASS="l">169</TD><TD>                        if (ed != null) {</TD></TR><TR><TD CLASS="l">170</TD><TD>                                // add insert attribute actions</TD></TR><TR><TD CLASS="l">171</TD><TD>                                //</TD></TR><TR CLASS="z"><TD CLASS="l">172</TD><TD>                                List modelQueryActionList = new ArrayList();</TD></TR><TR CLASS="z"><TD CLASS="l">173</TD><TD>                                modelQuery.getInsertActions(element, ed, -1, ModelQuery.INCLUDE_ATTRIBUTES, vc, modelQueryActionList);</TD></TR><TR CLASS="z"><TD CLASS="l">174</TD><TD>                                addActionHelper(addAttributeMenu, modelQueryActionList);</TD></TR><TR><TD CLASS="l">175</TD><TD> </TD></TR><TR><TD CLASS="l">176</TD><TD>                                // add insert child node actions</TD></TR><TR><TD CLASS="l">177</TD><TD>                                //</TD></TR><TR CLASS="z"><TD CLASS="l">178</TD><TD>                                modelQueryActionList = new ArrayList();</TD></TR><TR CLASS="z"><TD CLASS="l">179</TD><TD>                                modelQuery.getInsertActions(element, ed, -1, ic, vc, modelQueryActionList);</TD></TR><TR CLASS="z"><TD CLASS="l">180</TD><TD>                                addActionHelper(addChildMenu, modelQueryActionList);</TD></TR><TR><TD CLASS="l">181</TD><TD>                        }</TD></TR><TR><TD CLASS="l">182</TD><TD> </TD></TR><TR><TD CLASS="l">183</TD><TD>                        // add PI and COMMENT</TD></TR><TR CLASS="z"><TD CLASS="l">184</TD><TD>                        contributePIAndCommentActions(addChildMenu, element, ed, -1);</TD></TR><TR><TD CLASS="l">185</TD><TD> </TD></TR><TR><TD CLASS="l">186</TD><TD>                        // add PCDATA, CDATA_SECTION</TD></TR><TR CLASS="z"><TD CLASS="l">187</TD><TD>                        contributeTextNodeActions(addChildMenu, element, ed, -1);</TD></TR><TR><TD CLASS="l">188</TD><TD> </TD></TR><TR><TD CLASS="l">189</TD><TD>                        // add NEW ELEMENT</TD></TR><TR CLASS="z"><TD CLASS="l">190</TD><TD>                        contributeUnconstrainedAddElementAction(addChildMenu, element, ed, -1);</TD></TR><TR><TD CLASS="l">191</TD><TD> </TD></TR><TR><TD CLASS="l">192</TD><TD>                        // add ATTRIBUTE</TD></TR><TR CLASS="z"><TD CLASS="l">193</TD><TD>                        contributeUnconstrainedAttributeActions(addAttributeMenu, element, ed);</TD></TR><TR><TD CLASS="l">194</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="6">195</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">196</TD><TD> </TD></TR><TR><TD CLASS="l">197</TD><TD> </TD></TR><TR><TD CLASS="l">198</TD><TD>        protected void contributeAddDocumentChildActions(IMenuManager menu, Document document, int ic, int vc) {</TD></TR><TR CLASS="z"><TD CLASS="l">199</TD><TD>                IMenuManager addChildMenu = new MyMenuManager(XMLUIMessages._UI_MENU_ADD_CHILD);</TD></TR><TR CLASS="z"><TD CLASS="l">200</TD><TD>                menu.add(addChildMenu);</TD></TR><TR><TD CLASS="l">201</TD><TD> </TD></TR><TR><TD CLASS="l">202</TD><TD>                // add PI and COMMENT</TD></TR><TR CLASS="z"><TD CLASS="l">203</TD><TD>                contributePIAndCommentActions(addChildMenu, document, -1);</TD></TR><TR><TD CLASS="l">204</TD><TD> </TD></TR><TR><TD CLASS="l">205</TD><TD>                // add NEW ELEMENT</TD></TR><TR CLASS="z"><TD CLASS="l">206</TD><TD>                contributeUnconstrainedAddElementAction(addChildMenu, document, -1);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="7">207</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">208</TD><TD> </TD></TR><TR><TD CLASS="l">209</TD><TD> </TD></TR><TR><TD CLASS="l">210</TD><TD>        protected void contributeAddSiblingActions(IMenuManager menu, Node node, int ic, int vc) {</TD></TR><TR CLASS="z"><TD CLASS="l">211</TD><TD>                IMenuManager addBeforeMenu = new MyMenuManager(XMLUIMessages._UI_MENU_ADD_BEFORE);</TD></TR><TR CLASS="z"><TD CLASS="l">212</TD><TD>                IMenuManager addAfterMenu = new MyMenuManager(XMLUIMessages._UI_MENU_ADD_AFTER);</TD></TR><TR CLASS="z"><TD CLASS="l">213</TD><TD>                menu.add(addBeforeMenu);</TD></TR><TR CLASS="z"><TD CLASS="l">214</TD><TD>                menu.add(addAfterMenu);</TD></TR><TR><TD CLASS="l">215</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">216</TD><TD>                Node parentNode = node.getParentNode();</TD></TR><TR CLASS="z"><TD CLASS="l">217</TD><TD>                if (parentNode != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">218</TD><TD>                        int index = getIndex(parentNode, node);</TD></TR><TR CLASS="z"><TD CLASS="l">219</TD><TD>                        if (parentNode.getNodeType() == Node.ELEMENT_NODE) {</TD></TR><TR CLASS="z"><TD CLASS="l">220</TD><TD>                                Element parentElement = (Element) parentNode;</TD></TR><TR CLASS="z"><TD CLASS="l">221</TD><TD>                                CMElementDeclaration parentED = modelQuery.getCMElementDeclaration(parentElement);</TD></TR><TR CLASS="z"><TD CLASS="l">222</TD><TD>                                if (parentED != null) {</TD></TR><TR><TD CLASS="l">223</TD><TD>                                        // 'Add Before...' and 'Add After...' actions</TD></TR><TR><TD CLASS="l">224</TD><TD>                                        //</TD></TR><TR CLASS="z"><TD CLASS="l">225</TD><TD>                                        List modelQueryActionList = new ArrayList();</TD></TR><TR CLASS="z"><TD CLASS="l">226</TD><TD>                                        modelQuery.getInsertActions(parentElement, parentED, index, ic, vc, modelQueryActionList);</TD></TR><TR CLASS="z"><TD CLASS="l">227</TD><TD>                                        addActionHelper(addBeforeMenu, modelQueryActionList);</TD></TR><TR><TD CLASS="l">228</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">229</TD><TD>                                        modelQueryActionList = new ArrayList();</TD></TR><TR CLASS="z"><TD CLASS="l">230</TD><TD>                                        modelQuery.getInsertActions(parentElement, parentED, index + 1, ic, vc, modelQueryActionList);</TD></TR><TR CLASS="z"><TD CLASS="l">231</TD><TD>                                        addActionHelper(addAfterMenu, modelQueryActionList);</TD></TR><TR><TD CLASS="l">232</TD><TD>                                }</TD></TR><TR><TD CLASS="l">233</TD><TD> </TD></TR><TR><TD CLASS="l">234</TD><TD>                                // add COMMENT and PI before and after</TD></TR><TR CLASS="z"><TD CLASS="l">235</TD><TD>                                contributePIAndCommentActions(addBeforeMenu, parentElement, parentED, index);</TD></TR><TR CLASS="z"><TD CLASS="l">236</TD><TD>                                contributePIAndCommentActions(addAfterMenu, parentElement, parentED, index + 1);</TD></TR><TR><TD CLASS="l">237</TD><TD> </TD></TR><TR><TD CLASS="l">238</TD><TD>                                // add PCDATA, CDATA_SECTION before and after</TD></TR><TR CLASS="z"><TD CLASS="l">239</TD><TD>                                contributeTextNodeActions(addBeforeMenu, parentElement, parentED, index);</TD></TR><TR CLASS="z"><TD CLASS="l">240</TD><TD>                                contributeTextNodeActions(addAfterMenu, parentElement, parentED, index + 1);</TD></TR><TR><TD CLASS="l">241</TD><TD> </TD></TR><TR><TD CLASS="l">242</TD><TD>                                // add NEW ELEMENT before and after</TD></TR><TR CLASS="z"><TD CLASS="l">243</TD><TD>                                contributeUnconstrainedAddElementAction(addBeforeMenu, parentElement, parentED, index);</TD></TR><TR CLASS="z"><TD CLASS="l">244</TD><TD>                                contributeUnconstrainedAddElementAction(addAfterMenu, parentElement, parentED, index + 1);</TD></TR><TR><TD CLASS="l">245</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">246</TD><TD>                        else if (parentNode.getNodeType() == Node.DOCUMENT_NODE) {</TD></TR><TR CLASS="z"><TD CLASS="l">247</TD><TD>                                Document document = (Document) parentNode;</TD></TR><TR CLASS="z"><TD CLASS="l">248</TD><TD>                                CMDocument cmDocument = modelQuery.getCorrespondingCMDocument(parentNode);</TD></TR><TR CLASS="z"><TD CLASS="l">249</TD><TD>                                if (cmDocument != null) {</TD></TR><TR><TD CLASS="l">250</TD><TD>                                        // add possible root element insertions</TD></TR><TR><TD CLASS="l">251</TD><TD>                                        //        </TD></TR><TR CLASS="z"><TD CLASS="l">252</TD><TD>                                        List modelQueryActionList = new ArrayList();</TD></TR><TR CLASS="z"><TD CLASS="l">253</TD><TD>                                        modelQuery.getInsertActions(document, cmDocument, index, ic, vc, modelQueryActionList);</TD></TR><TR CLASS="z"><TD CLASS="l">254</TD><TD>                                        addActionHelper(addAfterMenu, modelQueryActionList);</TD></TR><TR><TD CLASS="l">255</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">256</TD><TD>                                        modelQueryActionList = new ArrayList();</TD></TR><TR CLASS="z"><TD CLASS="l">257</TD><TD>                                        modelQuery.getInsertActions(document, cmDocument, index + 1, ic, vc, modelQueryActionList);</TD></TR><TR CLASS="z"><TD CLASS="l">258</TD><TD>                                        addActionHelper(addAfterMenu, modelQueryActionList);</TD></TR><TR><TD CLASS="l">259</TD><TD>                                }</TD></TR><TR><TD CLASS="l">260</TD><TD> </TD></TR><TR><TD CLASS="l">261</TD><TD>                                // add COMMENT and PI before and after</TD></TR><TR CLASS="z"><TD CLASS="l">262</TD><TD>                                contributePIAndCommentActions(addBeforeMenu, document, index);</TD></TR><TR CLASS="z"><TD CLASS="l">263</TD><TD>                                contributePIAndCommentActions(addAfterMenu, document, index + 1);</TD></TR><TR><TD CLASS="l">264</TD><TD> </TD></TR><TR><TD CLASS="l">265</TD><TD>                                // add ELEMENT before and after</TD></TR><TR CLASS="z"><TD CLASS="l">266</TD><TD>                                contributeUnconstrainedAddElementAction(addBeforeMenu, document, index);</TD></TR><TR CLASS="z"><TD CLASS="l">267</TD><TD>                                contributeUnconstrainedAddElementAction(addAfterMenu, document, index + 1);</TD></TR><TR><TD CLASS="l">268</TD><TD>                        }</TD></TR><TR><TD CLASS="l"><A NAME="8">269</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">270</TD><TD>        }</TD></TR><TR><TD CLASS="l">271</TD><TD> </TD></TR><TR><TD CLASS="l">272</TD><TD>        protected void contributeDeleteActions(IMenuManager menu, List list, int ic, int vc) {</TD></TR><TR CLASS="z"><TD CLASS="l">273</TD><TD>                boolean canRemove = modelQuery.canRemove(list, vc);</TD></TR><TR><TD CLASS="l">274</TD><TD> </TD></TR><TR><TD CLASS="l">275</TD><TD> </TD></TR><TR><TD CLASS="l">276</TD><TD>                // a delete action with an empty list will produce a disabled menu</TD></TR><TR><TD CLASS="l">277</TD><TD>                // item</TD></TR><TR><TD CLASS="l">278</TD><TD>                //</TD></TR><TR CLASS="z"><TD CLASS="l">279</TD><TD>                List resultList = canRemove ? list : Collections.EMPTY_LIST;</TD></TR><TR CLASS="z"><TD CLASS="l">280</TD><TD>                contributeAction(menu, createDeleteAction(resultList));</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="9">281</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">282</TD><TD> </TD></TR><TR><TD CLASS="l">283</TD><TD> </TD></TR><TR><TD CLASS="l">284</TD><TD>        protected void contributeEditActions(IMenuManager menu, Node node) {</TD></TR><TR CLASS="z"><TD CLASS="l">285</TD><TD>                contributeEditGrammarInformationActions(menu, node);</TD></TR><TR><TD CLASS="l">286</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">287</TD><TD>                if (node.getNodeType() == Node.PROCESSING_INSTRUCTION_NODE) {</TD></TR><TR CLASS="z"><TD CLASS="l">288</TD><TD>                        contributeAction(menu, createEditProcessingInstructionAction((ProcessingInstruction) node));</TD></TR><TR><TD CLASS="l">289</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">290</TD><TD>                else if (node.getNodeType() == Node.ATTRIBUTE_NODE) {</TD></TR><TR CLASS="z"><TD CLASS="l">291</TD><TD>                        contributeAction(menu, createEditAttributeAction((Attr) node, null));</TD></TR><TR><TD CLASS="l">292</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="a">293</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">294</TD><TD> </TD></TR><TR><TD CLASS="l">295</TD><TD> </TD></TR><TR><TD CLASS="l">296</TD><TD>        protected void contributeEditGrammarInformationActions(IMenuManager menu, Node node) {</TD></TR><TR CLASS="z"><TD CLASS="l">297</TD><TD>                Document document = node.getNodeType() == Node.DOCUMENT_NODE ? (Document) node : node.getOwnerDocument();</TD></TR><TR><TD CLASS="l">298</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">299</TD><TD>                DocumentType doctype = getDoctype(node);</TD></TR><TR CLASS="z"><TD CLASS="l">300</TD><TD>                if (doctype == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">301</TD><TD>                        contributeAction(menu, createAddDoctypeAction(document, -1));</TD></TR><TR><TD CLASS="l">302</TD><TD>                }</TD></TR><TR><TD CLASS="l">303</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">304</TD><TD>                if (node.getNodeType() == Node.DOCUMENT_TYPE_NODE) {</TD></TR><TR CLASS="z"><TD CLASS="l">305</TD><TD>                        contributeAction(menu, createEditDoctypeAction((DocumentType) node));</TD></TR><TR><TD CLASS="l">306</TD><TD>                }</TD></TR><TR><TD CLASS="l">307</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">308</TD><TD>                if ((doctype == null) &amp;&amp; (getRootElement(document) != null)) {</TD></TR><TR CLASS="z"><TD CLASS="l">309</TD><TD>                        contributeAction(menu, createEditSchemaInfoAction(getRootElement(document)));</TD></TR><TR><TD CLASS="l">310</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">311</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="b">312</A></TD><TD> </TD></TR><TR><TD CLASS="l">313</TD><TD>        protected void contributePIAndCommentActions(IMenuManager menu, Document document, int index) {</TD></TR><TR><TD CLASS="l">314</TD><TD>                // test to make sure that the index isn't before the XML declaration</TD></TR><TR><TD CLASS="l">315</TD><TD>                // </TD></TR><TR CLASS="z"><TD CLASS="l">316</TD><TD>                contributeAction(menu, createAddCommentAction(document, index));</TD></TR><TR CLASS="z"><TD CLASS="l">317</TD><TD>                contributeAction(menu, createAddProcessingInstructionAction(document, index));</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="c">318</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">319</TD><TD> </TD></TR><TR><TD CLASS="l">320</TD><TD> </TD></TR><TR><TD CLASS="l">321</TD><TD>        protected void contributePIAndCommentActions(IMenuManager menu, Element parentElement, CMElementDeclaration parentEd, int index) {</TD></TR><TR CLASS="z"><TD CLASS="l">322</TD><TD>                if ((parentEd == null) || isCommentAllowed(parentEd)) {</TD></TR><TR CLASS="z"><TD CLASS="l">323</TD><TD>                        contributeAction(menu, createAddCommentAction(parentElement, index));</TD></TR><TR CLASS="z"><TD CLASS="l">324</TD><TD>                        contributeAction(menu, createAddProcessingInstructionAction(parentElement, index));</TD></TR><TR><TD CLASS="l">325</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">326</TD><TD>        }</TD></TR><TR><TD CLASS="l">327</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="d">328</A></TD><TD> </TD></TR><TR><TD CLASS="l">329</TD><TD>        protected void contributeReplaceActions(IMenuManager menu, List selectedNodeList, int ic, int vc) {</TD></TR><TR><TD CLASS="l">330</TD><TD>                // 'Replace With...' actions</TD></TR><TR><TD CLASS="l">331</TD><TD>                //                                                                                                                   </TD></TR><TR CLASS="z"><TD CLASS="l">332</TD><TD>                IMenuManager replaceWithMenu = new MyMenuManager(XMLUIMessages._UI_MENU_REPLACE_WITH);</TD></TR><TR CLASS="z"><TD CLASS="l">333</TD><TD>                menu.add(replaceWithMenu);</TD></TR><TR><TD CLASS="l">334</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">335</TD><TD>                if ((modelQuery.getEditMode() == ModelQuery.EDIT_MODE_CONSTRAINED_STRICT) &amp;&amp; (selectedNodeList.size() &gt; 0)) {</TD></TR><TR CLASS="z"><TD CLASS="l">336</TD><TD>                        Node node = (Node) selectedNodeList.get(0);</TD></TR><TR CLASS="z"><TD CLASS="l">337</TD><TD>                        Node parentNode = node.getParentNode();</TD></TR><TR CLASS="z"><TD CLASS="l">338</TD><TD>                        if ((parentNode != null) &amp;&amp; (parentNode.getNodeType() == Node.ELEMENT_NODE)) {</TD></TR><TR CLASS="z"><TD CLASS="l">339</TD><TD>                                Element parentElement = (Element) parentNode;</TD></TR><TR CLASS="z"><TD CLASS="l">340</TD><TD>                                CMElementDeclaration parentED = modelQuery.getCMElementDeclaration(parentElement);</TD></TR><TR CLASS="z"><TD CLASS="l">341</TD><TD>                                if (parentED != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">342</TD><TD>                                        List replaceActionList = new Vector();</TD></TR><TR CLASS="z"><TD CLASS="l">343</TD><TD>                                        modelQuery.getReplaceActions(parentElement, parentED, selectedNodeList, ic, vc, replaceActionList);</TD></TR><TR CLASS="z"><TD CLASS="l">344</TD><TD>                                        addActionHelper(replaceWithMenu, replaceActionList);</TD></TR><TR><TD CLASS="l">345</TD><TD>                                }</TD></TR><TR><TD CLASS="l">346</TD><TD>                        }</TD></TR><TR><TD CLASS="l"><A NAME="e">347</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">348</TD><TD>        }</TD></TR><TR><TD CLASS="l">349</TD><TD> </TD></TR><TR><TD CLASS="l">350</TD><TD>        protected void contributeTextNodeActions(IMenuManager menu, Element parentElement, CMElementDeclaration parentEd, int index) {</TD></TR><TR CLASS="z"><TD CLASS="l">351</TD><TD>                if ((parentEd == null) || isTextAllowed(parentEd)) {</TD></TR><TR CLASS="z"><TD CLASS="l">352</TD><TD>                        CMDataType dataType = parentEd != null ? parentEd.getDataType() : null;</TD></TR><TR CLASS="z"><TD CLASS="l">353</TD><TD>                        contributeAction(menu, createAddPCDataAction(parentElement, dataType, index));</TD></TR><TR CLASS="z"><TD CLASS="l">354</TD><TD>                        contributeAction(menu, createAddCDataSectionAction(parentElement, index));</TD></TR><TR><TD CLASS="l">355</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="f">356</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">357</TD><TD> </TD></TR><TR><TD CLASS="l">358</TD><TD> </TD></TR><TR><TD CLASS="l">359</TD><TD>        protected void contributeUnconstrainedAddElementAction(IMenuManager menu, Document document, int index) {</TD></TR><TR CLASS="z"><TD CLASS="l">360</TD><TD>                if (isUnconstrainedActionAllowed()) {</TD></TR><TR CLASS="z"><TD CLASS="l">361</TD><TD>                        if (getRootElement(document) == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">362</TD><TD>                                int xmlDeclarationIndex = -1;</TD></TR><TR CLASS="z"><TD CLASS="l">363</TD><TD>                                int doctypeIndex = -1;</TD></TR><TR CLASS="z"><TD CLASS="l">364</TD><TD>                                NodeList nodeList = document.getChildNodes();</TD></TR><TR CLASS="z"><TD CLASS="l">365</TD><TD>                                int nodeListLength = nodeList.getLength();</TD></TR><TR CLASS="z"><TD CLASS="l">366</TD><TD>                                for (int i = 0; i &lt; nodeListLength; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">367</TD><TD>                                        Node node = nodeList.item(i);</TD></TR><TR CLASS="z"><TD CLASS="l">368</TD><TD>                                        int nodeType = node.getNodeType();</TD></TR><TR CLASS="z"><TD CLASS="l">369</TD><TD>                                        if (nodeType == Node.DOCUMENT_TYPE_NODE) {</TD></TR><TR CLASS="z"><TD CLASS="l">370</TD><TD>                                                doctypeIndex = i;</TD></TR><TR CLASS="z"><TD CLASS="l">371</TD><TD>                                                break;</TD></TR><TR><TD CLASS="l">372</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">373</TD><TD>                                        else if (nodeType == Node.PROCESSING_INSTRUCTION_NODE) {</TD></TR><TR CLASS="z"><TD CLASS="l">374</TD><TD>                                                ProcessingInstruction pi = (ProcessingInstruction) node;</TD></TR><TR CLASS="z"><TD CLASS="l">375</TD><TD>                                                if (pi.getTarget().equalsIgnoreCase(&#34;xml&#34;) &amp;&amp; (xmlDeclarationIndex == -1)) { //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">376</TD><TD>                                                        xmlDeclarationIndex = i;</TD></TR><TR><TD CLASS="l">377</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">378</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">379</TD><TD>                                }</TD></TR><TR><TD CLASS="l">380</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">381</TD><TD>                                if (((xmlDeclarationIndex == -1) || (index &gt; xmlDeclarationIndex)) &amp;&amp; ((doctypeIndex == -1) || (index &gt; doctypeIndex))) {</TD></TR><TR CLASS="z"><TD CLASS="l">382</TD><TD>                                        contributeAction(menu, createAddElementAction(document, null, index));</TD></TR><TR><TD CLASS="l">383</TD><TD>                                }</TD></TR><TR><TD CLASS="l">384</TD><TD>                        }</TD></TR><TR><TD CLASS="l">385</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="10">386</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">387</TD><TD> </TD></TR><TR><TD CLASS="l">388</TD><TD> </TD></TR><TR><TD CLASS="l">389</TD><TD>        protected void contributeUnconstrainedAddElementAction(IMenuManager menu, Element parentElement, CMElementDeclaration parentEd, int index) {</TD></TR><TR CLASS="z"><TD CLASS="l">390</TD><TD>                if (isUnconstrainedActionAllowed()) {</TD></TR><TR CLASS="z"><TD CLASS="l">391</TD><TD>                        if ((parentEd == null) || (parentEd.getProperty(&#34;isInferred&#34;) == Boolean.TRUE) || ((modelQuery.getEditMode() != ModelQuery.EDIT_MODE_CONSTRAINED_STRICT) &amp;&amp; isElementAllowed(parentEd))) { //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">392</TD><TD>                                contributeAction(menu, createAddElementAction(parentElement, null, index));</TD></TR><TR><TD CLASS="l">393</TD><TD>                        }</TD></TR><TR><TD CLASS="l">394</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="11">395</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">396</TD><TD> </TD></TR><TR><TD CLASS="l">397</TD><TD> </TD></TR><TR><TD CLASS="l">398</TD><TD>        protected void contributeUnconstrainedAttributeActions(IMenuManager menu, Element parentElement, CMElementDeclaration parentEd) {</TD></TR><TR CLASS="z"><TD CLASS="l">399</TD><TD>                if (isUnconstrainedActionAllowed()) {</TD></TR><TR CLASS="z"><TD CLASS="l">400</TD><TD>                        if ((parentEd == null) || (parentEd.getProperty(&#34;isInferred&#34;) == Boolean.TRUE) || (modelQuery.getEditMode() != ModelQuery.EDIT_MODE_CONSTRAINED_STRICT)) { //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">401</TD><TD>                                contributeAction(menu, createAddAttributeAction(parentElement, null));</TD></TR><TR><TD CLASS="l">402</TD><TD>                        }</TD></TR><TR><TD CLASS="l">403</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">404</TD><TD>        }</TD></TR><TR><TD CLASS="l">405</TD><TD> </TD></TR><TR><TD CLASS="l">406</TD><TD>        abstract protected Action createAddAttributeAction(Element parent, CMAttributeDeclaration ad);</TD></TR><TR><TD CLASS="l">407</TD><TD> </TD></TR><TR><TD CLASS="l">408</TD><TD>        abstract protected Action createAddCDataSectionAction(Node parent, int index);</TD></TR><TR><TD CLASS="l">409</TD><TD> </TD></TR><TR><TD CLASS="l">410</TD><TD>        abstract protected Action createAddCommentAction(Node parent, int index);</TD></TR><TR><TD CLASS="l">411</TD><TD> </TD></TR><TR><TD CLASS="l">412</TD><TD>        abstract protected Action createAddDoctypeAction(Document parent, int index);</TD></TR><TR><TD CLASS="l">413</TD><TD> </TD></TR><TR><TD CLASS="l">414</TD><TD>        abstract protected Action createAddElementAction(Node parent, CMElementDeclaration ed, int index);</TD></TR><TR><TD CLASS="l">415</TD><TD> </TD></TR><TR><TD CLASS="l">416</TD><TD>        abstract protected Action createAddPCDataAction(Node parent, CMDataType dataType, int index);</TD></TR><TR><TD CLASS="l">417</TD><TD> </TD></TR><TR><TD CLASS="l">418</TD><TD>        abstract protected Action createAddProcessingInstructionAction(Node parent, int index);</TD></TR><TR><TD CLASS="l">419</TD><TD> </TD></TR><TR><TD CLASS="l">420</TD><TD>        abstract protected Action createAddSchemaInfoAction(Element element);</TD></TR><TR><TD CLASS="l">421</TD><TD> </TD></TR><TR><TD CLASS="l">422</TD><TD>        abstract protected Action createDeleteAction(List selection);</TD></TR><TR><TD CLASS="l">423</TD><TD> </TD></TR><TR><TD CLASS="l">424</TD><TD>        abstract protected Action createEditAttributeAction(Attr attribute, CMAttributeDeclaration ad);</TD></TR><TR><TD CLASS="l">425</TD><TD> </TD></TR><TR><TD CLASS="l">426</TD><TD>        abstract protected Action createEditDoctypeAction(DocumentType doctype);</TD></TR><TR><TD CLASS="l">427</TD><TD> </TD></TR><TR><TD CLASS="l">428</TD><TD>        abstract protected Action createEditProcessingInstructionAction(ProcessingInstruction pi);</TD></TR><TR><TD CLASS="l">429</TD><TD> </TD></TR><TR><TD CLASS="l">430</TD><TD>        abstract protected Action createEditSchemaInfoAction(Element element);</TD></TR><TR><TD CLASS="l">431</TD><TD> </TD></TR><TR><TD CLASS="l">432</TD><TD>        abstract protected Action createRenameAction(Node node);</TD></TR><TR><TD CLASS="l">433</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="13">434</A></TD><TD>        abstract protected Action createReplaceAction(Node parent, CMNode cmnode, int startIndex, int endIndex);</TD></TR><TR><TD CLASS="l">435</TD><TD> </TD></TR><TR><TD CLASS="l">436</TD><TD> </TD></TR><TR><TD CLASS="l">437</TD><TD>        public int getIndex(Node parentNode, Node child) {</TD></TR><TR CLASS="z"><TD CLASS="l">438</TD><TD>                NodeList nodeList = parentNode.getChildNodes();</TD></TR><TR CLASS="z"><TD CLASS="l">439</TD><TD>                int index = -1;</TD></TR><TR CLASS="z"><TD CLASS="l">440</TD><TD>                int size = nodeList.getLength();</TD></TR><TR CLASS="z"><TD CLASS="l">441</TD><TD>                for (int i = 0; i &lt; size; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">442</TD><TD>                        if (nodeList.item(i) == child) {</TD></TR><TR CLASS="z"><TD CLASS="l">443</TD><TD>                                index = i;</TD></TR><TR CLASS="z"><TD CLASS="l">444</TD><TD>                                break;</TD></TR><TR><TD CLASS="l">445</TD><TD>                        }</TD></TR><TR><TD CLASS="l">446</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">447</TD><TD>                return index;</TD></TR><TR><TD CLASS="l"><A NAME="14">448</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">449</TD><TD> </TD></TR><TR><TD CLASS="l">450</TD><TD> </TD></TR><TR><TD CLASS="l">451</TD><TD>        public Node getRefChildNodeAtIndex(Node parent, int index) {</TD></TR><TR CLASS="z"><TD CLASS="l">452</TD><TD>                NodeList nodeList = parent.getChildNodes();</TD></TR><TR CLASS="z"><TD CLASS="l">453</TD><TD>                Node refChild = ((index &gt;= 0) &amp;&amp; (index &lt; nodeList.getLength())) ? nodeList.item(index) : null;</TD></TR><TR CLASS="z"><TD CLASS="l">454</TD><TD>                return refChild;</TD></TR><TR><TD CLASS="l"><A NAME="15">455</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">456</TD><TD> </TD></TR><TR><TD CLASS="l">457</TD><TD> </TD></TR><TR><TD CLASS="l">458</TD><TD>        protected Element getRootElement(Document document) {</TD></TR><TR CLASS="z"><TD CLASS="l">459</TD><TD>                Element result = null;</TD></TR><TR CLASS="z"><TD CLASS="l">460</TD><TD>                NodeList nodeList = document.getChildNodes();</TD></TR><TR CLASS="z"><TD CLASS="l">461</TD><TD>                int nodeListLength = nodeList.getLength();</TD></TR><TR CLASS="z"><TD CLASS="l">462</TD><TD>                for (int i = 0; i &lt; nodeListLength; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">463</TD><TD>                        Node node = nodeList.item(i);</TD></TR><TR CLASS="z"><TD CLASS="l">464</TD><TD>                        if (node.getNodeType() == Node.ELEMENT_NODE) {</TD></TR><TR CLASS="z"><TD CLASS="l">465</TD><TD>                                result = (Element) node;</TD></TR><TR CLASS="z"><TD CLASS="l">466</TD><TD>                                break;</TD></TR><TR><TD CLASS="l">467</TD><TD>                        }</TD></TR><TR><TD CLASS="l">468</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">469</TD><TD>                return result;</TD></TR><TR><TD CLASS="l"><A NAME="16">470</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">471</TD><TD> </TD></TR><TR><TD CLASS="l">472</TD><TD> </TD></TR><TR><TD CLASS="l">473</TD><TD>        protected List getSelectedNodes(List list, boolean includeTextNodes) {</TD></TR><TR CLASS="z"><TD CLASS="l">474</TD><TD>                List result = new ArrayList(0);</TD></TR><TR CLASS="z"><TD CLASS="l">475</TD><TD>                for (Iterator i = list.iterator(); i.hasNext();) {</TD></TR><TR CLASS="z"><TD CLASS="l">476</TD><TD>                        Object object = i.next();</TD></TR><TR CLASS="z"><TD CLASS="l">477</TD><TD>                        if (object instanceof Node) {</TD></TR><TR CLASS="z"><TD CLASS="l">478</TD><TD>                                Node node = (Node) object;</TD></TR><TR CLASS="z"><TD CLASS="l">479</TD><TD>                                if (node.getNodeType() == Node.TEXT_NODE) {</TD></TR><TR CLASS="z"><TD CLASS="l">480</TD><TD>                                        if (includeTextNodes) {</TD></TR><TR CLASS="z"><TD CLASS="l">481</TD><TD>                                                result.add(object);</TD></TR><TR><TD CLASS="l">482</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">483</TD><TD>                                }</TD></TR><TR><TD CLASS="l">484</TD><TD>                                else {</TD></TR><TR CLASS="z"><TD CLASS="l">485</TD><TD>                                        result.add(node);</TD></TR><TR><TD CLASS="l">486</TD><TD>                                }</TD></TR><TR><TD CLASS="l">487</TD><TD>                        }</TD></TR><TR><TD CLASS="l">488</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">489</TD><TD>                return result;</TD></TR><TR><TD CLASS="l"><A NAME="17">490</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">491</TD><TD> </TD></TR><TR><TD CLASS="l">492</TD><TD> </TD></TR><TR><TD CLASS="l">493</TD><TD>        protected boolean isCommentAllowed(CMElementDeclaration parentEd) {</TD></TR><TR CLASS="z"><TD CLASS="l">494</TD><TD>                int contentType = parentEd.getContentType();</TD></TR><TR CLASS="z"><TD CLASS="l">495</TD><TD>                return (contentType == CMElementDeclaration.ELEMENT) || (contentType == CMElementDeclaration.MIXED) || (contentType == CMElementDeclaration.PCDATA) || (contentType == CMElementDeclaration.ANY);</TD></TR><TR><TD CLASS="l"><A NAME="18">496</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">497</TD><TD> </TD></TR><TR><TD CLASS="l">498</TD><TD> </TD></TR><TR><TD CLASS="l">499</TD><TD>        protected boolean isElementAllowed(CMElementDeclaration parentEd) {</TD></TR><TR CLASS="z"><TD CLASS="l">500</TD><TD>                int contentType = parentEd.getContentType();</TD></TR><TR CLASS="z"><TD CLASS="l">501</TD><TD>                return (contentType == CMElementDeclaration.ELEMENT) || (contentType == CMElementDeclaration.MIXED) || (contentType == CMElementDeclaration.ANY);</TD></TR><TR><TD CLASS="l"><A NAME="19">502</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">503</TD><TD> </TD></TR><TR><TD CLASS="l">504</TD><TD> </TD></TR><TR><TD CLASS="l">505</TD><TD>        protected boolean isTextAllowed(CMElementDeclaration parentEd) {</TD></TR><TR CLASS="z"><TD CLASS="l">506</TD><TD>                int contentType = parentEd.getContentType();</TD></TR><TR CLASS="z"><TD CLASS="l">507</TD><TD>                return (contentType == CMElementDeclaration.MIXED) || (contentType == CMElementDeclaration.PCDATA) || (contentType == CMElementDeclaration.ANY);</TD></TR><TR><TD CLASS="l"><A NAME="1a">508</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">509</TD><TD> </TD></TR><TR><TD CLASS="l">510</TD><TD> </TD></TR><TR><TD CLASS="l">511</TD><TD>        protected boolean isUnconstrainedActionAllowed() {</TD></TR><TR CLASS="z"><TD CLASS="l">512</TD><TD>                return true;</TD></TR><TR><TD CLASS="l"><A NAME="1b">513</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">514</TD><TD> </TD></TR><TR><TD CLASS="l">515</TD><TD> </TD></TR><TR><TD CLASS="l">516</TD><TD>        protected boolean isWhitespaceTextNode(Node node) {</TD></TR><TR CLASS="z"><TD CLASS="l">517</TD><TD>                return (node != null) &amp;&amp; (node.getNodeType() == Node.TEXT_NODE) &amp;&amp; (node.getNodeValue().trim().length() == 0);</TD></TR><TR><TD CLASS="l">518</TD><TD>        }</TD></TR><TR><TD CLASS="l">519</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="32.html">org.eclipse.wst.xml.ui.internal.actions</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/188.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/188.html
deleted file mode 100644
index 3eb3837..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/188.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="32.html">org.eclipse.wst.xml.ui.internal.actions</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">CleanupActionXMLDelegate.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>CleanupActionXMLDelegate.java</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/175)</TD><TD CLASS="h">0%   (0/50)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">CleanupActionXMLDelegate</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/130)</TD><TD CLASS="h">0%   (0/38)</TD></TR><TR><TD CLASS="f"><A HREF="#0">CleanupActionXMLDelegate (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">dispose (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#3">getCleanupProcessor (): IStructuredCleanupProcessor</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">init (IAction): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#5">init (IViewPart): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">run (IAction): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/87)</TD><TD CLASS="h">0%   (0/20)</TD></TR><TR><TD CLASS="f"><A HREF="#7">runWithEvent (IAction, Event): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">selectionChanged (IAction, ISelection): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#9">setActiveEditor (IAction, IEditorPart): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#a">CleanupActionXMLDelegate$1</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/45)</TD><TD CLASS="h">0%   (0/13)</TD></TR><TR><TD CLASS="f"><A HREF="#a">CleanupActionXMLDelegate$1 (CleanupActionXMLDelegate, ITextEditor): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#c">run (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/36)</TD><TD CLASS="h">0%   (0/11)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR CLASS="z"><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2005, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     </TD></TR><TR><TD CLASS="l">11</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">12</TD><TD> </TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.ui.internal.actions;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.jface.action.IAction;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.jface.dialogs.Dialog;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.jface.text.ITextSelection;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.jface.viewers.ISelection;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.jface.window.Window;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.swt.custom.BusyIndicator;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.swt.widgets.Event;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.ui.IActionDelegate2;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.ui.IEditorActionDelegate;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.ui.IEditorPart;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.ui.IViewActionDelegate;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.ui.IViewPart;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.ui.texteditor.ITextEditor;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.wst.sse.core.StructuredModelManager;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.wst.sse.core.internal.cleanup.IStructuredCleanupProcessor;</TD></TR><TR><TD CLASS="l">30</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;</TD></TR><TR><TD CLASS="l">31</TD><TD>import org.eclipse.wst.sse.ui.internal.SSEUIMessages;</TD></TR><TR><TD CLASS="l">32</TD><TD>import org.eclipse.wst.xml.core.internal.cleanup.CleanupProcessorXML;</TD></TR><TR><TD CLASS="l">33</TD><TD>import org.eclipse.wst.xml.ui.internal.XMLUIMessages;</TD></TR><TR><TD CLASS="l"><A NAME="0">34</A></TD><TD> </TD></TR><TR><TD CLASS="l">35</TD><TD>/**</TD></TR><TR><TD CLASS="l">36</TD><TD> * Cleanup action delegate for CSS editor</TD></TR><TR><TD CLASS="l">37</TD><TD> */</TD></TR><TR CLASS="z"><TD CLASS="l">38</TD><TD>public class CleanupActionXMLDelegate implements IEditorActionDelegate, IActionDelegate2, IViewActionDelegate {</TD></TR><TR><TD CLASS="l"><A NAME="9">39</A></TD><TD>        private IEditorPart fEditor;</TD></TR><TR><TD CLASS="l">40</TD><TD>        private IStructuredCleanupProcessor fCleanupProcessor;</TD></TR><TR><TD CLASS="l">41</TD><TD> </TD></TR><TR><TD CLASS="l">42</TD><TD>        public void setActiveEditor(IAction action, IEditorPart targetEditor) {</TD></TR><TR CLASS="z"><TD CLASS="l">43</TD><TD>                fEditor = targetEditor;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">44</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">45</TD><TD> </TD></TR><TR><TD CLASS="l">46</TD><TD>        public void dispose() {</TD></TR><TR><TD CLASS="l">47</TD><TD>                // nulling out just in case</TD></TR><TR CLASS="z"><TD CLASS="l">48</TD><TD>                fEditor = null;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">49</A></TD><TD>                fCleanupProcessor = null;</TD></TR><TR CLASS="z"><TD CLASS="l">50</TD><TD>        }</TD></TR><TR><TD CLASS="l">51</TD><TD> </TD></TR><TR><TD CLASS="l">52</TD><TD>        public void init(IAction action) {</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>                if (action != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">54</TD><TD>                        action.setText(XMLUIMessages.CleanupDocument_label);</TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                        action.setToolTipText(XMLUIMessages.CleanupDocument_tooltip);</TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>                        action.setDescription(XMLUIMessages.CleanupDocument_description);</TD></TR><TR><TD CLASS="l"><A NAME="7">57</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>        }</TD></TR><TR><TD CLASS="l">59</TD><TD> </TD></TR><TR><TD CLASS="l">60</TD><TD>        public void runWithEvent(IAction action, Event event) {</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                run(action);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="5">62</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">63</TD><TD> </TD></TR><TR><TD CLASS="l">64</TD><TD>        public void init(IViewPart view) {</TD></TR><TR><TD CLASS="l"><A NAME="6">65</A></TD><TD>                // do nothing</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>        }</TD></TR><TR><TD CLASS="l">67</TD><TD> </TD></TR><TR><TD CLASS="l">68</TD><TD>        public void run(IAction action) {</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                if (fEditor instanceof ITextEditor) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="a">70</A></TD><TD>                        final ITextEditor editor = (ITextEditor) fEditor;</TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>                        Dialog cleanupDialog = new CleanupDialogXML(editor.getSite().getShell());</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="c">72</A></TD><TD>                        if (cleanupDialog.open() == Window.OK) {</TD></TR><TR><TD CLASS="l">73</TD><TD>                                // setup runnable</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>                                Runnable runnable = new Runnable() {</TD></TR><TR><TD CLASS="l">75</TD><TD>                                        public void run() {</TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>                                                IStructuredCleanupProcessor cleanupProcessor = getCleanupProcessor();</TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>                                                if (cleanupProcessor != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">78</TD><TD>                                                        IStructuredModel model = null;</TD></TR><TR><TD CLASS="l">79</TD><TD>                                                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">80</TD><TD>                                                                model = StructuredModelManager.getModelManager().getExistingModelForEdit(editor.getDocumentProvider().getDocument(editor.getEditorInput()));</TD></TR><TR CLASS="z"><TD CLASS="l">81</TD><TD>                                                                if (model != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>                                                                        cleanupProcessor.cleanupModel(model);</TD></TR><TR><TD CLASS="l">83</TD><TD>                                                                }</TD></TR><TR><TD CLASS="l">84</TD><TD>                                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>                                                        finally {</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                                                                if (model != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>                                                                        model.releaseFromEdit();</TD></TR><TR><TD CLASS="l">88</TD><TD>                                                                }</TD></TR><TR CLASS="z"><TD CLASS="l">89</TD><TD>                                                        }</TD></TR><TR><TD CLASS="l">90</TD><TD>                                                }</TD></TR><TR CLASS="z"><TD CLASS="l">91</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">92</TD><TD>                                };</TD></TR><TR><TD CLASS="l">93</TD><TD> </TD></TR><TR><TD CLASS="l">94</TD><TD>                                // TODO: make independent of 'model'.</TD></TR><TR CLASS="z"><TD CLASS="l">95</TD><TD>                                IStructuredModel model = null;</TD></TR><TR><TD CLASS="l">96</TD><TD>                                try {</TD></TR><TR CLASS="z"><TD CLASS="l">97</TD><TD>                                        model = StructuredModelManager.getModelManager().getExistingModelForEdit(editor.getDocumentProvider().getDocument(editor.getEditorInput()));</TD></TR><TR CLASS="z"><TD CLASS="l">98</TD><TD>                                        if (model != null) {</TD></TR><TR><TD CLASS="l">99</TD><TD>                                                // begin recording</TD></TR><TR CLASS="z"><TD CLASS="l">100</TD><TD>                                                ITextSelection selection = (ITextSelection) editor.getSelectionProvider().getSelection();</TD></TR><TR CLASS="z"><TD CLASS="l">101</TD><TD>                                                model.beginRecording(this, SSEUIMessages.Cleanup_Document_UI_, SSEUIMessages.Cleanup_Document_UI_, selection.getOffset(), selection.getLength());</TD></TR><TR><TD CLASS="l">102</TD><TD> </TD></TR><TR><TD CLASS="l">103</TD><TD>                                                // tell the model that we are about to make a big</TD></TR><TR><TD CLASS="l">104</TD><TD>                                                // model change</TD></TR><TR CLASS="z"><TD CLASS="l">105</TD><TD>                                                model.aboutToChangeModel();</TD></TR><TR><TD CLASS="l">106</TD><TD> </TD></TR><TR><TD CLASS="l">107</TD><TD>                                                // run</TD></TR><TR CLASS="z"><TD CLASS="l">108</TD><TD>                                                BusyIndicator.showWhile(fEditor.getEditorSite().getWorkbenchWindow().getShell().getDisplay(), runnable);</TD></TR><TR><TD CLASS="l">109</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">110</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">111</TD><TD>                                finally {</TD></TR><TR CLASS="z"><TD CLASS="l">112</TD><TD>                                        if (model != null) {</TD></TR><TR><TD CLASS="l">113</TD><TD>                                                // tell the model that we are done with the big</TD></TR><TR><TD CLASS="l">114</TD><TD>                                                // model</TD></TR><TR><TD CLASS="l">115</TD><TD>                                                // change</TD></TR><TR CLASS="z"><TD CLASS="l">116</TD><TD>                                                model.changedModel();</TD></TR><TR><TD CLASS="l">117</TD><TD> </TD></TR><TR><TD CLASS="l">118</TD><TD>                                                // end recording</TD></TR><TR CLASS="z"><TD CLASS="l">119</TD><TD>                                                ITextSelection selection = (ITextSelection) editor.getSelectionProvider().getSelection();</TD></TR><TR CLASS="z"><TD CLASS="l">120</TD><TD>                                                model.endRecording(this, selection.getOffset(), selection.getLength());</TD></TR><TR CLASS="z"><TD CLASS="l">121</TD><TD>                                                model.releaseFromEdit();</TD></TR><TR><TD CLASS="l">122</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">123</TD><TD>                                }</TD></TR><TR><TD CLASS="l">124</TD><TD>                        }</TD></TR><TR><TD CLASS="l">125</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="8">126</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">127</TD><TD> </TD></TR><TR><TD CLASS="l">128</TD><TD>        public void selectionChanged(IAction action, ISelection selection) {</TD></TR><TR><TD CLASS="l"><A NAME="3">129</A></TD><TD>                // do nothing</TD></TR><TR CLASS="z"><TD CLASS="l">130</TD><TD>        }</TD></TR><TR><TD CLASS="l">131</TD><TD> </TD></TR><TR><TD CLASS="l">132</TD><TD>        IStructuredCleanupProcessor getCleanupProcessor() {</TD></TR><TR CLASS="z"><TD CLASS="l">133</TD><TD>                if (fCleanupProcessor == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">134</TD><TD>                        fCleanupProcessor = new CleanupProcessorXML();</TD></TR><TR><TD CLASS="l">135</TD><TD>                }</TD></TR><TR><TD CLASS="l">136</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">137</TD><TD>                return fCleanupProcessor;</TD></TR><TR><TD CLASS="l">138</TD><TD>        }</TD></TR><TR><TD CLASS="l">139</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="32.html">org.eclipse.wst.xml.ui.internal.actions</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/189.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/189.html
deleted file mode 100644
index fa32a63..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/189.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="32.html">org.eclipse.wst.xml.ui.internal.actions</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">CleanupDialogXML.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>CleanupDialogXML.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/467)</TD><TD CLASS="h">0%   (0/92)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">CleanupDialogXML</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/467)</TD><TD CLASS="h">0%   (0/92)</TD></TR><TR><TD CLASS="f"><A HREF="#0">CleanupDialogXML (Shell): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">createDialogArea (Composite): Control</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/17)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#3">createDialogAreaInComposite (Composite): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/170)</TD><TD CLASS="h">0%   (0/37)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">enableEOLCodeRadios (boolean): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/38)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR><TD CLASS="f"><A HREF="#5">getModelPreferences (): Preferences</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">initializeOptions (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/75)</TD><TD CLASS="h">0%   (0/14)</TD></TR><TR><TD CLASS="f"><A HREF="#7">okPressed (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">setModel (IStructuredModel): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#9">storeOptions (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/70)</TD><TD CLASS="h">0%   (0/13)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">widgetDefaultSelected (SelectionEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#b">widgetSelected (SelectionEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/71)</TD><TD CLASS="h">0%   (0/4)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.ui.internal.actions;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.core.runtime.Preferences;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.jface.dialogs.Dialog;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.swt.SWT;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.swt.events.SelectionEvent;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.swt.events.SelectionListener;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.swt.layout.GridLayout;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.swt.widgets.Button;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.swt.widgets.Composite;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.swt.widgets.Control;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.swt.widgets.Shell;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.ui.PlatformUI;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.wst.sse.core.internal.encoding.CommonEncodingPreferenceNames;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.wst.xml.core.internal.XMLCorePlugin;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.wst.xml.core.internal.preferences.XMLCorePreferenceNames;</TD></TR><TR><TD CLASS="l">30</TD><TD>import org.eclipse.wst.xml.ui.internal.XMLUIMessages;</TD></TR><TR><TD CLASS="l">31</TD><TD>import org.eclipse.wst.xml.ui.internal.editor.IHelpContextIds;</TD></TR><TR><TD CLASS="l">32</TD><TD> </TD></TR><TR><TD CLASS="l">33</TD><TD>public class CleanupDialogXML extends Dialog implements SelectionListener {</TD></TR><TR><TD CLASS="l">34</TD><TD>        protected Button fCheckBoxCompressEmptyElementTags;</TD></TR><TR><TD CLASS="l">35</TD><TD>        protected Button fCheckBoxConvertEOLCodes;</TD></TR><TR><TD CLASS="l">36</TD><TD>        protected Button fCheckBoxFormatSource;</TD></TR><TR><TD CLASS="l">37</TD><TD>        protected Button fCheckBoxInsertMissingTags;</TD></TR><TR><TD CLASS="l">38</TD><TD>        protected Button fCheckBoxInsertRequiredAttrs;</TD></TR><TR><TD CLASS="l">39</TD><TD>        protected Button fCheckBoxQuoteAttrValues;</TD></TR><TR CLASS="z"><TD CLASS="l">40</TD><TD>        protected IStructuredModel fModel = null;</TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>        protected Preferences fPreferences = null;</TD></TR><TR><TD CLASS="l">42</TD><TD>        protected Button fRadioButtonAttrNameCaseAsis;</TD></TR><TR><TD CLASS="l">43</TD><TD>        protected Button fRadioButtonAttrNameCaseLower;</TD></TR><TR><TD CLASS="l">44</TD><TD>        protected Button fRadioButtonAttrNameCaseUpper;</TD></TR><TR><TD CLASS="l">45</TD><TD>        protected Button fRadioButtonConvertEOLMac;</TD></TR><TR><TD CLASS="l">46</TD><TD>        protected Button fRadioButtonConvertEOLUnix;</TD></TR><TR><TD CLASS="l">47</TD><TD>        protected Button fRadioButtonConvertEOLWindows;</TD></TR><TR><TD CLASS="l">48</TD><TD> </TD></TR><TR><TD CLASS="l">49</TD><TD>        protected Button fRadioButtonTagNameCaseAsis;</TD></TR><TR><TD CLASS="l">50</TD><TD>        protected Button fRadioButtonTagNameCaseLower;</TD></TR><TR><TD CLASS="l"><A NAME="0">51</A></TD><TD>        protected Button fRadioButtonTagNameCaseUpper;</TD></TR><TR><TD CLASS="l">52</TD><TD> </TD></TR><TR><TD CLASS="l">53</TD><TD>        public CleanupDialogXML(Shell shell) {</TD></TR><TR><TD CLASS="l">54</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                super(shell);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">56</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">57</TD><TD> </TD></TR><TR><TD CLASS="l">58</TD><TD>        public Control createDialogArea(Composite parent) {</TD></TR><TR><TD CLASS="l">59</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                getShell().setText(XMLUIMessages.Cleanup_UI_);</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                Composite composite = new Composite(parent, SWT.NULL);</TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>                createDialogAreaInComposite(composite);</TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>                initializeOptions();</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                return composite;</TD></TR><TR><TD CLASS="l"><A NAME="3">65</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">66</TD><TD> </TD></TR><TR><TD CLASS="l">67</TD><TD>        protected void createDialogAreaInComposite(Composite composite) {</TD></TR><TR><TD CLASS="l">68</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                PlatformUI.getWorkbench().getHelpSystem().setHelp(composite, IHelpContextIds.CLEANUP_XML_HELPID); // use</TD></TR><TR><TD CLASS="l">70</TD><TD>                // XML</TD></TR><TR><TD CLASS="l">71</TD><TD>                // specific</TD></TR><TR><TD CLASS="l">72</TD><TD>                // help</TD></TR><TR><TD CLASS="l">73</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>                GridLayout layout = new GridLayout();</TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>                layout.numColumns = 1;</TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>                layout.makeColumnsEqualWidth = true;</TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>                composite.setLayout(layout);</TD></TR><TR><TD CLASS="l">78</TD><TD> </TD></TR><TR><TD CLASS="l">79</TD><TD>                // Compress empty element tags</TD></TR><TR CLASS="z"><TD CLASS="l">80</TD><TD>                fCheckBoxCompressEmptyElementTags = new Button(composite, SWT.CHECK);</TD></TR><TR CLASS="z"><TD CLASS="l">81</TD><TD>                fCheckBoxCompressEmptyElementTags.setText(XMLUIMessages.Compress_empty_element_tags_UI_);</TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>                fCheckBoxCompressEmptyElementTags.addSelectionListener(this);</TD></TR><TR><TD CLASS="l">83</TD><TD> </TD></TR><TR><TD CLASS="l">84</TD><TD>                // Insert missing required attrs</TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>                fCheckBoxInsertRequiredAttrs = new Button(composite, SWT.CHECK);</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                fCheckBoxInsertRequiredAttrs.setText(XMLUIMessages.Insert_required_attributes_UI_);</TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>                fCheckBoxInsertRequiredAttrs.addSelectionListener(this);</TD></TR><TR><TD CLASS="l">88</TD><TD> </TD></TR><TR><TD CLASS="l">89</TD><TD>                // Insert missing begin/end tags</TD></TR><TR CLASS="z"><TD CLASS="l">90</TD><TD>                fCheckBoxInsertMissingTags = new Button(composite, SWT.CHECK);</TD></TR><TR CLASS="z"><TD CLASS="l">91</TD><TD>                fCheckBoxInsertMissingTags.setText(XMLUIMessages.Insert_missing_tags_UI_);</TD></TR><TR CLASS="z"><TD CLASS="l">92</TD><TD>                fCheckBoxInsertMissingTags.addSelectionListener(this);</TD></TR><TR><TD CLASS="l">93</TD><TD> </TD></TR><TR><TD CLASS="l">94</TD><TD>                // Quote attribute values</TD></TR><TR CLASS="z"><TD CLASS="l">95</TD><TD>                fCheckBoxQuoteAttrValues = new Button(composite, SWT.CHECK);</TD></TR><TR CLASS="z"><TD CLASS="l">96</TD><TD>                fCheckBoxQuoteAttrValues.setText(XMLUIMessages.Quote_attribute_values_UI_);</TD></TR><TR CLASS="z"><TD CLASS="l">97</TD><TD>                fCheckBoxQuoteAttrValues.addSelectionListener(this);</TD></TR><TR><TD CLASS="l">98</TD><TD> </TD></TR><TR><TD CLASS="l">99</TD><TD>                // Format source</TD></TR><TR CLASS="z"><TD CLASS="l">100</TD><TD>                fCheckBoxFormatSource = new Button(composite, SWT.CHECK);</TD></TR><TR CLASS="z"><TD CLASS="l">101</TD><TD>                fCheckBoxFormatSource.setText(XMLUIMessages.Format_source_UI_);</TD></TR><TR CLASS="z"><TD CLASS="l">102</TD><TD>                fCheckBoxFormatSource.addSelectionListener(this);</TD></TR><TR><TD CLASS="l">103</TD><TD> </TD></TR><TR><TD CLASS="l">104</TD><TD>                // Convert EOL code</TD></TR><TR CLASS="z"><TD CLASS="l">105</TD><TD>                fCheckBoxConvertEOLCodes = new Button(composite, SWT.CHECK);</TD></TR><TR CLASS="z"><TD CLASS="l">106</TD><TD>                fCheckBoxConvertEOLCodes.setText(XMLUIMessages.Convert_EOL_codes_UI_);</TD></TR><TR CLASS="z"><TD CLASS="l">107</TD><TD>                fCheckBoxConvertEOLCodes.addSelectionListener(this);</TD></TR><TR CLASS="z"><TD CLASS="l">108</TD><TD>                Composite EOLCodes = new Composite(composite, SWT.NULL);</TD></TR><TR CLASS="z"><TD CLASS="l">109</TD><TD>                GridLayout hLayout = new GridLayout();</TD></TR><TR CLASS="z"><TD CLASS="l">110</TD><TD>                hLayout.numColumns = 3;</TD></TR><TR CLASS="z"><TD CLASS="l">111</TD><TD>                EOLCodes.setLayout(hLayout);</TD></TR><TR CLASS="z"><TD CLASS="l">112</TD><TD>                fRadioButtonConvertEOLWindows = new Button(EOLCodes, SWT.RADIO);</TD></TR><TR CLASS="z"><TD CLASS="l">113</TD><TD>                fRadioButtonConvertEOLWindows.setText(XMLUIMessages.EOL_Windows_UI);</TD></TR><TR CLASS="z"><TD CLASS="l">114</TD><TD>                fRadioButtonConvertEOLWindows.addSelectionListener(this);</TD></TR><TR CLASS="z"><TD CLASS="l">115</TD><TD>                fRadioButtonConvertEOLUnix = new Button(EOLCodes, SWT.RADIO);</TD></TR><TR CLASS="z"><TD CLASS="l">116</TD><TD>                fRadioButtonConvertEOLUnix.setText(XMLUIMessages.EOL_Unix_UI);</TD></TR><TR CLASS="z"><TD CLASS="l">117</TD><TD>                fRadioButtonConvertEOLUnix.addSelectionListener(this);</TD></TR><TR CLASS="z"><TD CLASS="l">118</TD><TD>                fRadioButtonConvertEOLMac = new Button(EOLCodes, SWT.RADIO);</TD></TR><TR CLASS="z"><TD CLASS="l">119</TD><TD>                fRadioButtonConvertEOLMac.setText(XMLUIMessages.EOL_Mac_UI);</TD></TR><TR CLASS="z"><TD CLASS="l">120</TD><TD>                fRadioButtonConvertEOLMac.addSelectionListener(this);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">121</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">122</TD><TD> </TD></TR><TR><TD CLASS="l">123</TD><TD>        protected void enableEOLCodeRadios(boolean enable) {</TD></TR><TR><TD CLASS="l">124</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">125</TD><TD>                if ((fRadioButtonConvertEOLWindows != null) &amp;&amp; (fRadioButtonConvertEOLUnix != null) &amp;&amp; (fRadioButtonConvertEOLMac != null)) {</TD></TR><TR CLASS="z"><TD CLASS="l">126</TD><TD>                        fRadioButtonConvertEOLWindows.setEnabled(enable);</TD></TR><TR CLASS="z"><TD CLASS="l">127</TD><TD>                        fRadioButtonConvertEOLUnix.setEnabled(enable);</TD></TR><TR CLASS="z"><TD CLASS="l">128</TD><TD>                        fRadioButtonConvertEOLMac.setEnabled(enable);</TD></TR><TR CLASS="z"><TD CLASS="l">129</TD><TD>                        if (!fRadioButtonConvertEOLWindows.getSelection() &amp;&amp; !fRadioButtonConvertEOLUnix.getSelection() &amp;&amp; !fRadioButtonConvertEOLMac.getSelection()) {</TD></TR><TR CLASS="z"><TD CLASS="l">130</TD><TD>                                fRadioButtonConvertEOLWindows.setSelection(true);</TD></TR><TR><TD CLASS="l">131</TD><TD>                        }</TD></TR><TR><TD CLASS="l"><A NAME="5">132</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">133</TD><TD>        }</TD></TR><TR><TD CLASS="l">134</TD><TD> </TD></TR><TR><TD CLASS="l">135</TD><TD>        protected Preferences getModelPreferences() {</TD></TR><TR CLASS="z"><TD CLASS="l">136</TD><TD>                return XMLCorePlugin.getDefault().getPluginPreferences();</TD></TR><TR><TD CLASS="l"><A NAME="6">137</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">138</TD><TD> </TD></TR><TR><TD CLASS="l">139</TD><TD>        protected void initializeOptions() {</TD></TR><TR><TD CLASS="l">140</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">141</TD><TD>                fCheckBoxCompressEmptyElementTags.setSelection(getModelPreferences().getBoolean(XMLCorePreferenceNames.COMPRESS_EMPTY_ELEMENT_TAGS));</TD></TR><TR CLASS="z"><TD CLASS="l">142</TD><TD>                fCheckBoxInsertRequiredAttrs.setSelection(getModelPreferences().getBoolean(XMLCorePreferenceNames.INSERT_REQUIRED_ATTRS));</TD></TR><TR CLASS="z"><TD CLASS="l">143</TD><TD>                fCheckBoxInsertMissingTags.setSelection(getModelPreferences().getBoolean(XMLCorePreferenceNames.INSERT_MISSING_TAGS));</TD></TR><TR CLASS="z"><TD CLASS="l">144</TD><TD>                fCheckBoxQuoteAttrValues.setSelection(getModelPreferences().getBoolean(XMLCorePreferenceNames.QUOTE_ATTR_VALUES));</TD></TR><TR CLASS="z"><TD CLASS="l">145</TD><TD>                fCheckBoxFormatSource.setSelection(getModelPreferences().getBoolean(XMLCorePreferenceNames.FORMAT_SOURCE));</TD></TR><TR CLASS="z"><TD CLASS="l">146</TD><TD>                fCheckBoxConvertEOLCodes.setSelection(getModelPreferences().getBoolean(XMLCorePreferenceNames.CONVERT_EOL_CODES));</TD></TR><TR CLASS="z"><TD CLASS="l">147</TD><TD>                String EOLCode = getModelPreferences().getString(XMLCorePreferenceNames.CLEANUP_EOL_CODE);</TD></TR><TR CLASS="z"><TD CLASS="l">148</TD><TD>                if (EOLCode.compareTo(CommonEncodingPreferenceNames.LF) == 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">149</TD><TD>                        fRadioButtonConvertEOLUnix.setSelection(true);</TD></TR><TR><TD CLASS="l">150</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">151</TD><TD>                else if (EOLCode.compareTo(CommonEncodingPreferenceNames.CR) == 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">152</TD><TD>                        fRadioButtonConvertEOLMac.setSelection(true);</TD></TR><TR><TD CLASS="l">153</TD><TD>                }</TD></TR><TR><TD CLASS="l">154</TD><TD>                else {</TD></TR><TR CLASS="z"><TD CLASS="l">155</TD><TD>                        fRadioButtonConvertEOLWindows.setSelection(true);</TD></TR><TR><TD CLASS="l">156</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">157</TD><TD>                enableEOLCodeRadios(fCheckBoxConvertEOLCodes.getSelection());</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="7">158</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">159</TD><TD> </TD></TR><TR><TD CLASS="l">160</TD><TD>        protected void okPressed() {</TD></TR><TR><TD CLASS="l">161</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">162</TD><TD>                storeOptions();</TD></TR><TR CLASS="z"><TD CLASS="l">163</TD><TD>                super.okPressed();</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="8">164</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">165</TD><TD> </TD></TR><TR><TD CLASS="l">166</TD><TD>        public void setModel(IStructuredModel model) {</TD></TR><TR><TD CLASS="l">167</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">168</TD><TD>                fModel = model;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="9">169</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">170</TD><TD> </TD></TR><TR><TD CLASS="l">171</TD><TD>        protected void storeOptions() {</TD></TR><TR><TD CLASS="l">172</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">173</TD><TD>                getModelPreferences().setValue(XMLCorePreferenceNames.COMPRESS_EMPTY_ELEMENT_TAGS, fCheckBoxCompressEmptyElementTags.getSelection());</TD></TR><TR CLASS="z"><TD CLASS="l">174</TD><TD>                getModelPreferences().setValue(XMLCorePreferenceNames.INSERT_REQUIRED_ATTRS, fCheckBoxInsertRequiredAttrs.getSelection());</TD></TR><TR CLASS="z"><TD CLASS="l">175</TD><TD>                getModelPreferences().setValue(XMLCorePreferenceNames.INSERT_MISSING_TAGS, fCheckBoxInsertMissingTags.getSelection());</TD></TR><TR CLASS="z"><TD CLASS="l">176</TD><TD>                getModelPreferences().setValue(XMLCorePreferenceNames.QUOTE_ATTR_VALUES, fCheckBoxQuoteAttrValues.getSelection());</TD></TR><TR CLASS="z"><TD CLASS="l">177</TD><TD>                getModelPreferences().setValue(XMLCorePreferenceNames.FORMAT_SOURCE, fCheckBoxFormatSource.getSelection());</TD></TR><TR CLASS="z"><TD CLASS="l">178</TD><TD>                getModelPreferences().setValue(XMLCorePreferenceNames.CONVERT_EOL_CODES, fCheckBoxConvertEOLCodes.getSelection());</TD></TR><TR CLASS="z"><TD CLASS="l">179</TD><TD>                if (fRadioButtonConvertEOLUnix.getSelection()) {</TD></TR><TR CLASS="z"><TD CLASS="l">180</TD><TD>                        getModelPreferences().setValue(XMLCorePreferenceNames.CLEANUP_EOL_CODE, CommonEncodingPreferenceNames.LF);</TD></TR><TR><TD CLASS="l">181</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">182</TD><TD>                else if (fRadioButtonConvertEOLMac.getSelection()) {</TD></TR><TR CLASS="z"><TD CLASS="l">183</TD><TD>                        getModelPreferences().setValue(XMLCorePreferenceNames.CLEANUP_EOL_CODE, CommonEncodingPreferenceNames.CR);</TD></TR><TR><TD CLASS="l">184</TD><TD>                }</TD></TR><TR><TD CLASS="l">185</TD><TD>                else {</TD></TR><TR CLASS="z"><TD CLASS="l">186</TD><TD>                        getModelPreferences().setValue(XMLCorePreferenceNames.CLEANUP_EOL_CODE, CommonEncodingPreferenceNames.CRLF);</TD></TR><TR><TD CLASS="l">187</TD><TD>                }</TD></TR><TR><TD CLASS="l">188</TD><TD>                // explicitly save plugin preferences so values are stored</TD></TR><TR CLASS="z"><TD CLASS="l">189</TD><TD>                XMLCorePlugin.getDefault().savePluginPreferences();</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="a">190</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">191</TD><TD> </TD></TR><TR><TD CLASS="l">192</TD><TD>        public void widgetDefaultSelected(SelectionEvent e) {</TD></TR><TR><TD CLASS="l">193</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">194</TD><TD>                widgetSelected(e);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="b">195</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">196</TD><TD> </TD></TR><TR><TD CLASS="l">197</TD><TD>        public void widgetSelected(SelectionEvent e) {</TD></TR><TR><TD CLASS="l">198</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">199</TD><TD>                getButton(OK).setEnabled(((fRadioButtonTagNameCaseLower != null) &amp;&amp; (fRadioButtonTagNameCaseLower.getSelection() || fRadioButtonTagNameCaseUpper.getSelection())) || ((fRadioButtonAttrNameCaseLower != null) &amp;&amp; (fRadioButtonAttrNameCaseLower.getSelection() || fRadioButtonAttrNameCaseUpper.getSelection())) || fCheckBoxInsertMissingTags.getSelection() || fCheckBoxQuoteAttrValues.getSelection() || fCheckBoxFormatSource.getSelection() || fCheckBoxConvertEOLCodes.getSelection() || ((fRadioButtonConvertEOLUnix != null) &amp;&amp; (fRadioButtonConvertEOLUnix.getSelection() || fRadioButtonConvertEOLMac.getSelection() || fRadioButtonConvertEOLWindows.getSelection())));</TD></TR><TR CLASS="z"><TD CLASS="l">200</TD><TD>                if (e.widget == fCheckBoxConvertEOLCodes) {</TD></TR><TR CLASS="z"><TD CLASS="l">201</TD><TD>                        enableEOLCodeRadios(fCheckBoxConvertEOLCodes.getSelection());</TD></TR><TR><TD CLASS="l">202</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">203</TD><TD>        }</TD></TR><TR><TD CLASS="l">204</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="32.html">org.eclipse.wst.xml.ui.internal.actions</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/18a.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/18a.html
deleted file mode 100644
index 159c6b5..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/18a.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="32.html">org.eclipse.wst.xml.ui.internal.actions</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">EditAttributeAction.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>EditAttributeAction.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/104)</TD><TD CLASS="h">0%   (0/30)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">EditAttributeAction</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/104)</TD><TD CLASS="h">0%   (0/30)</TD></TR><TR><TD CLASS="f"><A HREF="#1">EditAttributeAction (AbstractNodeActionManager, Element, Attr, String, String...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/23)</TD><TD CLASS="h">0%   (0/9)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#0">createImageDescriptor (): ImageDescriptor</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#3">getUndoDescription (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">run (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/70)</TD><TD CLASS="h">0%   (0/17)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.ui.internal.actions;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.jface.resource.ImageDescriptor;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.jface.window.Window;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.swt.widgets.Shell;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.wst.xml.ui.internal.dialogs.EditAttributeDialog;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.wst.xml.ui.internal.editor.XMLEditorPluginImageHelper;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.wst.xml.ui.internal.editor.XMLEditorPluginImages;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.w3c.dom.Attr;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.w3c.dom.Document;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.w3c.dom.Element;</TD></TR><TR><TD CLASS="l">25</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="0">26</A></TD><TD>public class EditAttributeAction extends NodeAction {</TD></TR><TR><TD CLASS="l">27</TD><TD>        protected static ImageDescriptor imageDescriptor;</TD></TR><TR><TD CLASS="l">28</TD><TD> </TD></TR><TR><TD CLASS="l">29</TD><TD>        public static ImageDescriptor createImageDescriptor() {</TD></TR><TR CLASS="z"><TD CLASS="l">30</TD><TD>                if (imageDescriptor == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">31</TD><TD>                        imageDescriptor = XMLEditorPluginImageHelper.getInstance().getImageDescriptor(XMLEditorPluginImages.IMG_OBJ_ATTRIBUTE);</TD></TR><TR><TD CLASS="l">32</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">33</TD><TD>                return imageDescriptor;</TD></TR><TR><TD CLASS="l">34</TD><TD>        }</TD></TR><TR><TD CLASS="l">35</TD><TD> </TD></TR><TR><TD CLASS="l">36</TD><TD>        protected Attr attr;</TD></TR><TR><TD CLASS="l"><A NAME="1">37</A></TD><TD>        protected AbstractNodeActionManager manager;</TD></TR><TR><TD CLASS="l">38</TD><TD>        protected Element ownerElement;</TD></TR><TR><TD CLASS="l">39</TD><TD>        protected String title;</TD></TR><TR><TD CLASS="l">40</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>        public EditAttributeAction(AbstractNodeActionManager manager, Element ownerElement, Attr attr, String actionLabel, String title) {</TD></TR><TR CLASS="z"><TD CLASS="l">42</TD><TD>                this.manager = manager;</TD></TR><TR CLASS="z"><TD CLASS="l">43</TD><TD>                this.ownerElement = ownerElement;</TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>                this.attr = attr;</TD></TR><TR CLASS="z"><TD CLASS="l">45</TD><TD>                this.title = title;</TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>                setText(actionLabel);</TD></TR><TR><TD CLASS="l">47</TD><TD>                // assume if attr is null then this is an 'Add' that requires action</TD></TR><TR><TD CLASS="l">48</TD><TD>                // an icons... otherwise this is an edit</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>                if (attr == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">50</TD><TD>                        setImageDescriptor(createImageDescriptor());</TD></TR><TR><TD CLASS="l"><A NAME="3">51</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>        }</TD></TR><TR><TD CLASS="l">53</TD><TD> </TD></TR><TR><TD CLASS="l">54</TD><TD>        public String getUndoDescription() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">55</A></TD><TD>                return title;</TD></TR><TR><TD CLASS="l">56</TD><TD>        }</TD></TR><TR><TD CLASS="l">57</TD><TD> </TD></TR><TR><TD CLASS="l">58</TD><TD>        public void run() {</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>                manager.beginNodeAction(this);</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                Shell shell = XMLUIPlugin.getInstance().getWorkbench().getActiveWorkbenchWindow().getShell();</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                EditAttributeDialog dialog = new EditAttributeDialog(shell, ownerElement, attr);</TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>                dialog.create();</TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>                dialog.getShell().setText(title);</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                dialog.setBlockOnOpen(true);</TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>                dialog.open();</TD></TR><TR><TD CLASS="l">66</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>                if (dialog.getReturnCode() == Window.OK) {</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>                        if (attr != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                                ownerElement.removeAttributeNode(attr);</TD></TR><TR><TD CLASS="l">70</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>                        Document document = ownerElement.getOwnerDocument();</TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>                        Attr newAttribute = document.createAttribute(dialog.getAttributeName());</TD></TR><TR CLASS="z"><TD CLASS="l">73</TD><TD>                        newAttribute.setValue(dialog.getAttributeValue());</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>                        ownerElement.setAttributeNode(newAttribute);</TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>                        manager.setViewerSelection(newAttribute);</TD></TR><TR><TD CLASS="l">76</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>                manager.endNodeAction(this);</TD></TR><TR CLASS="z"><TD CLASS="l">78</TD><TD>        }</TD></TR><TR><TD CLASS="l">79</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="32.html">org.eclipse.wst.xml.ui.internal.actions</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/18b.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/18b.html
deleted file mode 100644
index 66c3a57..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/18b.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="32.html">org.eclipse.wst.xml.ui.internal.actions</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">EditDoctypeAction.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>EditDoctypeAction.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/315)</TD><TD CLASS="h">0%   (0/83)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">EditDoctypeAction</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/315)</TD><TD CLASS="h">0%   (0/83)</TD></TR><TR><TD CLASS="f"><A HREF="#0">EditDoctypeAction (IStructuredModel, Document, String, String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/18)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">EditDoctypeAction (IStructuredModel, DocumentType, String, String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/18)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR><TD CLASS="f"><A HREF="#3">createDoctype (EditDoctypeDialog, Document): DocumentType</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/26)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">getDisplay (): Display</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#5">getRootElementName (Document): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/34)</TD><TD CLASS="h">0%   (0/9)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">getUndoDescription (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#7">insertDoctype (DocumentType, Document): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/36)</TD><TD CLASS="h">0%   (0/10)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">run (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/47)</TD><TD CLASS="h">0%   (0/12)</TD></TR><TR><TD CLASS="f"><A HREF="#9">showEditDoctypeDialog (Shell): EditDoctypeDialog</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/91)</TD><TD CLASS="h">0%   (0/18)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">updateDoctype (EditDoctypeDialog, DocumentType): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/39)</TD><TD CLASS="h">0%   (0/10)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.ui.internal.actions;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.core.runtime.Path;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.jface.action.Action;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.jface.window.Window;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.swt.widgets.Display;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.swt.widgets.Shell;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.ui.PlatformUI;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.wst.xml.core.internal.document.DocumentImpl;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.wst.xml.core.internal.provisional.document.IDOMDocument;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.wst.xml.core.internal.provisional.document.IDOMDocumentType;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.wst.xml.ui.internal.XMLUIMessages;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.wst.xml.ui.internal.dialogs.EditDoctypeDialog;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.w3c.dom.Document;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.w3c.dom.DocumentType;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.w3c.dom.Element;</TD></TR><TR><TD CLASS="l">30</TD><TD>import org.w3c.dom.Node;</TD></TR><TR><TD CLASS="l">31</TD><TD>import org.w3c.dom.NodeList;</TD></TR><TR><TD CLASS="l">32</TD><TD> </TD></TR><TR><TD CLASS="l">33</TD><TD>/**</TD></TR><TR><TD CLASS="l">34</TD><TD> * EditDoctypeAction</TD></TR><TR><TD CLASS="l">35</TD><TD> */</TD></TR><TR><TD CLASS="l">36</TD><TD>public class EditDoctypeAction extends Action {</TD></TR><TR><TD CLASS="l">37</TD><TD>        protected DocumentType doctype;</TD></TR><TR><TD CLASS="l">38</TD><TD>        protected Document document;</TD></TR><TR><TD CLASS="l">39</TD><TD>        protected IStructuredModel model;</TD></TR><TR><TD CLASS="l">40</TD><TD>        protected String resourceLocation;</TD></TR><TR><TD CLASS="l">41</TD><TD>        protected String title;</TD></TR><TR><TD CLASS="l"><A NAME="0">42</A></TD><TD> </TD></TR><TR><TD CLASS="l">43</TD><TD>        /**</TD></TR><TR><TD CLASS="l">44</TD><TD>         * This constructor is used to create a new doctype.</TD></TR><TR><TD CLASS="l">45</TD><TD>         */</TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>        public EditDoctypeAction(IStructuredModel model, Document document, String resourceLocation, String title) {</TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>                setText(title);</TD></TR><TR CLASS="z"><TD CLASS="l">48</TD><TD>                this.model = model;</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>                this.document = document;</TD></TR><TR CLASS="z"><TD CLASS="l">50</TD><TD>                this.resourceLocation = resourceLocation;</TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>                this.title = title;</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="2">53</A></TD><TD> </TD></TR><TR><TD CLASS="l">54</TD><TD>        /**</TD></TR><TR><TD CLASS="l">55</TD><TD>         * This constructor is used to edit an exisitng doctype.</TD></TR><TR><TD CLASS="l">56</TD><TD>         */</TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>        public EditDoctypeAction(IStructuredModel model, DocumentType doctype, String resourceLocation, String title) {</TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>                setText(title);</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>                this.model = model;</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                this.doctype = doctype;</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                this.resourceLocation = resourceLocation;</TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>                this.title = title;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">63</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">64</TD><TD> </TD></TR><TR><TD CLASS="l">65</TD><TD> </TD></TR><TR><TD CLASS="l">66</TD><TD>        protected DocumentType createDoctype(EditDoctypeDialog dialog, Document document) {</TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>                DocumentType result = null;</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>                if (document instanceof DocumentImpl) {</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                        IDOMDocument documentImpl = (IDOMDocument) document;</TD></TR><TR CLASS="z"><TD CLASS="l">70</TD><TD>                        IDOMDocumentType doctypeImpl = (IDOMDocumentType) documentImpl.createDoctype(dialog.getName());</TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>                        doctypeImpl.setPublicId(dialog.getPublicId());</TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>                        doctypeImpl.setSystemId(dialog.getSystemId());</TD></TR><TR CLASS="z"><TD CLASS="l">73</TD><TD>                        result = doctypeImpl;</TD></TR><TR><TD CLASS="l">74</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>                return result;</TD></TR><TR><TD CLASS="l"><A NAME="4">76</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">77</TD><TD> </TD></TR><TR><TD CLASS="l">78</TD><TD>        private Display getDisplay() {</TD></TR><TR><TD CLASS="l">79</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">80</TD><TD>                return PlatformUI.getWorkbench().getDisplay();</TD></TR><TR><TD CLASS="l"><A NAME="5">81</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">82</TD><TD> </TD></TR><TR><TD CLASS="l">83</TD><TD> </TD></TR><TR><TD CLASS="l">84</TD><TD>        protected String getRootElementName(Document document) {</TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>                Element rootElement = null;</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                NodeList nodeList = document.getChildNodes();</TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>                int nodeListLength = nodeList.getLength();</TD></TR><TR CLASS="z"><TD CLASS="l">88</TD><TD>                for (int i = 0; i &lt; nodeListLength; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">89</TD><TD>                        Node childNode = nodeList.item(i);</TD></TR><TR CLASS="z"><TD CLASS="l">90</TD><TD>                        if (childNode.getNodeType() == Node.ELEMENT_NODE) {</TD></TR><TR CLASS="z"><TD CLASS="l">91</TD><TD>                                rootElement = (Element) childNode;</TD></TR><TR CLASS="z"><TD CLASS="l">92</TD><TD>                                break;</TD></TR><TR><TD CLASS="l">93</TD><TD>                        }</TD></TR><TR><TD CLASS="l">94</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="6">95</A></TD><TD>                return rootElement != null ? rootElement.getNodeName() : XMLUIMessages._UI_LABEL_ROOT_ELEMENT_VALUE;</TD></TR><TR><TD CLASS="l">96</TD><TD>        }</TD></TR><TR><TD CLASS="l">97</TD><TD> </TD></TR><TR><TD CLASS="l">98</TD><TD>        public String getUndoDescription() {</TD></TR><TR CLASS="z"><TD CLASS="l">99</TD><TD>                return title;</TD></TR><TR><TD CLASS="l"><A NAME="7">100</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">101</TD><TD> </TD></TR><TR><TD CLASS="l">102</TD><TD> </TD></TR><TR><TD CLASS="l">103</TD><TD>        protected void insertDoctype(DocumentType doctype, Document document) {</TD></TR><TR CLASS="z"><TD CLASS="l">104</TD><TD>                Node refChild = null;</TD></TR><TR CLASS="z"><TD CLASS="l">105</TD><TD>                NodeList nodeList = document.getChildNodes();</TD></TR><TR CLASS="z"><TD CLASS="l">106</TD><TD>                int nodeListLength = nodeList.getLength();</TD></TR><TR CLASS="z"><TD CLASS="l">107</TD><TD>                for (int i = 0; i &lt; nodeListLength; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">108</TD><TD>                        Node childNode = nodeList.item(i);</TD></TR><TR CLASS="z"><TD CLASS="l">109</TD><TD>                        if ((childNode.getNodeType() == Node.PROCESSING_INSTRUCTION_NODE) || (childNode.getNodeType() == Node.COMMENT_NODE)) {</TD></TR><TR><TD CLASS="l">110</TD><TD>                                // continue on to the nextNode</TD></TR><TR><TD CLASS="l">111</TD><TD>                        }</TD></TR><TR><TD CLASS="l">112</TD><TD>                        else {</TD></TR><TR CLASS="z"><TD CLASS="l">113</TD><TD>                                refChild = childNode;</TD></TR><TR CLASS="z"><TD CLASS="l">114</TD><TD>                                break;</TD></TR><TR><TD CLASS="l">115</TD><TD>                        }</TD></TR><TR><TD CLASS="l">116</TD><TD>                }</TD></TR><TR><TD CLASS="l">117</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">118</TD><TD>                document.insertBefore(doctype, refChild);</TD></TR><TR><TD CLASS="l"><A NAME="8">119</A></TD><TD>                // manager.reformat(doctype, false);</TD></TR><TR CLASS="z"><TD CLASS="l">120</TD><TD>        }</TD></TR><TR><TD CLASS="l">121</TD><TD> </TD></TR><TR><TD CLASS="l">122</TD><TD>        public void run() {</TD></TR><TR CLASS="z"><TD CLASS="l">123</TD><TD>                model.beginRecording(this, getUndoDescription());</TD></TR><TR><TD CLASS="l">124</TD><TD>                // Shell shell =</TD></TR><TR><TD CLASS="l">125</TD><TD>                // XMLCommonUIPlugin.getInstance().getWorkbench().getActiveWorkbenchWindow().getShell();</TD></TR><TR CLASS="z"><TD CLASS="l">126</TD><TD>                Shell shell = getDisplay().getActiveShell();</TD></TR><TR CLASS="z"><TD CLASS="l">127</TD><TD>                EditDoctypeDialog dialog = showEditDoctypeDialog(shell);</TD></TR><TR><TD CLASS="l">128</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">129</TD><TD>                if (dialog.getReturnCode() == Window.OK) {</TD></TR><TR CLASS="z"><TD CLASS="l">130</TD><TD>                        if (doctype != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">131</TD><TD>                                updateDoctype(dialog, doctype);</TD></TR><TR><TD CLASS="l">132</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">133</TD><TD>                        else if (document != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">134</TD><TD>                                DocumentType doctype = createDoctype(dialog, document);</TD></TR><TR CLASS="z"><TD CLASS="l">135</TD><TD>                                if (doctype != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">136</TD><TD>                                        insertDoctype(doctype, document);</TD></TR><TR><TD CLASS="l">137</TD><TD>                                }</TD></TR><TR><TD CLASS="l">138</TD><TD>                        }</TD></TR><TR><TD CLASS="l">139</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="9">140</A></TD><TD>                model.endRecording(this);</TD></TR><TR CLASS="z"><TD CLASS="l">141</TD><TD>        }</TD></TR><TR><TD CLASS="l">142</TD><TD> </TD></TR><TR><TD CLASS="l">143</TD><TD>        protected EditDoctypeDialog showEditDoctypeDialog(Shell shell) {</TD></TR><TR CLASS="z"><TD CLASS="l">144</TD><TD>                EditDoctypeDialog dialog = null;</TD></TR><TR><TD CLASS="l">145</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">146</TD><TD>                if (doctype != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">147</TD><TD>                        dialog = new EditDoctypeDialog(shell, doctype);</TD></TR><TR CLASS="z"><TD CLASS="l">148</TD><TD>                        if (title == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">149</TD><TD>                                title = XMLUIMessages._UI_LABEL_EDIT_DOCTYPE;</TD></TR><TR><TD CLASS="l">150</TD><TD>                        }</TD></TR><TR><TD CLASS="l">151</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">152</TD><TD>                else if (document != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">153</TD><TD>                        String rootElementName = getRootElementName(document);</TD></TR><TR CLASS="z"><TD CLASS="l">154</TD><TD>                        dialog = new EditDoctypeDialog(shell, rootElementName, &#34;&#34;, rootElementName + &#34;.dtd&#34;); //$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR CLASS="z"><TD CLASS="l">155</TD><TD>                        if (title == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">156</TD><TD>                                title = XMLUIMessages._UI_MENU_ADD_DTD_INFORMATION_TITLE;</TD></TR><TR><TD CLASS="l">157</TD><TD>                        }</TD></TR><TR><TD CLASS="l">158</TD><TD>                }</TD></TR><TR><TD CLASS="l">159</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">160</TD><TD>                dialog.setComputeSystemId((doctype == null) || (doctype.getSystemId() == null) || (doctype.getSystemId().trim().length() == 0));</TD></TR><TR><TD CLASS="l">161</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">162</TD><TD>                dialog.setErrorChecking(false);// !model.getType().equals(IStructuredModel.HTML));</TD></TR><TR CLASS="z"><TD CLASS="l">163</TD><TD>                dialog.create();</TD></TR><TR CLASS="z"><TD CLASS="l">164</TD><TD>                dialog.getShell().setText(title);</TD></TR><TR CLASS="z"><TD CLASS="l">165</TD><TD>                dialog.setBlockOnOpen(true);</TD></TR><TR CLASS="z"><TD CLASS="l">166</TD><TD>                dialog.setResourceLocation(new Path(resourceLocation));</TD></TR><TR CLASS="z"><TD CLASS="l">167</TD><TD>                dialog.open();</TD></TR><TR><TD CLASS="l">168</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">169</TD><TD>                return dialog;</TD></TR><TR><TD CLASS="l"><A NAME="a">170</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">171</TD><TD> </TD></TR><TR><TD CLASS="l">172</TD><TD> </TD></TR><TR><TD CLASS="l">173</TD><TD>        protected void updateDoctype(EditDoctypeDialog dialog, DocumentType doctype) {</TD></TR><TR CLASS="z"><TD CLASS="l">174</TD><TD>                if (doctype instanceof IDOMDocumentType) {</TD></TR><TR CLASS="z"><TD CLASS="l">175</TD><TD>                        IDOMDocumentType doctypeImpl = (IDOMDocumentType) doctype;</TD></TR><TR CLASS="z"><TD CLASS="l">176</TD><TD>                        if (doctypeImpl.getName().equals(dialog.getName())) {</TD></TR><TR CLASS="z"><TD CLASS="l">177</TD><TD>                                doctypeImpl.setPublicId(dialog.getPublicId());</TD></TR><TR CLASS="z"><TD CLASS="l">178</TD><TD>                                doctypeImpl.setSystemId(dialog.getSystemId());</TD></TR><TR><TD CLASS="l">179</TD><TD>                        }</TD></TR><TR><TD CLASS="l">180</TD><TD>                        else {</TD></TR><TR><TD CLASS="l">181</TD><TD>                                // we need to create a new one and remove the old</TD></TR><TR><TD CLASS="l">182</TD><TD>                                //                  </TD></TR><TR CLASS="z"><TD CLASS="l">183</TD><TD>                                Document document = doctype.getOwnerDocument();</TD></TR><TR CLASS="z"><TD CLASS="l">184</TD><TD>                                DocumentType newDoctype = createDoctype(dialog, document);</TD></TR><TR CLASS="z"><TD CLASS="l">185</TD><TD>                                document.insertBefore(newDoctype, doctype);</TD></TR><TR CLASS="z"><TD CLASS="l">186</TD><TD>                                document.removeChild(doctype);</TD></TR><TR><TD CLASS="l">187</TD><TD>                                // manager.reformat(newDoctype, false);</TD></TR><TR><TD CLASS="l">188</TD><TD>                        }</TD></TR><TR><TD CLASS="l">189</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">190</TD><TD>        }</TD></TR><TR><TD CLASS="l">191</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="32.html">org.eclipse.wst.xml.ui.internal.actions</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/18c.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/18c.html
deleted file mode 100644
index 339e51c..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/18c.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="32.html">org.eclipse.wst.xml.ui.internal.actions</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">EditElementAction.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>EditElementAction.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/212)</TD><TD CLASS="h">0%   (0/52)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">EditElementAction</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/212)</TD><TD CLASS="h">0%   (0/52)</TD></TR><TR><TD CLASS="f"><A HREF="#1">EditElementAction (AbstractNodeActionManager, Element, String, String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">EditElementAction (AbstractNodeActionManager, Node, int, Element, String, Str...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/29)</TD><TD CLASS="h">0%   (0/11)</TD></TR><TR><TD CLASS="f"><A HREF="#3">EditElementAction (AbstractNodeActionManager, Node, int, String, String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#0">createImageDescriptor (): ImageDescriptor</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#5">getUndoDescription (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">run (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/126)</TD><TD CLASS="h">0%   (0/26)</TD></TR><TR><TD CLASS="f"><A HREF="#7">setStructuredDocumentRegionElementName (IDOMModel, IStructuredDocumentRegion,...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/27)</TD><TD CLASS="h">0%   (0/7)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.ui.internal.actions;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.jface.resource.ImageDescriptor;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.jface.window.Window;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.swt.widgets.Shell;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.wst.xml.core.internal.provisional.document.IDOMElement;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.wst.xml.ui.internal.dialogs.EditElementDialog;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.wst.xml.ui.internal.editor.XMLEditorPluginImageHelper;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.wst.xml.ui.internal.editor.XMLEditorPluginImages;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.w3c.dom.Document;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.w3c.dom.Element;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.w3c.dom.Node;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.w3c.dom.NodeList;</TD></TR><TR><TD CLASS="l">29</TD><TD> </TD></TR><TR><TD CLASS="l">30</TD><TD>public class EditElementAction extends NodeAction {</TD></TR><TR><TD CLASS="l"><A NAME="0">31</A></TD><TD> </TD></TR><TR><TD CLASS="l">32</TD><TD>        protected static ImageDescriptor imageDescriptor;</TD></TR><TR><TD CLASS="l">33</TD><TD> </TD></TR><TR><TD CLASS="l">34</TD><TD>        public static ImageDescriptor createImageDescriptor() {</TD></TR><TR CLASS="z"><TD CLASS="l">35</TD><TD>                if (imageDescriptor == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">36</TD><TD>                        imageDescriptor = XMLEditorPluginImageHelper.getInstance().getImageDescriptor(XMLEditorPluginImages.IMG_OBJ_ELEMENT);</TD></TR><TR><TD CLASS="l">37</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">38</TD><TD>                return imageDescriptor;</TD></TR><TR><TD CLASS="l">39</TD><TD>        }</TD></TR><TR><TD CLASS="l">40</TD><TD> </TD></TR><TR><TD CLASS="l">41</TD><TD>        protected Element element;</TD></TR><TR CLASS="z"><TD CLASS="l">42</TD><TD>        protected int insertionIndex = -1;</TD></TR><TR><TD CLASS="l">43</TD><TD>        protected AbstractNodeActionManager manager;</TD></TR><TR><TD CLASS="l"><A NAME="1">44</A></TD><TD>        protected Node parent;</TD></TR><TR><TD CLASS="l">45</TD><TD>        protected String title;</TD></TR><TR><TD CLASS="l">46</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="2">47</A></TD><TD>        public EditElementAction(AbstractNodeActionManager manager, Element element, String actionLabel, String dialogTitle) {</TD></TR><TR CLASS="z"><TD CLASS="l">48</TD><TD>                this(manager, element.getParentNode(), -1, element, actionLabel, dialogTitle);</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>        }</TD></TR><TR><TD CLASS="l">50</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>        protected EditElementAction(AbstractNodeActionManager manager, Node parent, int index, Element element, String actionLabel, String title) {</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                this.manager = manager;</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>                this.parent = parent;</TD></TR><TR CLASS="z"><TD CLASS="l">54</TD><TD>                this.insertionIndex = index;</TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                this.element = element;</TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>                this.title = title;</TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>                setText(actionLabel);</TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>                if (element == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>                        setImageDescriptor(createImageDescriptor());</TD></TR><TR><TD CLASS="l"><A NAME="3">60</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>        }</TD></TR><TR><TD CLASS="l">62</TD><TD> </TD></TR><TR><TD CLASS="l">63</TD><TD>        public EditElementAction(AbstractNodeActionManager manager, Node parent, int index, String actionLabel, String title) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="5">64</A></TD><TD>                this(manager, parent, index, null, actionLabel, title);</TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>        }</TD></TR><TR><TD CLASS="l">66</TD><TD> </TD></TR><TR><TD CLASS="l">67</TD><TD>        public String getUndoDescription() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="6">68</A></TD><TD>                return title;</TD></TR><TR><TD CLASS="l">69</TD><TD>        }</TD></TR><TR><TD CLASS="l">70</TD><TD> </TD></TR><TR><TD CLASS="l">71</TD><TD>        public void run() {</TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>                manager.beginNodeAction(this);</TD></TR><TR CLASS="z"><TD CLASS="l">73</TD><TD>                Shell shell = XMLUIPlugin.getInstance().getWorkbench().getActiveWorkbenchWindow().getShell();</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>                EditElementDialog dialog = new EditElementDialog(shell, element);</TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>                dialog.create();</TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>                dialog.getShell().setText(title);</TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>                dialog.setBlockOnOpen(true);</TD></TR><TR CLASS="z"><TD CLASS="l">78</TD><TD>                dialog.open();</TD></TR><TR><TD CLASS="l">79</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">80</TD><TD>                if (dialog.getReturnCode() == Window.OK) {</TD></TR><TR CLASS="z"><TD CLASS="l">81</TD><TD>                        Document document = parent.getNodeType() == Node.DOCUMENT_NODE ? (Document) parent : parent.getOwnerDocument();</TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>                        if (element != null) {</TD></TR><TR><TD CLASS="l">83</TD><TD>                                // here we need to do a rename... which seems to be quite hard</TD></TR><TR><TD CLASS="l">84</TD><TD>                                // to do :-(</TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>                                if (element instanceof IDOMElement) {</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                                        IDOMElement elementImpl = (IDOMElement) element;</TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>                                        IDOMModel model = elementImpl.getModel();</TD></TR><TR CLASS="z"><TD CLASS="l">88</TD><TD>                                        String oldName = elementImpl.getNodeName();</TD></TR><TR CLASS="z"><TD CLASS="l">89</TD><TD>                                        String newName = dialog.getElementName();</TD></TR><TR CLASS="z"><TD CLASS="l">90</TD><TD>                                        setStructuredDocumentRegionElementName(model, elementImpl.getStartStructuredDocumentRegion(), oldName, newName);</TD></TR><TR CLASS="z"><TD CLASS="l">91</TD><TD>                                        setStructuredDocumentRegionElementName(model, elementImpl.getEndStructuredDocumentRegion(), oldName, newName);</TD></TR><TR><TD CLASS="l">92</TD><TD>                                }</TD></TR><TR><TD CLASS="l">93</TD><TD>                        }</TD></TR><TR><TD CLASS="l">94</TD><TD>                        else {</TD></TR><TR CLASS="z"><TD CLASS="l">95</TD><TD>                                Element newElement = document.createElement(dialog.getElementName());</TD></TR><TR CLASS="z"><TD CLASS="l">96</TD><TD>                                NodeList nodeList = parent.getChildNodes();</TD></TR><TR CLASS="z"><TD CLASS="l">97</TD><TD>                                int nodeListLength = nodeList.getLength();</TD></TR><TR CLASS="z"><TD CLASS="l">98</TD><TD>                                Node refChild = (insertionIndex &lt; nodeListLength) &amp;&amp; (insertionIndex &gt;= 0) ? nodeList.item(insertionIndex) : null;</TD></TR><TR CLASS="z"><TD CLASS="l">99</TD><TD>                                parent.insertBefore(newElement, refChild);</TD></TR><TR CLASS="z"><TD CLASS="l">100</TD><TD>                                manager.reformat(newElement, false);</TD></TR><TR CLASS="z"><TD CLASS="l">101</TD><TD>                                manager.setViewerSelection(newElement);</TD></TR><TR><TD CLASS="l">102</TD><TD>                        }</TD></TR><TR><TD CLASS="l">103</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="7">104</A></TD><TD>                manager.endNodeAction(this);</TD></TR><TR CLASS="z"><TD CLASS="l">105</TD><TD>        }</TD></TR><TR><TD CLASS="l">106</TD><TD> </TD></TR><TR><TD CLASS="l">107</TD><TD>        protected void setStructuredDocumentRegionElementName(IDOMModel model, IStructuredDocumentRegion flatNode, String oldName, String newName) {</TD></TR><TR CLASS="z"><TD CLASS="l">108</TD><TD>                if (flatNode != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">109</TD><TD>                        String string = flatNode.getText();</TD></TR><TR CLASS="z"><TD CLASS="l">110</TD><TD>                        int index = string.indexOf(oldName);</TD></TR><TR CLASS="z"><TD CLASS="l">111</TD><TD>                        if (index != -1) {</TD></TR><TR CLASS="z"><TD CLASS="l">112</TD><TD>                                index += flatNode.getStart();</TD></TR><TR CLASS="z"><TD CLASS="l">113</TD><TD>                                model.getStructuredDocument().replaceText(this, index, oldName.length(), newName);</TD></TR><TR><TD CLASS="l">114</TD><TD>                        }</TD></TR><TR><TD CLASS="l">115</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">116</TD><TD>        }</TD></TR><TR><TD CLASS="l">117</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="32.html">org.eclipse.wst.xml.ui.internal.actions</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/18d.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/18d.html
deleted file mode 100644
index b954584..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/18d.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="32.html">org.eclipse.wst.xml.ui.internal.actions</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">EditProcessingInstructionAction.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>EditProcessingInstructionAction.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/142)</TD><TD CLASS="h">0%   (0/37)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">EditProcessingInstructionAction</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/142)</TD><TD CLASS="h">0%   (0/37)</TD></TR><TR><TD CLASS="f"><A HREF="#0">EditProcessingInstructionAction (AbstractNodeActionManager, Node, Node, Strin...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/18)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">EditProcessingInstructionAction (AbstractNodeActionManager, ProcessingInstruc...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/19)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR><TD CLASS="f"><A HREF="#3">getUndoDescription (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">run (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/102)</TD><TD CLASS="h">0%   (0/22)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.ui.internal.actions;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.jface.window.Window;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.swt.widgets.Shell;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.wst.xml.ui.internal.XMLUIMessages;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.wst.xml.ui.internal.dialogs.EditProcessingInstructionDialog;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.w3c.dom.Document;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.w3c.dom.Node;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.w3c.dom.ProcessingInstruction;</TD></TR><TR><TD CLASS="l">23</TD><TD> </TD></TR><TR><TD CLASS="l">24</TD><TD>/**</TD></TR><TR><TD CLASS="l">25</TD><TD> * EditProcessingInstructionAction</TD></TR><TR><TD CLASS="l">26</TD><TD> */</TD></TR><TR><TD CLASS="l">27</TD><TD>public class EditProcessingInstructionAction extends NodeAction {</TD></TR><TR><TD CLASS="l">28</TD><TD>        protected Node childRef;</TD></TR><TR><TD CLASS="l">29</TD><TD>        protected AbstractNodeActionManager manager;</TD></TR><TR><TD CLASS="l">30</TD><TD>        protected Node parent;</TD></TR><TR><TD CLASS="l">31</TD><TD>        protected ProcessingInstruction pi;</TD></TR><TR><TD CLASS="l">32</TD><TD>        protected String title;</TD></TR><TR><TD CLASS="l"><A NAME="0">33</A></TD><TD> </TD></TR><TR><TD CLASS="l">34</TD><TD>        /**</TD></TR><TR><TD CLASS="l">35</TD><TD>         * This constructor is used to add a new ProcessingInstruction</TD></TR><TR><TD CLASS="l">36</TD><TD>         */</TD></TR><TR CLASS="z"><TD CLASS="l">37</TD><TD>        public EditProcessingInstructionAction(AbstractNodeActionManager manager, Node parent, Node childRef, String actionLabel, String title) {</TD></TR><TR CLASS="z"><TD CLASS="l">38</TD><TD>                setText(actionLabel);</TD></TR><TR CLASS="z"><TD CLASS="l">39</TD><TD>                this.manager = manager;</TD></TR><TR CLASS="z"><TD CLASS="l">40</TD><TD>                this.parent = parent;</TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>                this.childRef = childRef;</TD></TR><TR CLASS="z"><TD CLASS="l">42</TD><TD>                this.title = title;</TD></TR><TR CLASS="z"><TD CLASS="l">43</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="2">44</A></TD><TD> </TD></TR><TR><TD CLASS="l">45</TD><TD>        /**</TD></TR><TR><TD CLASS="l">46</TD><TD>         * This constructor is used to edit a ProcessingInstruction</TD></TR><TR><TD CLASS="l">47</TD><TD>         */</TD></TR><TR CLASS="z"><TD CLASS="l">48</TD><TD>        public EditProcessingInstructionAction(AbstractNodeActionManager manager, ProcessingInstruction pi, String actionLabel, String title) {</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>                setText(actionLabel);</TD></TR><TR CLASS="z"><TD CLASS="l">50</TD><TD>                this.manager = manager;</TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>                this.pi = pi;</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                this.parent = pi.getParentNode();</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">53</A></TD><TD>                this.title = title;</TD></TR><TR CLASS="z"><TD CLASS="l">54</TD><TD>        }</TD></TR><TR><TD CLASS="l">55</TD><TD> </TD></TR><TR><TD CLASS="l">56</TD><TD>        public String getUndoDescription() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">57</A></TD><TD>                return title;</TD></TR><TR><TD CLASS="l">58</TD><TD>        }</TD></TR><TR><TD CLASS="l">59</TD><TD> </TD></TR><TR><TD CLASS="l">60</TD><TD>        public void run() {</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                manager.beginNodeAction(this);</TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>                Shell shell = XMLUIPlugin.getInstance().getWorkbench().getActiveWorkbenchWindow().getShell();</TD></TR><TR><TD CLASS="l">63</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                EditProcessingInstructionDialog dialog = null;</TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>                if (pi != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                        dialog = new EditProcessingInstructionDialog(shell, pi);</TD></TR><TR><TD CLASS="l">67</TD><TD>                }</TD></TR><TR><TD CLASS="l">68</TD><TD>                else {</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                        dialog = new EditProcessingInstructionDialog(shell, XMLUIMessages._UI_PI_TARGET_VALUE, XMLUIMessages._UI_PI_DATA_VALUE);</TD></TR><TR><TD CLASS="l">70</TD><TD>                }</TD></TR><TR><TD CLASS="l">71</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>                dialog.create();</TD></TR><TR CLASS="z"><TD CLASS="l">73</TD><TD>                dialog.getShell().setText(title);</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>                dialog.setBlockOnOpen(true);</TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>                dialog.open();</TD></TR><TR><TD CLASS="l">76</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>                if (dialog.getReturnCode() == Window.OK) {</TD></TR><TR CLASS="z"><TD CLASS="l">78</TD><TD>                        if (pi != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">79</TD><TD>                                childRef = pi;</TD></TR><TR><TD CLASS="l">80</TD><TD>                        }</TD></TR><TR><TD CLASS="l">81</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>                        Document document = parent.getNodeType() == Node.DOCUMENT_NODE ? (Document) parent : parent.getOwnerDocument();</TD></TR><TR CLASS="z"><TD CLASS="l">83</TD><TD>                        Node newNode = document.createProcessingInstruction(dialog.getTarget(), dialog.getData());</TD></TR><TR CLASS="z"><TD CLASS="l">84</TD><TD>                        parent.insertBefore(newNode, childRef);</TD></TR><TR><TD CLASS="l">85</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                        if (pi != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>                                parent.removeChild(pi);</TD></TR><TR><TD CLASS="l">88</TD><TD>                        }</TD></TR><TR><TD CLASS="l">89</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">90</TD><TD>                        manager.reformat(newNode, false);</TD></TR><TR CLASS="z"><TD CLASS="l">91</TD><TD>                        manager.setViewerSelection(newNode);</TD></TR><TR><TD CLASS="l">92</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">93</TD><TD>                manager.endNodeAction(this);</TD></TR><TR CLASS="z"><TD CLASS="l">94</TD><TD>        }</TD></TR><TR><TD CLASS="l">95</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="32.html">org.eclipse.wst.xml.ui.internal.actions</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/18e.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/18e.html
deleted file mode 100644
index 50bbfcc..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/18e.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="32.html">org.eclipse.wst.xml.ui.internal.actions</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">EditSchemaInfoAction.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>EditSchemaInfoAction.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/283)</TD><TD CLASS="h">0%   (0/70)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">EditSchemaInfoAction</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/283)</TD><TD CLASS="h">0%   (0/70)</TD></TR><TR><TD CLASS="f"><A HREF="#0">EditSchemaInfoAction (AbstractNodeActionManager, Node, String, String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/23)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">createPrefixMapping (List, List): Map</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/83)</TD><TD CLASS="h">0%   (0/16)</TD></TR><TR><TD CLASS="f"><A HREF="#3">getElement (Node): Element</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/21)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">getRootElement (Document): Element</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/29)</TD><TD CLASS="h">0%   (0/9)</TD></TR><TR><TD CLASS="f"><A HREF="#5">getUndoDescription (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">run (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/124)</TD><TD CLASS="h">0%   (0/30)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.ui.internal.actions;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.util.Hashtable;</TD></TR><TR><TD CLASS="l">16</TD><TD>import java.util.Iterator;</TD></TR><TR><TD CLASS="l">17</TD><TD>import java.util.List;</TD></TR><TR><TD CLASS="l">18</TD><TD>import java.util.Map;</TD></TR><TR><TD CLASS="l">19</TD><TD> </TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.core.runtime.Path;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.jface.window.Window;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.swt.widgets.Shell;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.wst.xml.core.internal.contentmodel.util.DOMNamespaceInfoManager;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.wst.xml.core.internal.contentmodel.util.NamespaceInfo;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.wst.xml.ui.internal.XMLUIMessages;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.wst.xml.ui.internal.dialogs.EditSchemaInfoDialog;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.w3c.dom.Document;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.w3c.dom.Element;</TD></TR><TR><TD CLASS="l">30</TD><TD>import org.w3c.dom.Node;</TD></TR><TR><TD CLASS="l">31</TD><TD>import org.w3c.dom.NodeList;</TD></TR><TR><TD CLASS="l">32</TD><TD> </TD></TR><TR><TD CLASS="l">33</TD><TD>/**</TD></TR><TR><TD CLASS="l">34</TD><TD> * EditDoctypeAction</TD></TR><TR><TD CLASS="l">35</TD><TD> */</TD></TR><TR><TD CLASS="l">36</TD><TD>public class EditSchemaInfoAction extends NodeAction {</TD></TR><TR><TD CLASS="l">37</TD><TD>        protected AbstractNodeActionManager manager;</TD></TR><TR CLASS="z"><TD CLASS="l">38</TD><TD>        protected DOMNamespaceInfoManager namespaceInfoManager = new DOMNamespaceInfoManager();</TD></TR><TR><TD CLASS="l"><A NAME="0">39</A></TD><TD>        protected Node node;</TD></TR><TR><TD CLASS="l">40</TD><TD>        protected String resourceLocation;</TD></TR><TR><TD CLASS="l">41</TD><TD>        protected String title;</TD></TR><TR><TD CLASS="l">42</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">43</TD><TD>        public EditSchemaInfoAction(AbstractNodeActionManager manager, Node node, String resourceLocation, String title) {</TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>                this.manager = manager;</TD></TR><TR CLASS="z"><TD CLASS="l">45</TD><TD>                this.node = node;</TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>                setText(title);</TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>                this.resourceLocation = resourceLocation;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">48</A></TD><TD>                this.title = title;</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>        }</TD></TR><TR><TD CLASS="l">50</TD><TD> </TD></TR><TR><TD CLASS="l">51</TD><TD>        protected Map createPrefixMapping(List oldList, List newList) {</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                Map map = new Hashtable();</TD></TR><TR><TD CLASS="l">53</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">54</TD><TD>                Hashtable oldURIToPrefixTable = new Hashtable();</TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                for (Iterator i = oldList.iterator(); i.hasNext();) {</TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>                        NamespaceInfo oldInfo = (NamespaceInfo) i.next();</TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>                        oldURIToPrefixTable.put(oldInfo.uri, oldInfo);</TD></TR><TR><TD CLASS="l">58</TD><TD>                }</TD></TR><TR><TD CLASS="l">59</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                for (Iterator i = newList.iterator(); i.hasNext();) {</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                        NamespaceInfo newInfo = (NamespaceInfo) i.next();</TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>                        NamespaceInfo oldInfo = (NamespaceInfo) oldURIToPrefixTable.get(newInfo.uri != null ? newInfo.uri : &#34;&#34;); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">63</TD><TD> </TD></TR><TR><TD CLASS="l">64</TD><TD> </TD></TR><TR><TD CLASS="l">65</TD><TD>                        // if oldInfo is non null ... there's a matching URI in the old</TD></TR><TR><TD CLASS="l">66</TD><TD>                        // set</TD></TR><TR><TD CLASS="l">67</TD><TD>                        // we can use its prefix to detemine out mapping</TD></TR><TR><TD CLASS="l">68</TD><TD>                        //</TD></TR><TR><TD CLASS="l">69</TD><TD>                        // if oldInfo is null ... we use the 'oldCopy' we stashed away</TD></TR><TR><TD CLASS="l">70</TD><TD>                        // assuming that the user changed the URI and the prefix</TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>                        if (oldInfo == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>                                oldInfo = (NamespaceInfo) newInfo.getProperty(&#34;oldCopy&#34;); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">73</TD><TD>                        }</TD></TR><TR><TD CLASS="l">74</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>                        if (oldInfo != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>                                String newPrefix = newInfo.prefix != null ? newInfo.prefix : &#34;&#34;; //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>                                String oldPrefix = oldInfo.prefix != null ? oldInfo.prefix : &#34;&#34;; //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">78</TD><TD>                                if (!oldPrefix.equals(newPrefix)) {</TD></TR><TR CLASS="z"><TD CLASS="l">79</TD><TD>                                        map.put(oldPrefix, newPrefix);</TD></TR><TR><TD CLASS="l">80</TD><TD>                                }</TD></TR><TR><TD CLASS="l">81</TD><TD>                        }</TD></TR><TR><TD CLASS="l">82</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">83</A></TD><TD>                return map;</TD></TR><TR><TD CLASS="l">84</TD><TD>        }</TD></TR><TR><TD CLASS="l">85</TD><TD> </TD></TR><TR><TD CLASS="l">86</TD><TD>        public Element getElement(Node node) {</TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>                Element result = null;</TD></TR><TR CLASS="z"><TD CLASS="l">88</TD><TD>                if (node.getNodeType() == Node.ELEMENT_NODE) {</TD></TR><TR CLASS="z"><TD CLASS="l">89</TD><TD>                        result = (Element) node;</TD></TR><TR><TD CLASS="l">90</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">91</TD><TD>                else if (node.getNodeType() == Node.DOCUMENT_NODE) {</TD></TR><TR CLASS="z"><TD CLASS="l">92</TD><TD>                        result = getRootElement((Document) node);</TD></TR><TR><TD CLASS="l">93</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">94</TD><TD>                return result;</TD></TR><TR><TD CLASS="l"><A NAME="4">95</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">96</TD><TD> </TD></TR><TR><TD CLASS="l">97</TD><TD> </TD></TR><TR><TD CLASS="l">98</TD><TD>        public Element getRootElement(Document document) {</TD></TR><TR CLASS="z"><TD CLASS="l">99</TD><TD>                Element rootElement = null;</TD></TR><TR CLASS="z"><TD CLASS="l">100</TD><TD>                NodeList nodeList = document.getChildNodes();</TD></TR><TR CLASS="z"><TD CLASS="l">101</TD><TD>                int nodeListLength = nodeList.getLength();</TD></TR><TR CLASS="z"><TD CLASS="l">102</TD><TD>                for (int i = 0; i &lt; nodeListLength; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">103</TD><TD>                        Node childNode = nodeList.item(i);</TD></TR><TR CLASS="z"><TD CLASS="l">104</TD><TD>                        if (childNode.getNodeType() == Node.ELEMENT_NODE) {</TD></TR><TR CLASS="z"><TD CLASS="l">105</TD><TD>                                rootElement = (Element) childNode;</TD></TR><TR CLASS="z"><TD CLASS="l">106</TD><TD>                                break;</TD></TR><TR><TD CLASS="l">107</TD><TD>                        }</TD></TR><TR><TD CLASS="l">108</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="5">109</A></TD><TD>                return rootElement;</TD></TR><TR><TD CLASS="l">110</TD><TD>        }</TD></TR><TR><TD CLASS="l">111</TD><TD> </TD></TR><TR><TD CLASS="l">112</TD><TD>        public String getUndoDescription() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="6">113</A></TD><TD>                return title;</TD></TR><TR><TD CLASS="l">114</TD><TD>        }</TD></TR><TR><TD CLASS="l">115</TD><TD> </TD></TR><TR><TD CLASS="l">116</TD><TD>        public void run() {</TD></TR><TR CLASS="z"><TD CLASS="l">117</TD><TD>                manager.beginNodeAction(this);</TD></TR><TR><TD CLASS="l">118</TD><TD> </TD></TR><TR><TD CLASS="l">119</TD><TD>                // todo... change constructor to take an element</TD></TR><TR CLASS="z"><TD CLASS="l">120</TD><TD>                Element element = getElement(node);</TD></TR><TR CLASS="z"><TD CLASS="l">121</TD><TD>                if (element != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">122</TD><TD>                        Shell shell = XMLUIPlugin.getInstance().getWorkbench().getActiveWorkbenchWindow().getShell();</TD></TR><TR CLASS="z"><TD CLASS="l">123</TD><TD>                        EditSchemaInfoDialog dialog = new EditSchemaInfoDialog(shell, new Path(resourceLocation));</TD></TR><TR><TD CLASS="l">124</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">125</TD><TD>                        List namespaceInfoList = namespaceInfoManager.getNamespaceInfoList(element);</TD></TR><TR CLASS="z"><TD CLASS="l">126</TD><TD>                        List oldNamespaceInfoList = NamespaceInfo.cloneNamespaceInfoList(namespaceInfoList);</TD></TR><TR><TD CLASS="l">127</TD><TD> </TD></TR><TR><TD CLASS="l">128</TD><TD>                        // here we store a copy of the old info for each NamespaceInfo</TD></TR><TR><TD CLASS="l">129</TD><TD>                        // this info will be used in createPrefixMapping() to figure out</TD></TR><TR><TD CLASS="l">130</TD><TD>                        // how to update the document</TD></TR><TR><TD CLASS="l">131</TD><TD>                        // in response to these changes</TD></TR><TR CLASS="z"><TD CLASS="l">132</TD><TD>                        for (Iterator i = namespaceInfoList.iterator(); i.hasNext();) {</TD></TR><TR CLASS="z"><TD CLASS="l">133</TD><TD>                                NamespaceInfo info = (NamespaceInfo) i.next();</TD></TR><TR CLASS="z"><TD CLASS="l">134</TD><TD>                                NamespaceInfo oldCopy = new NamespaceInfo(info);</TD></TR><TR CLASS="z"><TD CLASS="l">135</TD><TD>                                info.setProperty(&#34;oldCopy&#34;, oldCopy); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">136</TD><TD>                        }</TD></TR><TR><TD CLASS="l">137</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">138</TD><TD>                        dialog.setNamespaceInfoList(namespaceInfoList);</TD></TR><TR CLASS="z"><TD CLASS="l">139</TD><TD>                        dialog.create();</TD></TR><TR><TD CLASS="l">140</TD><TD>                        // dialog.getShell().setSize(500, 300);</TD></TR><TR CLASS="z"><TD CLASS="l">141</TD><TD>                        dialog.getShell().setText(XMLUIMessages._UI_MENU_EDIT_SCHEMA_INFORMATION_TITLE);</TD></TR><TR CLASS="z"><TD CLASS="l">142</TD><TD>                        dialog.setBlockOnOpen(true);</TD></TR><TR CLASS="z"><TD CLASS="l">143</TD><TD>                        dialog.open();</TD></TR><TR><TD CLASS="l">144</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">145</TD><TD>                        if (dialog.getReturnCode() == Window.OK) {</TD></TR><TR CLASS="z"><TD CLASS="l">146</TD><TD>                                List newInfoList = dialog.getNamespaceInfoList();</TD></TR><TR CLASS="z"><TD CLASS="l">147</TD><TD>                                namespaceInfoManager.removeNamespaceInfo(element);</TD></TR><TR CLASS="z"><TD CLASS="l">148</TD><TD>                                namespaceInfoManager.addNamespaceInfo(element, newInfoList, true);</TD></TR><TR><TD CLASS="l">149</TD><TD> </TD></TR><TR><TD CLASS="l">150</TD><TD>                                // see if we need to rename any prefixes</TD></TR><TR CLASS="z"><TD CLASS="l">151</TD><TD>                                Map prefixMapping = createPrefixMapping(oldNamespaceInfoList, namespaceInfoList);</TD></TR><TR CLASS="z"><TD CLASS="l">152</TD><TD>                                if (prefixMapping.size() &gt; 0) {</TD></TR><TR><TD CLASS="l">153</TD><TD>                                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">154</TD><TD>                                                manager.getModel().aboutToChangeModel();</TD></TR><TR CLASS="z"><TD CLASS="l">155</TD><TD>                                                ReplacePrefixAction replacePrefixAction = new ReplacePrefixAction(manager, element, prefixMapping);</TD></TR><TR CLASS="z"><TD CLASS="l">156</TD><TD>                                                replacePrefixAction.run();</TD></TR><TR><TD CLASS="l">157</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">158</TD><TD>                                        finally {</TD></TR><TR CLASS="z"><TD CLASS="l">159</TD><TD>                                                manager.getModel().changedModel();</TD></TR><TR CLASS="z"><TD CLASS="l">160</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">161</TD><TD>                                }</TD></TR><TR><TD CLASS="l">162</TD><TD>                        }</TD></TR><TR><TD CLASS="l">163</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">164</TD><TD>                manager.endNodeAction(this);</TD></TR><TR CLASS="z"><TD CLASS="l">165</TD><TD>        }</TD></TR><TR><TD CLASS="l">166</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="32.html">org.eclipse.wst.xml.ui.internal.actions</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/18f.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/18f.html
deleted file mode 100644
index f284e3a..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/18f.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="32.html">org.eclipse.wst.xml.ui.internal.actions</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">GoToMatchingTagAction.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>GoToMatchingTagAction.java</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/490)</TD><TD CLASS="h">0%   (0/129)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">GoToMatchingTagAction</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/478)</TD><TD CLASS="h">0%   (0/126)</TD></TR><TR><TD CLASS="f"><A HREF="#0">GoToMatchingTagAction (ResourceBundle, String, ITextEditor): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/16)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">removeAnnotation (boolean): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/74)</TD><TD CLASS="h">0%   (0/25)</TD></TR><TR><TD CLASS="f"><A HREF="#3">runWithEvent (Event): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/104)</TD><TD CLASS="h">0%   (0/27)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">setEditor (ITextEditor): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/40)</TD><TD CLASS="h">0%   (0/13)</TD></TR><TR><TD CLASS="f"><A HREF="#5">update (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">updateFor (ISelection): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/240)</TD><TD CLASS="h">0%   (0/55)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#7">GoToMatchingTagAction$UpdateListener</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#7">GoToMatchingTagAction$UpdateListener (GoToMatchingTagAction): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#9">selectionChanged (SelectionChangedEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2008 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">11</TD><TD> </TD></TR><TR><TD CLASS="l">12</TD><TD>package org.eclipse.wst.xml.ui.internal.actions;</TD></TR><TR><TD CLASS="l">13</TD><TD> </TD></TR><TR><TD CLASS="l">14</TD><TD>import java.util.ArrayList;</TD></TR><TR><TD CLASS="l">15</TD><TD>import java.util.HashMap;</TD></TR><TR><TD CLASS="l">16</TD><TD>import java.util.Iterator;</TD></TR><TR><TD CLASS="l">17</TD><TD>import java.util.List;</TD></TR><TR><TD CLASS="l">18</TD><TD>import java.util.Map;</TD></TR><TR><TD CLASS="l">19</TD><TD>import java.util.ResourceBundle;</TD></TR><TR><TD CLASS="l">20</TD><TD> </TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.jface.text.ITextSelection;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.jface.text.Position;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.jface.text.TextSelection;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.jface.text.source.Annotation;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.jface.text.source.IAnnotationModel;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.jface.text.source.IAnnotationModelExtension;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.jface.viewers.IPostSelectionProvider;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.jface.viewers.ISelection;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.jface.viewers.ISelectionChangedListener;</TD></TR><TR><TD CLASS="l">30</TD><TD>import org.eclipse.jface.viewers.ISelectionProvider;</TD></TR><TR><TD CLASS="l">31</TD><TD>import org.eclipse.jface.viewers.IStructuredSelection;</TD></TR><TR><TD CLASS="l">32</TD><TD>import org.eclipse.jface.viewers.SelectionChangedEvent;</TD></TR><TR><TD CLASS="l">33</TD><TD>import org.eclipse.swt.widgets.Event;</TD></TR><TR><TD CLASS="l">34</TD><TD>import org.eclipse.ui.texteditor.IDocumentProvider;</TD></TR><TR><TD CLASS="l">35</TD><TD>import org.eclipse.ui.texteditor.ITextEditor;</TD></TR><TR><TD CLASS="l">36</TD><TD>import org.eclipse.ui.texteditor.TextEditorAction;</TD></TR><TR><TD CLASS="l">37</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;</TD></TR><TR><TD CLASS="l">38</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;</TD></TR><TR><TD CLASS="l">39</TD><TD>import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;</TD></TR><TR><TD CLASS="l">40</TD><TD>import org.w3c.dom.Attr;</TD></TR><TR><TD CLASS="l">41</TD><TD>import org.w3c.dom.Node;</TD></TR><TR><TD CLASS="l">42</TD><TD> </TD></TR><TR><TD CLASS="l">43</TD><TD>/**</TD></TR><TR><TD CLASS="l">44</TD><TD> * Moves the cursor to the end tag if it is in a start tag, and vice versa.</TD></TR><TR><TD CLASS="l">45</TD><TD> * Also updates the matching tag annotation in the active editor.</TD></TR><TR><TD CLASS="l">46</TD><TD> * </TD></TR><TR><TD CLASS="l">47</TD><TD> * @author nitin</TD></TR><TR><TD CLASS="l"><A NAME="7">48</A></TD><TD> * </TD></TR><TR><TD CLASS="l">49</TD><TD> */</TD></TR><TR><TD CLASS="l">50</TD><TD>class GoToMatchingTagAction extends TextEditorAction {</TD></TR><TR><TD CLASS="l"><A NAME="9">51</A></TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>        private class UpdateListener implements ISelectionChangedListener {</TD></TR><TR><TD CLASS="l">53</TD><TD>                public void selectionChanged(SelectionChangedEvent event) {</TD></TR><TR CLASS="z"><TD CLASS="l">54</TD><TD>                        updateFor(event.getSelection());</TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                }</TD></TR><TR><TD CLASS="l">56</TD><TD>        }</TD></TR><TR><TD CLASS="l">57</TD><TD> </TD></TR><TR><TD CLASS="l">58</TD><TD>        private static final String ANNOTATION_TYPE = &#34;org.eclipse.wst.xml.ui.matching.tag&#34;; //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>        private ISelectionChangedListener fUpdateListener = null;</TD></TR><TR><TD CLASS="l">60</TD><TD>        static final boolean DEBUG = false;</TD></TR><TR><TD CLASS="l">61</TD><TD> </TD></TR><TR><TD CLASS="l">62</TD><TD>        /**</TD></TR><TR><TD CLASS="l">63</TD><TD>         * @param bundle</TD></TR><TR><TD CLASS="l">64</TD><TD>         * @param prefix</TD></TR><TR><TD CLASS="l"><A NAME="0">65</A></TD><TD>         * @param editor</TD></TR><TR><TD CLASS="l">66</TD><TD>         * @param style</TD></TR><TR><TD CLASS="l">67</TD><TD>         */</TD></TR><TR><TD CLASS="l">68</TD><TD>        GoToMatchingTagAction(ResourceBundle bundle, String prefix, ITextEditor editor) {</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                super(bundle, prefix, editor);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">70</A></TD><TD>                fUpdateListener = new UpdateListener();</TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>        }</TD></TR><TR><TD CLASS="l">72</TD><TD> </TD></TR><TR><TD CLASS="l">73</TD><TD>        void removeAnnotation(boolean allMatching) {</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>                ITextEditor textEditor = getTextEditor();</TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>                if (textEditor == null) {</TD></TR><TR><TD CLASS="l">76</TD><TD>                        if (DEBUG) {</TD></TR><TR><TD CLASS="l">77</TD><TD>                                System.out.println(&#34;no editor&#34;); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">78</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">79</TD><TD>                        return;</TD></TR><TR><TD CLASS="l">80</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">81</TD><TD>                IDocumentProvider documentProvider = textEditor.getDocumentProvider();</TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>                if (documentProvider == null) {</TD></TR><TR><TD CLASS="l">83</TD><TD>                        if (DEBUG) {</TD></TR><TR><TD CLASS="l">84</TD><TD>                                System.out.println(&#34;no document provider&#34;); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">85</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                        return;</TD></TR><TR><TD CLASS="l">87</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">88</TD><TD>                IAnnotationModel annotationModel = documentProvider.getAnnotationModel(textEditor.getEditorInput());</TD></TR><TR CLASS="z"><TD CLASS="l">89</TD><TD>                if (annotationModel == null) {</TD></TR><TR><TD CLASS="l">90</TD><TD>                        if (DEBUG) {</TD></TR><TR><TD CLASS="l">91</TD><TD>                                System.out.println(&#34;no annotation model&#34;); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">92</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">93</TD><TD>                        return;</TD></TR><TR><TD CLASS="l">94</TD><TD>                }</TD></TR><TR><TD CLASS="l">95</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">96</TD><TD>                Iterator annotationIterator = annotationModel.getAnnotationIterator();</TD></TR><TR CLASS="z"><TD CLASS="l">97</TD><TD>                List oldAnnotations = new ArrayList();</TD></TR><TR CLASS="z"><TD CLASS="l">98</TD><TD>                while (annotationIterator.hasNext()) {</TD></TR><TR CLASS="z"><TD CLASS="l">99</TD><TD>                        Annotation annotation = (Annotation) annotationIterator.next();</TD></TR><TR CLASS="z"><TD CLASS="l">100</TD><TD>                        if (ANNOTATION_TYPE.equals(annotation.getType())) {</TD></TR><TR CLASS="z"><TD CLASS="l">101</TD><TD>                                annotation.markDeleted(true);</TD></TR><TR><TD CLASS="l">102</TD><TD>                                /**</TD></TR><TR><TD CLASS="l">103</TD><TD>                                 * Sometimes it is supported, sometime's it is not. Confusing.</TD></TR><TR><TD CLASS="l">104</TD><TD>                                 */</TD></TR><TR><TD CLASS="l">105</TD><TD>                                try {</TD></TR><TR CLASS="z"><TD CLASS="l">106</TD><TD>                                        annotationIterator.remove();</TD></TR><TR><TD CLASS="l">107</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">108</TD><TD>                                catch (UnsupportedOperationException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">109</TD><TD>                                        oldAnnotations.add(annotation);</TD></TR><TR><TD CLASS="l">110</TD><TD>                                }</TD></TR><TR><TD CLASS="l">111</TD><TD>                                if (DEBUG) {</TD></TR><TR><TD CLASS="l">112</TD><TD>                                        System.out.println(&#34;removed &#34; + annotation); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">113</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">114</TD><TD>                                if (!allMatching)</TD></TR><TR CLASS="z"><TD CLASS="l">115</TD><TD>                                        break;</TD></TR><TR><TD CLASS="l">116</TD><TD>                        }</TD></TR><TR><TD CLASS="l">117</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">118</TD><TD>                if (!oldAnnotations.isEmpty()) {</TD></TR><TR CLASS="z"><TD CLASS="l">119</TD><TD>                        int size = oldAnnotations.size();</TD></TR><TR CLASS="z"><TD CLASS="l">120</TD><TD>                        for (int i = 0; i &lt; size; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">121</TD><TD>                                annotationModel.removeAnnotation((Annotation) oldAnnotations.get(i));</TD></TR><TR><TD CLASS="l">122</TD><TD>                        }</TD></TR><TR><TD CLASS="l">123</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">124</TD><TD>        }</TD></TR><TR><TD CLASS="l">125</TD><TD> </TD></TR><TR><TD CLASS="l">126</TD><TD>        /*</TD></TR><TR><TD CLASS="l">127</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="3">128</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">129</TD><TD>         * @see org.eclipse.jface.action.Action#runWithEvent(org.eclipse.swt.widgets.Event)</TD></TR><TR><TD CLASS="l">130</TD><TD>         */</TD></TR><TR><TD CLASS="l">131</TD><TD>        public void runWithEvent(Event event) {</TD></TR><TR CLASS="z"><TD CLASS="l">132</TD><TD>                super.runWithEvent(event);</TD></TR><TR CLASS="z"><TD CLASS="l">133</TD><TD>                if (getTextEditor() == null)</TD></TR><TR CLASS="z"><TD CLASS="l">134</TD><TD>                        return;</TD></TR><TR><TD CLASS="l">135</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">136</TD><TD>                ISelection selection = getTextEditor().getSelectionProvider().getSelection();</TD></TR><TR CLASS="z"><TD CLASS="l">137</TD><TD>                if (!selection.isEmpty() &amp;&amp; selection instanceof IStructuredSelection &amp;&amp; selection instanceof ITextSelection) {</TD></TR><TR CLASS="z"><TD CLASS="l">138</TD><TD>                        Object o = ((IStructuredSelection) selection).getFirstElement();</TD></TR><TR CLASS="z"><TD CLASS="l">139</TD><TD>                        if (o instanceof IDOMNode) {</TD></TR><TR CLASS="z"><TD CLASS="l">140</TD><TD>                                int offset = ((ITextSelection) selection).getOffset();</TD></TR><TR CLASS="z"><TD CLASS="l">141</TD><TD>                                IStructuredDocumentRegion matchRegion = null;</TD></TR><TR CLASS="z"><TD CLASS="l">142</TD><TD>                                if (((Node) o).getNodeType() == Node.ATTRIBUTE_NODE) {</TD></TR><TR CLASS="z"><TD CLASS="l">143</TD><TD>                                        o = ((Attr) o).getOwnerElement();</TD></TR><TR><TD CLASS="l">144</TD><TD>                                }</TD></TR><TR><TD CLASS="l">145</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">146</TD><TD>                                int targetOffset = -1;</TD></TR><TR CLASS="z"><TD CLASS="l">147</TD><TD>                                if (o instanceof IDOMNode) {</TD></TR><TR CLASS="z"><TD CLASS="l">148</TD><TD>                                        IDOMNode node = (IDOMNode) o;</TD></TR><TR CLASS="z"><TD CLASS="l">149</TD><TD>                                        IStructuredDocumentRegion startStructuredDocumentRegion = node.getStartStructuredDocumentRegion();</TD></TR><TR CLASS="z"><TD CLASS="l">150</TD><TD>                                        if (startStructuredDocumentRegion != null &amp;&amp; startStructuredDocumentRegion.containsOffset(offset)) {</TD></TR><TR CLASS="z"><TD CLASS="l">151</TD><TD>                                                matchRegion = ((IDOMNode) o).getEndStructuredDocumentRegion();</TD></TR><TR CLASS="z"><TD CLASS="l">152</TD><TD>                                                if (matchRegion != null)</TD></TR><TR CLASS="z"><TD CLASS="l">153</TD><TD>                                                        targetOffset = matchRegion.getStartOffset() + 2;</TD></TR><TR><TD CLASS="l">154</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">155</TD><TD>                                        else {</TD></TR><TR CLASS="z"><TD CLASS="l">156</TD><TD>                                                IStructuredDocumentRegion endStructuredDocumentRegion = node.getEndStructuredDocumentRegion();</TD></TR><TR CLASS="z"><TD CLASS="l">157</TD><TD>                                                if (endStructuredDocumentRegion != null &amp;&amp; endStructuredDocumentRegion.containsOffset(offset)) {</TD></TR><TR CLASS="z"><TD CLASS="l">158</TD><TD>                                                        matchRegion = ((IDOMNode) o).getStartStructuredDocumentRegion();</TD></TR><TR CLASS="z"><TD CLASS="l">159</TD><TD>                                                        if (matchRegion != null)</TD></TR><TR CLASS="z"><TD CLASS="l">160</TD><TD>                                                                targetOffset = matchRegion.getStartOffset() + 1;</TD></TR><TR><TD CLASS="l">161</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">162</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">163</TD><TD>                                }</TD></TR><TR><TD CLASS="l">164</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">165</TD><TD>                                if (targetOffset &gt;= 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">166</TD><TD>                                        getTextEditor().getSelectionProvider().setSelection(new TextSelection(targetOffset, 0));</TD></TR><TR><TD CLASS="l">167</TD><TD>                                }</TD></TR><TR><TD CLASS="l">168</TD><TD>                        }</TD></TR><TR><TD CLASS="l">169</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">170</TD><TD>        }</TD></TR><TR><TD CLASS="l">171</TD><TD> </TD></TR><TR><TD CLASS="l">172</TD><TD>        /*</TD></TR><TR><TD CLASS="l">173</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="4">174</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">175</TD><TD>         * @see org.eclipse.ui.texteditor.TextEditorAction#setEditor(org.eclipse.ui.texteditor.ITextEditor)</TD></TR><TR><TD CLASS="l">176</TD><TD>         */</TD></TR><TR><TD CLASS="l">177</TD><TD>        public void setEditor(ITextEditor editor) {</TD></TR><TR CLASS="z"><TD CLASS="l">178</TD><TD>                ITextEditor textEditor = getTextEditor();</TD></TR><TR CLASS="z"><TD CLASS="l">179</TD><TD>                if (textEditor != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">180</TD><TD>                        removeAnnotation(true);</TD></TR><TR><TD CLASS="l">181</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">182</TD><TD>                        ISelectionProvider selectionProvider = textEditor.getSelectionProvider();</TD></TR><TR CLASS="z"><TD CLASS="l">183</TD><TD>                        if (selectionProvider instanceof IPostSelectionProvider) {</TD></TR><TR CLASS="z"><TD CLASS="l">184</TD><TD>                                ((IPostSelectionProvider) selectionProvider).removePostSelectionChangedListener(fUpdateListener);</TD></TR><TR><TD CLASS="l">185</TD><TD>                        }</TD></TR><TR><TD CLASS="l">186</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">187</TD><TD>                super.setEditor(editor);</TD></TR><TR CLASS="z"><TD CLASS="l">188</TD><TD>                if (editor != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">189</TD><TD>                        ISelectionProvider selectionProvider = editor.getSelectionProvider();</TD></TR><TR CLASS="z"><TD CLASS="l">190</TD><TD>                        if (selectionProvider instanceof IPostSelectionProvider) {</TD></TR><TR CLASS="z"><TD CLASS="l">191</TD><TD>                                ((IPostSelectionProvider) selectionProvider).addPostSelectionChangedListener(fUpdateListener);</TD></TR><TR><TD CLASS="l">192</TD><TD>                        }</TD></TR><TR><TD CLASS="l">193</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">194</TD><TD>                        updateFor(selectionProvider.getSelection());</TD></TR><TR><TD CLASS="l"><A NAME="5">195</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">196</TD><TD>        }</TD></TR><TR><TD CLASS="l">197</TD><TD> </TD></TR><TR><TD CLASS="l">198</TD><TD>        public void update() {</TD></TR><TR CLASS="z"><TD CLASS="l">199</TD><TD>                setEnabled(true);</TD></TR><TR><TD CLASS="l"><A NAME="6">200</A></TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">201</TD><TD>        }</TD></TR><TR><TD CLASS="l">202</TD><TD> </TD></TR><TR><TD CLASS="l">203</TD><TD>        void updateFor(ISelection selection) {</TD></TR><TR CLASS="z"><TD CLASS="l">204</TD><TD>                ITextEditor textEditor = getTextEditor();</TD></TR><TR CLASS="z"><TD CLASS="l">205</TD><TD>                if (textEditor == null) {</TD></TR><TR><TD CLASS="l">206</TD><TD>                        if (DEBUG) {</TD></TR><TR><TD CLASS="l">207</TD><TD>                                System.out.println(&#34;no editor&#34;); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">208</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">209</TD><TD>                        return;</TD></TR><TR><TD CLASS="l">210</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">211</TD><TD>                IDocumentProvider documentProvider = textEditor.getDocumentProvider();</TD></TR><TR CLASS="z"><TD CLASS="l">212</TD><TD>                if (documentProvider == null) {</TD></TR><TR><TD CLASS="l">213</TD><TD>                        if (DEBUG) {</TD></TR><TR><TD CLASS="l">214</TD><TD>                                System.out.println(&#34;no document provider&#34;); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">215</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">216</TD><TD>                        return;</TD></TR><TR><TD CLASS="l">217</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">218</TD><TD>                IAnnotationModel annotationModel = documentProvider.getAnnotationModel(textEditor.getEditorInput());</TD></TR><TR CLASS="z"><TD CLASS="l">219</TD><TD>                if (annotationModel == null || !(annotationModel instanceof IAnnotationModelExtension)) {</TD></TR><TR><TD CLASS="l">220</TD><TD>                        if (DEBUG) {</TD></TR><TR><TD CLASS="l">221</TD><TD>                                System.out.println(&#34;no annotation model&#34;); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">222</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">223</TD><TD>                        return;</TD></TR><TR><TD CLASS="l">224</TD><TD>                }</TD></TR><TR><TD CLASS="l">225</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">226</TD><TD>                List oldAnnotations = new ArrayList(2);</TD></TR><TR CLASS="z"><TD CLASS="l">227</TD><TD>                Iterator annotationIterator = annotationModel.getAnnotationIterator();</TD></TR><TR CLASS="z"><TD CLASS="l">228</TD><TD>                while (annotationIterator.hasNext()) {</TD></TR><TR CLASS="z"><TD CLASS="l">229</TD><TD>                        Annotation annotation = (Annotation) annotationIterator.next();</TD></TR><TR CLASS="z"><TD CLASS="l">230</TD><TD>                        if (ANNOTATION_TYPE.equals(annotation.getType())) {</TD></TR><TR CLASS="z"><TD CLASS="l">231</TD><TD>                                annotation.markDeleted(true);</TD></TR><TR><TD CLASS="l">232</TD><TD>                                if (DEBUG) {</TD></TR><TR><TD CLASS="l">233</TD><TD>                                        System.out.println(&#34;removing &#34; + annotation); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">234</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">235</TD><TD>                                oldAnnotations.add(annotation);</TD></TR><TR><TD CLASS="l">236</TD><TD>                        }</TD></TR><TR><TD CLASS="l">237</TD><TD>                }</TD></TR><TR><TD CLASS="l">238</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">239</TD><TD>                Map newAnnotations = new HashMap();</TD></TR><TR CLASS="z"><TD CLASS="l">240</TD><TD>                if (!selection.isEmpty() &amp;&amp; selection instanceof IStructuredSelection &amp;&amp; selection instanceof ITextSelection) {</TD></TR><TR CLASS="z"><TD CLASS="l">241</TD><TD>                        Object o = ((IStructuredSelection) selection).getFirstElement();</TD></TR><TR CLASS="z"><TD CLASS="l">242</TD><TD>                        if (o instanceof IDOMNode) {</TD></TR><TR CLASS="z"><TD CLASS="l">243</TD><TD>                                int offset = ((ITextSelection) selection).getOffset();</TD></TR><TR CLASS="z"><TD CLASS="l">244</TD><TD>                                IStructuredDocumentRegion matchRegion = null;</TD></TR><TR CLASS="z"><TD CLASS="l">245</TD><TD>                                if (((Node) o).getNodeType() == Node.ATTRIBUTE_NODE) {</TD></TR><TR CLASS="z"><TD CLASS="l">246</TD><TD>                                        o = ((Attr) o).getOwnerElement();</TD></TR><TR><TD CLASS="l">247</TD><TD>                                }</TD></TR><TR><TD CLASS="l">248</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">249</TD><TD>                                Position pStart = null;</TD></TR><TR CLASS="z"><TD CLASS="l">250</TD><TD>                                Position pEnd = null;</TD></TR><TR CLASS="z"><TD CLASS="l">251</TD><TD>                                if (o instanceof IDOMNode) {</TD></TR><TR CLASS="z"><TD CLASS="l">252</TD><TD>                                        IDOMNode node = (IDOMNode) o;</TD></TR><TR CLASS="z"><TD CLASS="l">253</TD><TD>                                        IStructuredDocumentRegion startStructuredDocumentRegion = node.getStartStructuredDocumentRegion();</TD></TR><TR CLASS="z"><TD CLASS="l">254</TD><TD>                                        if (startStructuredDocumentRegion != null &amp;&amp; startStructuredDocumentRegion.containsOffset(offset)) {</TD></TR><TR CLASS="z"><TD CLASS="l">255</TD><TD>                                                if (startStructuredDocumentRegion.getNumberOfRegions() &gt; 1) {</TD></TR><TR CLASS="z"><TD CLASS="l">256</TD><TD>                                                        ITextRegion nameRegion = startStructuredDocumentRegion.getRegions().get(1);</TD></TR><TR CLASS="z"><TD CLASS="l">257</TD><TD>                                                        pStart = new Position(startStructuredDocumentRegion.getStartOffset(nameRegion), nameRegion.getTextLength());</TD></TR><TR><TD CLASS="l">258</TD><TD>                                                }</TD></TR><TR CLASS="z"><TD CLASS="l">259</TD><TD>                                                matchRegion = ((IDOMNode) o).getEndStructuredDocumentRegion();</TD></TR><TR CLASS="z"><TD CLASS="l">260</TD><TD>                                                if (matchRegion != null &amp;&amp; matchRegion.getNumberOfRegions() &gt; 1) {</TD></TR><TR CLASS="z"><TD CLASS="l">261</TD><TD>                                                        ITextRegion nameRegion = matchRegion.getRegions().get(1);</TD></TR><TR CLASS="z"><TD CLASS="l">262</TD><TD>                                                        pEnd = new Position(matchRegion.getStartOffset(nameRegion), nameRegion.getTextLength());</TD></TR><TR><TD CLASS="l">263</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">264</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">265</TD><TD>                                        else {</TD></TR><TR CLASS="z"><TD CLASS="l">266</TD><TD>                                                IStructuredDocumentRegion endStructuredDocumentRegion = node.getEndStructuredDocumentRegion();</TD></TR><TR CLASS="z"><TD CLASS="l">267</TD><TD>                                                if (endStructuredDocumentRegion != null &amp;&amp; endStructuredDocumentRegion.containsOffset(offset)) {</TD></TR><TR CLASS="z"><TD CLASS="l">268</TD><TD>                                                        if (endStructuredDocumentRegion.getNumberOfRegions() &gt; 1) {</TD></TR><TR CLASS="z"><TD CLASS="l">269</TD><TD>                                                                ITextRegion nameRegion = endStructuredDocumentRegion.getRegions().get(1);</TD></TR><TR CLASS="z"><TD CLASS="l">270</TD><TD>                                                                pEnd = new Position(endStructuredDocumentRegion.getStartOffset(nameRegion), nameRegion.getTextLength());</TD></TR><TR><TD CLASS="l">271</TD><TD>                                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">272</TD><TD>                                                        matchRegion = ((IDOMNode) o).getStartStructuredDocumentRegion();</TD></TR><TR CLASS="z"><TD CLASS="l">273</TD><TD>                                                        if (matchRegion != null &amp;&amp; matchRegion.getNumberOfRegions() &gt; 1) {</TD></TR><TR CLASS="z"><TD CLASS="l">274</TD><TD>                                                                ITextRegion nameRegion = matchRegion.getRegions().get(1);</TD></TR><TR CLASS="z"><TD CLASS="l">275</TD><TD>                                                                pStart = new Position(matchRegion.getStartOffset(nameRegion), nameRegion.getTextLength());</TD></TR><TR><TD CLASS="l">276</TD><TD>                                                        }</TD></TR><TR><TD CLASS="l">277</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">278</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">279</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">280</TD><TD>                                if (pStart != null &amp;&amp; pEnd != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">281</TD><TD>                                        Annotation annotation = new Annotation(false);</TD></TR><TR CLASS="z"><TD CLASS="l">282</TD><TD>                                        annotation.setType(ANNOTATION_TYPE);</TD></TR><TR CLASS="z"><TD CLASS="l">283</TD><TD>                                        newAnnotations.put(annotation, pStart);</TD></TR><TR><TD CLASS="l">284</TD><TD>                                        if (DEBUG) {</TD></TR><TR><TD CLASS="l">285</TD><TD>                                                System.out.println(&#34;adding &#34; + annotation); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">286</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">287</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">288</TD><TD>                                        annotation = new Annotation(false);</TD></TR><TR CLASS="z"><TD CLASS="l">289</TD><TD>                                        annotation.setType(ANNOTATION_TYPE);</TD></TR><TR CLASS="z"><TD CLASS="l">290</TD><TD>                                        newAnnotations.put(annotation, pEnd);</TD></TR><TR><TD CLASS="l">291</TD><TD>                                        if (DEBUG) {</TD></TR><TR><TD CLASS="l">292</TD><TD>                                                System.out.println(&#34;adding &#34; + annotation); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">293</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">294</TD><TD>                                }</TD></TR><TR><TD CLASS="l">295</TD><TD>                        }</TD></TR><TR><TD CLASS="l">296</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">297</TD><TD>                ((IAnnotationModelExtension) annotationModel).replaceAnnotations((Annotation[]) oldAnnotations.toArray(new Annotation[oldAnnotations.size()]), newAnnotations);</TD></TR><TR CLASS="z"><TD CLASS="l">298</TD><TD>        }</TD></TR><TR><TD CLASS="l">299</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="32.html">org.eclipse.wst.xml.ui.internal.actions</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/19.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/19.html
deleted file mode 100644
index f7bc10c..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/19.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR PACKAGE [<SPAN CLASS="in">org.eclipse.wst.sse.ui.internal.provisional.registry</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>org.eclipse.wst.sse.ui.internal.provisional.registry</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/447)</TD><TD CLASS="h">0%   (0/116)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY SOURCE FILE</H3><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR CLASS="o"><TD><A HREF="135.html">AdapterFactoryRegistryImpl.java</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/295)</TD><TD CLASS="h">0%   (0/77)</TD></TR><TR><TD><A HREF="136.html">AdapterFactoryRegistryReader.java</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/152)</TD><TD CLASS="h">0%   (0/39)</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/190.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/190.html
deleted file mode 100644
index 899100d..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/190.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="32.html">org.eclipse.wst.xml.ui.internal.actions</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">MenuBuilder.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>MenuBuilder.java</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/178)</TD><TD CLASS="h">0%   (0/34)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">MenuBuilder</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/150)</TD><TD CLASS="h">0%   (0/27)</TD></TR><TR><TD CLASS="f"><A HREF="#0">MenuBuilder (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">createAlphebeticalGrouping (IMenuManager, List): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/107)</TD><TD CLASS="h">0%   (0/17)</TD></TR><TR><TD CLASS="f"><A HREF="#3">populateMenu (IMenuManager, List, boolean): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/34)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#4">MenuBuilder$1</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/28)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR><TD CLASS="f"><A HREF="#4">MenuBuilder$1 (MenuBuilder): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">compare (Object, Object): int</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#7">getSortKey (Object): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/5)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR CLASS="z"><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD> </TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>package org.eclipse.wst.xml.ui.internal.actions;</TD></TR><TR><TD CLASS="l">16</TD><TD> </TD></TR><TR><TD CLASS="l">17</TD><TD>import com.ibm.icu.text.Collator;</TD></TR><TR><TD CLASS="l">18</TD><TD>import java.util.Arrays;</TD></TR><TR><TD CLASS="l">19</TD><TD>import java.util.Comparator;</TD></TR><TR><TD CLASS="l">20</TD><TD>import java.util.List;</TD></TR><TR><TD CLASS="l">21</TD><TD> </TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.jface.action.Action;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.jface.action.IAction;</TD></TR><TR><TD CLASS="l"><A NAME="0">24</A></TD><TD>import org.eclipse.jface.action.IMenuManager;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.jface.action.MenuManager;</TD></TR><TR><TD CLASS="l">26</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="4">27</A></TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">28</TD><TD>public class MenuBuilder {</TD></TR><TR><TD CLASS="l">29</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="6">30</A></TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">31</TD><TD>        protected Comparator comparator = new Comparator() {</TD></TR><TR><TD CLASS="l">32</TD><TD> </TD></TR><TR><TD CLASS="l">33</TD><TD>                public int compare(Object o1, Object o2) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="7">34</A></TD><TD>                        return Collator.getInstance().compare(getSortKey(o1), getSortKey(o2));</TD></TR><TR><TD CLASS="l">35</TD><TD>                }</TD></TR><TR><TD CLASS="l">36</TD><TD> </TD></TR><TR><TD CLASS="l">37</TD><TD>                protected String getSortKey(Object o) {</TD></TR><TR CLASS="z"><TD CLASS="l">38</TD><TD>                        String result = &#34;&#34;; //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">39</TD><TD>                        if (o instanceof IAction) {</TD></TR><TR CLASS="z"><TD CLASS="l">40</TD><TD>                                IAction action = (IAction) o;</TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>                                result = action.getText();</TD></TR><TR><TD CLASS="l">42</TD><TD>                        }</TD></TR><TR><TD CLASS="l">43</TD><TD>                        // else if (o instanceof MenuData)</TD></TR><TR><TD CLASS="l">44</TD><TD>                        // {</TD></TR><TR><TD CLASS="l">45</TD><TD>                        // result = &#34;z&#34; + ((MenuData)o).name;</TD></TR><TR><TD CLASS="l">46</TD><TD>                        // }</TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>                        return result;</TD></TR><TR><TD CLASS="l">48</TD><TD>                }</TD></TR><TR><TD CLASS="l"><A NAME="2">49</A></TD><TD>        };</TD></TR><TR><TD CLASS="l">50</TD><TD> </TD></TR><TR><TD CLASS="l">51</TD><TD> </TD></TR><TR><TD CLASS="l">52</TD><TD>        protected void createAlphebeticalGrouping(IMenuManager menu, List actionList) {</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>                Object[] array = actionList.toArray();</TD></TR><TR CLASS="z"><TD CLASS="l">54</TD><TD>                if (array.length &gt; 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                        Arrays.sort(array, comparator);</TD></TR><TR><TD CLASS="l">56</TD><TD>                }</TD></TR><TR><TD CLASS="l">57</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>                int groupSize = 15;</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>                int minGroupSize = 5;</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                int numberOfGroups = (array.length / groupSize) + ((array.length % groupSize &gt; minGroupSize) ? 1 : 0);</TD></TR><TR><TD CLASS="l">61</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>                for (int i = 0; i &lt; numberOfGroups; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>                        boolean isLastGroup = (i == (numberOfGroups - 1));</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                        int firstIndex = i * groupSize;</TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>                        int lastIndex = isLastGroup ? array.length - 1 : i * groupSize + groupSize - 1;</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                        Action firstAction = (Action) array[firstIndex];</TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>                        Action lastAction = (Action) array[lastIndex];</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>                        MenuManager submenu = new MenuManager(firstAction.getText() + &#34; - &#34; + lastAction.getText()); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                        menu.add(submenu);</TD></TR><TR CLASS="z"><TD CLASS="l">70</TD><TD>                        for (int j = firstIndex; j &lt;= lastIndex; j++) {</TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>                                submenu.add((Action) array[j]);</TD></TR><TR><TD CLASS="l">72</TD><TD>                        }</TD></TR><TR><TD CLASS="l">73</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="3">75</A></TD><TD> </TD></TR><TR><TD CLASS="l">76</TD><TD> </TD></TR><TR><TD CLASS="l">77</TD><TD>        public void populateMenu(IMenuManager menu, List actionList, boolean createTiered) {</TD></TR><TR><TD CLASS="l">78</TD><TD>                // sort the actions</TD></TR><TR CLASS="z"><TD CLASS="l">79</TD><TD>                if (actionList.size() &lt; 25) {</TD></TR><TR CLASS="z"><TD CLASS="l">80</TD><TD>                        Object[] array = actionList.toArray();</TD></TR><TR CLASS="z"><TD CLASS="l">81</TD><TD>                        if (array.length &gt; 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>                                Arrays.sort(array, comparator);</TD></TR><TR><TD CLASS="l">83</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">84</TD><TD>                        for (int i = 0; i &lt; array.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>                                menu.add((Action) array[i]);</TD></TR><TR><TD CLASS="l">86</TD><TD>                        }</TD></TR><TR><TD CLASS="l">87</TD><TD>                }</TD></TR><TR><TD CLASS="l">88</TD><TD>                else {</TD></TR><TR CLASS="z"><TD CLASS="l">89</TD><TD>                        createAlphebeticalGrouping(menu, actionList);</TD></TR><TR><TD CLASS="l">90</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">91</TD><TD>        }</TD></TR><TR><TD CLASS="l">92</TD><TD> </TD></TR><TR><TD CLASS="l">93</TD><TD>        /*</TD></TR><TR><TD CLASS="l">94</TD><TD>         * protected void createPropertyGrouping(IMenuManager menu, List</TD></TR><TR><TD CLASS="l">95</TD><TD>         * actionList) { MenuDataTable menuDataTable = new MenuDataTable();</TD></TR><TR><TD CLASS="l">96</TD><TD>         * </TD></TR><TR><TD CLASS="l">97</TD><TD>         * for (Iterator i = actionList.iterator(); i.hasNext(); ) { String</TD></TR><TR><TD CLASS="l">98</TD><TD>         * groupName = null; Action action = (Action)i.next(); if (action</TD></TR><TR><TD CLASS="l">99</TD><TD>         * instanceof NodeAction) { groupName =</TD></TR><TR><TD CLASS="l">100</TD><TD>         * ((NodeAction)action).getGroupName(); } if (groupName == null) {</TD></TR><TR><TD CLASS="l">101</TD><TD>         * groupName = &#34;&#34;; } MenuData menuData =</TD></TR><TR><TD CLASS="l">102</TD><TD>         * menuDataTable.lookupOrCreate(groupName, &#34;&#34;);</TD></TR><TR><TD CLASS="l">103</TD><TD>         * menuData.childList.add(action); } populateMenu(menu,</TD></TR><TR><TD CLASS="l">104</TD><TD>         * menuDataTable.getRoot()); }</TD></TR><TR><TD CLASS="l">105</TD><TD>         * </TD></TR><TR><TD CLASS="l">106</TD><TD>         * </TD></TR><TR><TD CLASS="l">107</TD><TD>         * protected void populateMenu(MenuManager menuManager, MenuData menuData) {</TD></TR><TR><TD CLASS="l">108</TD><TD>         * for (Iterator i = menuData.childList.iterator(); i.hasNext(); ) {</TD></TR><TR><TD CLASS="l">109</TD><TD>         * Object o = i.next(); if (o instanceof Action) {</TD></TR><TR><TD CLASS="l">110</TD><TD>         * menuManager.add((Action)o); } else if (o instanceof MenuData) {</TD></TR><TR><TD CLASS="l">111</TD><TD>         * MenuData childMenuData = (MenuData)o; MenuManager childMenuManager =</TD></TR><TR><TD CLASS="l">112</TD><TD>         * new MenuManager(childMenuData.name); menuManager.add(childMenuManager);</TD></TR><TR><TD CLASS="l">113</TD><TD>         * populateMenu(childMenuManager, childMenuData); } } }</TD></TR><TR><TD CLASS="l">114</TD><TD>         * </TD></TR><TR><TD CLASS="l">115</TD><TD>         * </TD></TR><TR><TD CLASS="l">116</TD><TD>         * public MenuDataTable { protected Hashtable table = new Hashtable();</TD></TR><TR><TD CLASS="l">117</TD><TD>         * protected MenuData root;</TD></TR><TR><TD CLASS="l">118</TD><TD>         * </TD></TR><TR><TD CLASS="l">119</TD><TD>         * public MenuDataTable() { root = lookupOrCreateMenuData(null, null); }</TD></TR><TR><TD CLASS="l">120</TD><TD>         * </TD></TR><TR><TD CLASS="l">121</TD><TD>         * protected MenuData lookupMenuData(String name) { String key = name !=</TD></TR><TR><TD CLASS="l">122</TD><TD>         * null ? name : &#34;&#34;; return (MenuData)menuDataTable.get(key); }</TD></TR><TR><TD CLASS="l">123</TD><TD>         * </TD></TR><TR><TD CLASS="l">124</TD><TD>         * protected MenuData lookupOrCreateMenuData(String name, String</TD></TR><TR><TD CLASS="l">125</TD><TD>         * parentName) { String key = name != null ? name : &#34;&#34;; MenuData menuData =</TD></TR><TR><TD CLASS="l">126</TD><TD>         * (MenuData)menuDataTable.get(key); if (menuData == null) { menuData =</TD></TR><TR><TD CLASS="l">127</TD><TD>         * new MenuData(name, parentName); menuDataTable.put(key, menuData); }</TD></TR><TR><TD CLASS="l">128</TD><TD>         * return menuData; }</TD></TR><TR><TD CLASS="l">129</TD><TD>         * </TD></TR><TR><TD CLASS="l">130</TD><TD>         * public MenuData getRoot() { return root; } }</TD></TR><TR><TD CLASS="l">131</TD><TD>         * </TD></TR><TR><TD CLASS="l">132</TD><TD>         * </TD></TR><TR><TD CLASS="l">133</TD><TD>         * protected class MenuData { public String name; public String</TD></TR><TR><TD CLASS="l">134</TD><TD>         * parentName; public List childList = new Vector();</TD></TR><TR><TD CLASS="l">135</TD><TD>         * </TD></TR><TR><TD CLASS="l">136</TD><TD>         * MenuData(String name, String parentName) { this.name = name;</TD></TR><TR><TD CLASS="l">137</TD><TD>         * this.parentName = parentName; }</TD></TR><TR><TD CLASS="l">138</TD><TD>         * </TD></TR><TR><TD CLASS="l">139</TD><TD>         * protected void sort() { Object[] array = childList.toArray(); if</TD></TR><TR><TD CLASS="l">140</TD><TD>         * (array.length &gt; 0 ) { Arrays.sort(array, comparator); } childList =</TD></TR><TR><TD CLASS="l">141</TD><TD>         * Arrays.asList(array);</TD></TR><TR><TD CLASS="l">142</TD><TD>         * </TD></TR><TR><TD CLASS="l">143</TD><TD>         * for (Iterator i = childList.iterator(); i.hasNext(); ) { Object o =</TD></TR><TR><TD CLASS="l">144</TD><TD>         * i.next(); if (o instanceof MenuData) { ((MenuData)o).sort(); } } } }</TD></TR><TR><TD CLASS="l">145</TD><TD>         */</TD></TR><TR><TD CLASS="l">146</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="32.html">org.eclipse.wst.xml.ui.internal.actions</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/191.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/191.html
deleted file mode 100644
index a8a615e..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/191.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="32.html">org.eclipse.wst.xml.ui.internal.actions</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">NodeAction.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>NodeAction.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/2)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">NodeAction</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#0">NodeAction (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">getSortKey (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2005 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD> </TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="0">15</A></TD><TD>package org.eclipse.wst.xml.ui.internal.actions;</TD></TR><TR><TD CLASS="l">16</TD><TD> </TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.jface.action.Action;</TD></TR><TR><TD CLASS="l"><A NAME="2">18</A></TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">19</TD><TD>public abstract class NodeAction extends Action {</TD></TR><TR><TD CLASS="l">20</TD><TD> </TD></TR><TR><TD CLASS="l">21</TD><TD>        public String getSortKey() {</TD></TR><TR CLASS="z"><TD CLASS="l">22</TD><TD>                return null;</TD></TR><TR><TD CLASS="l">23</TD><TD>        }</TD></TR><TR><TD CLASS="l">24</TD><TD> </TD></TR><TR><TD CLASS="l">25</TD><TD>        public abstract String getUndoDescription();</TD></TR><TR><TD CLASS="l">26</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="32.html">org.eclipse.wst.xml.ui.internal.actions</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/192.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/192.html
deleted file mode 100644
index fdccdec..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/192.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="32.html">org.eclipse.wst.xml.ui.internal.actions</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">RemoveBlockCommentActionXMLDelegate.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>RemoveBlockCommentActionXMLDelegate.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/139)</TD><TD CLASS="h">0%   (0/35)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">RemoveBlockCommentActionXMLDelegate</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/139)</TD><TD CLASS="h">0%   (0/35)</TD></TR><TR><TD CLASS="f"><A HREF="#0">RemoveBlockCommentActionXMLDelegate (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">init (IAction): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#3">processAction (IDocument, ITextSelection): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/124)</TD><TD CLASS="h">0%   (0/29)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2005, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     </TD></TR><TR><TD CLASS="l">11</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">12</TD><TD> </TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.ui.internal.actions;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.jface.action.IAction;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.jface.text.BadLocationException;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.jface.text.IDocument;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.jface.text.ITextSelection;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.wst.sse.core.StructuredModelManager;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.wst.xml.core.internal.document.CommentImpl;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.wst.xml.ui.internal.Logger;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.wst.xml.ui.internal.XMLUIMessages;</TD></TR><TR><TD CLASS="l"><A NAME="0">25</A></TD><TD> </TD></TR><TR><TD CLASS="l">26</TD><TD>/**</TD></TR><TR><TD CLASS="l">27</TD><TD> * Remove block comment action delegate for XML editor</TD></TR><TR><TD CLASS="l"><A NAME="3">28</A></TD><TD> */</TD></TR><TR CLASS="z"><TD CLASS="l">29</TD><TD>public class RemoveBlockCommentActionXMLDelegate extends AbstractCommentActionXMLDelegate {</TD></TR><TR><TD CLASS="l">30</TD><TD> </TD></TR><TR><TD CLASS="l">31</TD><TD>        void processAction(IDocument document, ITextSelection textSelection) {</TD></TR><TR CLASS="z"><TD CLASS="l">32</TD><TD>                IStructuredModel model = StructuredModelManager.getModelManager().getExistingModelForEdit(document);</TD></TR><TR CLASS="z"><TD CLASS="l">33</TD><TD>                if (model != null) {</TD></TR><TR><TD CLASS="l">34</TD><TD>                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">35</TD><TD>                                IndexedRegion selectionStartIndexedRegion = model.getIndexedRegion(textSelection.getOffset());</TD></TR><TR CLASS="z"><TD CLASS="l">36</TD><TD>                                IndexedRegion selectionEndIndexedRegion = model.getIndexedRegion(textSelection.getOffset() + textSelection.getLength());</TD></TR><TR><TD CLASS="l">37</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">38</TD><TD>                                if ((selectionStartIndexedRegion == null) || (selectionEndIndexedRegion == null)) {</TD></TR><TR CLASS="z"><TD CLASS="l">39</TD><TD>                                        return;</TD></TR><TR><TD CLASS="l">40</TD><TD>                                }</TD></TR><TR><TD CLASS="l">41</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">42</TD><TD>                                int openCommentOffset = selectionStartIndexedRegion.getStartOffset();</TD></TR><TR CLASS="z"><TD CLASS="l">43</TD><TD>                                int closeCommentOffset = selectionEndIndexedRegion.getEndOffset() - OPEN_COMMENT.length() - CLOSE_COMMENT.length();</TD></TR><TR><TD CLASS="l">44</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">45</TD><TD>                                model.beginRecording(this, XMLUIMessages.RemoveBlockComment_tooltip);</TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>                                model.aboutToChangeModel();</TD></TR><TR><TD CLASS="l">47</TD><TD> </TD></TR><TR><TD CLASS="l">48</TD><TD>                                try {</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>                                        if (textSelection.getLength() == 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">50</TD><TD>                                                if (selectionStartIndexedRegion instanceof CommentImpl) {</TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>                                                        document.replace(openCommentOffset, OPEN_COMMENT.length(), &#34;&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                                                        document.replace(closeCommentOffset, CLOSE_COMMENT.length(), &#34;&#34;); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">53</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">54</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">55</TD><TD>                                        else {</TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>                                                if (selectionStartIndexedRegion instanceof CommentImpl) {</TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>                                                        document.replace(openCommentOffset, OPEN_COMMENT.length(), &#34;&#34;); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">58</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">59</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                                                if (selectionEndIndexedRegion instanceof CommentImpl) {</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                                                        document.replace(closeCommentOffset, CLOSE_COMMENT.length(), &#34;&#34;); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">62</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">63</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                                        removeOpenCloseComments(document, openCommentOffset + OPEN_COMMENT.length(), closeCommentOffset - openCommentOffset - CLOSE_COMMENT.length());</TD></TR><TR><TD CLASS="l">65</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                                catch (BadLocationException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>                                        Logger.log(Logger.WARNING_DEBUG, e.getMessage(), e);</TD></TR><TR><TD CLASS="l">68</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                                finally {</TD></TR><TR CLASS="z"><TD CLASS="l">70</TD><TD>                                        model.changedModel();</TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>                                        model.endRecording(this);</TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>                                }</TD></TR><TR><TD CLASS="l">73</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>                        finally {</TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>                                model.releaseFromEdit();</TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>                        }</TD></TR><TR><TD CLASS="l"><A NAME="2">77</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">78</TD><TD>        }</TD></TR><TR><TD CLASS="l">79</TD><TD> </TD></TR><TR><TD CLASS="l">80</TD><TD>        public void init(IAction action) {</TD></TR><TR CLASS="z"><TD CLASS="l">81</TD><TD>                if (action != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>                        action.setText(XMLUIMessages.RemoveBlockComment_label);</TD></TR><TR CLASS="z"><TD CLASS="l">83</TD><TD>                        action.setToolTipText(XMLUIMessages.RemoveBlockComment_tooltip);</TD></TR><TR CLASS="z"><TD CLASS="l">84</TD><TD>                        action.setDescription(XMLUIMessages.RemoveBlockComment_description);</TD></TR><TR><TD CLASS="l">85</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>        }</TD></TR><TR><TD CLASS="l">87</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="32.html">org.eclipse.wst.xml.ui.internal.actions</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/193.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/193.html
deleted file mode 100644
index 09d990f..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/193.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="32.html">org.eclipse.wst.xml.ui.internal.actions</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">ReplacePrefixAction.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>ReplacePrefixAction.java</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/98)</TD><TD CLASS="h">0%   (0/24)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">ReplacePrefixAction</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/55)</TD><TD CLASS="h">0%   (0/15)</TD></TR><TR><TD CLASS="f"><A HREF="#0">ReplacePrefixAction (AbstractNodeActionManager, Element, Map): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">getUndoDescription (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#3">run (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/41)</TD><TD CLASS="h">0%   (0/9)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#4">ReplacePrefixAction$NodeCollectingDOMVisitor</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/43)</TD><TD CLASS="h">0%   (0/9)</TD></TR><TR><TD CLASS="f"><A HREF="#4">ReplacePrefixAction$NodeCollectingDOMVisitor (ReplacePrefixAction): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">isPrefixChangedNeeded (Node): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/18)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#7">visitAttr (Attr): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">visitElement (Element): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/4)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2005 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.ui.internal.actions;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.util.Iterator;</TD></TR><TR><TD CLASS="l">16</TD><TD>import java.util.List;</TD></TR><TR><TD CLASS="l">17</TD><TD>import java.util.Map;</TD></TR><TR><TD CLASS="l">18</TD><TD>import java.util.Vector;</TD></TR><TR><TD CLASS="l">19</TD><TD> </TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.jface.resource.ImageDescriptor;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.wst.xml.core.internal.contentmodel.util.DOMVisitor;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.w3c.dom.Attr;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.w3c.dom.Element;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.w3c.dom.Node;</TD></TR><TR><TD CLASS="l">25</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="4">26</A></TD><TD> </TD></TR><TR><TD CLASS="l">27</TD><TD> </TD></TR><TR><TD CLASS="l">28</TD><TD>public class ReplacePrefixAction extends NodeAction {</TD></TR><TR><TD CLASS="l">29</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="6">30</A></TD><TD>        class NodeCollectingDOMVisitor extends DOMVisitor {</TD></TR><TR CLASS="z"><TD CLASS="l">31</TD><TD>                public List list = new Vector();</TD></TR><TR><TD CLASS="l">32</TD><TD> </TD></TR><TR><TD CLASS="l">33</TD><TD>                protected boolean isPrefixChangedNeeded(Node node) {</TD></TR><TR CLASS="z"><TD CLASS="l">34</TD><TD>                        String key = node.getPrefix() != null ? node.getPrefix() : &#34;&#34;; //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">35</TD><TD>                        return prefixMapping.get(key) != null;</TD></TR><TR><TD CLASS="l">36</TD><TD>                }</TD></TR><TR><TD CLASS="l">37</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="7">38</A></TD><TD>                public void visitAttr(Attr attr) {</TD></TR><TR><TD CLASS="l">39</TD><TD>                        /*</TD></TR><TR><TD CLASS="l">40</TD><TD>                         * if (isPrefixChangedNeeded(element)) { list.add(attr); }</TD></TR><TR><TD CLASS="l"><A NAME="8">41</A></TD><TD>                         */</TD></TR><TR CLASS="z"><TD CLASS="l">42</TD><TD>                }</TD></TR><TR><TD CLASS="l">43</TD><TD> </TD></TR><TR><TD CLASS="l">44</TD><TD>                protected void visitElement(Element element) {</TD></TR><TR CLASS="z"><TD CLASS="l">45</TD><TD>                        super.visitElement(element);</TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>                        if (isPrefixChangedNeeded(element)) {</TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>                                list.add(element);</TD></TR><TR><TD CLASS="l">48</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>                }</TD></TR><TR><TD CLASS="l">50</TD><TD>        }</TD></TR><TR><TD CLASS="l">51</TD><TD> </TD></TR><TR><TD CLASS="l">52</TD><TD>        protected static ImageDescriptor imageDescriptor;</TD></TR><TR><TD CLASS="l"><A NAME="0">53</A></TD><TD>        protected Element element;</TD></TR><TR><TD CLASS="l">54</TD><TD>        protected AbstractNodeActionManager manager;</TD></TR><TR><TD CLASS="l">55</TD><TD>        protected Map prefixMapping;</TD></TR><TR><TD CLASS="l">56</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>        public ReplacePrefixAction(AbstractNodeActionManager manager, Element element, Map prefixMapping) {</TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>                this.manager = manager;</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>                this.element = element;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">60</A></TD><TD>                this.prefixMapping = prefixMapping;</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>        }</TD></TR><TR><TD CLASS="l">62</TD><TD> </TD></TR><TR><TD CLASS="l">63</TD><TD>        public String getUndoDescription() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">64</A></TD><TD>                return &#34;&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">65</TD><TD>        }</TD></TR><TR><TD CLASS="l">66</TD><TD> </TD></TR><TR><TD CLASS="l">67</TD><TD>        public void run() {</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>                NodeCollectingDOMVisitor visitor = new NodeCollectingDOMVisitor();</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                visitor.visitNode(element);</TD></TR><TR CLASS="z"><TD CLASS="l">70</TD><TD>                for (Iterator i = visitor.list.iterator(); i.hasNext();) {</TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>                        Node node = (Node) i.next();</TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>                        String key = node.getPrefix() != null ? node.getPrefix() : &#34;&#34;; //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">73</TD><TD>                        String newPrefix = (String) prefixMapping.get(key);</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>                        if (newPrefix != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>                                node.setPrefix(newPrefix);</TD></TR><TR><TD CLASS="l">76</TD><TD>                        }</TD></TR><TR><TD CLASS="l">77</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">78</TD><TD>        }</TD></TR><TR><TD CLASS="l">79</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="32.html">org.eclipse.wst.xml.ui.internal.actions</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/194.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/194.html
deleted file mode 100644
index 5c28db4..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/194.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="32.html">org.eclipse.wst.xml.ui.internal.actions</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">SiblingNavigationAction.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>SiblingNavigationAction.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/156)</TD><TD CLASS="h">0%   (0/34)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">SiblingNavigationAction</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/156)</TD><TD CLASS="h">0%   (0/34)</TD></TR><TR><TD CLASS="f"><A HREF="#0">SiblingNavigationAction (ResourceBundle, String, ITextEditor, boolean): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">runWithEvent (Event): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/146)</TD><TD CLASS="h">0%   (0/30)</TD></TR><TR><TD CLASS="f"><A HREF="#3">update (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2008 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">11</TD><TD> </TD></TR><TR><TD CLASS="l">12</TD><TD>package org.eclipse.wst.xml.ui.internal.actions;</TD></TR><TR><TD CLASS="l">13</TD><TD> </TD></TR><TR><TD CLASS="l">14</TD><TD>import java.util.ResourceBundle;</TD></TR><TR><TD CLASS="l">15</TD><TD> </TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.jface.viewers.ISelection;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.jface.viewers.IStructuredSelection;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.jface.viewers.StructuredSelection;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.swt.widgets.Event;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.ui.texteditor.ITextEditor;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.ui.texteditor.TextEditorAction;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.w3c.dom.Attr;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.w3c.dom.Node;</TD></TR><TR><TD CLASS="l">24</TD><TD> </TD></TR><TR><TD CLASS="l">25</TD><TD>/**</TD></TR><TR><TD CLASS="l">26</TD><TD> * Provides navigation to next/previous DOM sibling Nodes</TD></TR><TR><TD CLASS="l">27</TD><TD> * </TD></TR><TR><TD CLASS="l">28</TD><TD> * @author nitin</TD></TR><TR><TD CLASS="l">29</TD><TD> * </TD></TR><TR><TD CLASS="l">30</TD><TD> */</TD></TR><TR><TD CLASS="l">31</TD><TD>class SiblingNavigationAction extends TextEditorAction {</TD></TR><TR><TD CLASS="l">32</TD><TD> </TD></TR><TR><TD CLASS="l">33</TD><TD>        private boolean fForward;</TD></TR><TR><TD CLASS="l">34</TD><TD> </TD></TR><TR><TD CLASS="l">35</TD><TD>        /**</TD></TR><TR><TD CLASS="l">36</TD><TD>         * @param bundle</TD></TR><TR><TD CLASS="l"><A NAME="0">37</A></TD><TD>         * @param prefix</TD></TR><TR><TD CLASS="l">38</TD><TD>         * @param editor</TD></TR><TR><TD CLASS="l">39</TD><TD>         */</TD></TR><TR><TD CLASS="l">40</TD><TD>        SiblingNavigationAction(ResourceBundle bundle, String prefix, ITextEditor editor, boolean forward) {</TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>                super(bundle, prefix, editor);</TD></TR><TR CLASS="z"><TD CLASS="l">42</TD><TD>                fForward = forward;</TD></TR><TR CLASS="z"><TD CLASS="l">43</TD><TD>        }</TD></TR><TR><TD CLASS="l">44</TD><TD> </TD></TR><TR><TD CLASS="l">45</TD><TD>        /*</TD></TR><TR><TD CLASS="l">46</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="2">47</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">48</TD><TD>         * @see org.eclipse.jface.action.Action#runWithEvent(org.eclipse.swt.widgets.Event)</TD></TR><TR><TD CLASS="l">49</TD><TD>         */</TD></TR><TR><TD CLASS="l">50</TD><TD>        public void runWithEvent(Event event) {</TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>                super.runWithEvent(event);</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                if (getTextEditor() == null)</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>                        return;</TD></TR><TR><TD CLASS="l">54</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                ISelection selection = getTextEditor().getSelectionProvider().getSelection();</TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>                if (!selection.isEmpty() &amp;&amp; selection instanceof IStructuredSelection) {</TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>                        Object o = ((IStructuredSelection) selection).getFirstElement();</TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>                        if (o instanceof Node) {</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>                                Node sibling = null;</TD></TR><TR><TD CLASS="l">60</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                                if (((Node) o).getNodeType() == Node.ATTRIBUTE_NODE) {</TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>                                        o = ((Attr) o).getOwnerElement();</TD></TR><TR><TD CLASS="l">63</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                                if (fForward) {</TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>                                        sibling = ((Node) o).getNextSibling();</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                                        while (sibling != null &amp;&amp; sibling.getNodeType() == Node.TEXT_NODE &amp;&amp; sibling.getNodeValue().trim().length() == 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>                                                sibling = sibling.getNextSibling();</TD></TR><TR><TD CLASS="l">68</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                                        if (sibling == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">70</TD><TD>                                                sibling = ((Node) o).getParentNode().getFirstChild();</TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>                                                while (sibling != null &amp;&amp; sibling.getNodeType() == Node.TEXT_NODE &amp;&amp; sibling.getNodeValue().trim().length() == 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>                                                        sibling = sibling.getNextSibling();</TD></TR><TR><TD CLASS="l">73</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">74</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">75</TD><TD>                                }</TD></TR><TR><TD CLASS="l">76</TD><TD>                                else {</TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>                                        sibling = ((Node) o).getPreviousSibling();</TD></TR><TR CLASS="z"><TD CLASS="l">78</TD><TD>                                        while (sibling != null &amp;&amp; sibling.getNodeType() == Node.TEXT_NODE &amp;&amp; sibling.getNodeValue().trim().length() == 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">79</TD><TD>                                                sibling = sibling.getPreviousSibling();</TD></TR><TR><TD CLASS="l">80</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">81</TD><TD>                                        if (sibling == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>                                                sibling = ((Node) o).getParentNode().getLastChild();</TD></TR><TR CLASS="z"><TD CLASS="l">83</TD><TD>                                                while (sibling != null &amp;&amp; sibling.getNodeType() == Node.TEXT_NODE &amp;&amp; sibling.getNodeValue().trim().length() == 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">84</TD><TD>                                                        sibling = sibling.getPreviousSibling();</TD></TR><TR><TD CLASS="l">85</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">86</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">87</TD><TD>                                }</TD></TR><TR><TD CLASS="l">88</TD><TD> </TD></TR><TR><TD CLASS="l">89</TD><TD>                                // The only child is a Text Node, go to the parent Node</TD></TR><TR CLASS="z"><TD CLASS="l">90</TD><TD>                                if (((Node) o).getNodeType() == Node.TEXT_NODE &amp;&amp; o.equals(sibling)) {</TD></TR><TR CLASS="z"><TD CLASS="l">91</TD><TD>                                        sibling = ((Node) o).getParentNode();</TD></TR><TR><TD CLASS="l">92</TD><TD>                                }</TD></TR><TR><TD CLASS="l">93</TD><TD> </TD></TR><TR><TD CLASS="l">94</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">95</TD><TD>                                if (sibling != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">96</TD><TD>                                        getTextEditor().getSelectionProvider().setSelection(new StructuredSelection(sibling));</TD></TR><TR><TD CLASS="l">97</TD><TD>                                }</TD></TR><TR><TD CLASS="l">98</TD><TD>                        }</TD></TR><TR><TD CLASS="l">99</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">100</TD><TD>        }</TD></TR><TR><TD CLASS="l">101</TD><TD> </TD></TR><TR><TD CLASS="l">102</TD><TD>        /*</TD></TR><TR><TD CLASS="l">103</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l">104</TD><TD>         * </TD></TR><TR><TD CLASS="l"><A NAME="3">105</A></TD><TD>         * @see org.eclipse.ui.texteditor.TextEditorAction#update()</TD></TR><TR><TD CLASS="l">106</TD><TD>         */</TD></TR><TR><TD CLASS="l">107</TD><TD>        public void update() {</TD></TR><TR><TD CLASS="l">108</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">109</TD><TD>        }</TD></TR><TR><TD CLASS="l">110</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="32.html">org.eclipse.wst.xml.ui.internal.actions</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/195.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/195.html
deleted file mode 100644
index 4199348..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/195.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="32.html">org.eclipse.wst.xml.ui.internal.actions</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">ToggleCommentActionXMLDelegate.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>ToggleCommentActionXMLDelegate.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/357)</TD><TD CLASS="h">0%   (0/80)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">ToggleCommentActionXMLDelegate</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/357)</TD><TD CLASS="h">0%   (0/80)</TD></TR><TR><TD CLASS="f"><A HREF="#0">ToggleCommentActionXMLDelegate (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">comment (IDocument, int, int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/31)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#3">init (IAction): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">isCommentLine (IDocument, int): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/43)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR><TD CLASS="f"><A HREF="#5">processAction (IDocument, ITextSelection): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/81)</TD><TD CLASS="h">0%   (0/20)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">processAction (IDocument, int, int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/118)</TD><TD CLASS="h">0%   (0/25)</TD></TR><TR><TD CLASS="f"><A HREF="#7">uncomment (IDocument, int, int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/20)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">updateCurrentSelection (Position, IDocument, boolean): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/49)</TD><TD CLASS="h">0%   (0/11)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2005, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     </TD></TR><TR><TD CLASS="l">11</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">12</TD><TD> </TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.ui.internal.actions;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.jface.action.IAction;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.jface.text.BadLocationException;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.jface.text.IDocument;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.jface.text.IRegion;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.jface.text.ITextSelection;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.jface.text.Position;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.jface.text.TextSelection;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.jface.viewers.ISelectionProvider;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.ui.texteditor.ITextEditor;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.wst.sse.core.StructuredModelManager;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.wst.xml.ui.internal.Logger;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.wst.xml.ui.internal.XMLUIMessages;</TD></TR><TR><TD CLASS="l"><A NAME="0">28</A></TD><TD> </TD></TR><TR><TD CLASS="l">29</TD><TD>/**</TD></TR><TR><TD CLASS="l"><A NAME="3">30</A></TD><TD> * Toggle comment action delegate for XML editor</TD></TR><TR><TD CLASS="l">31</TD><TD> */</TD></TR><TR CLASS="z"><TD CLASS="l">32</TD><TD>public class ToggleCommentActionXMLDelegate extends AbstractCommentActionXMLDelegate {</TD></TR><TR><TD CLASS="l">33</TD><TD>        public void init(IAction action) {</TD></TR><TR CLASS="z"><TD CLASS="l">34</TD><TD>                if (action != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">35</TD><TD>                        action.setText(XMLUIMessages.ToggleComment_label);</TD></TR><TR CLASS="z"><TD CLASS="l">36</TD><TD>                        action.setToolTipText(XMLUIMessages.ToggleComment_tooltip);</TD></TR><TR CLASS="z"><TD CLASS="l">37</TD><TD>                        action.setDescription(XMLUIMessages.ToggleComment_description);</TD></TR><TR><TD CLASS="l">38</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="5">39</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">40</TD><TD> </TD></TR><TR><TD CLASS="l">41</TD><TD>        void processAction(IDocument document, ITextSelection textSelection) {</TD></TR><TR><TD CLASS="l">42</TD><TD>                // get text selection lines info</TD></TR><TR CLASS="z"><TD CLASS="l">43</TD><TD>                int selectionStartLine = textSelection.getStartLine();</TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>                int selectionEndLine = textSelection.getEndLine();</TD></TR><TR><TD CLASS="l">45</TD><TD>                try {</TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>                        int selectionEndLineOffset = document.getLineOffset(selectionEndLine);</TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>                        int selectionEndOffset = textSelection.getOffset() + textSelection.getLength();</TD></TR><TR><TD CLASS="l">48</TD><TD> </TD></TR><TR><TD CLASS="l">49</TD><TD>                        // adjust selection end line</TD></TR><TR CLASS="z"><TD CLASS="l">50</TD><TD>                        if ((selectionEndLine &gt; selectionStartLine) &amp;&amp; (selectionEndLineOffset == selectionEndOffset)) {</TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>                                selectionEndLine--;</TD></TR><TR><TD CLASS="l">52</TD><TD>                        }</TD></TR><TR><TD CLASS="l">53</TD><TD> </TD></TR><TR><TD CLASS="l">54</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                catch (BadLocationException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>                        Logger.log(Logger.WARNING_DEBUG, e.getMessage(), e);</TD></TR><TR><TD CLASS="l">57</TD><TD>                }</TD></TR><TR><TD CLASS="l">58</TD><TD> </TD></TR><TR><TD CLASS="l">59</TD><TD>                // save the selection position since it will be changing</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                Position selectionPosition = null;</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                boolean updateStartOffset = false;</TD></TR><TR><TD CLASS="l">62</TD><TD>                try {</TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>                        selectionPosition = new Position(textSelection.getOffset(), textSelection.getLength());</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                        document.addPosition(selectionPosition);</TD></TR><TR><TD CLASS="l">65</TD><TD> </TD></TR><TR><TD CLASS="l">66</TD><TD>                        // extra check if commenting from beginning of line</TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>                        int selectionStartLineOffset = document.getLineOffset(selectionStartLine);</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>                        if ((textSelection.getLength() &gt; 0) &amp;&amp; (selectionStartLineOffset == textSelection.getOffset()) &amp;&amp; !isCommentLine(document, selectionStartLine)) {</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                                updateStartOffset = true;</TD></TR><TR><TD CLASS="l">70</TD><TD>                        }</TD></TR><TR><TD CLASS="l">71</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>                catch (BadLocationException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">73</TD><TD>                        Logger.log(Logger.WARNING_DEBUG, e.getMessage(), e);</TD></TR><TR><TD CLASS="l">74</TD><TD>                }</TD></TR><TR><TD CLASS="l">75</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>                processAction(document, selectionStartLine, selectionEndLine);</TD></TR><TR><TD CLASS="l">77</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="6">78</A></TD><TD>                updateCurrentSelection(selectionPosition, document, updateStartOffset);</TD></TR><TR CLASS="z"><TD CLASS="l">79</TD><TD>        }</TD></TR><TR><TD CLASS="l">80</TD><TD> </TD></TR><TR><TD CLASS="l">81</TD><TD>        private void processAction(IDocument document, int selectionStartLine, int selectionEndLine) {</TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>                IStructuredModel model = StructuredModelManager.getModelManager().getExistingModelForEdit(document);</TD></TR><TR CLASS="z"><TD CLASS="l">83</TD><TD>                if (model != null) {</TD></TR><TR><TD CLASS="l">84</TD><TD>                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>                                model.beginRecording(this, XMLUIMessages.ToggleComment_tooltip);</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                                model.aboutToChangeModel();</TD></TR><TR><TD CLASS="l">87</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">88</TD><TD>                                for (int i = selectionStartLine; i &lt;= selectionEndLine; i++) {</TD></TR><TR><TD CLASS="l">89</TD><TD>                                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">90</TD><TD>                                                if (document.getLineLength(i) &gt; 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">91</TD><TD>                                                        if (isCommentLine(document, i)) {</TD></TR><TR CLASS="z"><TD CLASS="l">92</TD><TD>                                                                int lineOffset = document.getLineOffset(i);</TD></TR><TR CLASS="z"><TD CLASS="l">93</TD><TD>                                                                IRegion region = document.getLineInformation(i);</TD></TR><TR CLASS="z"><TD CLASS="l">94</TD><TD>                                                                String string = document.get(region.getOffset(), region.getLength());</TD></TR><TR CLASS="z"><TD CLASS="l">95</TD><TD>                                                                int openCommentOffset = lineOffset + string.indexOf(OPEN_COMMENT);</TD></TR><TR CLASS="z"><TD CLASS="l">96</TD><TD>                                                                int closeCommentOffset = lineOffset + string.indexOf(CLOSE_COMMENT) - OPEN_COMMENT.length();</TD></TR><TR CLASS="z"><TD CLASS="l">97</TD><TD>                                                                uncomment(document, openCommentOffset, closeCommentOffset);</TD></TR><TR><TD CLASS="l">98</TD><TD>                                                        }</TD></TR><TR><TD CLASS="l">99</TD><TD>                                                        else {</TD></TR><TR CLASS="z"><TD CLASS="l">100</TD><TD>                                                                int openCommentOffset = document.getLineOffset(i);</TD></TR><TR CLASS="z"><TD CLASS="l">101</TD><TD>                                                                int lineDelimiterLength = document.getLineDelimiter(i) == null ? 0 : document.getLineDelimiter(i).length();</TD></TR><TR CLASS="z"><TD CLASS="l">102</TD><TD>                                                                int closeCommentOffset = openCommentOffset + document.getLineLength(i) - lineDelimiterLength + OPEN_COMMENT.length();</TD></TR><TR CLASS="z"><TD CLASS="l">103</TD><TD>                                                                comment(document, openCommentOffset, closeCommentOffset);</TD></TR><TR><TD CLASS="l">104</TD><TD>                                                        }</TD></TR><TR><TD CLASS="l">105</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">106</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">107</TD><TD>                                        catch (BadLocationException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">108</TD><TD>                                                Logger.log(Logger.WARNING_DEBUG, e.getMessage(), e);</TD></TR><TR><TD CLASS="l">109</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">110</TD><TD>                                }</TD></TR><TR><TD CLASS="l">111</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">112</TD><TD>                        finally {</TD></TR><TR CLASS="z"><TD CLASS="l">113</TD><TD>                                model.changedModel();</TD></TR><TR CLASS="z"><TD CLASS="l">114</TD><TD>                                model.endRecording(this);</TD></TR><TR CLASS="z"><TD CLASS="l">115</TD><TD>                                model.releaseFromEdit();</TD></TR><TR CLASS="z"><TD CLASS="l">116</TD><TD>                        }</TD></TR><TR><TD CLASS="l"><A NAME="4">117</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">118</TD><TD>        }</TD></TR><TR><TD CLASS="l">119</TD><TD> </TD></TR><TR><TD CLASS="l">120</TD><TD>        private boolean isCommentLine(IDocument document, int line) {</TD></TR><TR CLASS="z"><TD CLASS="l">121</TD><TD>                boolean isComment = false;</TD></TR><TR><TD CLASS="l">122</TD><TD> </TD></TR><TR><TD CLASS="l">123</TD><TD>                try {</TD></TR><TR CLASS="z"><TD CLASS="l">124</TD><TD>                        IRegion region = document.getLineInformation(line);</TD></TR><TR CLASS="z"><TD CLASS="l">125</TD><TD>                        String string = document.get(region.getOffset(), region.getLength()).trim();</TD></TR><TR CLASS="z"><TD CLASS="l">126</TD><TD>                        isComment = (string.length() &gt;= OPEN_COMMENT.length() + CLOSE_COMMENT.length()) &amp;&amp; string.startsWith(OPEN_COMMENT) &amp;&amp; string.endsWith(CLOSE_COMMENT);</TD></TR><TR><TD CLASS="l">127</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">128</TD><TD>                catch (BadLocationException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">129</TD><TD>                        Logger.log(Logger.WARNING_DEBUG, e.getMessage(), e);</TD></TR><TR><TD CLASS="l">130</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">131</TD><TD>                return isComment;</TD></TR><TR><TD CLASS="l"><A NAME="2">132</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">133</TD><TD> </TD></TR><TR><TD CLASS="l">134</TD><TD>        private void comment(IDocument document, int openCommentOffset, int closeCommentOffset) {</TD></TR><TR><TD CLASS="l">135</TD><TD>                try {</TD></TR><TR CLASS="z"><TD CLASS="l">136</TD><TD>                        document.replace(openCommentOffset, 0, OPEN_COMMENT);</TD></TR><TR CLASS="z"><TD CLASS="l">137</TD><TD>                        document.replace(closeCommentOffset, 0, CLOSE_COMMENT);</TD></TR><TR CLASS="z"><TD CLASS="l">138</TD><TD>                        removeOpenCloseComments(document, openCommentOffset + OPEN_COMMENT.length(), closeCommentOffset - openCommentOffset - CLOSE_COMMENT.length());</TD></TR><TR><TD CLASS="l">139</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">140</TD><TD>                catch (BadLocationException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">141</TD><TD>                        Logger.log(Logger.WARNING_DEBUG, e.getMessage(), e);</TD></TR><TR><TD CLASS="l">142</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="7">143</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">144</TD><TD> </TD></TR><TR><TD CLASS="l">145</TD><TD>        private void uncomment(IDocument document, int openCommentOffset, int closeCommentOffset) {</TD></TR><TR><TD CLASS="l">146</TD><TD>                try {</TD></TR><TR CLASS="z"><TD CLASS="l">147</TD><TD>                        document.replace(openCommentOffset, OPEN_COMMENT.length(), &#34;&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">148</TD><TD>                        document.replace(closeCommentOffset, CLOSE_COMMENT.length(), &#34;&#34;); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">149</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">150</TD><TD>                catch (BadLocationException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">151</TD><TD>                        Logger.log(Logger.WARNING_DEBUG, e.getMessage(), e);</TD></TR><TR><TD CLASS="l"><A NAME="8">152</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">153</TD><TD>        }</TD></TR><TR><TD CLASS="l">154</TD><TD> </TD></TR><TR><TD CLASS="l">155</TD><TD>        private void updateCurrentSelection(Position selectionPosition, IDocument document, boolean updateStartOffset) {</TD></TR><TR CLASS="z"><TD CLASS="l">156</TD><TD>                if (fEditor instanceof ITextEditor) {</TD></TR><TR><TD CLASS="l">157</TD><TD>                        // update the selection if text selection changed</TD></TR><TR CLASS="z"><TD CLASS="l">158</TD><TD>                        if (selectionPosition != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">159</TD><TD>                                ITextSelection selection = null;</TD></TR><TR CLASS="z"><TD CLASS="l">160</TD><TD>                                if (updateStartOffset) {</TD></TR><TR CLASS="z"><TD CLASS="l">161</TD><TD>                                        selection = new TextSelection(document, selectionPosition.getOffset() - OPEN_COMMENT.length(), selectionPosition.getLength() + OPEN_COMMENT.length());</TD></TR><TR><TD CLASS="l">162</TD><TD>                                }</TD></TR><TR><TD CLASS="l">163</TD><TD>                                else {</TD></TR><TR CLASS="z"><TD CLASS="l">164</TD><TD>                                        selection = new TextSelection(document, selectionPosition.getOffset(), selectionPosition.getLength());</TD></TR><TR><TD CLASS="l">165</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">166</TD><TD>                                ISelectionProvider provider = ((ITextEditor) fEditor).getSelectionProvider();</TD></TR><TR CLASS="z"><TD CLASS="l">167</TD><TD>                                if (provider != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">168</TD><TD>                                        provider.setSelection(selection);</TD></TR><TR><TD CLASS="l">169</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">170</TD><TD>                                document.removePosition(selectionPosition);</TD></TR><TR><TD CLASS="l">171</TD><TD>                        }</TD></TR><TR><TD CLASS="l">172</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">173</TD><TD>        }</TD></TR><TR><TD CLASS="l">174</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="32.html">org.eclipse.wst.xml.ui.internal.actions</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/196.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/196.html
deleted file mode 100644
index a0ee4b3..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/196.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="33.html">org.eclipse.wst.xml.ui.internal.catalog</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">AdvancedOptionsDialog.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>AdvancedOptionsDialog.java</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/437)</TD><TD CLASS="h">0%   (0/105)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">AdvancedOptionsDialog</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/417)</TD><TD CLASS="h">0%   (0/100)</TD></TR><TR><TD CLASS="f"><A HREF="#0">AdvancedOptionsDialog (Shell, ICatalog): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">createButtonsForButtonBar (Composite): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#3">createDialogArea (Composite): Control</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/152)</TD><TD CLASS="h">0%   (0/30)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">createFileIfRequired (IFile): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/19)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#5">createGridData (): GridData</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">createStatus (String, String): IStatus</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/26)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#7">invokeExportDialog (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/114)</TD><TD CLASS="h">0%   (0/31)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">invokeImportDialog (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/72)</TD><TD CLASS="h">0%   (0/19)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#9">AdvancedOptionsDialog$1</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#9">AdvancedOptionsDialog$1 (AdvancedOptionsDialog): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#b">widgetSelected (SelectionEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#c">AdvancedOptionsDialog$2</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#c">AdvancedOptionsDialog$2 (AdvancedOptionsDialog): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#e">widgetSelected (SelectionEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR CLASS="z"><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2002, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.ui.internal.catalog;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.io.ByteArrayInputStream;</TD></TR><TR><TD CLASS="l">16</TD><TD> </TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.core.resources.IFile;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.core.resources.IProject;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.core.resources.ResourcesPlugin;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.core.runtime.IPath;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.core.runtime.IStatus;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.core.runtime.MultiStatus;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.core.runtime.Status;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.jface.dialogs.Dialog;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.jface.dialogs.ErrorDialog;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.jface.dialogs.IDialogConstants;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.jface.window.Window;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.osgi.util.NLS;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.swt.SWT;</TD></TR><TR><TD CLASS="l">30</TD><TD>import org.eclipse.swt.events.SelectionAdapter;</TD></TR><TR><TD CLASS="l">31</TD><TD>import org.eclipse.swt.events.SelectionEvent;</TD></TR><TR><TD CLASS="l">32</TD><TD>import org.eclipse.swt.events.SelectionListener;</TD></TR><TR><TD CLASS="l">33</TD><TD>import org.eclipse.swt.layout.GridData;</TD></TR><TR><TD CLASS="l">34</TD><TD>import org.eclipse.swt.layout.GridLayout;</TD></TR><TR><TD CLASS="l">35</TD><TD>import org.eclipse.swt.widgets.Button;</TD></TR><TR><TD CLASS="l">36</TD><TD>import org.eclipse.swt.widgets.Composite;</TD></TR><TR><TD CLASS="l">37</TD><TD>import org.eclipse.swt.widgets.Control;</TD></TR><TR><TD CLASS="l">38</TD><TD>import org.eclipse.swt.widgets.Display;</TD></TR><TR><TD CLASS="l">39</TD><TD>import org.eclipse.swt.widgets.Label;</TD></TR><TR><TD CLASS="l">40</TD><TD>import org.eclipse.swt.widgets.Shell;</TD></TR><TR><TD CLASS="l">41</TD><TD>import org.eclipse.ui.dialogs.SaveAsDialog;</TD></TR><TR><TD CLASS="l">42</TD><TD>import org.eclipse.wst.common.ui.internal.dialogs.SelectSingleFileDialog;</TD></TR><TR><TD CLASS="l">43</TD><TD>import org.eclipse.wst.xml.core.internal.catalog.CatalogSet;</TD></TR><TR><TD CLASS="l">44</TD><TD>import org.eclipse.wst.xml.core.internal.catalog.provisional.ICatalog;</TD></TR><TR><TD CLASS="l">45</TD><TD>import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;</TD></TR><TR><TD CLASS="l">46</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="0">47</A></TD><TD>public class AdvancedOptionsDialog extends Dialog {</TD></TR><TR><TD CLASS="l">48</TD><TD>        protected ICatalog workingUserCatalog;</TD></TR><TR><TD CLASS="l">49</TD><TD> </TD></TR><TR><TD CLASS="l">50</TD><TD>        public AdvancedOptionsDialog(Shell parentShell, ICatalog workingUserCatalog) {</TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>                super(parentShell);</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                setShellStyle(getShellStyle() | SWT.RESIZE);</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>                this.workingUserCatalog = workingUserCatalog;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">54</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">55</TD><TD> </TD></TR><TR><TD CLASS="l">56</TD><TD> </TD></TR><TR><TD CLASS="l">57</TD><TD>        protected void createButtonsForButtonBar(Composite parent) {</TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>                createButton(parent, IDialogConstants.OK_ID, IDialogConstants.OK_LABEL, true);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">59</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">60</TD><TD> </TD></TR><TR><TD CLASS="l">61</TD><TD> </TD></TR><TR><TD CLASS="l">62</TD><TD>        protected Control createDialogArea(Composite parent) {</TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>                Composite dialogArea = (Composite) super.createDialogArea(parent);</TD></TR><TR><TD CLASS="l">64</TD><TD>                // WorkbenchHelp.setHelp(dialogArea, new</TD></TR><TR><TD CLASS="l">65</TD><TD>                // ControlContextComputer(dialogArea,</TD></TR><TR><TD CLASS="l">66</TD><TD>                // XMLBuilderContextIds.XMLP_PROJECT_DIALOG));</TD></TR><TR><TD CLASS="l">67</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>                Composite composite = new Composite(dialogArea, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                composite.setLayout(new GridLayout());</TD></TR><TR CLASS="z"><TD CLASS="l">70</TD><TD>                composite.setLayoutData(new GridData(GridData.FILL_BOTH));</TD></TR><TR><TD CLASS="l">71</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>                Label label = new Label(composite, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">73</TD><TD>                label.setText(XMLCatalogMessages.UI_LABEL_DIALOG_DESCRIPTION);</TD></TR><TR><TD CLASS="l">74</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>                Composite buttonComposite = new Composite(composite, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>                GridLayout gridLayout = new GridLayout();</TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>                gridLayout.numColumns = 3;</TD></TR><TR CLASS="z"><TD CLASS="l">78</TD><TD>                buttonComposite.setLayout(gridLayout);</TD></TR><TR CLASS="z"><TD CLASS="l">79</TD><TD>                buttonComposite.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));</TD></TR><TR><TD CLASS="l">80</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">81</TD><TD>                Composite placeHolder = new Composite(buttonComposite, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>                placeHolder.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));</TD></TR><TR><TD CLASS="l">83</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">84</TD><TD>                Composite buttonGroup = new Composite(buttonComposite, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>                gridLayout = new GridLayout();</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                gridLayout.numColumns = 2;</TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>                gridLayout.makeColumnsEqualWidth = true;</TD></TR><TR CLASS="z"><TD CLASS="l">88</TD><TD>                buttonGroup.setLayout(gridLayout);</TD></TR><TR CLASS="z"><TD CLASS="l">89</TD><TD>                buttonGroup.setLayoutData(createGridData());</TD></TR><TR><TD CLASS="l">90</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">91</TD><TD>                Button importButton = new Button(buttonGroup, SWT.PUSH | SWT.CENTER);</TD></TR><TR CLASS="z"><TD CLASS="l">92</TD><TD>                importButton.setText(&#34;  &#34; + XMLCatalogMessages.UI_BUTTON_IMPORT + &#34;  &#34;); //$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR><TD CLASS="l">93</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">94</TD><TD>                Button exportButton = new Button(buttonGroup, SWT.PUSH | SWT.CENTER);</TD></TR><TR CLASS="z"><TD CLASS="l">95</TD><TD>                exportButton.setText(&#34;  &#34; + XMLCatalogMessages.UI_BUTTON_EXPORT + &#34;  &#34;); //$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR><TD CLASS="l">96</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="9">97</A></TD><TD>                placeHolder = new Composite(buttonComposite, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">98</TD><TD>                placeHolder.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));</TD></TR><TR><TD CLASS="l">99</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="b">100</A></TD><TD>                // add importButton listener</TD></TR><TR CLASS="z"><TD CLASS="l">101</TD><TD>                SelectionListener importButtonSelectionListener = new SelectionAdapter() {</TD></TR><TR><TD CLASS="l">102</TD><TD>                        public void widgetSelected(SelectionEvent e) {</TD></TR><TR CLASS="z"><TD CLASS="l">103</TD><TD>                                invokeImportDialog();</TD></TR><TR CLASS="z"><TD CLASS="l">104</TD><TD>                        }</TD></TR><TR><TD CLASS="l"><A NAME="c">105</A></TD><TD>                };</TD></TR><TR CLASS="z"><TD CLASS="l">106</TD><TD>                importButton.addSelectionListener(importButtonSelectionListener);</TD></TR><TR><TD CLASS="l">107</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="e">108</A></TD><TD>                // add exportButton listener</TD></TR><TR CLASS="z"><TD CLASS="l">109</TD><TD>                SelectionListener exportButtonSelectionListener = new SelectionAdapter() {</TD></TR><TR><TD CLASS="l">110</TD><TD>                        public void widgetSelected(SelectionEvent e) {</TD></TR><TR CLASS="z"><TD CLASS="l">111</TD><TD>                                invokeExportDialog();</TD></TR><TR CLASS="z"><TD CLASS="l">112</TD><TD>                        }</TD></TR><TR><TD CLASS="l">113</TD><TD>                };</TD></TR><TR CLASS="z"><TD CLASS="l">114</TD><TD>                exportButton.addSelectionListener(exportButtonSelectionListener);</TD></TR><TR><TD CLASS="l">115</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="5">116</A></TD><TD>                return dialogArea;</TD></TR><TR><TD CLASS="l">117</TD><TD>        }</TD></TR><TR><TD CLASS="l">118</TD><TD> </TD></TR><TR><TD CLASS="l">119</TD><TD>        protected GridData createGridData() {</TD></TR><TR CLASS="z"><TD CLASS="l">120</TD><TD>                GridData gd = new GridData(GridData.CENTER);</TD></TR><TR CLASS="z"><TD CLASS="l">121</TD><TD>                gd.horizontalAlignment = GridData.HORIZONTAL_ALIGN_CENTER;</TD></TR><TR CLASS="z"><TD CLASS="l">122</TD><TD>                gd.verticalAlignment = GridData.VERTICAL_ALIGN_CENTER;</TD></TR><TR CLASS="z"><TD CLASS="l">123</TD><TD>                return gd;</TD></TR><TR><TD CLASS="l"><A NAME="8">124</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">125</TD><TD> </TD></TR><TR><TD CLASS="l">126</TD><TD> </TD></TR><TR><TD CLASS="l">127</TD><TD>        protected void invokeImportDialog() {</TD></TR><TR CLASS="z"><TD CLASS="l">128</TD><TD>                SelectSingleFileDialog dialog = new SelectSingleFileDialog(getShell(), null, true);</TD></TR><TR CLASS="z"><TD CLASS="l">129</TD><TD>                String[] extensions = {&#34;.xmlcatalog&#34;, &#34;.xml&#34;}; //$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR CLASS="z"><TD CLASS="l">130</TD><TD>                dialog.addFilterExtensions(extensions);</TD></TR><TR CLASS="z"><TD CLASS="l">131</TD><TD>                dialog.create();</TD></TR><TR CLASS="z"><TD CLASS="l">132</TD><TD>                dialog.getShell().setText(XMLCatalogMessages.UI_LABEL_IMPORT_DIALOG_TITLE);</TD></TR><TR CLASS="z"><TD CLASS="l">133</TD><TD>                dialog.setTitle(XMLCatalogMessages.UI_LABEL_IMPORT_DIALOG_HEADING);</TD></TR><TR CLASS="z"><TD CLASS="l">134</TD><TD>                dialog.setMessage(XMLCatalogMessages.UI_LABEL_IMPORT_DIALOG_MESSAGE);</TD></TR><TR CLASS="z"><TD CLASS="l">135</TD><TD>                dialog.setBlockOnOpen(true);</TD></TR><TR CLASS="z"><TD CLASS="l">136</TD><TD>                int rc = dialog.open();</TD></TR><TR CLASS="z"><TD CLASS="l">137</TD><TD>                if (rc == Window.OK) {</TD></TR><TR CLASS="z"><TD CLASS="l">138</TD><TD>                        IFile file = dialog.getFile();</TD></TR><TR CLASS="z"><TD CLASS="l">139</TD><TD>                        if (file != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">140</TD><TD>                                String fileName = file.getLocation().toFile().toURI().toString();</TD></TR><TR><TD CLASS="l">141</TD><TD>                                try {</TD></TR><TR CLASS="z"><TD CLASS="l">142</TD><TD>                                        CatalogSet tempResourceSet = new CatalogSet();</TD></TR><TR CLASS="z"><TD CLASS="l">143</TD><TD>                                        ICatalog newCatalog = tempResourceSet.lookupOrCreateCatalog(&#34;temp&#34;, fileName); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">144</TD><TD>                                        workingUserCatalog.addEntriesFromCatalog(newCatalog);</TD></TR><TR><TD CLASS="l">145</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">146</TD><TD>                                catch (Exception e) {</TD></TR><TR><TD CLASS="l">147</TD><TD>                                        // TODO... give error message</TD></TR><TR><TD CLASS="l">148</TD><TD>                                }</TD></TR><TR><TD CLASS="l">149</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">150</TD><TD>                        close();</TD></TR><TR><TD CLASS="l">151</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="7">152</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">153</TD><TD> </TD></TR><TR><TD CLASS="l">154</TD><TD> </TD></TR><TR><TD CLASS="l">155</TD><TD>        protected void invokeExportDialog() {</TD></TR><TR CLASS="z"><TD CLASS="l">156</TD><TD>                IPath originalFilePath = null;</TD></TR><TR CLASS="z"><TD CLASS="l">157</TD><TD>                IProject[] projects = ResourcesPlugin.getWorkspace().getRoot().getProjects();</TD></TR><TR CLASS="z"><TD CLASS="l">158</TD><TD>                if (projects.length &gt; 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">159</TD><TD>                        originalFilePath = projects[0].getFullPath().append(&#34;.xmlcatalog&#34;); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">160</TD><TD>                }</TD></TR><TR><TD CLASS="l">161</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">162</TD><TD>                SaveAsDialog dialog = new SaveAsDialog(getShell());</TD></TR><TR CLASS="z"><TD CLASS="l">163</TD><TD>                if (originalFilePath != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">164</TD><TD>                        IFile originalFile = ResourcesPlugin.getWorkspace().getRoot().getFile(originalFilePath);</TD></TR><TR CLASS="z"><TD CLASS="l">165</TD><TD>                        dialog.setOriginalFile(originalFile);</TD></TR><TR><TD CLASS="l">166</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">167</TD><TD>                dialog.create();</TD></TR><TR><TD CLASS="l">168</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">169</TD><TD>                dialog.getShell().setText(XMLCatalogMessages.UI_LABEL_EXPORT_DIALOG_TITLE);</TD></TR><TR CLASS="z"><TD CLASS="l">170</TD><TD>                dialog.setTitle(XMLCatalogMessages.UI_LABEL_EXPORT_DIALOG_HEADING);</TD></TR><TR CLASS="z"><TD CLASS="l">171</TD><TD>                dialog.setMessage(XMLCatalogMessages.UI_LABEL_EXPORT_DIALOG_MESSAGE);</TD></TR><TR><TD CLASS="l">172</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">173</TD><TD>                dialog.setBlockOnOpen(true);</TD></TR><TR CLASS="z"><TD CLASS="l">174</TD><TD>                int rc = dialog.open();</TD></TR><TR CLASS="z"><TD CLASS="l">175</TD><TD>                if (rc == Window.OK) {</TD></TR><TR CLASS="z"><TD CLASS="l">176</TD><TD>                        IPath path = dialog.getResult();</TD></TR><TR CLASS="z"><TD CLASS="l">177</TD><TD>                        if (path != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">178</TD><TD>                                IFile file = ResourcesPlugin.getWorkspace().getRoot().getFile(path);</TD></TR><TR CLASS="z"><TD CLASS="l">179</TD><TD>                                String fileName = file.getLocation().toFile().toURI().toString();</TD></TR><TR><TD CLASS="l">180</TD><TD> </TD></TR><TR><TD CLASS="l">181</TD><TD>                                // here we save the catalog entries to the selected file</TD></TR><TR><TD CLASS="l">182</TD><TD>                                try {</TD></TR><TR CLASS="z"><TD CLASS="l">183</TD><TD>                                        createFileIfRequired(file);</TD></TR><TR CLASS="z"><TD CLASS="l">184</TD><TD>                                        workingUserCatalog.setLocation(fileName);</TD></TR><TR CLASS="z"><TD CLASS="l">185</TD><TD>                                        workingUserCatalog.save();</TD></TR><TR><TD CLASS="l">186</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">187</TD><TD>                                catch (Exception ex) {</TD></TR><TR><TD CLASS="l">188</TD><TD>                                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">189</TD><TD>                                                String title = XMLCatalogMessages.UI_LABEL_CATALOG_SAVE_ERROR;</TD></TR><TR CLASS="z"><TD CLASS="l">190</TD><TD>                                                String briefMessage = XMLCatalogMessages.UI_LABEL_CATALOG_COULD_NOT_BE_SAVED;</TD></TR><TR CLASS="z"><TD CLASS="l">191</TD><TD>                                                String reason = file.isReadOnly() ? NLS.bind(XMLCatalogMessages.UI_LABEL_FILE_IS_READ_ONLY, fileName) : NLS.bind(XMLCatalogMessages.ERROR_SAVING_FILE, fileName);</TD></TR><TR CLASS="z"><TD CLASS="l">192</TD><TD>                                                String details = NLS.bind(XMLCatalogMessages.ERROR_SAVING_FILE, fileName);</TD></TR><TR><TD CLASS="l">193</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">194</TD><TD>                                                ErrorDialog.openError(Display.getCurrent().getActiveShell(), title, briefMessage, createStatus(reason, details));</TD></TR><TR><TD CLASS="l">195</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">196</TD><TD>                                        catch (Exception ex2) {</TD></TR><TR><TD CLASS="l">197</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">198</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">199</TD><TD>                                close();</TD></TR><TR><TD CLASS="l">200</TD><TD>                        }</TD></TR><TR><TD CLASS="l">201</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">202</TD><TD>        }</TD></TR><TR><TD CLASS="l">203</TD><TD> </TD></TR><TR><TD CLASS="l">204</TD><TD>        // TODO... This was copied from WindowUtility. Is there an easier way to</TD></TR><TR><TD CLASS="l">205</TD><TD>        // create a status object?</TD></TR><TR><TD CLASS="l"><A NAME="6">206</A></TD><TD>        // If not, we should open an eclipse bug or add a similar utility to</TD></TR><TR><TD CLASS="l">207</TD><TD>        // baseExtensionsUI.</TD></TR><TR><TD CLASS="l">208</TD><TD>        //</TD></TR><TR><TD CLASS="l">209</TD><TD>        private static IStatus createStatus(String reason, String msg) {</TD></TR><TR CLASS="z"><TD CLASS="l">210</TD><TD>                String pluginId = XMLUIPlugin.getDefault().getBundle().getSymbolicName();</TD></TR><TR CLASS="z"><TD CLASS="l">211</TD><TD>                MultiStatus multiStatus = new MultiStatus(pluginId, 0, reason, null);</TD></TR><TR CLASS="z"><TD CLASS="l">212</TD><TD>                Status status = new Status(IStatus.ERROR, pluginId, 0, msg, null);</TD></TR><TR CLASS="z"><TD CLASS="l">213</TD><TD>                multiStatus.add(status);</TD></TR><TR CLASS="z"><TD CLASS="l">214</TD><TD>                return multiStatus;</TD></TR><TR><TD CLASS="l">215</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="4">216</A></TD><TD> </TD></TR><TR><TD CLASS="l">217</TD><TD> </TD></TR><TR><TD CLASS="l">218</TD><TD>        protected void createFileIfRequired(IFile file) {</TD></TR><TR><TD CLASS="l">219</TD><TD>                try {</TD></TR><TR CLASS="z"><TD CLASS="l">220</TD><TD>                        if ((file != null) &amp;&amp; !file.exists()) {</TD></TR><TR CLASS="z"><TD CLASS="l">221</TD><TD>                                ByteArrayInputStream inputStream = new ByteArrayInputStream(new byte[0]);</TD></TR><TR CLASS="z"><TD CLASS="l">222</TD><TD>                                file.create(inputStream, true, null);</TD></TR><TR><TD CLASS="l">223</TD><TD>                                // createEmptyXMLCatalog(file);</TD></TR><TR><TD CLASS="l">224</TD><TD>                        }</TD></TR><TR><TD CLASS="l">225</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">226</TD><TD>                catch (Exception e) {</TD></TR><TR><TD CLASS="l">227</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">228</TD><TD>        }</TD></TR><TR><TD CLASS="l">229</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="33.html">org.eclipse.wst.xml.ui.internal.catalog</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/197.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/197.html
deleted file mode 100644
index 6008ccc..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/197.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="33.html">org.eclipse.wst.xml.ui.internal.catalog</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">CatalogFileTypeRegistryReader.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>CatalogFileTypeRegistryReader.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/97)</TD><TD CLASS="h">0%   (0/29)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">CatalogFileTypeRegistryReader</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/97)</TD><TD CLASS="h">0%   (0/29)</TD></TR><TR><TD CLASS="f"><A HREF="#1">CatalogFileTypeRegistryReader (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#0">getInstance (): CatalogFileTypeRegistryReader</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#3">getXMLCatalogFileTypes (): Collection</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">readElement (IConfigurationElement): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/45)</TD><TD CLASS="h">0%   (0/12)</TD></TR><TR><TD CLASS="f"><A HREF="#5">readRegistry (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">readRegistry (String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/26)</TD><TD CLASS="h">0%   (0/7)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2005, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     </TD></TR><TR><TD CLASS="l">11</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">12</TD><TD>package org.eclipse.wst.xml.ui.internal.catalog;</TD></TR><TR><TD CLASS="l">13</TD><TD> </TD></TR><TR><TD CLASS="l">14</TD><TD>import java.util.Collection;</TD></TR><TR><TD CLASS="l">15</TD><TD>import java.util.HashMap;</TD></TR><TR><TD CLASS="l">16</TD><TD> </TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.core.runtime.IConfigurationElement;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.core.runtime.IExtensionPoint;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.core.runtime.IExtensionRegistry;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.core.runtime.Platform;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;</TD></TR><TR><TD CLASS="l">22</TD><TD> </TD></TR><TR><TD CLASS="l">23</TD><TD>public class CatalogFileTypeRegistryReader {</TD></TR><TR><TD CLASS="l">24</TD><TD>        private static CatalogFileTypeRegistryReader _instance;</TD></TR><TR><TD CLASS="l">25</TD><TD> </TD></TR><TR><TD CLASS="l">26</TD><TD>        static final String ATT_DESCRIPTION = &#34;description&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">27</TD><TD> </TD></TR><TR><TD CLASS="l">28</TD><TD>        static final String ATT_EXTENSIONS = &#34;extensions&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">29</TD><TD> </TD></TR><TR><TD CLASS="l">30</TD><TD>        static final String ATT_ICON = &#34;icon&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">31</TD><TD> </TD></TR><TR><TD CLASS="l">32</TD><TD>        static final String ATT_ID = &#34;id&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">33</TD><TD> </TD></TR><TR><TD CLASS="l">34</TD><TD>        static final String EXTENSION_POINT_ID = &#34;catalogFileType&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l"><A NAME="0">35</A></TD><TD> </TD></TR><TR><TD CLASS="l">36</TD><TD>        static final String TAG_NAME = &#34;fileType&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">37</TD><TD> </TD></TR><TR><TD CLASS="l">38</TD><TD>        private static CatalogFileTypeRegistryReader getInstance() {</TD></TR><TR CLASS="z"><TD CLASS="l">39</TD><TD>                if (_instance == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">40</TD><TD>                        _instance = new CatalogFileTypeRegistryReader();</TD></TR><TR><TD CLASS="l">41</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">42</A></TD><TD>                return _instance;</TD></TR><TR><TD CLASS="l">43</TD><TD>        }</TD></TR><TR><TD CLASS="l">44</TD><TD> </TD></TR><TR><TD CLASS="l">45</TD><TD>        public static Collection getXMLCatalogFileTypes() {</TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>                return getInstance().hashMap.values();</TD></TR><TR><TD CLASS="l"><A NAME="1">47</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">48</TD><TD> </TD></TR><TR><TD CLASS="l">49</TD><TD>        private HashMap hashMap;</TD></TR><TR><TD CLASS="l">50</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>        public CatalogFileTypeRegistryReader() {</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                this.hashMap = new HashMap();</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">53</A></TD><TD>                readRegistry();</TD></TR><TR CLASS="z"><TD CLASS="l">54</TD><TD>        }</TD></TR><TR><TD CLASS="l">55</TD><TD> </TD></TR><TR><TD CLASS="l">56</TD><TD>        private void readElement(IConfigurationElement element) {</TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>                if (element.getName().equals(TAG_NAME)) {</TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>                        String id = element.getAttribute(ATT_ID);</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>                        if (id != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                                XMLCatalogFileType fileType = (XMLCatalogFileType) hashMap.get(id);</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                                if (fileType == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>                                        fileType = new XMLCatalogFileType();</TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>                                        hashMap.put(id, fileType);</TD></TR><TR><TD CLASS="l">64</TD><TD>                                }</TD></TR><TR><TD CLASS="l">65</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                                if (fileType.description == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>                                        String description = element.getAttribute(ATT_DESCRIPTION);</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>                                        fileType.description = description;</TD></TR><TR><TD CLASS="l">69</TD><TD>                                }</TD></TR><TR><TD CLASS="l">70</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>                                fileType.addExtensions(element.getAttribute(ATT_EXTENSIONS));</TD></TR><TR><TD CLASS="l">72</TD><TD>                        }</TD></TR><TR><TD CLASS="l"><A NAME="5">73</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>        }</TD></TR><TR><TD CLASS="l">75</TD><TD> </TD></TR><TR><TD CLASS="l">76</TD><TD>        private void readRegistry() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="6">77</A></TD><TD>                readRegistry(EXTENSION_POINT_ID);</TD></TR><TR CLASS="z"><TD CLASS="l">78</TD><TD>        }</TD></TR><TR><TD CLASS="l">79</TD><TD> </TD></TR><TR><TD CLASS="l">80</TD><TD>        private void readRegistry(String extensionPointId) {</TD></TR><TR CLASS="z"><TD CLASS="l">81</TD><TD>                IExtensionRegistry pluginRegistry = Platform.getExtensionRegistry();</TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>                IExtensionPoint point = pluginRegistry.getExtensionPoint(XMLUIPlugin.ID, extensionPointId);</TD></TR><TR CLASS="z"><TD CLASS="l">83</TD><TD>                if (point != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">84</TD><TD>                        IConfigurationElement[] elements = point.getConfigurationElements();</TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>                        for (int i = 0; i &lt; elements.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                                readElement(elements[i]);</TD></TR><TR><TD CLASS="l">87</TD><TD>                        }</TD></TR><TR><TD CLASS="l">88</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">89</TD><TD>        }</TD></TR><TR><TD CLASS="l">90</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="33.html">org.eclipse.wst.xml.ui.internal.catalog</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/198.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/198.html
deleted file mode 100644
index 955995d..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/198.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="33.html">org.eclipse.wst.xml.ui.internal.catalog</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">EditCatalogEntryDialog.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>EditCatalogEntryDialog.java</TD><TD CLASS="h">0%   (0/14)</TD><TD CLASS="h">0%   (0/76)</TD><TD CLASS="h">0%   (0/2322)</TD><TD CLASS="h">0%   (0/518)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">EditCatalogEntryDialog</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/24)</TD><TD CLASS="h">0%   (0/685)</TD><TD CLASS="h">0%   (0/165)</TD></TR><TR><TD CLASS="f"><A HREF="#0">&lt;static initializer&gt;</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">EditCatalogEntryDialog (Shell, ICatalog): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#3">EditCatalogEntryDialog (Shell, ICatalogElement, ICatalog): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">buttonPressed (int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#5">close (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">createBrowseButton (Composite): Button</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/37)</TD><TD CLASS="h">0%   (0/10)</TD></TR><TR><TD CLASS="f"><A HREF="#7">createButtonsForButtonBar (Composite): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/22)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">createCatalogEntryButton (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/33)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR><TD CLASS="f"><A HREF="#9">createDialogArea (Composite): Control</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/49)</TD><TD CLASS="h">0%   (0/12)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">createFileSystemBrowseButton (Composite): Button</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#b">createMainComponent (Composite): Composite</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/83)</TD><TD CLASS="h">0%   (0/18)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#c">createMainComponentWithToolbar (Composite): Composite</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/174)</TD><TD CLASS="h">0%   (0/35)</TD></TR><TR><TD CLASS="f"><A HREF="#d">createNextCatalogButton (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/33)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#e">createStringArray (List): String []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/21)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#f">createWorkspaceBrowseButton (Composite): Button</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#10">getCatalogElement (): ICatalogElement</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#11">getDisplayValue (String): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#12">getMatchingFileType (String): XMLCatalogFileType</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/25)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#13">invokeFileSelectionDialog (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#14">invokeWorkspaceFileSelectionDialog (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/35)</TD><TD CLASS="h">0%   (0/9)</TD></TR><TR><TD CLASS="f"><A HREF="#15">removeLeadingSlash (String): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/17)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#16">showPage (EditCatalogEntryDialog$CatalogElementPage): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/26)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR><TD CLASS="f"><A HREF="#17">updateErrorMessageLabel (Label): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/20)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#18">updateOKButtonState (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#19">EditCatalogEntryDialog$1</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/55)</TD><TD CLASS="h">0%   (0/12)</TD></TR><TR><TD CLASS="f"><A HREF="#19">EditCatalogEntryDialog$1 (EditCatalogEntryDialog$CatalogEntryPage): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#1b">modifyText (ModifyEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/49)</TD><TD CLASS="h">0%   (0/10)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#1c">EditCatalogEntryDialog$2</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/20)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR><TD CLASS="f"><A HREF="#1c">EditCatalogEntryDialog$2 (EditCatalogEntryDialog$CatalogEntryPage): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#1e">widgetDefaultSelected (SelectionEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#1f">widgetSelected (SelectionEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#20">EditCatalogEntryDialog$3</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/20)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR><TD CLASS="f"><A HREF="#20">EditCatalogEntryDialog$3 (EditCatalogEntryDialog$CatalogEntryPage): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#22">widgetDefaultSelected (SelectionEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#23">widgetSelected (SelectionEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#24">EditCatalogEntryDialog$4</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/20)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#24">EditCatalogEntryDialog$4 (EditCatalogEntryDialog$CatalogEntryPage): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#26">widgetDefaultSelected (SelectionEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#27">widgetSelected (SelectionEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#28">EditCatalogEntryDialog$5</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/21)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#28">EditCatalogEntryDialog$5 (EditCatalogEntryDialog$CatalogEntryPage): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2a">modifyText (ModifyEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#2b">EditCatalogEntryDialog$6</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#2b">EditCatalogEntryDialog$6 (EditCatalogEntryDialog$NextCatalogPage): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2d">modifyText (ModifyEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#2e">EditCatalogEntryDialog$7</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/20)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR><TD CLASS="f"><A HREF="#2e">EditCatalogEntryDialog$7 (EditCatalogEntryDialog$NextCatalogPage): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#30">widgetDefaultSelected (SelectionEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#31">widgetSelected (SelectionEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#32">EditCatalogEntryDialog$8</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/20)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR><TD CLASS="f"><A HREF="#32">EditCatalogEntryDialog$8 (EditCatalogEntryDialog$NextCatalogPage): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#34">widgetDefaultSelected (SelectionEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#35">widgetSelected (SelectionEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#36">EditCatalogEntryDialog$CatalogElementPage</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#36">EditCatalogEntryDialog$CatalogElementPage (EditCatalogEntryDialog): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#38">getControl (): Control</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#39">EditCatalogEntryDialog$CatalogEntryPage</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/931)</TD><TD CLASS="h">0%   (0/196)</TD></TR><TR><TD CLASS="f"><A HREF="#39">EditCatalogEntryDialog$CatalogEntryPage (EditCatalogEntryDialog): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#3b">computeErrorMessage (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/144)</TD><TD CLASS="h">0%   (0/23)</TD></TR><TR><TD CLASS="f"><A HREF="#19">createCatalogEntryPanel (Composite): Control</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/367)</TD><TD CLASS="h">0%   (0/76)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#3d">createControl (Composite): Control</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#3e">getData (): ICatalogElement</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#3f">getEntry (): ICatalogEntry</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/35)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#40">getKeyType (): int</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/21)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#41">saveData (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/57)</TD><TD CLASS="h">0%   (0/11)</TD></TR><TR><TD CLASS="f"><A HREF="#42">updateKeyTypeCombo (int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/130)</TD><TD CLASS="h">0%   (0/32)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#43">updateWebAddressWidgets (int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/24)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#44">updateWidgets (Widget): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/23)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#45">validateData (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/112)</TD><TD CLASS="h">0%   (0/26)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#46">EditCatalogEntryDialog$FilterableSelectSingleFileDialog</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/143)</TD><TD CLASS="h">0%   (0/38)</TD></TR><TR><TD CLASS="f"><A HREF="#46">EditCatalogEntryDialog$FilterableSelectSingleFileDialog (EditCatalogEntryDial...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#48">createAndOpen (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/19)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR><TD CLASS="f"><A HREF="#49">createFilterControl (Composite): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/57)</TD><TD CLASS="h">0%   (0/13)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4a">setFilters (XMLCatalogFileType): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/41)</TD><TD CLASS="h">0%   (0/10)</TD></TR><TR><TD CLASS="f"><A HREF="#4b">widgetDefaultSelected (SelectionEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4c">widgetSelected (SelectionEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#4d">EditCatalogEntryDialog$NextCatalogPage</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/344)</TD><TD CLASS="h">0%   (0/69)</TD></TR><TR><TD CLASS="f"><A HREF="#4d">EditCatalogEntryDialog$NextCatalogPage (EditCatalogEntryDialog): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4f">computeErrorMessage (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/84)</TD><TD CLASS="h">0%   (0/13)</TD></TR><TR><TD CLASS="f"><A HREF="#50">createControl (Composite): Control</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2b">createNextCatalogPanel (Composite): Control</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/184)</TD><TD CLASS="h">0%   (0/39)</TD></TR><TR><TD CLASS="f"><A HREF="#52">getData (): ICatalogElement</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#53">getNextCatalog (): INextCatalog</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/35)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#54">saveData (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#55">updateWidgets (Widget): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#56">EditCatalogEntryDialog$ToolBarItemSelectionChangeListener</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/22)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#56">EditCatalogEntryDialog$ToolBarItemSelectionChangeListener (EditCatalogEntryDi...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#58">widgetDefaultSelected (SelectionEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#59">widgetSelected (SelectionEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/4)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR CLASS="z"><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2002, 2008 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.ui.internal.catalog;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.util.ArrayList;</TD></TR><TR><TD CLASS="l">16</TD><TD>import java.util.Iterator;</TD></TR><TR><TD CLASS="l">17</TD><TD>import java.util.List;</TD></TR><TR><TD CLASS="l">18</TD><TD> </TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.core.resources.IFile;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.jface.dialogs.Dialog;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.jface.dialogs.IDialogConstants;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.swt.SWT;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.swt.events.ModifyEvent;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.swt.events.ModifyListener;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.swt.events.SelectionEvent;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.swt.events.SelectionListener;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.swt.graphics.Color;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.swt.graphics.Image;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.swt.graphics.Rectangle;</TD></TR><TR><TD CLASS="l">30</TD><TD>import org.eclipse.swt.layout.FormAttachment;</TD></TR><TR><TD CLASS="l">31</TD><TD>import org.eclipse.swt.layout.FormData;</TD></TR><TR><TD CLASS="l">32</TD><TD>import org.eclipse.swt.layout.FormLayout;</TD></TR><TR><TD CLASS="l">33</TD><TD>import org.eclipse.swt.layout.GridData;</TD></TR><TR><TD CLASS="l">34</TD><TD>import org.eclipse.swt.layout.GridLayout;</TD></TR><TR><TD CLASS="l">35</TD><TD>import org.eclipse.swt.widgets.Button;</TD></TR><TR><TD CLASS="l">36</TD><TD>import org.eclipse.swt.widgets.Combo;</TD></TR><TR><TD CLASS="l">37</TD><TD>import org.eclipse.swt.widgets.Composite;</TD></TR><TR><TD CLASS="l">38</TD><TD>import org.eclipse.swt.widgets.Control;</TD></TR><TR><TD CLASS="l">39</TD><TD>import org.eclipse.swt.widgets.FileDialog;</TD></TR><TR><TD CLASS="l">40</TD><TD>import org.eclipse.swt.widgets.Label;</TD></TR><TR><TD CLASS="l">41</TD><TD>import org.eclipse.swt.widgets.Shell;</TD></TR><TR><TD CLASS="l">42</TD><TD>import org.eclipse.swt.widgets.Text;</TD></TR><TR><TD CLASS="l">43</TD><TD>import org.eclipse.swt.widgets.ToolBar;</TD></TR><TR><TD CLASS="l">44</TD><TD>import org.eclipse.swt.widgets.ToolItem;</TD></TR><TR><TD CLASS="l">45</TD><TD>import org.eclipse.swt.widgets.Widget;</TD></TR><TR><TD CLASS="l">46</TD><TD>import org.eclipse.ui.part.PageBook;</TD></TR><TR><TD CLASS="l">47</TD><TD>import org.eclipse.wst.common.ui.internal.dialogs.SelectSingleFileDialog;</TD></TR><TR><TD CLASS="l">48</TD><TD>import org.eclipse.wst.common.uriresolver.internal.URI;</TD></TR><TR><TD CLASS="l">49</TD><TD>import org.eclipse.wst.common.uriresolver.internal.util.URIHelper;</TD></TR><TR><TD CLASS="l">50</TD><TD>import org.eclipse.wst.xml.core.internal.XMLCorePlugin;</TD></TR><TR><TD CLASS="l">51</TD><TD>import org.eclipse.wst.xml.core.internal.catalog.provisional.ICatalog;</TD></TR><TR><TD CLASS="l">52</TD><TD>import org.eclipse.wst.xml.core.internal.catalog.provisional.ICatalogElement;</TD></TR><TR><TD CLASS="l"><A NAME="0">53</A></TD><TD>import org.eclipse.wst.xml.core.internal.catalog.provisional.ICatalogEntry;</TD></TR><TR><TD CLASS="l">54</TD><TD>import org.eclipse.wst.xml.core.internal.catalog.provisional.INextCatalog;</TD></TR><TR><TD CLASS="l">55</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>public class EditCatalogEntryDialog extends Dialog {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="39">57</A></TD><TD>        protected static Image borwseImage = ImageFactory.INSTANCE.getImage(&#34;icons/obj16/file_expand.gif&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>        protected static Image catalogEntryToolBarImage = ImageFactory.INSTANCE.getImage(&#34;icons/etool50/catalogEntry.gif&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>        protected static Image nextCatalogToolBarImage = ImageFactory.INSTANCE.getImage(&#34;icons/etool50/nextCatalog.gif&#34;); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">60</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>        protected class CatalogEntryPage extends CatalogElementPage {</TD></TR><TR><TD CLASS="l">62</TD><TD> </TD></TR><TR><TD CLASS="l">63</TD><TD>                protected Button browseWorkspaceButton;</TD></TR><TR><TD CLASS="l">64</TD><TD>                </TD></TR><TR><TD CLASS="l">65</TD><TD>                protected Button browseFileSystemButton;</TD></TR><TR><TD CLASS="l">66</TD><TD> </TD></TR><TR><TD CLASS="l">67</TD><TD>                protected ICatalogEntry catalogEntry;</TD></TR><TR><TD CLASS="l">68</TD><TD> </TD></TR><TR><TD CLASS="l">69</TD><TD>                protected Button checkboxButton;</TD></TR><TR><TD CLASS="l">70</TD><TD> </TD></TR><TR><TD CLASS="l">71</TD><TD>                protected Label errorMessageLabel;</TD></TR><TR><TD CLASS="l">72</TD><TD> </TD></TR><TR><TD CLASS="l">73</TD><TD>                protected Text keyField;</TD></TR><TR><TD CLASS="l">74</TD><TD> </TD></TR><TR><TD CLASS="l">75</TD><TD>                protected Combo keyTypeCombo;</TD></TR><TR><TD CLASS="l">76</TD><TD> </TD></TR><TR><TD CLASS="l">77</TD><TD>                protected Text resourceLocationField;</TD></TR><TR><TD CLASS="l">78</TD><TD> </TD></TR><TR><TD CLASS="l">79</TD><TD>                protected Combo resourceTypeCombo;</TD></TR><TR><TD CLASS="l">80</TD><TD> </TD></TR><TR><TD CLASS="l">81</TD><TD>                protected Text webAddressField;</TD></TR><TR><TD CLASS="l">82</TD><TD>                </TD></TR><TR><TD CLASS="l">83</TD><TD>                protected String key;</TD></TR><TR><TD CLASS="l"><A NAME="3b">84</A></TD><TD>                </TD></TR><TR><TD CLASS="l">85</TD><TD>                protected int type;</TD></TR><TR><TD CLASS="l">86</TD><TD> </TD></TR><TR><TD CLASS="l">87</TD><TD>                protected void computeErrorMessage() {</TD></TR><TR CLASS="z"><TD CLASS="l">88</TD><TD>                        errorMessage = null;</TD></TR><TR CLASS="z"><TD CLASS="l">89</TD><TD>                        warningMessage = null;</TD></TR><TR><TD CLASS="l">90</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">91</TD><TD>                        if (errorMessage == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">92</TD><TD>                                String fileName = resourceLocationField.getText();</TD></TR><TR CLASS="z"><TD CLASS="l">93</TD><TD>                                if (fileName.trim().length() &gt; 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">94</TD><TD>                                        if ((fileName.indexOf(&#34;..&#34;) != -1) || (fileName.indexOf(&#34;./&#34;) != -1) || (fileName.indexOf(&#34;/.&#34;) != -1) || (fileName.indexOf(&#34;.\\&#34;) != -1) || (fileName.indexOf(&#34;\\.&#34;) != -1)) { //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$</TD></TR><TR CLASS="z"><TD CLASS="l">95</TD><TD>                                                errorMessage = XMLCatalogMessages.UI_WARNING_URI_MUST_NOT_HAVE_DOTS;</TD></TR><TR><TD CLASS="l">96</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">97</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">98</TD><TD>                                        String uri = fileName;</TD></TR><TR CLASS="z"><TD CLASS="l">99</TD><TD>                                        if (!URIHelper.hasProtocol(uri)) {</TD></TR><TR CLASS="z"><TD CLASS="l">100</TD><TD>                                                URIHelper.isAbsolute(uri);</TD></TR><TR CLASS="z"><TD CLASS="l">101</TD><TD>                                                uri = (URIHelper.isAbsolute(uri)) ? URIHelper.prependFileProtocol(uri) : URIHelper.prependPlatformResourceProtocol(uri);</TD></TR><TR><TD CLASS="l">102</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">103</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">104</TD><TD>                                        if ((errorMessage == null) &amp;&amp; !URIHelper.isReadableURI(uri, false)) {</TD></TR><TR CLASS="z"><TD CLASS="l">105</TD><TD>                                                errorMessage = XMLCatalogMessages.UI_WARNING_URI_NOT_FOUND_COLON + fileName;</TD></TR><TR><TD CLASS="l">106</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">107</TD><TD>                                }</TD></TR><TR><TD CLASS="l">108</TD><TD>                                else {</TD></TR><TR><TD CLASS="l">109</TD><TD>                                        // this an error that is not actaully</TD></TR><TR><TD CLASS="l">110</TD><TD>                                        // reported ... OK is just disabled</TD></TR><TR CLASS="z"><TD CLASS="l">111</TD><TD>                                        errorMessage = &#34;&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">112</TD><TD>                                }</TD></TR><TR><TD CLASS="l">113</TD><TD> </TD></TR><TR><TD CLASS="l">114</TD><TD>                                // Make sure the key is a fully qualified URI in the cases</TD></TR><TR><TD CLASS="l">115</TD><TD>                                // where the key type is &#34;System ID&#34; or &#34;Schema location&#34;</TD></TR><TR CLASS="z"><TD CLASS="l">116</TD><TD>                                if ((keyField.getText().length() &gt; 0) &amp;&amp; (getKeyType() == ICatalogEntry.ENTRY_TYPE_SYSTEM)) {</TD></TR><TR CLASS="z"><TD CLASS="l">117</TD><TD>                                        URI uri = URI.createURI(keyField.getText());</TD></TR><TR CLASS="z"><TD CLASS="l">118</TD><TD>                                        if (uri.scheme() == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">119</TD><TD>                                                warningMessage = XMLCatalogMessages.UI_WARNING_SHOULD_BE_FULLY_QUALIFIED_URI;</TD></TR><TR><TD CLASS="l">120</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">121</TD><TD>                                }</TD></TR><TR><TD CLASS="l">122</TD><TD>                        }</TD></TR><TR><TD CLASS="l">123</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">124</TD><TD>                        if ((errorMessage == null) &amp;&amp; checkboxButton.getSelection() &amp;&amp; (webAddressField.getText().trim().length() == 0)) {</TD></TR><TR><TD CLASS="l">125</TD><TD>                                // this an error that is not actaully</TD></TR><TR><TD CLASS="l">126</TD><TD>                                // reported ... OK is just disabled</TD></TR><TR CLASS="z"><TD CLASS="l">127</TD><TD>                                errorMessage = &#34;&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">128</TD><TD>                        }</TD></TR><TR><TD CLASS="l">129</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">130</TD><TD>                        if ((errorMessage == null) &amp;&amp; (keyField.getText().trim().length() == 0)) {</TD></TR><TR><TD CLASS="l">131</TD><TD>                                // this an error that is not actaully</TD></TR><TR><TD CLASS="l">132</TD><TD>                                // reported ... OK is just disabled</TD></TR><TR CLASS="z"><TD CLASS="l">133</TD><TD>                                errorMessage = &#34;&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">134</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="19">135</A></TD><TD>                }</TD></TR><TR><TD CLASS="l">136</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="1b">137</A></TD><TD>                protected Control createCatalogEntryPanel(Composite parent) {</TD></TR><TR><TD CLASS="l">138</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">139</TD><TD>                        ModifyListener modifyListener = new ModifyListener() {</TD></TR><TR><TD CLASS="l">140</TD><TD>                                public void modifyText(ModifyEvent e) {</TD></TR><TR CLASS="z"><TD CLASS="l">141</TD><TD>                                        if (e.widget == resourceLocationField) {</TD></TR><TR CLASS="z"><TD CLASS="l">142</TD><TD>                                                if (keyField.getText().length() == 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">143</TD><TD>                                                        String uri = resourceLocationField.getText();</TD></TR><TR CLASS="z"><TD CLASS="l">144</TD><TD>                                                        if (uri.endsWith(&#34;xsd&#34;) &amp;&amp; !URIHelper.hasProtocol(uri)) { //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">145</TD><TD>                                                                uri = URIHelper.isAbsolute(uri) ? URIHelper.prependFileProtocol(uri) : URIHelper.prependPlatformResourceProtocol(uri);</TD></TR><TR CLASS="z"><TD CLASS="l">146</TD><TD>                                                                String namespaceURI = XMLQuickScan.getTargetNamespaceURIForSchema(uri);</TD></TR><TR CLASS="z"><TD CLASS="l">147</TD><TD>                                                                if (namespaceURI != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">148</TD><TD>                                                                        keyField.setText(namespaceURI);</TD></TR><TR><TD CLASS="l">149</TD><TD>                                                                }</TD></TR><TR><TD CLASS="l">150</TD><TD>                                                        }</TD></TR><TR><TD CLASS="l">151</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">152</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">153</TD><TD>                                        updateWidgets(e.widget);</TD></TR><TR CLASS="z"><TD CLASS="l">154</TD><TD>                                }</TD></TR><TR><TD CLASS="l">155</TD><TD>                        };</TD></TR><TR><TD CLASS="l">156</TD><TD> </TD></TR><TR><TD CLASS="l">157</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">158</TD><TD>                        Composite composite = new Composite(parent, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">159</TD><TD>                        GridData gd = new GridData(GridData.FILL_BOTH);</TD></TR><TR CLASS="z"><TD CLASS="l">160</TD><TD>                        composite.setLayoutData(gd);</TD></TR><TR><TD CLASS="l">161</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">162</TD><TD>                        GridLayout layout = new GridLayout();</TD></TR><TR CLASS="z"><TD CLASS="l">163</TD><TD>                        composite.setLayout(layout);</TD></TR><TR><TD CLASS="l">164</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">165</TD><TD>                        Composite group = new Composite(composite, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">166</TD><TD>                        gd = new GridData(GridData.FILL_HORIZONTAL);</TD></TR><TR CLASS="z"><TD CLASS="l">167</TD><TD>                        group.setLayoutData(gd);</TD></TR><TR><TD CLASS="l">168</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">169</TD><TD>                        layout = new GridLayout(2, false);</TD></TR><TR CLASS="z"><TD CLASS="l">170</TD><TD>                        group.setLayout(layout);</TD></TR><TR><TD CLASS="l">171</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">172</TD><TD>                        Label resourceLocationLabel = new Label(group, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">173</TD><TD>                        resourceLocationLabel.setText(XMLCatalogMessages.UI_LABEL_LOCATION_COLON);</TD></TR><TR><TD CLASS="l">174</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">175</TD><TD>                        resourceLocationField = new Text(group, SWT.SINGLE | SWT.BORDER);</TD></TR><TR CLASS="z"><TD CLASS="l">176</TD><TD>                        gd = new GridData();</TD></TR><TR CLASS="z"><TD CLASS="l">177</TD><TD>                        gd.horizontalAlignment = SWT.FILL;</TD></TR><TR CLASS="z"><TD CLASS="l">178</TD><TD>                        gd.grabExcessHorizontalSpace = true;</TD></TR><TR CLASS="z"><TD CLASS="l">179</TD><TD>                        resourceLocationField.setLayoutData(gd);</TD></TR><TR><TD CLASS="l">180</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">181</TD><TD>                        resourceLocationField.setText(getDisplayValue(URIUtils.convertURIToLocation(getEntry().getURI())));</TD></TR><TR><TD CLASS="l">182</TD><TD> </TD></TR><TR><TD CLASS="l">183</TD><TD>                        // WorkbenchHelp.setHelp(resourceLocationField,</TD></TR><TR><TD CLASS="l">184</TD><TD>                        // XMLBuilderContextIds.XMLP_ENTRY_URI);</TD></TR><TR CLASS="z"><TD CLASS="l">185</TD><TD>                        resourceLocationField.addModifyListener(modifyListener);</TD></TR><TR><TD CLASS="l">186</TD><TD> </TD></TR><TR><TD CLASS="l">187</TD><TD>                        // WorkbenchHelp.setHelp(browseButton,</TD></TR><TR><TD CLASS="l">188</TD><TD>                        // XMLBuilderContextIds.XMLP_ENTRY_BROWSE);</TD></TR><TR><TD CLASS="l">189</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">190</TD><TD>                        Composite browseButtonsComposite = new Composite(group, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">191</TD><TD>                        gd = new GridData(GridData.FILL_HORIZONTAL);</TD></TR><TR CLASS="z"><TD CLASS="l">192</TD><TD>                        gd.horizontalSpan = 2;</TD></TR><TR CLASS="z"><TD CLASS="l">193</TD><TD>                        gd.horizontalAlignment = GridData.END;</TD></TR><TR CLASS="z"><TD CLASS="l">194</TD><TD>                        browseButtonsComposite.setLayoutData(gd);</TD></TR><TR><TD CLASS="l">195</TD><TD>                        </TD></TR><TR CLASS="z"><TD CLASS="l">196</TD><TD>                        layout = new GridLayout();</TD></TR><TR CLASS="z"><TD CLASS="l">197</TD><TD>                        layout.numColumns = 2;</TD></TR><TR CLASS="z"><TD CLASS="l">198</TD><TD>                        layout.marginWidth = 0;</TD></TR><TR CLASS="z"><TD CLASS="l">199</TD><TD>                        layout.marginHeight = 0;</TD></TR><TR CLASS="z"><TD CLASS="l">200</TD><TD>                        layout.marginBottom = 5;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="1c">201</A></TD><TD>                        browseButtonsComposite.setLayout(layout);</TD></TR><TR><TD CLASS="l">202</TD><TD>                        </TD></TR><TR CLASS="z"><TD CLASS="l">203</TD><TD>                        browseWorkspaceButton = new Button(browseButtonsComposite, SWT.PUSH);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="1e">204</A></TD><TD>                        browseWorkspaceButton.setText(XMLCatalogMessages.UI_BUTTON_MENU_BROWSE_WORKSPACE);</TD></TR><TR CLASS="z"><TD CLASS="l">205</TD><TD>                        browseWorkspaceButton.addSelectionListener(new SelectionListener(){</TD></TR><TR><TD CLASS="l">206</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="1f">207</A></TD><TD>                                public void widgetDefaultSelected(SelectionEvent e) {</TD></TR><TR CLASS="z"><TD CLASS="l">208</TD><TD>                                }</TD></TR><TR><TD CLASS="l">209</TD><TD> </TD></TR><TR><TD CLASS="l">210</TD><TD>                                public void widgetSelected(SelectionEvent e) {</TD></TR><TR CLASS="z"><TD CLASS="l">211</TD><TD>                                        String value = invokeWorkspaceFileSelectionDialog();</TD></TR><TR CLASS="z"><TD CLASS="l">212</TD><TD>                                        if(value != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">213</TD><TD>                                                resourceLocationField.setText(value);</TD></TR><TR><TD CLASS="l">214</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">215</TD><TD>                                }</TD></TR><TR><TD CLASS="l"><A NAME="20">216</A></TD><TD>                        });</TD></TR><TR><TD CLASS="l">217</TD><TD>                        </TD></TR><TR CLASS="z"><TD CLASS="l">218</TD><TD>                        browseFileSystemButton = new Button(browseButtonsComposite, SWT.PUSH);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="22">219</A></TD><TD>                        browseFileSystemButton.setText(XMLCatalogMessages.UI_BUTTON_MENU_BROWSE_FILE_SYSTEM);</TD></TR><TR CLASS="z"><TD CLASS="l">220</TD><TD>                        browseFileSystemButton.addSelectionListener(new SelectionListener(){</TD></TR><TR><TD CLASS="l">221</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="23">222</A></TD><TD>                                public void widgetDefaultSelected(SelectionEvent e) {</TD></TR><TR CLASS="z"><TD CLASS="l">223</TD><TD>                                }</TD></TR><TR><TD CLASS="l">224</TD><TD> </TD></TR><TR><TD CLASS="l">225</TD><TD>                                public void widgetSelected(SelectionEvent e) {</TD></TR><TR CLASS="z"><TD CLASS="l">226</TD><TD>                                        String value = invokeFileSelectionDialog();</TD></TR><TR CLASS="z"><TD CLASS="l">227</TD><TD>                                        if(value != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">228</TD><TD>                                                resourceLocationField.setText(value);</TD></TR><TR><TD CLASS="l">229</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">230</TD><TD>                                }</TD></TR><TR><TD CLASS="l">231</TD><TD>                        });</TD></TR><TR><TD CLASS="l">232</TD><TD>                        </TD></TR><TR><TD CLASS="l">233</TD><TD>                        // Key Type</TD></TR><TR><TD CLASS="l">234</TD><TD>                        //</TD></TR><TR CLASS="z"><TD CLASS="l">235</TD><TD>                        Label keyTypeLabel = new Label(group, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">236</TD><TD>                        keyTypeLabel.setText(XMLCatalogMessages.UI_KEY_TYPE_COLON);</TD></TR><TR><TD CLASS="l">237</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">238</TD><TD>                        keyTypeCombo = new Combo(group, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">239</TD><TD>                        gd = new GridData();</TD></TR><TR CLASS="z"><TD CLASS="l">240</TD><TD>                        gd.horizontalAlignment = SWT.FILL;</TD></TR><TR CLASS="z"><TD CLASS="l">241</TD><TD>                        gd.grabExcessHorizontalSpace = true;</TD></TR><TR CLASS="z"><TD CLASS="l">242</TD><TD>                        keyTypeCombo.setLayoutData(gd);</TD></TR><TR CLASS="z"><TD CLASS="l">243</TD><TD>                        updateKeyTypeCombo(getEntry().getEntryType());</TD></TR><TR CLASS="z"><TD CLASS="l">244</TD><TD>                        keyTypeCombo.addModifyListener(modifyListener);</TD></TR><TR><TD CLASS="l">245</TD><TD>                        // WorkbenchHelp.setHelp(keyTypeCombo,</TD></TR><TR><TD CLASS="l">246</TD><TD>                        // XMLBuilderContextIds.XMLP_ENTRY_KEY_TYPE);</TD></TR><TR><TD CLASS="l">247</TD><TD> </TD></TR><TR><TD CLASS="l">248</TD><TD>                        // Key</TD></TR><TR><TD CLASS="l">249</TD><TD>                        // </TD></TR><TR CLASS="z"><TD CLASS="l">250</TD><TD>                        Label keyValueLabel = new Label(group, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">251</TD><TD>                        keyValueLabel.setText(XMLCatalogMessages.UI_LABEL_KEY_COLON);</TD></TR><TR CLASS="z"><TD CLASS="l">252</TD><TD>                        keyField = new Text(group, SWT.SINGLE | SWT.BORDER);</TD></TR><TR><TD CLASS="l">253</TD><TD>                        // WorkbenchHelp.setHelp(keyField,</TD></TR><TR><TD CLASS="l">254</TD><TD>                        // XMLBuilderContextIds.XMLP_ENTRY_KEY);</TD></TR><TR CLASS="z"><TD CLASS="l">255</TD><TD>                        keyField.setLayoutData(gd);</TD></TR><TR CLASS="z"><TD CLASS="l">256</TD><TD>                        keyField.setText(getDisplayValue(getEntry().getKey()));</TD></TR><TR CLASS="z"><TD CLASS="l">257</TD><TD>                        keyField.addModifyListener(modifyListener);</TD></TR><TR><TD CLASS="l">258</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">259</TD><TD>                        Composite group2 = new Composite(composite, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">260</TD><TD>                        gd = new GridData(GridData.FILL_HORIZONTAL);</TD></TR><TR CLASS="z"><TD CLASS="l">261</TD><TD>                        group2.setLayoutData(gd);</TD></TR><TR><TD CLASS="l">262</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">263</TD><TD>                        layout = new GridLayout();</TD></TR><TR CLASS="z"><TD CLASS="l">264</TD><TD>                        group2.setLayout(layout);</TD></TR><TR><TD CLASS="l">265</TD><TD> </TD></TR><TR><TD CLASS="l">266</TD><TD>                        // checkbox -- note parent is dialogArea</TD></TR><TR><TD CLASS="l">267</TD><TD>                        //</TD></TR><TR CLASS="z"><TD CLASS="l">268</TD><TD>                        checkboxButton = new Button(group2, SWT.CHECK);</TD></TR><TR><TD CLASS="l">269</TD><TD>                        // WorkbenchHelp.setHelp(checkboxButton,</TD></TR><TR><TD CLASS="l"><A NAME="24">270</A></TD><TD>                        // XMLBuilderContextIds.XMLP_ENTRY_SPECIFY_ALTERNATIVE);</TD></TR><TR CLASS="z"><TD CLASS="l">271</TD><TD>                        checkboxButton.setText(XMLCatalogMessages.UI_LABEL_SPECIFY_ALTERNATIVE_WEB_URL);</TD></TR><TR CLASS="z"><TD CLASS="l">272</TD><TD>                        checkboxButton.setLayoutData(new GridData());</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="26">273</A></TD><TD>                        checkboxButton.setSelection(getEntry().getAttributeValue(ICatalogEntry.ATTR_WEB_URL) != null);</TD></TR><TR CLASS="z"><TD CLASS="l">274</TD><TD>                        SelectionListener buttonListener = new SelectionListener() {</TD></TR><TR><TD CLASS="l">275</TD><TD>                                public void widgetDefaultSelected(SelectionEvent event) {</TD></TR><TR><TD CLASS="l"><A NAME="27">276</A></TD><TD>                                        // no impl</TD></TR><TR CLASS="z"><TD CLASS="l">277</TD><TD>                                }</TD></TR><TR><TD CLASS="l">278</TD><TD> </TD></TR><TR><TD CLASS="l">279</TD><TD>                                public void widgetSelected(SelectionEvent event) {</TD></TR><TR CLASS="z"><TD CLASS="l">280</TD><TD>                                        if (event.widget == checkboxButton) {</TD></TR><TR CLASS="z"><TD CLASS="l">281</TD><TD>                                                updateWidgets(checkboxButton);</TD></TR><TR><TD CLASS="l">282</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">283</TD><TD>                                }</TD></TR><TR><TD CLASS="l">284</TD><TD>                        };</TD></TR><TR CLASS="z"><TD CLASS="l">285</TD><TD>                        checkboxButton.addSelectionListener(buttonListener);</TD></TR><TR><TD CLASS="l"><A NAME="28">286</A></TD><TD> </TD></TR><TR><TD CLASS="l">287</TD><TD>                        // Web Address field</TD></TR><TR><TD CLASS="l">288</TD><TD>                        //</TD></TR><TR><TD CLASS="l">289</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">290</TD><TD>                        ModifyListener webAddressFieldListener = new ModifyListener() {</TD></TR><TR><TD CLASS="l"><A NAME="2a">291</A></TD><TD>                                public void modifyText(ModifyEvent e) {</TD></TR><TR CLASS="z"><TD CLASS="l">292</TD><TD>                                        computeErrorMessage();</TD></TR><TR CLASS="z"><TD CLASS="l">293</TD><TD>                                        updateErrorMessageLabel(errorMessageLabel);</TD></TR><TR CLASS="z"><TD CLASS="l">294</TD><TD>                                        updateOKButtonState();</TD></TR><TR CLASS="z"><TD CLASS="l">295</TD><TD>                                }</TD></TR><TR><TD CLASS="l">296</TD><TD>                        };</TD></TR><TR><TD CLASS="l">297</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">298</TD><TD>                        webAddressField = new Text(group2, SWT.SINGLE | SWT.BORDER);</TD></TR><TR><TD CLASS="l">299</TD><TD>                        // WorkbenchHelp.setHelp(webAddressField,</TD></TR><TR><TD CLASS="l">300</TD><TD>                        // XMLBuilderContextIds.XMLP_ENTRY_WEB_ADDRESS);</TD></TR><TR CLASS="z"><TD CLASS="l">301</TD><TD>                        webAddressField.setLayoutData(gd);</TD></TR><TR CLASS="z"><TD CLASS="l">302</TD><TD>                        webAddressField.setText(getDisplayValue(getEntry().getAttributeValue(ICatalogEntry.ATTR_WEB_URL)));</TD></TR><TR CLASS="z"><TD CLASS="l">303</TD><TD>                        webAddressField.setEnabled(false);</TD></TR><TR CLASS="z"><TD CLASS="l">304</TD><TD>                        webAddressField.addModifyListener(webAddressFieldListener);</TD></TR><TR><TD CLASS="l">305</TD><TD> </TD></TR><TR><TD CLASS="l">306</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">307</TD><TD>                        errorMessageLabel = new Label(group2, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">308</TD><TD>                        errorMessageLabel.setForeground(color);</TD></TR><TR CLASS="z"><TD CLASS="l">309</TD><TD>                        errorMessageLabel.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));</TD></TR><TR><TD CLASS="l">310</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">311</TD><TD>                        updateWidgets(null);</TD></TR><TR><TD CLASS="l">312</TD><TD>                        </TD></TR><TR CLASS="z"><TD CLASS="l">313</TD><TD>                        key = getEntry().getKey();</TD></TR><TR CLASS="z"><TD CLASS="l">314</TD><TD>                        type = getEntry().getEntryType();</TD></TR><TR><TD CLASS="l">315</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">316</TD><TD>                        return composite;</TD></TR><TR><TD CLASS="l"><A NAME="3d">317</A></TD><TD>                }</TD></TR><TR><TD CLASS="l">318</TD><TD> </TD></TR><TR><TD CLASS="l">319</TD><TD>                public Control createControl(Composite parent) {</TD></TR><TR><TD CLASS="l">320</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">321</TD><TD>                        fControl = createCatalogEntryPanel(parent);</TD></TR><TR><TD CLASS="l">322</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">323</TD><TD>                        return fControl;</TD></TR><TR><TD CLASS="l"><A NAME="3e">324</A></TD><TD>                }</TD></TR><TR><TD CLASS="l">325</TD><TD> </TD></TR><TR><TD CLASS="l">326</TD><TD> </TD></TR><TR><TD CLASS="l">327</TD><TD>                public ICatalogElement getData() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3f">328</A></TD><TD>                        return getEntry();</TD></TR><TR><TD CLASS="l">329</TD><TD>                }</TD></TR><TR><TD CLASS="l">330</TD><TD> </TD></TR><TR><TD CLASS="l">331</TD><TD>                protected ICatalogEntry getEntry() {</TD></TR><TR CLASS="z"><TD CLASS="l">332</TD><TD>                        if (catalogEntry == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">333</TD><TD>                                if ((fCatalogElement != null) &amp;&amp; (fCatalogElement.getType() == ICatalogElement.TYPE_ENTRY)) {</TD></TR><TR CLASS="z"><TD CLASS="l">334</TD><TD>                                        catalogEntry = (ICatalogEntry) fCatalogElement;</TD></TR><TR><TD CLASS="l">335</TD><TD>                                }</TD></TR><TR><TD CLASS="l">336</TD><TD>                                else {</TD></TR><TR CLASS="z"><TD CLASS="l">337</TD><TD>                                        if (catalog != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">338</TD><TD>                                                catalogEntry = (ICatalogEntry) catalog.createCatalogElement(ICatalogElement.TYPE_ENTRY);</TD></TR><TR><TD CLASS="l">339</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">340</TD><TD>                                }</TD></TR><TR><TD CLASS="l">341</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="40">342</A></TD><TD>                        return catalogEntry;</TD></TR><TR><TD CLASS="l">343</TD><TD>                }</TD></TR><TR><TD CLASS="l">344</TD><TD> </TD></TR><TR><TD CLASS="l">345</TD><TD>                protected int getKeyType() {</TD></TR><TR CLASS="z"><TD CLASS="l">346</TD><TD>                        switch (keyTypeCombo.getSelectionIndex()) {</TD></TR><TR><TD CLASS="l">347</TD><TD>                                case 0 :</TD></TR><TR CLASS="z"><TD CLASS="l">348</TD><TD>                                        if (&#34;schema&#34;.equals(keyTypeCombo.getData(&#34;keyType&#34;))) { //$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR CLASS="z"><TD CLASS="l">349</TD><TD>                                                return ICatalogEntry.ENTRY_TYPE_URI; // xsd</TD></TR><TR><TD CLASS="l">350</TD><TD>                                                                                                                                // namespace</TD></TR><TR><TD CLASS="l">351</TD><TD>                                                                                                                                // is URI type</TD></TR><TR><TD CLASS="l">352</TD><TD>                                                                                                                                // key</TD></TR><TR><TD CLASS="l">353</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">354</TD><TD>                                        return ICatalogEntry.ENTRY_TYPE_PUBLIC;</TD></TR><TR><TD CLASS="l">355</TD><TD>                                case 1 :</TD></TR><TR CLASS="z"><TD CLASS="l">356</TD><TD>                                        return ICatalogEntry.ENTRY_TYPE_SYSTEM;</TD></TR><TR><TD CLASS="l">357</TD><TD>                                case 2 :</TD></TR><TR CLASS="z"><TD CLASS="l">358</TD><TD>                                        return ICatalogEntry.ENTRY_TYPE_URI;</TD></TR><TR><TD CLASS="l">359</TD><TD>                                default :</TD></TR><TR CLASS="z"><TD CLASS="l">360</TD><TD>                                        return ICatalogEntry.ENTRY_TYPE_PUBLIC;</TD></TR><TR><TD CLASS="l"><A NAME="41">361</A></TD><TD>                        }</TD></TR><TR><TD CLASS="l">362</TD><TD>                }</TD></TR><TR><TD CLASS="l">363</TD><TD> </TD></TR><TR><TD CLASS="l">364</TD><TD>                public void saveData() {</TD></TR><TR CLASS="z"><TD CLASS="l">365</TD><TD>                        if (validateData()) {</TD></TR><TR CLASS="z"><TD CLASS="l">366</TD><TD>                                getEntry().setURI(URIUtils.convertLocationToURI(resourceLocationField.getText()));</TD></TR><TR CLASS="z"><TD CLASS="l">367</TD><TD>                                getEntry().setKey(keyField.getText());</TD></TR><TR CLASS="z"><TD CLASS="l">368</TD><TD>                                getEntry().setEntryType(getKeyType());</TD></TR><TR CLASS="z"><TD CLASS="l">369</TD><TD>                                getEntry().setAttributeValue(ICatalogEntry.ATTR_WEB_URL, checkboxButton.getSelection() ? webAddressField.getText() : null);</TD></TR><TR CLASS="z"><TD CLASS="l">370</TD><TD>                                dataSaved = true;</TD></TR><TR><TD CLASS="l">371</TD><TD>                        }</TD></TR><TR><TD CLASS="l">372</TD><TD>                        else {</TD></TR><TR CLASS="z"><TD CLASS="l">373</TD><TD>                                errorMessage = XMLCatalogMessages.UI_WARNING_DUPLICATE_ENTRY;</TD></TR><TR CLASS="z"><TD CLASS="l">374</TD><TD>                                errorMessageLabel.setText(errorMessage);</TD></TR><TR CLASS="z"><TD CLASS="l">375</TD><TD>                                updateOKButtonState();</TD></TR><TR CLASS="z"><TD CLASS="l">376</TD><TD>                                dataSaved = false;</TD></TR><TR><TD CLASS="l">377</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">378</TD><TD>                }</TD></TR><TR><TD CLASS="l">379</TD><TD>                </TD></TR><TR><TD CLASS="l">380</TD><TD>                /**</TD></TR><TR><TD CLASS="l">381</TD><TD>                 * Validates that the data entered does not conflict with an existing entry in either catalog.</TD></TR><TR><TD CLASS="l"><A NAME="45">382</A></TD><TD>                 * @return True if validated, false otherwise.</TD></TR><TR><TD CLASS="l">383</TD><TD>                 */</TD></TR><TR><TD CLASS="l">384</TD><TD>                protected boolean validateData() {</TD></TR><TR><TD CLASS="l">385</TD><TD>                </TD></TR><TR CLASS="z"><TD CLASS="l">386</TD><TD>                        String result = null;</TD></TR><TR CLASS="z"><TD CLASS="l">387</TD><TD>                        if (key == null || !key.equals(keyField.getText()) || type != getKeyType())</TD></TR><TR><TD CLASS="l">388</TD><TD>                        {</TD></TR><TR><TD CLASS="l">389</TD><TD>                                // get system catalog</TD></TR><TR CLASS="z"><TD CLASS="l">390</TD><TD>                                ICatalog systemCatalog = null;                        </TD></TR><TR CLASS="z"><TD CLASS="l">391</TD><TD>                                ICatalog defaultCatalog = XMLCorePlugin.getDefault().getDefaultXMLCatalog();</TD></TR><TR CLASS="z"><TD CLASS="l">392</TD><TD>                                INextCatalog[] nextCatalogs = defaultCatalog.getNextCatalogs();</TD></TR><TR CLASS="z"><TD CLASS="l">393</TD><TD>                                for (int i = 0; i &lt; nextCatalogs.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">394</TD><TD>                                        INextCatalog catalog = nextCatalogs[i];</TD></TR><TR CLASS="z"><TD CLASS="l">395</TD><TD>                                        ICatalog referencedCatalog = catalog.getReferencedCatalog();</TD></TR><TR CLASS="z"><TD CLASS="l">396</TD><TD>                                        if (referencedCatalog != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">397</TD><TD>                                                if (XMLCorePlugin.SYSTEM_CATALOG_ID.equals(referencedCatalog.getId())) {</TD></TR><TR CLASS="z"><TD CLASS="l">398</TD><TD>                                                        systemCatalog = referencedCatalog;</TD></TR><TR><TD CLASS="l">399</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">400</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">401</TD><TD>                                }</TD></TR><TR><TD CLASS="l">402</TD><TD>                                </TD></TR><TR><TD CLASS="l">403</TD><TD>                                try {</TD></TR><TR CLASS="z"><TD CLASS="l">404</TD><TD>                                        switch( getKeyType() )</TD></TR><TR><TD CLASS="l">405</TD><TD>                                        {</TD></TR><TR><TD CLASS="l">406</TD><TD>                                        case ICatalogEntry.ENTRY_TYPE_PUBLIC:</TD></TR><TR CLASS="z"><TD CLASS="l">407</TD><TD>                                                result = catalog.resolvePublic(keyField.getText(), null);                </TD></TR><TR CLASS="z"><TD CLASS="l">408</TD><TD>                                                if (result == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">409</TD><TD>                                                        result = systemCatalog.resolvePublic(keyField.getText(), null);</TD></TR><TR><TD CLASS="l">410</TD><TD>                                                }</TD></TR><TR CLASS="z"><TD CLASS="l">411</TD><TD>                                                break;</TD></TR><TR><TD CLASS="l">412</TD><TD>                                        case ICatalogEntry.ENTRY_TYPE_SYSTEM:</TD></TR><TR CLASS="z"><TD CLASS="l">413</TD><TD>                                                result = catalog.resolveSystem(keyField.getText());</TD></TR><TR CLASS="z"><TD CLASS="l">414</TD><TD>                                                if (result == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">415</TD><TD>                                                        result = systemCatalog.resolveSystem(keyField.getText());</TD></TR><TR><TD CLASS="l">416</TD><TD>                                                }</TD></TR><TR CLASS="z"><TD CLASS="l">417</TD><TD>                                                break;</TD></TR><TR><TD CLASS="l">418</TD><TD>                                        case ICatalogEntry.ENTRY_TYPE_URI:</TD></TR><TR CLASS="z"><TD CLASS="l">419</TD><TD>                                                result = catalog.resolveURI(keyField.getText());</TD></TR><TR CLASS="z"><TD CLASS="l">420</TD><TD>                                                if (result == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">421</TD><TD>                                                        result = systemCatalog.resolveURI(keyField.getText());</TD></TR><TR><TD CLASS="l">422</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">423</TD><TD>                                                break;</TD></TR><TR CLASS="z"><TD CLASS="l">424</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">425</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">426</TD><TD>                                catch (Exception e) {</TD></TR><TR><TD CLASS="l">427</TD><TD>                                }</TD></TR><TR><TD CLASS="l">428</TD><TD>                        }</TD></TR><TR><TD CLASS="l">429</TD><TD>                        </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="42">430</A></TD><TD>                        return (result == null);</TD></TR><TR><TD CLASS="l">431</TD><TD>                }</TD></TR><TR><TD CLASS="l">432</TD><TD> </TD></TR><TR><TD CLASS="l">433</TD><TD>                protected void updateKeyTypeCombo(int type) {</TD></TR><TR CLASS="z"><TD CLASS="l">434</TD><TD>                        keyTypeCombo.removeAll();</TD></TR><TR CLASS="z"><TD CLASS="l">435</TD><TD>                        for (Iterator i = CatalogFileTypeRegistryReader.getXMLCatalogFileTypes().iterator(); i.hasNext();) {</TD></TR><TR CLASS="z"><TD CLASS="l">436</TD><TD>                                XMLCatalogFileType theFileType = (XMLCatalogFileType) i.next();</TD></TR><TR CLASS="z"><TD CLASS="l">437</TD><TD>                                if (theFileType.extensions != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">438</TD><TD>                                        for (Iterator j = theFileType.extensions.iterator(); j.hasNext();) {</TD></TR><TR CLASS="z"><TD CLASS="l">439</TD><TD>                                                String extension = (String) j.next();</TD></TR><TR CLASS="z"><TD CLASS="l">440</TD><TD>                                                if (resourceLocationField.getText().endsWith(extension)) {</TD></TR><TR CLASS="z"><TD CLASS="l">441</TD><TD>                                                        if (theFileType.description.equals(&#34;XSD Files&#34;)) { //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">442</TD><TD>                                                                keyTypeCombo.add(XMLCatalogMessages.UI_KEY_TYPE_DESCRIPTION_XSD_PUBLIC);</TD></TR><TR CLASS="z"><TD CLASS="l">443</TD><TD>                                                                keyTypeCombo.add(XMLCatalogMessages.UI_KEY_TYPE_DESCRIPTION_XSD_SYSTEM);</TD></TR><TR CLASS="z"><TD CLASS="l">444</TD><TD>                                                                keyTypeCombo.setData(&#34;keyType&#34;, &#34;schema&#34;); //$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR><TD CLASS="l">445</TD><TD>                                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">446</TD><TD>                                                        else if (theFileType.description.equals(&#34;DTD Files&#34;)) { //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">447</TD><TD>                                                                keyTypeCombo.add(XMLCatalogMessages.UI_KEY_TYPE_DESCRIPTION_DTD_PUBLIC);</TD></TR><TR CLASS="z"><TD CLASS="l">448</TD><TD>                                                                keyTypeCombo.add(XMLCatalogMessages.UI_KEY_TYPE_DESCRIPTION_DTD_SYSTEM);</TD></TR><TR CLASS="z"><TD CLASS="l">449</TD><TD>                                                                keyTypeCombo.add(XMLCatalogMessages.UI_KEY_TYPE_DESCRIPTION_URI);</TD></TR><TR><TD CLASS="l">450</TD><TD>                                                        }</TD></TR><TR><TD CLASS="l">451</TD><TD>                                                        else {</TD></TR><TR CLASS="z"><TD CLASS="l">452</TD><TD>                                                                keyTypeCombo.add(XMLCatalogMessages.UI_KEY_TYPE_DESCRIPTION_URI);</TD></TR><TR><TD CLASS="l">453</TD><TD>                                                        }</TD></TR><TR><TD CLASS="l">454</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">455</TD><TD> </TD></TR><TR><TD CLASS="l">456</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">457</TD><TD> </TD></TR><TR><TD CLASS="l">458</TD><TD>                                }</TD></TR><TR><TD CLASS="l">459</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">460</TD><TD>                        if (keyTypeCombo.getItemCount() == 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">461</TD><TD>                                keyTypeCombo.add(XMLCatalogMessages.UI_KEY_TYPE_DESCRIPTION_DTD_PUBLIC);</TD></TR><TR CLASS="z"><TD CLASS="l">462</TD><TD>                                keyTypeCombo.add(XMLCatalogMessages.UI_KEY_TYPE_DESCRIPTION_DTD_SYSTEM);</TD></TR><TR CLASS="z"><TD CLASS="l">463</TD><TD>                                keyTypeCombo.add(XMLCatalogMessages.UI_KEY_TYPE_DESCRIPTION_URI);</TD></TR><TR><TD CLASS="l">464</TD><TD>                        }</TD></TR><TR><TD CLASS="l">465</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">466</TD><TD>                        switch (type) {</TD></TR><TR><TD CLASS="l">467</TD><TD>                                case ICatalogEntry.ENTRY_TYPE_PUBLIC :</TD></TR><TR CLASS="z"><TD CLASS="l">468</TD><TD>                                        keyTypeCombo.select(0);</TD></TR><TR CLASS="z"><TD CLASS="l">469</TD><TD>                                        break;</TD></TR><TR><TD CLASS="l">470</TD><TD>                                case ICatalogEntry.ENTRY_TYPE_SYSTEM :</TD></TR><TR CLASS="z"><TD CLASS="l">471</TD><TD>                                        keyTypeCombo.select(1);</TD></TR><TR CLASS="z"><TD CLASS="l">472</TD><TD>                                        break;</TD></TR><TR><TD CLASS="l">473</TD><TD>                                case ICatalogEntry.ENTRY_TYPE_URI : // handle XML Schema,</TD></TR><TR><TD CLASS="l">474</TD><TD>                                                                                                        // where namespace name is</TD></TR><TR><TD CLASS="l">475</TD><TD>                                                                                                        // mapped to URI situation</TD></TR><TR CLASS="z"><TD CLASS="l">476</TD><TD>                                        if (&#34;schema&#34;.equals(keyTypeCombo.getData(&#34;keyType&#34;))) { //$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR CLASS="z"><TD CLASS="l">477</TD><TD>                                                keyTypeCombo.select(0); // namespace name as URI key</TD></TR><TR><TD CLASS="l">478</TD><TD>                                                                                                // type</TD></TR><TR><TD CLASS="l">479</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">480</TD><TD>                                        else {</TD></TR><TR CLASS="z"><TD CLASS="l">481</TD><TD>                                                keyTypeCombo.select(2); // URI key type</TD></TR><TR><TD CLASS="l">482</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">483</TD><TD>                                        break;</TD></TR><TR><TD CLASS="l">484</TD><TD>                                default :</TD></TR><TR CLASS="z"><TD CLASS="l">485</TD><TD>                                        if (keyTypeCombo.getItemCount() &gt; 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">486</TD><TD>                                                keyTypeCombo.select(0);</TD></TR><TR><TD CLASS="l">487</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">488</TD><TD>                                        break;</TD></TR><TR><TD CLASS="l">489</TD><TD>                        }</TD></TR><TR><TD CLASS="l"><A NAME="43">490</A></TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">491</TD><TD>                }</TD></TR><TR><TD CLASS="l">492</TD><TD> </TD></TR><TR><TD CLASS="l">493</TD><TD>                protected void updateWebAddressWidgets(int keyType) {</TD></TR><TR CLASS="z"><TD CLASS="l">494</TD><TD>                        boolean isPublicKeyType = (keyType == ICatalogEntry.ENTRY_TYPE_PUBLIC);</TD></TR><TR CLASS="z"><TD CLASS="l">495</TD><TD>                        checkboxButton.setEnabled(isPublicKeyType);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="44">496</A></TD><TD>                        webAddressField.setEnabled(isPublicKeyType &amp;&amp; checkboxButton.getSelection());</TD></TR><TR CLASS="z"><TD CLASS="l">497</TD><TD>                }</TD></TR><TR><TD CLASS="l">498</TD><TD> </TD></TR><TR><TD CLASS="l">499</TD><TD>                protected void updateWidgets(Widget widget) {</TD></TR><TR CLASS="z"><TD CLASS="l">500</TD><TD>                        if (widget != keyTypeCombo) {</TD></TR><TR CLASS="z"><TD CLASS="l">501</TD><TD>                                updateKeyTypeCombo(getKeyType());</TD></TR><TR><TD CLASS="l">502</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">503</TD><TD>                        updateWebAddressWidgets(getKeyType());</TD></TR><TR CLASS="z"><TD CLASS="l">504</TD><TD>                        computeErrorMessage();</TD></TR><TR CLASS="z"><TD CLASS="l">505</TD><TD>                        updateErrorMessageLabel(errorMessageLabel);</TD></TR><TR CLASS="z"><TD CLASS="l">506</TD><TD>                        updateOKButtonState();</TD></TR><TR CLASS="z"><TD CLASS="l">507</TD><TD>                }</TD></TR><TR><TD CLASS="l">508</TD><TD> </TD></TR><TR><TD CLASS="l">509</TD><TD>        }</TD></TR><TR><TD CLASS="l">510</TD><TD> </TD></TR><TR><TD CLASS="l">511</TD><TD>        protected abstract class CatalogElementPage {</TD></TR><TR><TD CLASS="l"><A NAME="36">512</A></TD><TD> </TD></TR><TR><TD CLASS="l">513</TD><TD>                Control fControl;</TD></TR><TR><TD CLASS="l">514</TD><TD> </TD></TR><TR><TD CLASS="l">515</TD><TD>                public CatalogElementPage() {</TD></TR><TR CLASS="z"><TD CLASS="l">516</TD><TD>                        super();</TD></TR><TR><TD CLASS="l">517</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">518</TD><TD>                }</TD></TR><TR><TD CLASS="l"><A NAME="38">519</A></TD><TD> </TD></TR><TR><TD CLASS="l">520</TD><TD>                public abstract Control createControl(Composite parent);</TD></TR><TR><TD CLASS="l">521</TD><TD> </TD></TR><TR><TD CLASS="l">522</TD><TD>                public Control getControl() {</TD></TR><TR CLASS="z"><TD CLASS="l">523</TD><TD>                        return fControl;</TD></TR><TR><TD CLASS="l">524</TD><TD>                }</TD></TR><TR><TD CLASS="l">525</TD><TD> </TD></TR><TR><TD CLASS="l">526</TD><TD>                public abstract ICatalogElement getData();</TD></TR><TR><TD CLASS="l">527</TD><TD> </TD></TR><TR><TD CLASS="l">528</TD><TD>                public abstract void saveData();</TD></TR><TR><TD CLASS="l">529</TD><TD>        }</TD></TR><TR><TD CLASS="l">530</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="46">531</A></TD><TD>        protected class FilterableSelectSingleFileDialog extends SelectSingleFileDialog implements SelectionListener {</TD></TR><TR><TD CLASS="l">532</TD><TD>                protected Combo filterControl;</TD></TR><TR><TD CLASS="l">533</TD><TD> </TD></TR><TR><TD CLASS="l">534</TD><TD>                public FilterableSelectSingleFileDialog(Shell parentShell) {</TD></TR><TR CLASS="z"><TD CLASS="l">535</TD><TD>                        super(parentShell, null, true);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="48">536</A></TD><TD>                        setFilters(null);</TD></TR><TR CLASS="z"><TD CLASS="l">537</TD><TD>                }</TD></TR><TR><TD CLASS="l">538</TD><TD> </TD></TR><TR><TD CLASS="l">539</TD><TD>                public void createAndOpen() {</TD></TR><TR CLASS="z"><TD CLASS="l">540</TD><TD>                        this.create();</TD></TR><TR CLASS="z"><TD CLASS="l">541</TD><TD>                        setBlockOnOpen(true);</TD></TR><TR CLASS="z"><TD CLASS="l">542</TD><TD>                        getShell().setText(XMLCatalogMessages.UI_LABEL_FILE_SELECTION);</TD></TR><TR CLASS="z"><TD CLASS="l">543</TD><TD>                        this.setTitle(XMLCatalogMessages.UI_LABEL_SELECT_FILE);</TD></TR><TR CLASS="z"><TD CLASS="l">544</TD><TD>                        this.setMessage(XMLCatalogMessages.UI_LABEL_CHOOSE_FILE_TO_ADD_TO_CATALOG);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="49">545</A></TD><TD>                        open();</TD></TR><TR CLASS="z"><TD CLASS="l">546</TD><TD>                }</TD></TR><TR><TD CLASS="l">547</TD><TD> </TD></TR><TR><TD CLASS="l">548</TD><TD>                public void createFilterControl(Composite composite) {</TD></TR><TR CLASS="z"><TD CLASS="l">549</TD><TD>                        Label label = new Label(composite, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">550</TD><TD>                        label.setText(XMLCatalogMessages.UI_LABEL_SELECT_FILE_FILTER_CONTROL);</TD></TR><TR><TD CLASS="l">551</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">552</TD><TD>                        filterControl = new Combo(composite, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">553</TD><TD>                        GridData gd = new GridData(GridData.FILL_HORIZONTAL);</TD></TR><TR CLASS="z"><TD CLASS="l">554</TD><TD>                        filterControl.setLayoutData(gd);</TD></TR><TR><TD CLASS="l">555</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">556</TD><TD>                        filterControl.setText(XMLCatalogMessages.UI_TEXT_SELECT_FILE_FILTER_CONTROL);</TD></TR><TR CLASS="z"><TD CLASS="l">557</TD><TD>                        filterControl.add(XMLCatalogMessages.UI_TEXT_SELECT_FILE_FILTER_CONTROL);</TD></TR><TR><TD CLASS="l">558</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">559</TD><TD>                        for (Iterator i = CatalogFileTypeRegistryReader.getXMLCatalogFileTypes().iterator(); i.hasNext();) {</TD></TR><TR CLASS="z"><TD CLASS="l">560</TD><TD>                                XMLCatalogFileType fileType = (XMLCatalogFileType) i.next();</TD></TR><TR CLASS="z"><TD CLASS="l">561</TD><TD>                                if (fileType.description != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">562</TD><TD>                                        filterControl.add(fileType.description);</TD></TR><TR><TD CLASS="l">563</TD><TD>                                }</TD></TR><TR><TD CLASS="l">564</TD><TD>                        }</TD></TR><TR><TD CLASS="l">565</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4a">566</A></TD><TD>                        filterControl.addSelectionListener(this);</TD></TR><TR CLASS="z"><TD CLASS="l">567</TD><TD>                }</TD></TR><TR><TD CLASS="l">568</TD><TD> </TD></TR><TR><TD CLASS="l">569</TD><TD>                protected void setFilters(XMLCatalogFileType fileType) {</TD></TR><TR CLASS="z"><TD CLASS="l">570</TD><TD>                        if (fileType == null) {</TD></TR><TR><TD CLASS="l">571</TD><TD>                                // compute all the supported file extensions</TD></TR><TR CLASS="z"><TD CLASS="l">572</TD><TD>                                List list = new ArrayList();</TD></TR><TR CLASS="z"><TD CLASS="l">573</TD><TD>                                for (Iterator i = CatalogFileTypeRegistryReader.getXMLCatalogFileTypes().iterator(); i.hasNext();) {</TD></TR><TR CLASS="z"><TD CLASS="l">574</TD><TD>                                        XMLCatalogFileType theFileType = (XMLCatalogFileType) i.next();</TD></TR><TR CLASS="z"><TD CLASS="l">575</TD><TD>                                        if (theFileType.extensions != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">576</TD><TD>                                                list.addAll(theFileType.extensions);</TD></TR><TR><TD CLASS="l">577</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">578</TD><TD>                                }</TD></TR><TR><TD CLASS="l">579</TD><TD>                                // Any files are now supported with Resource URI</TD></TR><TR CLASS="z"><TD CLASS="l">580</TD><TD>                                selectSingleFileView.setFilterExtensions(createStringArray(list));</TD></TR><TR><TD CLASS="l">581</TD><TD>                        }</TD></TR><TR><TD CLASS="l">582</TD><TD>                        else {</TD></TR><TR CLASS="z"><TD CLASS="l">583</TD><TD>                                if (fileType.extensions != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">584</TD><TD>                                        selectSingleFileView.setFilterExtensions(createStringArray(fileType.extensions));</TD></TR><TR><TD CLASS="l">585</TD><TD>                                }</TD></TR><TR><TD CLASS="l">586</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4b">587</A></TD><TD>                }</TD></TR><TR><TD CLASS="l">588</TD><TD> </TD></TR><TR><TD CLASS="l">589</TD><TD>                public void widgetDefaultSelected(SelectionEvent e) {</TD></TR><TR><TD CLASS="l"><A NAME="4c">590</A></TD><TD>                        // do nothing</TD></TR><TR CLASS="z"><TD CLASS="l">591</TD><TD>                }</TD></TR><TR><TD CLASS="l">592</TD><TD> </TD></TR><TR><TD CLASS="l">593</TD><TD>                public void widgetSelected(SelectionEvent e) {</TD></TR><TR CLASS="z"><TD CLASS="l">594</TD><TD>                        String text = filterControl.getText();</TD></TR><TR CLASS="z"><TD CLASS="l">595</TD><TD>                        XMLCatalogFileType fileType = getMatchingFileType(text);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4d">596</A></TD><TD>                        setFilters(fileType);</TD></TR><TR CLASS="z"><TD CLASS="l">597</TD><TD>                }</TD></TR><TR><TD CLASS="l">598</TD><TD>        }</TD></TR><TR><TD CLASS="l">599</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">600</TD><TD>        protected class NextCatalogPage extends CatalogElementPage {</TD></TR><TR><TD CLASS="l">601</TD><TD>                </TD></TR><TR><TD CLASS="l">602</TD><TD>                protected Button browseWorkspaceButton;</TD></TR><TR><TD CLASS="l">603</TD><TD>                </TD></TR><TR><TD CLASS="l">604</TD><TD>                protected Button browseFileSystemButton;</TD></TR><TR><TD CLASS="l">605</TD><TD>                </TD></TR><TR><TD CLASS="l">606</TD><TD>                protected Text catalogLocationField;</TD></TR><TR><TD CLASS="l">607</TD><TD> </TD></TR><TR><TD CLASS="l">608</TD><TD>                protected INextCatalog nextCatalog;</TD></TR><TR><TD CLASS="l"><A NAME="4f">609</A></TD><TD> </TD></TR><TR><TD CLASS="l">610</TD><TD>                protected Label errorMessageLabel;</TD></TR><TR><TD CLASS="l">611</TD><TD> </TD></TR><TR><TD CLASS="l">612</TD><TD>                protected void computeErrorMessage() {</TD></TR><TR CLASS="z"><TD CLASS="l">613</TD><TD>                        errorMessage = null;</TD></TR><TR><TD CLASS="l">614</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">615</TD><TD>                        if (errorMessage == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">616</TD><TD>                                String fileName = catalogLocationField.getText();</TD></TR><TR CLASS="z"><TD CLASS="l">617</TD><TD>                                if (fileName.trim().length() &gt; 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">618</TD><TD>                                        if ((fileName.indexOf(&#34;..&#34;) != -1) || (fileName.indexOf(&#34;./&#34;) != -1) || (fileName.indexOf(&#34;/.&#34;) != -1) || (fileName.indexOf(&#34;.\\&#34;) != -1) || (fileName.indexOf(&#34;\\.&#34;) != -1)) { //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$</TD></TR><TR CLASS="z"><TD CLASS="l">619</TD><TD>                                                errorMessage = XMLCatalogMessages.UI_WARNING_URI_MUST_NOT_HAVE_DOTS;</TD></TR><TR><TD CLASS="l">620</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">621</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">622</TD><TD>                                        String uri = fileName;</TD></TR><TR CLASS="z"><TD CLASS="l">623</TD><TD>                                        if (!URIHelper.hasProtocol(uri)) {</TD></TR><TR CLASS="z"><TD CLASS="l">624</TD><TD>                                                uri = URIHelper.isAbsolute(uri) ? URIHelper.prependFileProtocol(uri) : URIHelper.prependPlatformResourceProtocol(uri);</TD></TR><TR><TD CLASS="l">625</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">626</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">627</TD><TD>                                        if ((errorMessage == null) &amp;&amp; !URIHelper.isReadableURI(uri, false)) {</TD></TR><TR CLASS="z"><TD CLASS="l">628</TD><TD>                                                errorMessage = XMLCatalogMessages.UI_WARNING_URI_NOT_FOUND_COLON + fileName;</TD></TR><TR><TD CLASS="l">629</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">630</TD><TD>                                }</TD></TR><TR><TD CLASS="l">631</TD><TD>                                else {</TD></TR><TR><TD CLASS="l">632</TD><TD>                                        // this an error that is not actually</TD></TR><TR><TD CLASS="l">633</TD><TD>                                        // reported ... OK is just disabled</TD></TR><TR CLASS="z"><TD CLASS="l">634</TD><TD>                                        errorMessage = &#34;&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">635</TD><TD>                                }</TD></TR><TR><TD CLASS="l">636</TD><TD>                        }</TD></TR><TR><TD CLASS="l"><A NAME="50">637</A></TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">638</TD><TD>                }</TD></TR><TR><TD CLASS="l">639</TD><TD> </TD></TR><TR><TD CLASS="l">640</TD><TD>                public Control createControl(Composite parent) {</TD></TR><TR CLASS="z"><TD CLASS="l">641</TD><TD>                        fControl = createNextCatalogPanel(parent);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2b">642</A></TD><TD>                        return fControl;</TD></TR><TR><TD CLASS="l">643</TD><TD>                }</TD></TR><TR><TD CLASS="l">644</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="2d">645</A></TD><TD>                protected Control createNextCatalogPanel(Composite parent) {</TD></TR><TR CLASS="z"><TD CLASS="l">646</TD><TD>                        ModifyListener modifyListener = new ModifyListener() {</TD></TR><TR><TD CLASS="l">647</TD><TD>                                public void modifyText(ModifyEvent e) {</TD></TR><TR CLASS="z"><TD CLASS="l">648</TD><TD>                                        updateWidgets(e.widget);</TD></TR><TR CLASS="z"><TD CLASS="l">649</TD><TD>                                }</TD></TR><TR><TD CLASS="l">650</TD><TD>                        };</TD></TR><TR><TD CLASS="l">651</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">652</TD><TD>                        Composite composite = new Composite(parent, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">653</TD><TD>                        GridData gd = new GridData(GridData.FILL_BOTH);</TD></TR><TR CLASS="z"><TD CLASS="l">654</TD><TD>                        composite.setLayoutData(gd);</TD></TR><TR><TD CLASS="l">655</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">656</TD><TD>                        GridLayout layout = new GridLayout();</TD></TR><TR CLASS="z"><TD CLASS="l">657</TD><TD>                        composite.setLayout(layout);</TD></TR><TR><TD CLASS="l">658</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">659</TD><TD>                        Composite group = new Composite(composite, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">660</TD><TD>                        gd = new GridData(GridData.FILL_HORIZONTAL);</TD></TR><TR CLASS="z"><TD CLASS="l">661</TD><TD>                        group.setLayoutData(gd);</TD></TR><TR><TD CLASS="l">662</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">663</TD><TD>                        layout = new GridLayout();</TD></TR><TR CLASS="z"><TD CLASS="l">664</TD><TD>                        group.setLayout(layout);</TD></TR><TR><TD CLASS="l">665</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">666</TD><TD>                        Label resourceLocationLabel = new Label(group, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">667</TD><TD>                        resourceLocationLabel.setText(XMLCatalogMessages.UI_LABEL_CATALOG_URI_COLON);</TD></TR><TR><TD CLASS="l">668</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">669</TD><TD>                        catalogLocationField = new Text(group, SWT.SINGLE | SWT.BORDER);</TD></TR><TR CLASS="z"><TD CLASS="l">670</TD><TD>                        catalogLocationField.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));</TD></TR><TR CLASS="z"><TD CLASS="l">671</TD><TD>                        catalogLocationField.setText(URIUtils.convertURIToLocation(getDisplayValue(getNextCatalog().getCatalogLocation())));</TD></TR><TR><TD CLASS="l">672</TD><TD>                        // WorkbenchHelp.setHelp(resourceLocationField,</TD></TR><TR><TD CLASS="l">673</TD><TD>                        // XMLBuilderContextIds.XMLP_ENTRY_URI);</TD></TR><TR CLASS="z"><TD CLASS="l">674</TD><TD>                        catalogLocationField.addModifyListener(modifyListener);</TD></TR><TR><TD CLASS="l">675</TD><TD>                        </TD></TR><TR CLASS="z"><TD CLASS="l">676</TD><TD>                        Composite browseButtonsComposite = new Composite(group, SWT.FLAT);</TD></TR><TR CLASS="z"><TD CLASS="l">677</TD><TD>                        gd = new GridData(GridData.FILL_HORIZONTAL);</TD></TR><TR CLASS="z"><TD CLASS="l">678</TD><TD>                        gd.horizontalSpan = 2;</TD></TR><TR CLASS="z"><TD CLASS="l">679</TD><TD>                        gd.horizontalAlignment = GridData.END;</TD></TR><TR CLASS="z"><TD CLASS="l">680</TD><TD>                        browseButtonsComposite.setLayoutData(gd);</TD></TR><TR><TD CLASS="l">681</TD><TD>                        </TD></TR><TR CLASS="z"><TD CLASS="l">682</TD><TD>                        layout = new GridLayout();</TD></TR><TR CLASS="z"><TD CLASS="l">683</TD><TD>                        layout.numColumns = 2;</TD></TR><TR CLASS="z"><TD CLASS="l">684</TD><TD>                        layout.marginWidth = 0;</TD></TR><TR CLASS="z"><TD CLASS="l">685</TD><TD>                        layout.marginHeight = 0;</TD></TR><TR CLASS="z"><TD CLASS="l">686</TD><TD>                        layout.marginBottom = 5;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2e">687</A></TD><TD>                        browseButtonsComposite.setLayout(layout);</TD></TR><TR><TD CLASS="l">688</TD><TD>                        </TD></TR><TR CLASS="z"><TD CLASS="l">689</TD><TD>                        browseWorkspaceButton = new Button(browseButtonsComposite, SWT.PUSH);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="30">690</A></TD><TD>                        browseWorkspaceButton.setText(XMLCatalogMessages.UI_BUTTON_MENU_BROWSE_WORKSPACE);</TD></TR><TR CLASS="z"><TD CLASS="l">691</TD><TD>                        browseWorkspaceButton.addSelectionListener(new SelectionListener(){</TD></TR><TR><TD CLASS="l">692</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="31">693</A></TD><TD>                                public void widgetDefaultSelected(SelectionEvent e) {</TD></TR><TR CLASS="z"><TD CLASS="l">694</TD><TD>                                }</TD></TR><TR><TD CLASS="l">695</TD><TD> </TD></TR><TR><TD CLASS="l">696</TD><TD>                                public void widgetSelected(SelectionEvent e) {</TD></TR><TR CLASS="z"><TD CLASS="l">697</TD><TD>                                        String value = invokeWorkspaceFileSelectionDialog();</TD></TR><TR CLASS="z"><TD CLASS="l">698</TD><TD>                                        if(value != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">699</TD><TD>                                                catalogLocationField.setText(value);</TD></TR><TR><TD CLASS="l">700</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">701</TD><TD>                                }</TD></TR><TR><TD CLASS="l"><A NAME="32">702</A></TD><TD>                        });</TD></TR><TR><TD CLASS="l">703</TD><TD>                        </TD></TR><TR CLASS="z"><TD CLASS="l">704</TD><TD>                        browseFileSystemButton = new Button(browseButtonsComposite, SWT.PUSH);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="34">705</A></TD><TD>                        browseFileSystemButton.setText(XMLCatalogMessages.UI_BUTTON_MENU_BROWSE_FILE_SYSTEM);</TD></TR><TR CLASS="z"><TD CLASS="l">706</TD><TD>                        browseFileSystemButton.addSelectionListener(new SelectionListener(){</TD></TR><TR><TD CLASS="l">707</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="35">708</A></TD><TD>                                public void widgetDefaultSelected(SelectionEvent e) {</TD></TR><TR CLASS="z"><TD CLASS="l">709</TD><TD>                                }</TD></TR><TR><TD CLASS="l">710</TD><TD> </TD></TR><TR><TD CLASS="l">711</TD><TD>                                public void widgetSelected(SelectionEvent e) {</TD></TR><TR CLASS="z"><TD CLASS="l">712</TD><TD>                                        String value = invokeFileSelectionDialog();</TD></TR><TR CLASS="z"><TD CLASS="l">713</TD><TD>                                        if(value != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">714</TD><TD>                                                catalogLocationField.setText(value);</TD></TR><TR><TD CLASS="l">715</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">716</TD><TD>                                }</TD></TR><TR><TD CLASS="l">717</TD><TD>                        });</TD></TR><TR><TD CLASS="l">718</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">719</TD><TD>                        errorMessageLabel = new Label(group, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">720</TD><TD>                        errorMessageLabel.setForeground(color);</TD></TR><TR CLASS="z"><TD CLASS="l">721</TD><TD>                        errorMessageLabel.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));</TD></TR><TR CLASS="z"><TD CLASS="l">722</TD><TD>                        updateWidgets(null);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="52">723</A></TD><TD>                        return composite;</TD></TR><TR><TD CLASS="l">724</TD><TD>                }</TD></TR><TR><TD CLASS="l">725</TD><TD> </TD></TR><TR><TD CLASS="l">726</TD><TD>                public ICatalogElement getData() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="53">727</A></TD><TD>                        return getNextCatalog();</TD></TR><TR><TD CLASS="l">728</TD><TD>                }</TD></TR><TR><TD CLASS="l">729</TD><TD> </TD></TR><TR><TD CLASS="l">730</TD><TD>                protected INextCatalog getNextCatalog() {</TD></TR><TR CLASS="z"><TD CLASS="l">731</TD><TD>                        if (nextCatalog == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">732</TD><TD>                                if ((fCatalogElement != null) &amp;&amp; (fCatalogElement.getType() == ICatalogElement.TYPE_NEXT_CATALOG)) {</TD></TR><TR CLASS="z"><TD CLASS="l">733</TD><TD>                                        nextCatalog = (INextCatalog) fCatalogElement;</TD></TR><TR><TD CLASS="l">734</TD><TD>                                }</TD></TR><TR><TD CLASS="l">735</TD><TD>                                else {</TD></TR><TR CLASS="z"><TD CLASS="l">736</TD><TD>                                        if (catalog != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">737</TD><TD>                                                nextCatalog = (INextCatalog) catalog.createCatalogElement(ICatalogElement.TYPE_NEXT_CATALOG);</TD></TR><TR><TD CLASS="l">738</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">739</TD><TD>                                }</TD></TR><TR><TD CLASS="l">740</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="54">741</A></TD><TD>                        return nextCatalog;</TD></TR><TR><TD CLASS="l">742</TD><TD>                }</TD></TR><TR><TD CLASS="l">743</TD><TD> </TD></TR><TR><TD CLASS="l">744</TD><TD>                public void saveData() {</TD></TR><TR CLASS="z"><TD CLASS="l">745</TD><TD>                        getNextCatalog().setCatalogLocation(URIUtils.convertLocationToURI(catalogLocationField.getText()));</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="55">746</A></TD><TD>                        dataSaved = true;</TD></TR><TR CLASS="z"><TD CLASS="l">747</TD><TD>                }</TD></TR><TR><TD CLASS="l">748</TD><TD> </TD></TR><TR><TD CLASS="l">749</TD><TD>                protected void updateWidgets(Widget widget) {</TD></TR><TR CLASS="z"><TD CLASS="l">750</TD><TD>                        computeErrorMessage();</TD></TR><TR CLASS="z"><TD CLASS="l">751</TD><TD>                        updateErrorMessageLabel(errorMessageLabel);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="56">752</A></TD><TD>                        updateOKButtonState();</TD></TR><TR CLASS="z"><TD CLASS="l">753</TD><TD>                }</TD></TR><TR><TD CLASS="l">754</TD><TD>        }</TD></TR><TR><TD CLASS="l">755</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="58">756</A></TD><TD>        protected class ToolBarItemSelectionChangeListener implements SelectionListener {</TD></TR><TR><TD CLASS="l">757</TD><TD>                public void widgetDefaultSelected(SelectionEvent e) {</TD></TR><TR><TD CLASS="l">758</TD><TD>                        // TODO Auto-generated method stub</TD></TR><TR><TD CLASS="l"><A NAME="59">759</A></TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">760</TD><TD>                }</TD></TR><TR><TD CLASS="l">761</TD><TD> </TD></TR><TR><TD CLASS="l">762</TD><TD>                public void widgetSelected(SelectionEvent e) {</TD></TR><TR CLASS="z"><TD CLASS="l">763</TD><TD>                        Object selection = e.getSource();</TD></TR><TR CLASS="z"><TD CLASS="l">764</TD><TD>                        if (selection instanceof ToolItem) {</TD></TR><TR CLASS="z"><TD CLASS="l">765</TD><TD>                                if (!showPage((CatalogElementPage) ((ToolItem) selection).getData())) {</TD></TR><TR><TD CLASS="l">766</TD><TD>                                        // Page flipping wasn't successful</TD></TR><TR><TD CLASS="l">767</TD><TD>                                        // handleError();</TD></TR><TR><TD CLASS="l">768</TD><TD>                                }</TD></TR><TR><TD CLASS="l">769</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">770</TD><TD>                }</TD></TR><TR><TD CLASS="l"><A NAME="e">771</A></TD><TD> </TD></TR><TR><TD CLASS="l">772</TD><TD>        }</TD></TR><TR><TD CLASS="l">773</TD><TD> </TD></TR><TR><TD CLASS="l">774</TD><TD>        public static String[] createStringArray(List list) {</TD></TR><TR CLASS="z"><TD CLASS="l">775</TD><TD>                String[] stringArray = new String[list.size()];</TD></TR><TR CLASS="z"><TD CLASS="l">776</TD><TD>                for (int i = 0; i &lt; stringArray.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">777</TD><TD>                        stringArray[i] = (String) list.get(i);</TD></TR><TR><TD CLASS="l">778</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">779</TD><TD>                return stringArray;</TD></TR><TR><TD CLASS="l">780</TD><TD>        }</TD></TR><TR><TD CLASS="l">781</TD><TD> </TD></TR><TR><TD CLASS="l">782</TD><TD>        public static String removeLeadingSlash(String uri) {</TD></TR><TR><TD CLASS="l"><A NAME="15">783</A></TD><TD>                // remove leading slash from the value to avoid the whole leading</TD></TR><TR><TD CLASS="l">784</TD><TD>                // slash</TD></TR><TR><TD CLASS="l">785</TD><TD>                // ambiguity problem</TD></TR><TR><TD CLASS="l">786</TD><TD>                //       </TD></TR><TR CLASS="z"><TD CLASS="l">787</TD><TD>                if (uri != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">788</TD><TD>                        while (uri.startsWith(&#34;/&#34;) || uri.startsWith(&#34;\\&#34;)) { //$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR CLASS="z"><TD CLASS="l">789</TD><TD>                                uri = uri.substring(1);</TD></TR><TR><TD CLASS="l">790</TD><TD>                        }</TD></TR><TR><TD CLASS="l">791</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">792</TD><TD>                return uri;</TD></TR><TR><TD CLASS="l">793</TD><TD>        }</TD></TR><TR><TD CLASS="l">794</TD><TD> </TD></TR><TR><TD CLASS="l">795</TD><TD>        protected ICatalog catalog;</TD></TR><TR><TD CLASS="l">796</TD><TD> </TD></TR><TR><TD CLASS="l">797</TD><TD>        protected ICatalogElement fCatalogElement;</TD></TR><TR><TD CLASS="l">798</TD><TD> </TD></TR><TR><TD CLASS="l">799</TD><TD>        protected String errorMessage;</TD></TR><TR><TD CLASS="l">800</TD><TD> </TD></TR><TR><TD CLASS="l">801</TD><TD>        protected String warningMessage;</TD></TR><TR><TD CLASS="l">802</TD><TD> </TD></TR><TR><TD CLASS="l">803</TD><TD>        protected Button okButton;</TD></TR><TR><TD CLASS="l">804</TD><TD> </TD></TR><TR><TD CLASS="l">805</TD><TD>        protected PageBook pageContainer;</TD></TR><TR><TD CLASS="l">806</TD><TD> </TD></TR><TR><TD CLASS="l">807</TD><TD>        protected CatalogElementPage selectedPage;</TD></TR><TR><TD CLASS="l">808</TD><TD> </TD></TR><TR><TD CLASS="l">809</TD><TD>        // protected TreeViewer treeViewer;</TD></TR><TR><TD CLASS="l">810</TD><TD> </TD></TR><TR><TD CLASS="l">811</TD><TD>        protected ToolBar toolBar;</TD></TR><TR><TD CLASS="l">812</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="2">813</A></TD><TD>        protected Color color;</TD></TR><TR><TD CLASS="l">814</TD><TD>        protected boolean dataSaved;</TD></TR><TR><TD CLASS="l">815</TD><TD> </TD></TR><TR><TD CLASS="l">816</TD><TD>        public EditCatalogEntryDialog(Shell parentShell, ICatalog aCatalog) {</TD></TR><TR CLASS="z"><TD CLASS="l">817</TD><TD>                super(parentShell);</TD></TR><TR CLASS="z"><TD CLASS="l">818</TD><TD>                setShellStyle(getShellStyle() | SWT.RESIZE);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">819</A></TD><TD>                this.catalog = aCatalog;</TD></TR><TR CLASS="z"><TD CLASS="l">820</TD><TD>        }</TD></TR><TR><TD CLASS="l">821</TD><TD> </TD></TR><TR><TD CLASS="l">822</TD><TD>        public EditCatalogEntryDialog(Shell parentShell, ICatalogElement catalogElement, ICatalog aCatalog) {</TD></TR><TR CLASS="z"><TD CLASS="l">823</TD><TD>                this(parentShell, aCatalog);</TD></TR><TR CLASS="z"><TD CLASS="l">824</TD><TD>                this.fCatalogElement = catalogElement;</TD></TR><TR><TD CLASS="l">825</TD><TD>                // TODO EB: fix his</TD></TR><TR><TD CLASS="l"><A NAME="4">826</A></TD><TD>                // entry.setURI(URIHelper.removePlatformResourceProtocol(entry.getURI()));</TD></TR><TR CLASS="z"><TD CLASS="l">827</TD><TD>        }</TD></TR><TR><TD CLASS="l">828</TD><TD> </TD></TR><TR><TD CLASS="l">829</TD><TD>        protected void buttonPressed(int buttonId) {</TD></TR><TR CLASS="z"><TD CLASS="l">830</TD><TD>                if (buttonId == IDialogConstants.OK_ID) {</TD></TR><TR CLASS="z"><TD CLASS="l">831</TD><TD>                        selectedPage.saveData();</TD></TR><TR CLASS="z"><TD CLASS="l">832</TD><TD>                        if (!dataSaved) {                                </TD></TR><TR><TD CLASS="l">833</TD><TD>                                // do not exit edit dialog</TD></TR><TR CLASS="z"><TD CLASS="l">834</TD><TD>                                return;</TD></TR><TR><TD CLASS="l">835</TD><TD>                        }</TD></TR><TR><TD CLASS="l">836</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">837</TD><TD>                super.buttonPressed(buttonId);</TD></TR><TR CLASS="z"><TD CLASS="l">838</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="7">839</A></TD><TD> </TD></TR><TR><TD CLASS="l">840</TD><TD> </TD></TR><TR><TD CLASS="l">841</TD><TD> </TD></TR><TR><TD CLASS="l">842</TD><TD>        protected void createButtonsForButtonBar(Composite parent) {</TD></TR><TR CLASS="z"><TD CLASS="l">843</TD><TD>                okButton = createButton(parent, IDialogConstants.OK_ID, IDialogConstants.OK_LABEL, true);</TD></TR><TR CLASS="z"><TD CLASS="l">844</TD><TD>                okButton.setEnabled(false);</TD></TR><TR CLASS="z"><TD CLASS="l">845</TD><TD>                createButton(parent, IDialogConstants.CANCEL_ID, IDialogConstants.CANCEL_LABEL, false);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="8">846</A></TD><TD>                updateOKButtonState();</TD></TR><TR CLASS="z"><TD CLASS="l">847</TD><TD>        }</TD></TR><TR><TD CLASS="l">848</TD><TD> </TD></TR><TR><TD CLASS="l">849</TD><TD>        protected void createCatalogEntryButton() {</TD></TR><TR CLASS="z"><TD CLASS="l">850</TD><TD>                CatalogElementPage page = new CatalogEntryPage();</TD></TR><TR CLASS="z"><TD CLASS="l">851</TD><TD>                page.createControl(pageContainer);</TD></TR><TR CLASS="z"><TD CLASS="l">852</TD><TD>                ToolItem toolItem = new ToolItem(toolBar, SWT.PUSH);</TD></TR><TR CLASS="z"><TD CLASS="l">853</TD><TD>                toolItem.setImage(catalogEntryToolBarImage);</TD></TR><TR CLASS="z"><TD CLASS="l">854</TD><TD>                toolItem.setText(XMLCatalogMessages.EditCatalogEntryDialog_catalogEntryLabel);</TD></TR><TR CLASS="z"><TD CLASS="l">855</TD><TD>                toolItem.setData(page);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="9">856</A></TD><TD>                toolItem.addSelectionListener(new ToolBarItemSelectionChangeListener());</TD></TR><TR CLASS="z"><TD CLASS="l">857</TD><TD>        }</TD></TR><TR><TD CLASS="l">858</TD><TD> </TD></TR><TR><TD CLASS="l">859</TD><TD>        protected Control createDialogArea(Composite parent) {</TD></TR><TR CLASS="z"><TD CLASS="l">860</TD><TD>                Composite dialogAreaComposite = (Composite) super.createDialogArea(parent);</TD></TR><TR CLASS="z"><TD CLASS="l">861</TD><TD>                color = new Color(dialogAreaComposite.getDisplay(), 200, 0, 0);</TD></TR><TR CLASS="z"><TD CLASS="l">862</TD><TD>                GridLayout layout = new GridLayout();</TD></TR><TR CLASS="z"><TD CLASS="l">863</TD><TD>                layout.marginHeight = 0;</TD></TR><TR CLASS="z"><TD CLASS="l">864</TD><TD>                layout.marginWidth = 0;</TD></TR><TR CLASS="z"><TD CLASS="l">865</TD><TD>                dialogAreaComposite.setLayout(layout);</TD></TR><TR CLASS="z"><TD CLASS="l">866</TD><TD>                GridData gd = new GridData(GridData.FILL_BOTH);</TD></TR><TR CLASS="z"><TD CLASS="l">867</TD><TD>                gd.widthHint = 500;</TD></TR><TR CLASS="z"><TD CLASS="l">868</TD><TD>                gd.heightHint = 250;</TD></TR><TR CLASS="z"><TD CLASS="l">869</TD><TD>                dialogAreaComposite.setLayoutData(gd);</TD></TR><TR CLASS="z"><TD CLASS="l">870</TD><TD>                createMainComponent(dialogAreaComposite);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="5">871</A></TD><TD>                return this.dialogArea;</TD></TR><TR><TD CLASS="l">872</TD><TD>        }</TD></TR><TR><TD CLASS="l">873</TD><TD> </TD></TR><TR><TD CLASS="l">874</TD><TD>        public boolean close() {</TD></TR><TR CLASS="z"><TD CLASS="l">875</TD><TD>                if (color != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">876</TD><TD>                        color.dispose();</TD></TR><TR><TD CLASS="l">877</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="b">878</A></TD><TD>                return super.close();</TD></TR><TR><TD CLASS="l">879</TD><TD>        }</TD></TR><TR><TD CLASS="l">880</TD><TD> </TD></TR><TR><TD CLASS="l">881</TD><TD>        protected Composite createMainComponent(Composite composite) {</TD></TR><TR CLASS="z"><TD CLASS="l">882</TD><TD>                if (fCatalogElement != null) // &#34;edit&#34; action</TD></TR><TR><TD CLASS="l">883</TD><TD>                {</TD></TR><TR CLASS="z"><TD CLASS="l">884</TD><TD>                        Composite composite1 = new Composite(composite, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">885</TD><TD>                        GridData data = new GridData(GridData.FILL_BOTH);</TD></TR><TR CLASS="z"><TD CLASS="l">886</TD><TD>                        composite1.setLayoutData(data);</TD></TR><TR CLASS="z"><TD CLASS="l">887</TD><TD>                        GridLayout layout = new GridLayout();</TD></TR><TR CLASS="z"><TD CLASS="l">888</TD><TD>                        composite1.setLayout(layout);</TD></TR><TR><TD CLASS="l">889</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">890</TD><TD>                        pageContainer = new PageBook(composite1, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">891</TD><TD>                        pageContainer.setLayoutData(new GridData(GridData.FILL_BOTH));</TD></TR><TR><TD CLASS="l">892</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">893</TD><TD>                        if (fCatalogElement.getType() == ICatalogElement.TYPE_ENTRY) {</TD></TR><TR CLASS="z"><TD CLASS="l">894</TD><TD>                                CatalogElementPage entryPage = new CatalogEntryPage();</TD></TR><TR CLASS="z"><TD CLASS="l">895</TD><TD>                                entryPage.createControl(pageContainer);</TD></TR><TR CLASS="z"><TD CLASS="l">896</TD><TD>                                showPage(entryPage);</TD></TR><TR><TD CLASS="l">897</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">898</TD><TD>                        else if (fCatalogElement.getType() == ICatalogElement.TYPE_NEXT_CATALOG) {</TD></TR><TR CLASS="z"><TD CLASS="l">899</TD><TD>                                CatalogElementPage nextCatalogPage = new NextCatalogPage();</TD></TR><TR CLASS="z"><TD CLASS="l">900</TD><TD>                                nextCatalogPage.createControl(pageContainer);</TD></TR><TR CLASS="z"><TD CLASS="l">901</TD><TD>                                showPage(nextCatalogPage);</TD></TR><TR><TD CLASS="l">902</TD><TD>                        }</TD></TR><TR><TD CLASS="l">903</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">904</TD><TD>                        return composite1;</TD></TR><TR><TD CLASS="l">905</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">906</TD><TD>                return createMainComponentWithToolbar(composite);</TD></TR><TR><TD CLASS="l">907</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="c">908</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">909</TD><TD> </TD></TR><TR><TD CLASS="l">910</TD><TD>        protected Composite createMainComponentWithToolbar(Composite composite) {</TD></TR><TR><TD CLASS="l">911</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">912</TD><TD>                FormLayout formLayout = new FormLayout();</TD></TR><TR CLASS="z"><TD CLASS="l">913</TD><TD>                formLayout.marginHeight = 5;</TD></TR><TR CLASS="z"><TD CLASS="l">914</TD><TD>                formLayout.marginWidth = 5;</TD></TR><TR CLASS="z"><TD CLASS="l">915</TD><TD>                composite.setLayout(formLayout);</TD></TR><TR><TD CLASS="l">916</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">917</TD><TD>                Label label = new Label(composite, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">918</TD><TD>                FormData data = new FormData();</TD></TR><TR CLASS="z"><TD CLASS="l">919</TD><TD>                data.top = new FormAttachment(0, 0);</TD></TR><TR CLASS="z"><TD CLASS="l">920</TD><TD>                data.left = new FormAttachment(0, 0);</TD></TR><TR CLASS="z"><TD CLASS="l">921</TD><TD>                data.right = new FormAttachment(100, 0);</TD></TR><TR CLASS="z"><TD CLASS="l">922</TD><TD>                label.setLayoutData(data);</TD></TR><TR><TD CLASS="l">923</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">924</TD><TD>                toolBar = new ToolBar(composite, SWT.BORDER | SWT.FLAT | SWT.VERTICAL);</TD></TR><TR><TD CLASS="l">925</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">926</TD><TD>                data = new FormData();</TD></TR><TR CLASS="z"><TD CLASS="l">927</TD><TD>                data.top = new FormAttachment(label, 0);</TD></TR><TR CLASS="z"><TD CLASS="l">928</TD><TD>                data.left = new FormAttachment(0, 0);</TD></TR><TR CLASS="z"><TD CLASS="l">929</TD><TD>                data.bottom = new FormAttachment(100, 0);</TD></TR><TR><TD CLASS="l">930</TD><TD>                // data.height = 250;</TD></TR><TR><TD CLASS="l">931</TD><TD>                // data.width = 50;</TD></TR><TR CLASS="z"><TD CLASS="l">932</TD><TD>                toolBar.setLayoutData(data);</TD></TR><TR><TD CLASS="l">933</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">934</TD><TD>                Composite composite1 = new Composite(composite, SWT.BORDER);</TD></TR><TR CLASS="z"><TD CLASS="l">935</TD><TD>                data = new FormData();</TD></TR><TR CLASS="z"><TD CLASS="l">936</TD><TD>                data.top = new FormAttachment(label, 0);</TD></TR><TR CLASS="z"><TD CLASS="l">937</TD><TD>                data.left = new FormAttachment(toolBar, 0, SWT.DEFAULT);</TD></TR><TR CLASS="z"><TD CLASS="l">938</TD><TD>                data.right = new FormAttachment(100, 0);</TD></TR><TR CLASS="z"><TD CLASS="l">939</TD><TD>                data.bottom = new FormAttachment(100, 0);</TD></TR><TR CLASS="z"><TD CLASS="l">940</TD><TD>                composite1.setLayoutData(data);</TD></TR><TR CLASS="z"><TD CLASS="l">941</TD><TD>                GridLayout layout = new GridLayout();</TD></TR><TR CLASS="z"><TD CLASS="l">942</TD><TD>                layout.marginHeight = 0;</TD></TR><TR CLASS="z"><TD CLASS="l">943</TD><TD>                layout.marginWidth = 0;</TD></TR><TR CLASS="z"><TD CLASS="l">944</TD><TD>                composite1.setLayout(layout);</TD></TR><TR><TD CLASS="l">945</TD><TD> </TD></TR><TR><TD CLASS="l">946</TD><TD>                // createPageBookPanel(composite1);</TD></TR><TR CLASS="z"><TD CLASS="l">947</TD><TD>                pageContainer = new PageBook(composite1, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">948</TD><TD>                pageContainer.setLayoutData(new GridData(GridData.FILL_BOTH));</TD></TR><TR><TD CLASS="l">949</TD><TD> </TD></TR><TR><TD CLASS="l">950</TD><TD>                // add pages for each type of catalog element</TD></TR><TR CLASS="z"><TD CLASS="l">951</TD><TD>                createCatalogEntryButton();</TD></TR><TR CLASS="z"><TD CLASS="l">952</TD><TD>                createNextCatalogButton();</TD></TR><TR CLASS="z"><TD CLASS="l">953</TD><TD>                if (toolBar.getItemCount() &gt; 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">954</TD><TD>                        ToolItem item = toolBar.getItem(0);</TD></TR><TR CLASS="z"><TD CLASS="l">955</TD><TD>                        showPage((CatalogElementPage) (item.getData()));</TD></TR><TR><TD CLASS="l">956</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="d">957</A></TD><TD>                return composite1;</TD></TR><TR><TD CLASS="l">958</TD><TD>        }</TD></TR><TR><TD CLASS="l">959</TD><TD> </TD></TR><TR><TD CLASS="l">960</TD><TD>        protected void createNextCatalogButton() {</TD></TR><TR CLASS="z"><TD CLASS="l">961</TD><TD>                CatalogElementPage page = new NextCatalogPage();</TD></TR><TR CLASS="z"><TD CLASS="l">962</TD><TD>                page.createControl(pageContainer);</TD></TR><TR CLASS="z"><TD CLASS="l">963</TD><TD>                ToolItem toolItem = new ToolItem(toolBar, SWT.PUSH);</TD></TR><TR CLASS="z"><TD CLASS="l">964</TD><TD>                toolItem.setImage(nextCatalogToolBarImage);</TD></TR><TR CLASS="z"><TD CLASS="l">965</TD><TD>                toolItem.setText(XMLCatalogMessages.EditCatalogEntryDialog_nextCatalogLabel);</TD></TR><TR CLASS="z"><TD CLASS="l">966</TD><TD>                toolItem.setData(page);</TD></TR><TR CLASS="z"><TD CLASS="l">967</TD><TD>                toolItem.addSelectionListener(new ToolBarItemSelectionChangeListener());</TD></TR><TR><TD CLASS="l"><A NAME="10">968</A></TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">969</TD><TD>        }</TD></TR><TR><TD CLASS="l">970</TD><TD> </TD></TR><TR><TD CLASS="l">971</TD><TD>        protected ICatalogElement getCatalogElement() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="11">972</A></TD><TD>                return fCatalogElement;</TD></TR><TR><TD CLASS="l">973</TD><TD>        }</TD></TR><TR><TD CLASS="l">974</TD><TD> </TD></TR><TR><TD CLASS="l">975</TD><TD>        protected String getDisplayValue(String string) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="12">976</A></TD><TD>                return string != null ? string : &#34;&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">977</TD><TD>        }</TD></TR><TR><TD CLASS="l">978</TD><TD> </TD></TR><TR><TD CLASS="l">979</TD><TD>        protected XMLCatalogFileType getMatchingFileType(String description) {</TD></TR><TR CLASS="z"><TD CLASS="l">980</TD><TD>                XMLCatalogFileType fileType = null;</TD></TR><TR CLASS="z"><TD CLASS="l">981</TD><TD>                for (Iterator i = CatalogFileTypeRegistryReader.getXMLCatalogFileTypes().iterator(); i.hasNext();) {</TD></TR><TR CLASS="z"><TD CLASS="l">982</TD><TD>                        XMLCatalogFileType theFileType = (XMLCatalogFileType) i.next();</TD></TR><TR CLASS="z"><TD CLASS="l">983</TD><TD>                        if ((theFileType.description != null) &amp;&amp; theFileType.description.equals(description)) {</TD></TR><TR CLASS="z"><TD CLASS="l">984</TD><TD>                                fileType = theFileType;</TD></TR><TR><TD CLASS="l">985</TD><TD>                        }</TD></TR><TR><TD CLASS="l">986</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="16">987</A></TD><TD>                return fileType;</TD></TR><TR><TD CLASS="l">988</TD><TD>        }</TD></TR><TR><TD CLASS="l">989</TD><TD> </TD></TR><TR><TD CLASS="l">990</TD><TD>        protected boolean showPage(CatalogElementPage page) {</TD></TR><TR CLASS="z"><TD CLASS="l">991</TD><TD>                if (pageContainer.isDisposed()) {</TD></TR><TR CLASS="z"><TD CLASS="l">992</TD><TD>                        return false;</TD></TR><TR><TD CLASS="l">993</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">994</TD><TD>                selectedPage = page;</TD></TR><TR CLASS="z"><TD CLASS="l">995</TD><TD>                pageContainer.setVisible(true);</TD></TR><TR CLASS="z"><TD CLASS="l">996</TD><TD>                pageContainer.showPage(selectedPage.getControl());</TD></TR><TR CLASS="z"><TD CLASS="l">997</TD><TD>                fCatalogElement = selectedPage.getData();</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="17">998</A></TD><TD>                return true;</TD></TR><TR><TD CLASS="l">999</TD><TD>        }</TD></TR><TR><TD CLASS="l">1000</TD><TD> </TD></TR><TR><TD CLASS="l">1001</TD><TD>        protected void updateErrorMessageLabel(Label errorMessageLabel) {</TD></TR><TR CLASS="z"><TD CLASS="l">1002</TD><TD>                if (errorMessage != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">1003</TD><TD>                        errorMessageLabel.setText(errorMessage);</TD></TR><TR><TD CLASS="l">1004</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">1005</TD><TD>                else if (warningMessage != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">1006</TD><TD>                        errorMessageLabel.setText(warningMessage);</TD></TR><TR><TD CLASS="l">1007</TD><TD>                }</TD></TR><TR><TD CLASS="l">1008</TD><TD>                else {</TD></TR><TR CLASS="z"><TD CLASS="l">1009</TD><TD>                        errorMessageLabel.setText(&#34;&#34;);</TD></TR><TR><TD CLASS="l"><A NAME="18">1010</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">1011</TD><TD>        }</TD></TR><TR><TD CLASS="l">1012</TD><TD> </TD></TR><TR><TD CLASS="l">1013</TD><TD>        protected void updateOKButtonState() {</TD></TR><TR CLASS="z"><TD CLASS="l">1014</TD><TD>                if (okButton != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">1015</TD><TD>                        okButton.setEnabled(errorMessage == null);</TD></TR><TR><TD CLASS="l"><A NAME="6">1016</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">1017</TD><TD>        }</TD></TR><TR><TD CLASS="l">1018</TD><TD> </TD></TR><TR><TD CLASS="l">1019</TD><TD>        protected Button createBrowseButton(Composite composite) {</TD></TR><TR CLASS="z"><TD CLASS="l">1020</TD><TD>                Button browseButton = new Button(composite, SWT.PUSH);</TD></TR><TR><TD CLASS="l">1021</TD><TD>                // browseButton.setText(XMLCatalogMessages.</TD></TR><TR><TD CLASS="l">1022</TD><TD>                // UI_BUTTON_BROWSE&#34;));</TD></TR><TR CLASS="z"><TD CLASS="l">1023</TD><TD>                browseButton.setImage(borwseImage);</TD></TR><TR CLASS="z"><TD CLASS="l">1024</TD><TD>                Rectangle r = borwseImage.getBounds();</TD></TR><TR CLASS="z"><TD CLASS="l">1025</TD><TD>                GridData gd = new GridData();</TD></TR><TR CLASS="z"><TD CLASS="l">1026</TD><TD>                int IMAGE_WIDTH_MARGIN = 6;</TD></TR><TR CLASS="z"><TD CLASS="l">1027</TD><TD>                int IMAGE_HEIGHT_MARGIN = 6;</TD></TR><TR CLASS="z"><TD CLASS="l">1028</TD><TD>                gd.heightHint = r.height + IMAGE_HEIGHT_MARGIN;</TD></TR><TR CLASS="z"><TD CLASS="l">1029</TD><TD>                gd.widthHint = r.width + IMAGE_WIDTH_MARGIN;</TD></TR><TR CLASS="z"><TD CLASS="l">1030</TD><TD>                browseButton.setLayoutData(gd);</TD></TR><TR><TD CLASS="l">1031</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">1032</TD><TD>                return browseButton;</TD></TR><TR><TD CLASS="l"><A NAME="f">1033</A></TD><TD> </TD></TR><TR><TD CLASS="l">1034</TD><TD>        }</TD></TR><TR><TD CLASS="l">1035</TD><TD>        </TD></TR><TR><TD CLASS="l">1036</TD><TD>        protected Button createWorkspaceBrowseButton(Composite composite) {</TD></TR><TR CLASS="z"><TD CLASS="l">1037</TD><TD>                Button browseWorkspaceButton = new Button(composite, SWT.PUSH);</TD></TR><TR CLASS="z"><TD CLASS="l">1038</TD><TD>                browseWorkspaceButton.setText(XMLCatalogMessages.UI_BUTTON_MENU_BROWSE_WORKSPACE);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="a">1039</A></TD><TD>                return browseWorkspaceButton;</TD></TR><TR><TD CLASS="l">1040</TD><TD>        }</TD></TR><TR><TD CLASS="l">1041</TD><TD>        </TD></TR><TR><TD CLASS="l">1042</TD><TD>        protected Button createFileSystemBrowseButton(Composite composite) {</TD></TR><TR CLASS="z"><TD CLASS="l">1043</TD><TD>                Button browseFileSystemButton = new Button(composite, SWT.PUSH);</TD></TR><TR CLASS="z"><TD CLASS="l">1044</TD><TD>                browseFileSystemButton.setText(XMLCatalogMessages.UI_BUTTON_MENU_BROWSE_WORKSPACE);</TD></TR><TR CLASS="z"><TD CLASS="l">1045</TD><TD>                return browseFileSystemButton;</TD></TR><TR><TD CLASS="l"><A NAME="14">1046</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">1047</TD><TD> </TD></TR><TR><TD CLASS="l">1048</TD><TD>        </TD></TR><TR><TD CLASS="l">1049</TD><TD>        String invokeWorkspaceFileSelectionDialog() {</TD></TR><TR CLASS="z"><TD CLASS="l">1050</TD><TD>                FilterableSelectSingleFileDialog dialog = new FilterableSelectSingleFileDialog(getShell());</TD></TR><TR CLASS="z"><TD CLASS="l">1051</TD><TD>                dialog.createAndOpen();</TD></TR><TR CLASS="z"><TD CLASS="l">1052</TD><TD>                IFile file = dialog.getFile();</TD></TR><TR CLASS="z"><TD CLASS="l">1053</TD><TD>                String uri = null;</TD></TR><TR CLASS="z"><TD CLASS="l">1054</TD><TD>                if (file != null) {</TD></TR><TR><TD CLASS="l">1055</TD><TD>                        // remove leading slash from the value to avoid the</TD></TR><TR><TD CLASS="l">1056</TD><TD>                        // whole leading slash ambiguity problem</TD></TR><TR><TD CLASS="l">1057</TD><TD>                        //                    </TD></TR><TR CLASS="z"><TD CLASS="l">1058</TD><TD>                        uri = file.getFullPath().toString();</TD></TR><TR CLASS="z"><TD CLASS="l">1059</TD><TD>                        while (uri.startsWith(&#34;/&#34;) || uri.startsWith(&#34;\\&#34;)) { //$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR CLASS="z"><TD CLASS="l">1060</TD><TD>                                uri = uri.substring(1);</TD></TR><TR><TD CLASS="l">1061</TD><TD>                        }</TD></TR><TR><TD CLASS="l">1062</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="13">1063</A></TD><TD>                return uri;</TD></TR><TR><TD CLASS="l">1064</TD><TD>        }</TD></TR><TR><TD CLASS="l">1065</TD><TD> </TD></TR><TR><TD CLASS="l">1066</TD><TD>        String invokeFileSelectionDialog() {</TD></TR><TR CLASS="z"><TD CLASS="l">1067</TD><TD>                FileDialog dialog = new FileDialog(getShell(), SWT.SINGLE);</TD></TR><TR CLASS="z"><TD CLASS="l">1068</TD><TD>                return dialog.open();</TD></TR><TR><TD CLASS="l">1069</TD><TD>        }</TD></TR><TR><TD CLASS="l">1070</TD><TD> </TD></TR><TR><TD CLASS="l">1071</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="33.html">org.eclipse.wst.xml.ui.internal.catalog</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/199.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/199.html
deleted file mode 100644
index 4b70e86..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/199.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="33.html">org.eclipse.wst.xml.ui.internal.catalog</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">ElementNodePage.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>ElementNodePage.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/3)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">ElementNodePage</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#0">ElementNodePage (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">getControl (): Control</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2002, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.ui.internal.catalog;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.swt.widgets.Composite;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.swt.widgets.Control;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.wst.xml.core.internal.catalog.provisional.ICatalogElement;</TD></TR><TR><TD CLASS="l">18</TD><TD> </TD></TR><TR><TD CLASS="l">19</TD><TD> </TD></TR><TR><TD CLASS="l">20</TD><TD>public abstract class ElementNodePage {</TD></TR><TR><TD CLASS="l"><A NAME="0">21</A></TD><TD> </TD></TR><TR><TD CLASS="l">22</TD><TD>        Control fControl;</TD></TR><TR><TD CLASS="l">23</TD><TD> </TD></TR><TR><TD CLASS="l">24</TD><TD>        public ElementNodePage() {</TD></TR><TR CLASS="z"><TD CLASS="l">25</TD><TD>                super();</TD></TR><TR><TD CLASS="l">26</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">27</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="2">28</A></TD><TD> </TD></TR><TR><TD CLASS="l">29</TD><TD>        public abstract Control createControl(Composite parent);</TD></TR><TR><TD CLASS="l">30</TD><TD> </TD></TR><TR><TD CLASS="l">31</TD><TD>        public Control getControl() {</TD></TR><TR CLASS="z"><TD CLASS="l">32</TD><TD>                return fControl;</TD></TR><TR><TD CLASS="l">33</TD><TD>        }</TD></TR><TR><TD CLASS="l">34</TD><TD> </TD></TR><TR><TD CLASS="l">35</TD><TD>        public abstract void saveData();</TD></TR><TR><TD CLASS="l">36</TD><TD> </TD></TR><TR><TD CLASS="l">37</TD><TD>        public abstract ICatalogElement getData();</TD></TR><TR><TD CLASS="l">38</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="33.html">org.eclipse.wst.xml.ui.internal.catalog</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/19a.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/19a.html
deleted file mode 100644
index ba613d7..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/19a.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="33.html">org.eclipse.wst.xml.ui.internal.catalog</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">ImageFactory.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>ImageFactory.java</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/14)</TD><TD CLASS="h">0%   (0/407)</TD><TD CLASS="h">0%   (0/86)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">ImageFactory</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/149)</TD><TD CLASS="h">0%   (0/22)</TD></TR><TR><TD CLASS="f"><A HREF="#0">&lt;static initializer&gt;</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/44)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">ImageFactory (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#3">createCompositeImage (Image, Image, int): Image</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/70)</TD><TD CLASS="h">0%   (0/10)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">createImageDescriptorWrapper (Image): ImageDescriptor</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#5">getImage (String): Image</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/22)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#6">ImageFactory$ImageBasedImageDescriptor</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#6">ImageFactory$ImageBasedImageDescriptor (Image): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">getImageData (): ImageData</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#9">ImageFactory$OverlayIcon</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/248)</TD><TD CLASS="h">0%   (0/60)</TD></TR><TR><TD CLASS="f"><A HREF="#9">ImageFactory$OverlayIcon (ImageFactory, ImageDescriptor, ImageDescriptor [][]...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/18)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#b">drawBottomLeft (ImageDescriptor []): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/43)</TD><TD CLASS="h">0%   (0/10)</TD></TR><TR><TD CLASS="f"><A HREF="#c">drawBottomRight (ImageDescriptor []): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/44)</TD><TD CLASS="h">0%   (0/10)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#d">drawCompositeImage (int, int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/63)</TD><TD CLASS="h">0%   (0/13)</TD></TR><TR><TD CLASS="f"><A HREF="#e">drawTopLeft (ImageDescriptor []): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/38)</TD><TD CLASS="h">0%   (0/10)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#f">drawTopRight (ImageDescriptor []): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/39)</TD><TD CLASS="h">0%   (0/10)</TD></TR><TR><TD CLASS="f"><A HREF="#10">getSize (): Point</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2002, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.ui.internal.catalog;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.util.Hashtable;</TD></TR><TR><TD CLASS="l">16</TD><TD> </TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.jface.resource.CompositeImageDescriptor;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.jface.resource.ImageDescriptor;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.jface.resource.ImageRegistry;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.swt.graphics.Image;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.swt.graphics.ImageData;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.swt.graphics.Point;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;</TD></TR><TR><TD CLASS="l">24</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">25</TD><TD>public class ImageFactory {</TD></TR><TR><TD CLASS="l">26</TD><TD>        public static final int TOP_LEFT = 1;</TD></TR><TR><TD CLASS="l"><A NAME="0">27</A></TD><TD>        public static final int TOP_RIGHT = 2;</TD></TR><TR><TD CLASS="l">28</TD><TD>        public static final int BOTTOM_LEFT = 3;</TD></TR><TR><TD CLASS="l">29</TD><TD>        public static final int BOTTOM_RIGHT = 4;</TD></TR><TR><TD CLASS="l">30</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">31</TD><TD>        protected static final int[][] OVERLAY_COORDINATE = {{0, 0}, {0, 2}, {2, 0}, {2, 2}};</TD></TR><TR><TD CLASS="l">32</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">33</TD><TD>        protected static ImageFactory INSTANCE = new ImageFactory();</TD></TR><TR><TD CLASS="l"><A NAME="2">34</A></TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">35</TD><TD>        protected Hashtable compositeImageTable = new Hashtable();</TD></TR><TR><TD CLASS="l">36</TD><TD> </TD></TR><TR><TD CLASS="l">37</TD><TD>        public ImageFactory() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="5">38</A></TD><TD>                super();</TD></TR><TR CLASS="z"><TD CLASS="l">39</TD><TD>        }</TD></TR><TR><TD CLASS="l">40</TD><TD> </TD></TR><TR><TD CLASS="l">41</TD><TD>        public Image getImage(String iconName) {</TD></TR><TR CLASS="z"><TD CLASS="l">42</TD><TD>                ImageRegistry imageRegistry = XMLUIPlugin.getDefault().getImageRegistry();</TD></TR><TR><TD CLASS="l">43</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>                if (imageRegistry.get(iconName) != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">45</TD><TD>                        return imageRegistry.get(iconName);</TD></TR><TR><TD CLASS="l">46</TD><TD>                }</TD></TR><TR><TD CLASS="l">47</TD><TD>                else {</TD></TR><TR CLASS="z"><TD CLASS="l">48</TD><TD>                        imageRegistry.put(iconName, ImageDescriptor.createFromFile(getClass(), iconName));</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>                        return imageRegistry.get(iconName);</TD></TR><TR><TD CLASS="l"><A NAME="3">50</A></TD><TD>                }</TD></TR><TR><TD CLASS="l">51</TD><TD>        }</TD></TR><TR><TD CLASS="l">52</TD><TD> </TD></TR><TR><TD CLASS="l">53</TD><TD>        public Image createCompositeImage(Image base, Image overlay, int overlayPosition) {</TD></TR><TR CLASS="z"><TD CLASS="l">54</TD><TD>                String key = base + &#34;*&#34; + overlay + &#34;*&#34; + overlayPosition; //$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                Image result = (Image) compositeImageTable.get(key);</TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>                if (result == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>                        ImageDescriptor overlays[][] = new ImageDescriptor[3][3];</TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>                        int[] coord = OVERLAY_COORDINATE[overlayPosition];</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>                        overlays[coord[1]][coord[0]] = new ImageBasedImageDescriptor(overlay);</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                        OverlayIcon icon = new OverlayIcon(new ImageBasedImageDescriptor(base), overlays, new Point(16, 16));</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                        result = icon.createImage();</TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>                        compositeImageTable.put(key, result);</TD></TR><TR><TD CLASS="l">63</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                return result;</TD></TR><TR><TD CLASS="l"><A NAME="4">65</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">66</TD><TD> </TD></TR><TR><TD CLASS="l">67</TD><TD> </TD></TR><TR><TD CLASS="l">68</TD><TD>        public static ImageDescriptor createImageDescriptorWrapper(Image image) {</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                return new ImageBasedImageDescriptor(image);</TD></TR><TR><TD CLASS="l">70</TD><TD>        }</TD></TR><TR><TD CLASS="l">71</TD><TD> </TD></TR><TR><TD CLASS="l">72</TD><TD>        /**</TD></TR><TR><TD CLASS="l">73</TD><TD>         * An OverlayIcon consists of a main icon and several adornments.</TD></TR><TR><TD CLASS="l">74</TD><TD>         */</TD></TR><TR><TD CLASS="l">75</TD><TD>        class OverlayIcon extends CompositeImageDescriptor {</TD></TR><TR><TD CLASS="l">76</TD><TD> </TD></TR><TR><TD CLASS="l">77</TD><TD>                static final int DEFAULT_WIDTH = 22;</TD></TR><TR><TD CLASS="l">78</TD><TD> </TD></TR><TR><TD CLASS="l">79</TD><TD>                static final int DEFAULT_HEIGHT = 16;</TD></TR><TR><TD CLASS="l">80</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">81</TD><TD>                private Point fSize = null;</TD></TR><TR><TD CLASS="l">82</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="9">83</A></TD><TD>                private ImageDescriptor fBase;</TD></TR><TR><TD CLASS="l">84</TD><TD> </TD></TR><TR><TD CLASS="l">85</TD><TD>                private ImageDescriptor fOverlays[][];</TD></TR><TR><TD CLASS="l">86</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>                public OverlayIcon(ImageDescriptor base, ImageDescriptor[][] overlays, Point size) {</TD></TR><TR CLASS="z"><TD CLASS="l">88</TD><TD>                        fBase = base;</TD></TR><TR CLASS="z"><TD CLASS="l">89</TD><TD>                        fOverlays = overlays;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="b">90</A></TD><TD>                        fSize = size;</TD></TR><TR CLASS="z"><TD CLASS="l">91</TD><TD>                }</TD></TR><TR><TD CLASS="l">92</TD><TD> </TD></TR><TR><TD CLASS="l">93</TD><TD>                protected void drawBottomLeft(ImageDescriptor[] overlays) {</TD></TR><TR CLASS="z"><TD CLASS="l">94</TD><TD>                        if (overlays == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">95</TD><TD>                                return;</TD></TR><TR><TD CLASS="l">96</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">97</TD><TD>                        int length = overlays.length;</TD></TR><TR CLASS="z"><TD CLASS="l">98</TD><TD>                        int x = 0;</TD></TR><TR CLASS="z"><TD CLASS="l">99</TD><TD>                        for (int i = 0; i &lt; 3; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">100</TD><TD>                                if ((i &lt; length) &amp;&amp; (overlays[i] != null)) {</TD></TR><TR CLASS="z"><TD CLASS="l">101</TD><TD>                                        ImageData id = overlays[i].getImageData();</TD></TR><TR CLASS="z"><TD CLASS="l">102</TD><TD>                                        drawImage(id, x, getSize().y - id.height);</TD></TR><TR CLASS="z"><TD CLASS="l">103</TD><TD>                                        x += id.width;</TD></TR><TR><TD CLASS="l">104</TD><TD>                                }</TD></TR><TR><TD CLASS="l"><A NAME="c">105</A></TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">106</TD><TD>                }</TD></TR><TR><TD CLASS="l">107</TD><TD> </TD></TR><TR><TD CLASS="l">108</TD><TD>                protected void drawBottomRight(ImageDescriptor[] overlays) {</TD></TR><TR CLASS="z"><TD CLASS="l">109</TD><TD>                        if (overlays == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">110</TD><TD>                                return;</TD></TR><TR><TD CLASS="l">111</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">112</TD><TD>                        int length = overlays.length;</TD></TR><TR CLASS="z"><TD CLASS="l">113</TD><TD>                        int x = getSize().x;</TD></TR><TR CLASS="z"><TD CLASS="l">114</TD><TD>                        for (int i = 2; i &gt;= 0; i--) {</TD></TR><TR CLASS="z"><TD CLASS="l">115</TD><TD>                                if ((i &lt; length) &amp;&amp; (overlays[i] != null)) {</TD></TR><TR CLASS="z"><TD CLASS="l">116</TD><TD>                                        ImageData id = overlays[i].getImageData();</TD></TR><TR CLASS="z"><TD CLASS="l">117</TD><TD>                                        x -= id.width;</TD></TR><TR CLASS="z"><TD CLASS="l">118</TD><TD>                                        drawImage(id, x, getSize().y - id.height);</TD></TR><TR><TD CLASS="l">119</TD><TD>                                }</TD></TR><TR><TD CLASS="l">120</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">121</TD><TD>                }</TD></TR><TR><TD CLASS="l">122</TD><TD> </TD></TR><TR><TD CLASS="l">123</TD><TD>                /**</TD></TR><TR><TD CLASS="l"><A NAME="d">124</A></TD><TD>                 * @see CompositeImageDescriptor#drawCompositeImage(int, int)</TD></TR><TR><TD CLASS="l">125</TD><TD>                 */</TD></TR><TR><TD CLASS="l">126</TD><TD>                protected void drawCompositeImage(int width, int height) {</TD></TR><TR><TD CLASS="l">127</TD><TD>                        ImageData bg;</TD></TR><TR CLASS="z"><TD CLASS="l">128</TD><TD>                        if ((fBase == null) || ((bg = fBase.getImageData()) == null)) {</TD></TR><TR CLASS="z"><TD CLASS="l">129</TD><TD>                                bg = DEFAULT_IMAGE_DATA;</TD></TR><TR><TD CLASS="l">130</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">131</TD><TD>                        drawImage(bg, 0, 0);</TD></TR><TR><TD CLASS="l">132</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">133</TD><TD>                        if (fOverlays != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">134</TD><TD>                                if (fOverlays.length &gt; 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">135</TD><TD>                                        drawTopRight(fOverlays[0]);</TD></TR><TR><TD CLASS="l">136</TD><TD>                                }</TD></TR><TR><TD CLASS="l">137</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">138</TD><TD>                                if (fOverlays.length &gt; 1) {</TD></TR><TR CLASS="z"><TD CLASS="l">139</TD><TD>                                        drawBottomRight(fOverlays[1]);</TD></TR><TR><TD CLASS="l">140</TD><TD>                                }</TD></TR><TR><TD CLASS="l">141</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">142</TD><TD>                                if (fOverlays.length &gt; 2) {</TD></TR><TR CLASS="z"><TD CLASS="l">143</TD><TD>                                        drawBottomLeft(fOverlays[2]);</TD></TR><TR><TD CLASS="l">144</TD><TD>                                }</TD></TR><TR><TD CLASS="l">145</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">146</TD><TD>                                if (fOverlays.length &gt; 3) {</TD></TR><TR CLASS="z"><TD CLASS="l">147</TD><TD>                                        drawTopLeft(fOverlays[3]);</TD></TR><TR><TD CLASS="l">148</TD><TD>                                }</TD></TR><TR><TD CLASS="l"><A NAME="e">149</A></TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">150</TD><TD>                }</TD></TR><TR><TD CLASS="l">151</TD><TD> </TD></TR><TR><TD CLASS="l">152</TD><TD>                protected void drawTopLeft(ImageDescriptor[] overlays) {</TD></TR><TR CLASS="z"><TD CLASS="l">153</TD><TD>                        if (overlays == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">154</TD><TD>                                return;</TD></TR><TR><TD CLASS="l">155</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">156</TD><TD>                        int length = overlays.length;</TD></TR><TR CLASS="z"><TD CLASS="l">157</TD><TD>                        int x = 0;</TD></TR><TR CLASS="z"><TD CLASS="l">158</TD><TD>                        for (int i = 0; i &lt; 3; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">159</TD><TD>                                if ((i &lt; length) &amp;&amp; (overlays[i] != null)) {</TD></TR><TR CLASS="z"><TD CLASS="l">160</TD><TD>                                        ImageData id = overlays[i].getImageData();</TD></TR><TR CLASS="z"><TD CLASS="l">161</TD><TD>                                        drawImage(id, x, 0);</TD></TR><TR CLASS="z"><TD CLASS="l">162</TD><TD>                                        x += id.width;</TD></TR><TR><TD CLASS="l">163</TD><TD>                                }</TD></TR><TR><TD CLASS="l"><A NAME="f">164</A></TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">165</TD><TD>                }</TD></TR><TR><TD CLASS="l">166</TD><TD> </TD></TR><TR><TD CLASS="l">167</TD><TD>                protected void drawTopRight(ImageDescriptor[] overlays) {</TD></TR><TR CLASS="z"><TD CLASS="l">168</TD><TD>                        if (overlays == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">169</TD><TD>                                return;</TD></TR><TR><TD CLASS="l">170</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">171</TD><TD>                        int length = overlays.length;</TD></TR><TR CLASS="z"><TD CLASS="l">172</TD><TD>                        int x = getSize().x;</TD></TR><TR CLASS="z"><TD CLASS="l">173</TD><TD>                        for (int i = 2; i &gt;= 0; i--) {</TD></TR><TR CLASS="z"><TD CLASS="l">174</TD><TD>                                if ((i &lt; length) &amp;&amp; (overlays[i] != null)) {</TD></TR><TR CLASS="z"><TD CLASS="l">175</TD><TD>                                        ImageData id = overlays[i].getImageData();</TD></TR><TR CLASS="z"><TD CLASS="l">176</TD><TD>                                        x -= id.width;</TD></TR><TR CLASS="z"><TD CLASS="l">177</TD><TD>                                        drawImage(id, x, 0);</TD></TR><TR><TD CLASS="l">178</TD><TD>                                }</TD></TR><TR><TD CLASS="l">179</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">180</TD><TD>                }</TD></TR><TR><TD CLASS="l">181</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="10">182</A></TD><TD>                /**</TD></TR><TR><TD CLASS="l">183</TD><TD>                 * @see CompositeImageDescriptor#getSize()</TD></TR><TR><TD CLASS="l">184</TD><TD>                 */</TD></TR><TR><TD CLASS="l">185</TD><TD>                protected Point getSize() {</TD></TR><TR CLASS="z"><TD CLASS="l">186</TD><TD>                        return fSize;</TD></TR><TR><TD CLASS="l">187</TD><TD>                }</TD></TR><TR><TD CLASS="l">188</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="6">189</A></TD><TD> </TD></TR><TR><TD CLASS="l">190</TD><TD>        static class ImageBasedImageDescriptor extends ImageDescriptor {</TD></TR><TR><TD CLASS="l">191</TD><TD>                protected Image image;</TD></TR><TR><TD CLASS="l">192</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">193</TD><TD>                public ImageBasedImageDescriptor(Image image) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="8">194</A></TD><TD>                        this.image = image;</TD></TR><TR CLASS="z"><TD CLASS="l">195</TD><TD>                }</TD></TR><TR><TD CLASS="l">196</TD><TD> </TD></TR><TR><TD CLASS="l">197</TD><TD>                public ImageData getImageData() {</TD></TR><TR CLASS="z"><TD CLASS="l">198</TD><TD>                        return image.getImageData();</TD></TR><TR><TD CLASS="l">199</TD><TD>                }</TD></TR><TR><TD CLASS="l">200</TD><TD>        }</TD></TR><TR><TD CLASS="l">201</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="33.html">org.eclipse.wst.xml.ui.internal.catalog</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/19b.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/19b.html
deleted file mode 100644
index bb5a529..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/19b.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="33.html">org.eclipse.wst.xml.ui.internal.catalog</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">URIUtils.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>URIUtils.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/78)</TD><TD CLASS="h">0%   (0/19)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">URIUtils</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/78)</TD><TD CLASS="h">0%   (0/19)</TD></TR><TR><TD CLASS="f"><A HREF="#0">URIUtils (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">convertLocationToURI (String): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/36)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR><TD CLASS="f"><A HREF="#3">convertURIToLocation (String): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/39)</TD><TD CLASS="h">0%   (0/10)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2005, 2007 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l"><A NAME="0">11</A></TD><TD>package org.eclipse.wst.xml.ui.internal.catalog;</TD></TR><TR><TD CLASS="l">12</TD><TD> </TD></TR><TR><TD CLASS="l">13</TD><TD>import org.eclipse.wst.common.uriresolver.internal.util.URIHelper;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">15</TD><TD>public class URIUtils {</TD></TR><TR><TD CLASS="l">16</TD><TD>        </TD></TR><TR><TD CLASS="l">17</TD><TD>          private static final String PROTOCOL_PATTERN = &#34;:&#34;; </TD></TR><TR><TD CLASS="l">18</TD><TD>          private static final String FILE_PROTOCOL = &#34;file:&#34;;</TD></TR><TR><TD CLASS="l">19</TD><TD>          private static final String PLATFORM_RESOURCE_PROTOCOL = &#34;platform:/resource/&#34;;</TD></TR><TR><TD CLASS="l">20</TD><TD>          private static final String LOCAL_FILE_PROTOCOL_FORWARD_SLASH = &#34;\\\\\\&#34;;</TD></TR><TR><TD CLASS="l">21</TD><TD>          private static final String LOCAL_FILE_PROTOCOL_BACK_SLASH = &#34;///&#34;;</TD></TR><TR><TD CLASS="l"><A NAME="3">22</A></TD><TD>          private static final char   PATH_SEPARATOR_FORWARD_SLASH = '/';</TD></TR><TR><TD CLASS="l">23</TD><TD>          private static final char   PATH_SEPARATOR_BACK_SLASH = '\\';</TD></TR><TR><TD CLASS="l">24</TD><TD>          </TD></TR><TR><TD CLASS="l">25</TD><TD>          public static String convertURIToLocation(String uri) {</TD></TR><TR CLASS="z"><TD CLASS="l">26</TD><TD>                        String location = uri;</TD></TR><TR CLASS="z"><TD CLASS="l">27</TD><TD>                        if (uri != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">28</TD><TD>                                if (uri.startsWith(FILE_PROTOCOL)) {</TD></TR><TR CLASS="z"><TD CLASS="l">29</TD><TD>                                        location = org.eclipse.wst.common.uriresolver.internal.URI.createURI(uri).toFileString();</TD></TR><TR CLASS="z"><TD CLASS="l">30</TD><TD>                                        if (location != null &amp;&amp; (location.startsWith(LOCAL_FILE_PROTOCOL_BACK_SLASH)</TD></TR><TR CLASS="z"><TD CLASS="l">31</TD><TD>                                                        || location.startsWith(LOCAL_FILE_PROTOCOL_FORWARD_SLASH))) {</TD></TR><TR CLASS="z"><TD CLASS="l">32</TD><TD>                                                location = location.substring(LOCAL_FILE_PROTOCOL_BACK_SLASH.length());</TD></TR><TR><TD CLASS="l">33</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">34</TD><TD>                                } else if (uri.startsWith(PLATFORM_RESOURCE_PROTOCOL)) {</TD></TR><TR CLASS="z"><TD CLASS="l">35</TD><TD>                                        location = uri.substring(PLATFORM_RESOURCE_PROTOCOL.length());</TD></TR><TR><TD CLASS="l">36</TD><TD>                                }</TD></TR><TR><TD CLASS="l">37</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">38</A></TD><TD>                return location;</TD></TR><TR><TD CLASS="l">39</TD><TD>          }</TD></TR><TR><TD CLASS="l">40</TD><TD>          </TD></TR><TR><TD CLASS="l">41</TD><TD>          public static String convertLocationToURI(String location) {</TD></TR><TR CLASS="z"><TD CLASS="l">42</TD><TD>                  String uri = location;</TD></TR><TR CLASS="z"><TD CLASS="l">43</TD><TD>                        if (!URIHelper.hasProtocol(location)) {</TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>                                uri = URIHelper.isAbsolute(location)? org.eclipse.wst.common.uriresolver.internal.URI.createFileURI(location).toString()</TD></TR><TR CLASS="z"><TD CLASS="l">45</TD><TD>                                                : URIHelper.prependPlatformResourceProtocol(location);</TD></TR><TR><TD CLASS="l">46</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>                        if (uri.startsWith(FILE_PROTOCOL) &amp;&amp; uri.indexOf(PROTOCOL_PATTERN, FILE_PROTOCOL.length()) != -1) {</TD></TR><TR CLASS="z"><TD CLASS="l">48</TD><TD>                                uri = URIHelper.ensureFileURIProtocolFormat(uri);</TD></TR><TR><TD CLASS="l">49</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">50</TD><TD>                        uri = uri.replace(PATH_SEPARATOR_BACK_SLASH, PATH_SEPARATOR_FORWARD_SLASH);</TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>                        return uri;</TD></TR><TR><TD CLASS="l">52</TD><TD>          }</TD></TR><TR><TD CLASS="l">53</TD><TD> </TD></TR><TR><TD CLASS="l">54</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="33.html">org.eclipse.wst.xml.ui.internal.catalog</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/19c.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/19c.html
deleted file mode 100644
index 30b440f..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/19c.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="33.html">org.eclipse.wst.xml.ui.internal.catalog</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">XMLCatalogEntriesView.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>XMLCatalogEntriesView.java</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/17)</TD><TD CLASS="h">0%   (0/545)</TD><TD CLASS="h">0%   (0/140)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">XMLCatalogEntriesView</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/499)</TD><TD CLASS="h">0%   (0/130)</TD></TR><TR><TD CLASS="f"><A HREF="#0">XMLCatalogEntriesView (Composite, ICatalog, ICatalog): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/75)</TD><TD CLASS="h">0%   (0/19)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">createButtons (Composite): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/159)</TD><TD CLASS="h">0%   (0/42)</TD></TR><TR><TD CLASS="f"><A HREF="#3">createTableViewer (Composite): XMLCatalogTreeViewer</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/22)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">getViewer (): Viewer</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#5">invokeDialog (String, ICatalog): EditCatalogEntryDialog</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">invokeDialog (String, ICatalogElement, ICatalog): EditCatalogEntryDialog</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/34)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR><TD CLASS="f"><A HREF="#7">performDelete (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/31)</TD><TD CLASS="h">0%   (0/10)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">performEdit (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/50)</TD><TD CLASS="h">0%   (0/11)</TD></TR><TR><TD CLASS="f"><A HREF="#9">performNew (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/28)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">refresh (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#b">removeLeadingSlash (String): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/17)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#c">updatePage (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#d">updateWidgetEnabledState (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/65)</TD><TD CLASS="h">0%   (0/18)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#e">XMLCatalogEntriesView$1</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#e">XMLCatalogEntriesView$1 (XMLCatalogEntriesView): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#10">selectionChanged (SelectionChangedEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#11">XMLCatalogEntriesView$2</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/36)</TD><TD CLASS="h">0%   (0/9)</TD></TR><TR><TD CLASS="f"><A HREF="#11">XMLCatalogEntriesView$2 (XMLCatalogEntriesView): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#13">widgetSelected (SelectionEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/30)</TD><TD CLASS="h">0%   (0/7)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR CLASS="z"><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2002, 2008 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.ui.internal.catalog;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.util.Iterator;</TD></TR><TR><TD CLASS="l">16</TD><TD> </TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.jface.viewers.ISelection;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.jface.viewers.ISelectionChangedListener;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.jface.viewers.IStructuredSelection;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.jface.viewers.SelectionChangedEvent;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.jface.viewers.StructuredSelection;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.jface.viewers.Viewer;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.jface.window.Window;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.swt.SWT;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.swt.events.SelectionAdapter;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.swt.events.SelectionEvent;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.swt.events.SelectionListener;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.swt.graphics.Point;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.swt.layout.GridData;</TD></TR><TR><TD CLASS="l">30</TD><TD>import org.eclipse.swt.layout.GridLayout;</TD></TR><TR><TD CLASS="l">31</TD><TD>import org.eclipse.swt.widgets.Button;</TD></TR><TR><TD CLASS="l">32</TD><TD>import org.eclipse.swt.widgets.Composite;</TD></TR><TR><TD CLASS="l">33</TD><TD>import org.eclipse.swt.widgets.Shell;</TD></TR><TR><TD CLASS="l">34</TD><TD>import org.eclipse.wst.xml.core.internal.catalog.Catalog;</TD></TR><TR><TD CLASS="l">35</TD><TD>import org.eclipse.wst.xml.core.internal.catalog.CatalogElement;</TD></TR><TR><TD CLASS="l">36</TD><TD>import org.eclipse.wst.xml.core.internal.catalog.provisional.ICatalog;</TD></TR><TR><TD CLASS="l">37</TD><TD>import org.eclipse.wst.xml.core.internal.catalog.provisional.ICatalogElement;</TD></TR><TR><TD CLASS="l">38</TD><TD>import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;</TD></TR><TR><TD CLASS="l">39</TD><TD> </TD></TR><TR><TD CLASS="l">40</TD><TD> </TD></TR><TR><TD CLASS="l">41</TD><TD> </TD></TR><TR><TD CLASS="l">42</TD><TD>public class XMLCatalogEntriesView extends Composite {</TD></TR><TR><TD CLASS="l">43</TD><TD>        protected Button newButton;</TD></TR><TR><TD CLASS="l">44</TD><TD>        protected Button editButton;</TD></TR><TR><TD CLASS="l">45</TD><TD>        protected Button deleteButton;</TD></TR><TR><TD CLASS="l">46</TD><TD>        protected XMLCatalogTreeViewer tableViewer;</TD></TR><TR><TD CLASS="l">47</TD><TD>        protected ICatalog workingUserCatalog;</TD></TR><TR><TD CLASS="l">48</TD><TD>        protected ICatalog systemCatalog;</TD></TR><TR><TD CLASS="l"><A NAME="0">49</A></TD><TD> </TD></TR><TR><TD CLASS="l">50</TD><TD>        // protected boolean isPageEnabled = true;</TD></TR><TR><TD CLASS="l">51</TD><TD> </TD></TR><TR><TD CLASS="l">52</TD><TD>        public XMLCatalogEntriesView(Composite parent, ICatalog workingUserCatalog, ICatalog systemCatalog) {</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>                super(parent, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">54</TD><TD>                this.workingUserCatalog = workingUserCatalog;</TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                this.systemCatalog = systemCatalog;</TD></TR><TR><TD CLASS="l">56</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>                GridLayout gridLayout = new GridLayout();</TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>                gridLayout.numColumns = 2;</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>                this.setLayout(gridLayout);</TD></TR><TR><TD CLASS="l">60</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                tableViewer = createTableViewer(this);</TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>                tableViewer.setInput(&#34;dummy&#34;); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">63</TD><TD>                </TD></TR><TR><TD CLASS="l">64</TD><TD>                // https://bugs.eclipse.org/bugs/show_bug.cgi?id=202692</TD></TR><TR><TD CLASS="l">65</TD><TD>                // specifically set size of tree before expanding it</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                Point initialSize = tableViewer.getTree().computeSize(SWT.DEFAULT, SWT.DEFAULT);</TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>                GridData gridData = new GridData(GridData.FILL_BOTH);</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>                gridData.widthHint = initialSize.x;</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                gridData.heightHint = initialSize.y;</TD></TR><TR CLASS="z"><TD CLASS="l">70</TD><TD>                tableViewer.getControl().setLayoutData(gridData);</TD></TR><TR><TD CLASS="l"><A NAME="e">71</A></TD><TD>                </TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>                tableViewer.expandToLevel(2);</TD></TR><TR CLASS="z"><TD CLASS="l">73</TD><TD>                tableViewer.reveal(XMLCatalogTreeViewer.USER_SPECIFIED_ENTRIES_OBJECT);</TD></TR><TR><TD CLASS="l"><A NAME="10">74</A></TD><TD>                </TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>                ISelectionChangedListener listener = new ISelectionChangedListener() {</TD></TR><TR><TD CLASS="l">76</TD><TD>                        public void selectionChanged(SelectionChangedEvent event) {</TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>                                updateWidgetEnabledState();</TD></TR><TR CLASS="z"><TD CLASS="l">78</TD><TD>                        }</TD></TR><TR><TD CLASS="l">79</TD><TD>                };</TD></TR><TR CLASS="z"><TD CLASS="l">80</TD><TD>                tableViewer.addSelectionChangedListener(listener);</TD></TR><TR><TD CLASS="l">81</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>                createButtons(this);</TD></TR><TR CLASS="z"><TD CLASS="l">83</TD><TD>        }</TD></TR><TR><TD CLASS="l">84</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="b">85</A></TD><TD>        public static String removeLeadingSlash(String uri) {</TD></TR><TR><TD CLASS="l">86</TD><TD>                // remove leading slash from the value to avoid the whole leading</TD></TR><TR><TD CLASS="l">87</TD><TD>                // slash ambiguity problem</TD></TR><TR><TD CLASS="l">88</TD><TD>                //       </TD></TR><TR CLASS="z"><TD CLASS="l">89</TD><TD>                if (uri != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">90</TD><TD>                        while (uri.startsWith(&#34;/&#34;) || uri.startsWith(&#34;\\&#34;)) //$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR><TD CLASS="l">91</TD><TD>                        {</TD></TR><TR CLASS="z"><TD CLASS="l">92</TD><TD>                                uri = uri.substring(1);</TD></TR><TR><TD CLASS="l">93</TD><TD>                        }</TD></TR><TR><TD CLASS="l">94</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">95</A></TD><TD>                return uri;</TD></TR><TR><TD CLASS="l">96</TD><TD>        }</TD></TR><TR><TD CLASS="l">97</TD><TD> </TD></TR><TR><TD CLASS="l">98</TD><TD>        protected XMLCatalogTreeViewer createTableViewer(Composite parent) {</TD></TR><TR CLASS="z"><TD CLASS="l">99</TD><TD>                String headings[] = new String[2];</TD></TR><TR CLASS="z"><TD CLASS="l">100</TD><TD>                headings[0] = XMLCatalogMessages.UI_LABEL_KEY;</TD></TR><TR CLASS="z"><TD CLASS="l">101</TD><TD>                headings[1] = XMLCatalogMessages.UI_LABEL_URI;</TD></TR><TR><TD CLASS="l">102</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">103</TD><TD>                XMLCatalogTreeViewer theTableViewer = new XMLCatalogTreeViewer(parent, workingUserCatalog, systemCatalog);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">104</A></TD><TD>                return theTableViewer;</TD></TR><TR><TD CLASS="l">105</TD><TD>        }</TD></TR><TR><TD CLASS="l">106</TD><TD> </TD></TR><TR><TD CLASS="l">107</TD><TD>        protected void createButtons(Composite parent) {</TD></TR><TR CLASS="z"><TD CLASS="l">108</TD><TD>                Composite composite = new Composite(parent, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">109</TD><TD>                GridData gd = new GridData();</TD></TR><TR CLASS="z"><TD CLASS="l">110</TD><TD>                gd.verticalAlignment = GridData.BEGINNING;</TD></TR><TR CLASS="z"><TD CLASS="l">111</TD><TD>                composite.setLayoutData(gd);</TD></TR><TR CLASS="z"><TD CLASS="l">112</TD><TD>                GridLayout gridLayout = new GridLayout();</TD></TR><TR CLASS="z"><TD CLASS="l">113</TD><TD>                gridLayout.marginHeight = 0;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="11">114</A></TD><TD>                gridLayout.marginWidth = 0;</TD></TR><TR CLASS="z"><TD CLASS="l">115</TD><TD>                gridLayout.marginLeft = 3;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="13">116</A></TD><TD>                composite.setLayout(gridLayout);</TD></TR><TR><TD CLASS="l">117</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">118</TD><TD>                SelectionListener selectionListener = new SelectionAdapter() {</TD></TR><TR><TD CLASS="l">119</TD><TD>                        public void widgetSelected(SelectionEvent e) {</TD></TR><TR CLASS="z"><TD CLASS="l">120</TD><TD>                                if (e.widget == newButton) {</TD></TR><TR CLASS="z"><TD CLASS="l">121</TD><TD>                                        performNew();</TD></TR><TR><TD CLASS="l">122</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">123</TD><TD>                                else if (e.widget == editButton) {</TD></TR><TR CLASS="z"><TD CLASS="l">124</TD><TD>                                        performEdit();</TD></TR><TR><TD CLASS="l">125</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">126</TD><TD>                                else if (e.widget == deleteButton) {</TD></TR><TR CLASS="z"><TD CLASS="l">127</TD><TD>                                        performDelete();</TD></TR><TR><TD CLASS="l">128</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">129</TD><TD>                        }</TD></TR><TR><TD CLASS="l">130</TD><TD>                };</TD></TR><TR><TD CLASS="l">131</TD><TD> </TD></TR><TR><TD CLASS="l">132</TD><TD>                // add the &#34;New...&#34; button</TD></TR><TR><TD CLASS="l">133</TD><TD>                //</TD></TR><TR CLASS="z"><TD CLASS="l">134</TD><TD>                gd = new GridData();</TD></TR><TR CLASS="z"><TD CLASS="l">135</TD><TD>                gd.horizontalAlignment = GridData.FILL;</TD></TR><TR CLASS="z"><TD CLASS="l">136</TD><TD>                gd.grabExcessHorizontalSpace = true;</TD></TR><TR><TD CLASS="l">137</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">138</TD><TD>                newButton = new Button(composite, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">139</TD><TD>                newButton.setText(XMLCatalogMessages.UI_BUTTON_NEW);</TD></TR><TR><TD CLASS="l">140</TD><TD>                // WorkbenchHelp.setHelp(newButton,</TD></TR><TR><TD CLASS="l">141</TD><TD>                // XMLBuilderContextIds.XMLP_MAPPING_NEW);</TD></TR><TR CLASS="z"><TD CLASS="l">142</TD><TD>                newButton.setLayoutData(gd);</TD></TR><TR CLASS="z"><TD CLASS="l">143</TD><TD>                newButton.addSelectionListener(selectionListener);</TD></TR><TR><TD CLASS="l">144</TD><TD> </TD></TR><TR><TD CLASS="l">145</TD><TD>                // add the &#34;Edit...&#34; button</TD></TR><TR><TD CLASS="l">146</TD><TD>                //</TD></TR><TR CLASS="z"><TD CLASS="l">147</TD><TD>                gd = new GridData();</TD></TR><TR CLASS="z"><TD CLASS="l">148</TD><TD>                gd.horizontalAlignment = GridData.FILL;</TD></TR><TR CLASS="z"><TD CLASS="l">149</TD><TD>                gd.grabExcessHorizontalSpace = true;</TD></TR><TR CLASS="z"><TD CLASS="l">150</TD><TD>                editButton = new Button(composite, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">151</TD><TD>                editButton.setText(XMLCatalogMessages.UI_BUTTON_EDIT);</TD></TR><TR><TD CLASS="l">152</TD><TD>                // WorkbenchHelp.setHelp(editButton,</TD></TR><TR><TD CLASS="l">153</TD><TD>                // XMLBuilderContextIds.XMLP_MAPPING_EDIT);</TD></TR><TR CLASS="z"><TD CLASS="l">154</TD><TD>                editButton.setLayoutData(gd);</TD></TR><TR CLASS="z"><TD CLASS="l">155</TD><TD>                editButton.addSelectionListener(selectionListener);</TD></TR><TR><TD CLASS="l">156</TD><TD> </TD></TR><TR><TD CLASS="l">157</TD><TD>                // add the &#34;Delete&#34; button</TD></TR><TR><TD CLASS="l">158</TD><TD>                //</TD></TR><TR CLASS="z"><TD CLASS="l">159</TD><TD>                gd = new GridData();</TD></TR><TR CLASS="z"><TD CLASS="l">160</TD><TD>                gd.horizontalAlignment = GridData.FILL;</TD></TR><TR CLASS="z"><TD CLASS="l">161</TD><TD>                gd.grabExcessHorizontalSpace = true;</TD></TR><TR CLASS="z"><TD CLASS="l">162</TD><TD>                deleteButton = new Button(composite, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">163</TD><TD>                deleteButton.setText(XMLCatalogMessages.UI_BUTTON_REMOVE);</TD></TR><TR><TD CLASS="l">164</TD><TD>                // WorkbenchHelp.setHelp(deleteButton,</TD></TR><TR><TD CLASS="l">165</TD><TD>                // XMLBuilderContextIds.XMLP_MAPPING_DELETE);</TD></TR><TR CLASS="z"><TD CLASS="l">166</TD><TD>                deleteButton.setLayoutData(gd);</TD></TR><TR CLASS="z"><TD CLASS="l">167</TD><TD>                deleteButton.addSelectionListener(selectionListener);</TD></TR><TR><TD CLASS="l">168</TD><TD>                </TD></TR><TR CLASS="z"><TD CLASS="l">169</TD><TD>                gd = new GridData();</TD></TR><TR CLASS="z"><TD CLASS="l">170</TD><TD>                gd.horizontalAlignment = GridData.FILL;</TD></TR><TR CLASS="z"><TD CLASS="l">171</TD><TD>                gd.grabExcessHorizontalSpace = true;</TD></TR><TR CLASS="z"><TD CLASS="l">172</TD><TD>                gd.horizontalSpan = 4;</TD></TR><TR><TD CLASS="l">173</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">174</TD><TD>                Button hiddenButton = new Button(composite, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">175</TD><TD>                hiddenButton.setLayoutData(gd);</TD></TR><TR CLASS="z"><TD CLASS="l">176</TD><TD>                hiddenButton.setVisible(false);</TD></TR><TR CLASS="z"><TD CLASS="l">177</TD><TD>                hiddenButton.setEnabled(false);</TD></TR><TR><TD CLASS="l">178</TD><TD> </TD></TR><TR><TD CLASS="l">179</TD><TD>                // a cruddy hack so that the PreferenceDialog doesn't close every time</TD></TR><TR><TD CLASS="l">180</TD><TD>                // we press 'enter'</TD></TR><TR><TD CLASS="l">181</TD><TD>                //</TD></TR><TR CLASS="z"><TD CLASS="l">182</TD><TD>                getShell().setDefaultButton(hiddenButton);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="a">183</A></TD><TD>                updateWidgetEnabledState();</TD></TR><TR CLASS="z"><TD CLASS="l">184</TD><TD>        }</TD></TR><TR><TD CLASS="l">185</TD><TD> </TD></TR><TR><TD CLASS="l">186</TD><TD>        public void refresh() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="6">187</A></TD><TD>                tableViewer.refresh();// XMLCatalogTreeViewer.USER_SPECIFIED_ENTRIES_OBJECT);</TD></TR><TR CLASS="z"><TD CLASS="l">188</TD><TD>        }</TD></TR><TR><TD CLASS="l">189</TD><TD> </TD></TR><TR><TD CLASS="l">190</TD><TD>        protected EditCatalogEntryDialog invokeDialog(String title, ICatalogElement entry, ICatalog catalog) {</TD></TR><TR CLASS="z"><TD CLASS="l">191</TD><TD>                Shell shell = XMLUIPlugin.getInstance().getWorkbench().getActiveWorkbenchWindow().getShell();</TD></TR><TR CLASS="z"><TD CLASS="l">192</TD><TD>                EditCatalogEntryDialog dialog = entry != null ? new EditCatalogEntryDialog(shell, entry, catalog) : new EditCatalogEntryDialog(shell, catalog);</TD></TR><TR CLASS="z"><TD CLASS="l">193</TD><TD>                dialog.create();</TD></TR><TR CLASS="z"><TD CLASS="l">194</TD><TD>                dialog.getShell().setText(title);</TD></TR><TR CLASS="z"><TD CLASS="l">195</TD><TD>                dialog.setBlockOnOpen(true);</TD></TR><TR CLASS="z"><TD CLASS="l">196</TD><TD>                dialog.open();</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="5">197</A></TD><TD>                return dialog;</TD></TR><TR><TD CLASS="l">198</TD><TD>        }</TD></TR><TR><TD CLASS="l">199</TD><TD> </TD></TR><TR><TD CLASS="l">200</TD><TD>        protected EditCatalogEntryDialog invokeDialog(String title, ICatalog catalog) {</TD></TR><TR CLASS="z"><TD CLASS="l">201</TD><TD>                return invokeDialog(title, null, catalog);</TD></TR><TR><TD CLASS="l">202</TD><TD>        }</TD></TR><TR><TD CLASS="l">203</TD><TD> </TD></TR><TR><TD CLASS="l">204</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="9">205</A></TD><TD>        protected void performNew() {</TD></TR><TR><TD CLASS="l">206</TD><TD> </TD></TR><TR><TD CLASS="l">207</TD><TD>                // ICatalogEntry newEntry =</TD></TR><TR><TD CLASS="l">208</TD><TD>                // (ICatalogEntry)workingUserCatalog.createCatalogElement(ICatalogElement.TYPE_ENTRY);</TD></TR><TR CLASS="z"><TD CLASS="l">209</TD><TD>                EditCatalogEntryDialog dialog = invokeDialog(XMLCatalogMessages.UI_LABEL_NEW_DIALOG_TITLE, workingUserCatalog);</TD></TR><TR CLASS="z"><TD CLASS="l">210</TD><TD>                ICatalogElement element = dialog.getCatalogElement();</TD></TR><TR CLASS="z"><TD CLASS="l">211</TD><TD>                if (dialog.getReturnCode() == Window.OK) {</TD></TR><TR CLASS="z"><TD CLASS="l">212</TD><TD>                        workingUserCatalog.addCatalogElement(element);</TD></TR><TR CLASS="z"><TD CLASS="l">213</TD><TD>                        tableViewer.setSelection(new StructuredSelection(element), true);</TD></TR><TR CLASS="z"><TD CLASS="l">214</TD><TD>                        tableViewer.refresh();</TD></TR><TR><TD CLASS="l"><A NAME="8">215</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">216</TD><TD>        }</TD></TR><TR><TD CLASS="l">217</TD><TD> </TD></TR><TR><TD CLASS="l">218</TD><TD>        protected void performEdit() {</TD></TR><TR CLASS="z"><TD CLASS="l">219</TD><TD>                ISelection selection = tableViewer.getSelection();</TD></TR><TR CLASS="z"><TD CLASS="l">220</TD><TD>                Object selectedObject = (selection instanceof IStructuredSelection) ? ((IStructuredSelection) selection).getFirstElement() : null;</TD></TR><TR><TD CLASS="l">221</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">222</TD><TD>                if (selectedObject instanceof ICatalogElement) {</TD></TR><TR CLASS="z"><TD CLASS="l">223</TD><TD>                        ICatalogElement oldEntry = (ICatalogElement) selectedObject;</TD></TR><TR CLASS="z"><TD CLASS="l">224</TD><TD>                        ICatalogElement newEntry = (ICatalogElement) ((CatalogElement) oldEntry).clone();</TD></TR><TR><TD CLASS="l">225</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">226</TD><TD>                        EditCatalogEntryDialog dialog = invokeDialog(XMLCatalogMessages.UI_LABEL_EDIT_DIALOG_TITLE, newEntry, workingUserCatalog);</TD></TR><TR CLASS="z"><TD CLASS="l">227</TD><TD>                        if (dialog.getReturnCode() == Window.OK) {</TD></TR><TR><TD CLASS="l">228</TD><TD>                                // delete the old value if the 'mapFrom' has changed</TD></TR><TR><TD CLASS="l">229</TD><TD>                                //</TD></TR><TR CLASS="z"><TD CLASS="l">230</TD><TD>                                workingUserCatalog.removeCatalogElement(oldEntry);</TD></TR><TR><TD CLASS="l">231</TD><TD> </TD></TR><TR><TD CLASS="l">232</TD><TD>                                // update the new mapping</TD></TR><TR><TD CLASS="l">233</TD><TD>                                //</TD></TR><TR CLASS="z"><TD CLASS="l">234</TD><TD>                                workingUserCatalog.addCatalogElement(newEntry);</TD></TR><TR CLASS="z"><TD CLASS="l">235</TD><TD>                                tableViewer.setSelection(new StructuredSelection(newEntry));</TD></TR><TR><TD CLASS="l">236</TD><TD>                        }</TD></TR><TR><TD CLASS="l"><A NAME="7">237</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">238</TD><TD>        }</TD></TR><TR><TD CLASS="l">239</TD><TD> </TD></TR><TR><TD CLASS="l">240</TD><TD>        protected void performDelete() {</TD></TR><TR CLASS="z"><TD CLASS="l">241</TD><TD>                ISelection selection = tableViewer.getSelection();</TD></TR><TR CLASS="z"><TD CLASS="l">242</TD><TD>                if(selection instanceof IStructuredSelection) {</TD></TR><TR CLASS="z"><TD CLASS="l">243</TD><TD>                        IStructuredSelection structuredSelection = (IStructuredSelection)selection;</TD></TR><TR CLASS="z"><TD CLASS="l">244</TD><TD>                        Iterator iterator = structuredSelection.iterator();</TD></TR><TR CLASS="z"><TD CLASS="l">245</TD><TD>                        while(iterator.hasNext()) {</TD></TR><TR CLASS="z"><TD CLASS="l">246</TD><TD>                                Object selectedObject = iterator.next();</TD></TR><TR CLASS="z"><TD CLASS="l">247</TD><TD>                                if (selectedObject instanceof ICatalogElement) {</TD></TR><TR CLASS="z"><TD CLASS="l">248</TD><TD>                                        ICatalogElement catalogElement = (ICatalogElement) selectedObject;</TD></TR><TR CLASS="z"><TD CLASS="l">249</TD><TD>                                        workingUserCatalog.removeCatalogElement(catalogElement);</TD></TR><TR><TD CLASS="l">250</TD><TD>                                }</TD></TR><TR><TD CLASS="l">251</TD><TD>                        }</TD></TR><TR><TD CLASS="l"><A NAME="d">252</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">253</TD><TD>        }</TD></TR><TR><TD CLASS="l">254</TD><TD> </TD></TR><TR><TD CLASS="l">255</TD><TD>        protected void updateWidgetEnabledState() {</TD></TR><TR CLASS="z"><TD CLASS="l">256</TD><TD>                boolean isEditable = false;</TD></TR><TR CLASS="z"><TD CLASS="l">257</TD><TD>                ISelection selection = tableViewer.getSelection();</TD></TR><TR CLASS="z"><TD CLASS="l">258</TD><TD>                boolean multipleSelection = false;</TD></TR><TR CLASS="z"><TD CLASS="l">259</TD><TD>                if(selection instanceof IStructuredSelection) {</TD></TR><TR CLASS="z"><TD CLASS="l">260</TD><TD>                        IStructuredSelection structuredSelection = (IStructuredSelection)selection;</TD></TR><TR CLASS="z"><TD CLASS="l">261</TD><TD>                        if(structuredSelection.size() &gt; 1) {</TD></TR><TR CLASS="z"><TD CLASS="l">262</TD><TD>                                multipleSelection = true;</TD></TR><TR><TD CLASS="l">263</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">264</TD><TD>                        Object selectedObject = structuredSelection.getFirstElement();</TD></TR><TR CLASS="z"><TD CLASS="l">265</TD><TD>                        if (selectedObject instanceof ICatalogElement) {</TD></TR><TR CLASS="z"><TD CLASS="l">266</TD><TD>                                ICatalogElement[] elements = ((Catalog) workingUserCatalog).getCatalogElements();</TD></TR><TR><TD CLASS="l">267</TD><TD>                                // dw List entriesList = new ArrayList(elements.length);</TD></TR><TR CLASS="z"><TD CLASS="l">268</TD><TD>                                for (int i = 0; i &lt; elements.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">269</TD><TD>                                        ICatalogElement element = elements[i];</TD></TR><TR CLASS="z"><TD CLASS="l">270</TD><TD>                                        isEditable = selectedObject.equals(element);</TD></TR><TR CLASS="z"><TD CLASS="l">271</TD><TD>                                        if (isEditable) {</TD></TR><TR CLASS="z"><TD CLASS="l">272</TD><TD>                                                break;</TD></TR><TR><TD CLASS="l">273</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">274</TD><TD>                                }</TD></TR><TR><TD CLASS="l">275</TD><TD>                        }</TD></TR><TR><TD CLASS="l">276</TD><TD>                }</TD></TR><TR><TD CLASS="l">277</TD><TD> </TD></TR><TR><TD CLASS="l">278</TD><TD>                // if (isPageEnabled)</TD></TR><TR><TD CLASS="l">279</TD><TD>                {</TD></TR><TR CLASS="z"><TD CLASS="l">280</TD><TD>                        editButton.setEnabled(isEditable &amp; !multipleSelection);</TD></TR><TR CLASS="z"><TD CLASS="l">281</TD><TD>                        deleteButton.setEnabled(isEditable);</TD></TR><TR><TD CLASS="l">282</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">283</TD><TD>        }</TD></TR><TR><TD CLASS="l">284</TD><TD> </TD></TR><TR><TD CLASS="l">285</TD><TD>        /*</TD></TR><TR><TD CLASS="l">286</TD><TD>         * public void setPageEnabled(boolean enabled) { isPageEnabled = enabled;</TD></TR><TR><TD CLASS="l">287</TD><TD>         * </TD></TR><TR><TD CLASS="l">288</TD><TD>         * tableViewer.getControl().setEnabled(isPageEnabled);</TD></TR><TR><TD CLASS="l">289</TD><TD>         * </TD></TR><TR><TD CLASS="l">290</TD><TD>         * newButton.setEnabled(isPageEnabled);</TD></TR><TR><TD CLASS="l"><A NAME="c">291</A></TD><TD>         * editButton.setEnabled(isPageEnabled);</TD></TR><TR><TD CLASS="l">292</TD><TD>         * deleteButton.setEnabled(isPageEnabled); }</TD></TR><TR><TD CLASS="l">293</TD><TD>         */</TD></TR><TR><TD CLASS="l">294</TD><TD>        public void updatePage() {</TD></TR><TR CLASS="z"><TD CLASS="l">295</TD><TD>                refresh();</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">296</A></TD><TD>                updateWidgetEnabledState();</TD></TR><TR CLASS="z"><TD CLASS="l">297</TD><TD>        }</TD></TR><TR><TD CLASS="l">298</TD><TD> </TD></TR><TR><TD CLASS="l">299</TD><TD>        public Viewer getViewer() {</TD></TR><TR CLASS="z"><TD CLASS="l">300</TD><TD>                return tableViewer;</TD></TR><TR><TD CLASS="l">301</TD><TD>        }</TD></TR><TR><TD CLASS="l">302</TD><TD> </TD></TR><TR><TD CLASS="l">303</TD><TD> </TD></TR><TR><TD CLASS="l">304</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="33.html">org.eclipse.wst.xml.ui.internal.catalog</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/19d.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/19d.html
deleted file mode 100644
index ac5d3e8..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/19d.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="33.html">org.eclipse.wst.xml.ui.internal.catalog</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">XMLCatalogEntryDetailsView.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>XMLCatalogEntryDetailsView.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/287)</TD><TD CLASS="h">0%   (0/46)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">XMLCatalogEntryDetailsView</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/287)</TD><TD CLASS="h">0%   (0/46)</TD></TR><TR><TD CLASS="f"><A HREF="#0">XMLCatalogEntryDetailsView (Composite): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/45)</TD><TD CLASS="h">0%   (0/11)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">getDisplayValue (String): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#3">getKeyTypeValue (ICatalogEntry): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/32)</TD><TD CLASS="h">0%   (0/10)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">setCatalogElement (ICatalogEntry): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/155)</TD><TD CLASS="h">0%   (0/18)</TD></TR><TR><TD CLASS="f"><A HREF="#5">setCatalogElement (INextCatalog): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/49)</TD><TD CLASS="h">0%   (0/6)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2002, 2008 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.ui.internal.catalog;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD> </TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.swt.SWT;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.swt.graphics.Color;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.swt.layout.GridData;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.swt.widgets.Composite;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.swt.widgets.ScrollBar;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.swt.widgets.Text;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.wst.common.uriresolver.internal.util.URIHelper;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.wst.xml.core.internal.catalog.provisional.ICatalogEntry;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.wst.xml.core.internal.catalog.provisional.INextCatalog;</TD></TR><TR><TD CLASS="l">25</TD><TD> </TD></TR><TR><TD CLASS="l">26</TD><TD> </TD></TR><TR><TD CLASS="l">27</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="0">28</A></TD><TD>public class XMLCatalogEntryDetailsView {</TD></TR><TR><TD CLASS="l">29</TD><TD>        protected Text detailsText;</TD></TR><TR><TD CLASS="l">30</TD><TD>        protected ScrollBar verticalScroll, horizontalScroll;</TD></TR><TR><TD CLASS="l">31</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">32</TD><TD>        public XMLCatalogEntryDetailsView(Composite parent) {</TD></TR><TR CLASS="z"><TD CLASS="l">33</TD><TD>                Color color = parent.getDisplay().getSystemColor(SWT.COLOR_LIST_BACKGROUND);</TD></TR><TR><TD CLASS="l">34</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">35</TD><TD>                detailsText = new Text(parent, SWT.MULTI | SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL);</TD></TR><TR><TD CLASS="l">36</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">37</TD><TD>                GridData data = new GridData(GridData.FILL_BOTH);</TD></TR><TR CLASS="z"><TD CLASS="l">38</TD><TD>                data.heightHint = 85;</TD></TR><TR CLASS="z"><TD CLASS="l">39</TD><TD>                detailsText.setLayoutData(data);</TD></TR><TR><TD CLASS="l">40</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>                verticalScroll = detailsText.getVerticalBar();</TD></TR><TR><TD CLASS="l">42</TD><TD>                // verticalScroll.setVisible(false);</TD></TR><TR CLASS="z"><TD CLASS="l">43</TD><TD>                horizontalScroll = detailsText.getHorizontalBar();</TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>                detailsText.setEditable(false);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">45</A></TD><TD>                detailsText.setBackground(color);</TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>        }</TD></TR><TR><TD CLASS="l">47</TD><TD> </TD></TR><TR><TD CLASS="l">48</TD><TD>        public void setCatalogElement(ICatalogEntry entry) {</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>                if (entry == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">50</TD><TD>                        detailsText.setText(&#34;&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>                        return;</TD></TR><TR><TD CLASS="l">52</TD><TD>                }</TD></TR><TR><TD CLASS="l">53</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">54</TD><TD>                String value = getDisplayValue(entry != null ? entry.getURI() : &#34;&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                String line1 = XMLCatalogMessages.UI_LABEL_DETAILS_URI_COLON + &#34;\t\t&#34; + value; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">56</TD><TD> </TD></TR><TR><TD CLASS="l">57</TD><TD>                String line0;</TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>                if (value.startsWith(&#34;jar:file:&#34;)) {</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>                        String jarFile = URIUtils.convertURIToLocation(URIHelper.ensureURIProtocolFormat(value.substring(&#34;jar:&#34;.length(), value.indexOf('!'))));</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                        String internalFile = URIUtils.convertURIToLocation(URIHelper.ensureURIProtocolFormat(&#34;file://&#34; + value.substring(value.indexOf('!') + 1)));</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                        line0 = XMLCatalogMessages.UI_LABEL_DETAILS_URI_LOCATION + &#34;\t&#34; + internalFile + &#34; &#34; + XMLCatalogMessages.UI_LABEL_DETAILS_IN_JAR_FILE + &#34; &#34; + jarFile;</TD></TR><TR><TD CLASS="l">62</TD><TD>                }</TD></TR><TR><TD CLASS="l">63</TD><TD>                else {</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                        value = URIUtils.convertURIToLocation(value);</TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>                        line0 = XMLCatalogMessages.UI_LABEL_DETAILS_URI_LOCATION + &#34;\t&#34; + value; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">66</TD><TD> </TD></TR><TR><TD CLASS="l">67</TD><TD>                }</TD></TR><TR><TD CLASS="l">68</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                value = entry != null ? getKeyTypeValue(entry) : &#34;&#34;; //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">70</TD><TD>                String line2 = XMLCatalogMessages.UI_KEY_TYPE_DETAILS_COLON + &#34;\t&#34; + value; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">71</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>                value = getDisplayValue(entry != null ? entry.getKey() : &#34;&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">73</TD><TD>                String line3 = XMLCatalogMessages.UI_LABEL_DETAILS_KEY_COLON + &#34;\t\t&#34; + value; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">74</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>                String entireString = &#34;\n&#34; + line0 + &#34;\n&#34; + line1 + &#34;\n&#34; + line2 + &#34;\n&#34; + line3; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="5">76</A></TD><TD>                detailsText.setText(entireString);</TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>        }</TD></TR><TR><TD CLASS="l">78</TD><TD> </TD></TR><TR><TD CLASS="l">79</TD><TD>        public void setCatalogElement(INextCatalog nextCatalog) {</TD></TR><TR CLASS="z"><TD CLASS="l">80</TD><TD>                String value = getDisplayValue(nextCatalog != null ? nextCatalog.getCatalogLocation() : &#34;&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">81</TD><TD>                String line1 = XMLCatalogMessages.UI_LABEL_DETAILS_URI_COLON + &#34;\t\t&#34; + value; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">82</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">83</TD><TD>                String line0 = XMLCatalogMessages.UI_LABEL_DETAILS_URI_LOCATION + &#34;\t&#34; + URIUtils.convertURIToLocation(value);</TD></TR><TR><TD CLASS="l">84</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>                String entireString = &#34;\n&#34; + line0 + &#34;\n&#34; + line1; //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">86</A></TD><TD>                detailsText.setText(entireString);</TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>        }</TD></TR><TR><TD CLASS="l">88</TD><TD> </TD></TR><TR><TD CLASS="l">89</TD><TD>        protected String getDisplayValue(String string) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">90</A></TD><TD>                return string != null ? string : &#34;&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">91</TD><TD>        }</TD></TR><TR><TD CLASS="l">92</TD><TD> </TD></TR><TR><TD CLASS="l">93</TD><TD>        protected String getKeyTypeValue(ICatalogEntry entry) {</TD></TR><TR CLASS="z"><TD CLASS="l">94</TD><TD>                String result = null;</TD></TR><TR CLASS="z"><TD CLASS="l">95</TD><TD>                if ((entry.getURI() != null) &amp;&amp; entry.getURI().endsWith(&#34;xsd&#34;)) //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">96</TD><TD>                {</TD></TR><TR CLASS="z"><TD CLASS="l">97</TD><TD>                        result = (entry.getEntryType() == ICatalogEntry.ENTRY_TYPE_URI) ? XMLCatalogMessages.UI_KEY_TYPE_DESCRIPTION_XSD_PUBLIC : XMLCatalogMessages.UI_KEY_TYPE_DESCRIPTION_XSD_SYSTEM;</TD></TR><TR><TD CLASS="l">98</TD><TD>                }</TD></TR><TR><TD CLASS="l">99</TD><TD>                else {</TD></TR><TR CLASS="z"><TD CLASS="l">100</TD><TD>                        switch (entry.getEntryType()) {</TD></TR><TR><TD CLASS="l">101</TD><TD>                                case ICatalogEntry.ENTRY_TYPE_PUBLIC :</TD></TR><TR CLASS="z"><TD CLASS="l">102</TD><TD>                                        result = XMLCatalogMessages.UI_KEY_TYPE_DESCRIPTION_DTD_PUBLIC;</TD></TR><TR CLASS="z"><TD CLASS="l">103</TD><TD>                                        break;</TD></TR><TR><TD CLASS="l">104</TD><TD>                                case ICatalogEntry.ENTRY_TYPE_SYSTEM :</TD></TR><TR CLASS="z"><TD CLASS="l">105</TD><TD>                                        result = XMLCatalogMessages.UI_KEY_TYPE_DESCRIPTION_DTD_SYSTEM;</TD></TR><TR CLASS="z"><TD CLASS="l">106</TD><TD>                                        break;</TD></TR><TR><TD CLASS="l">107</TD><TD>                                default :</TD></TR><TR CLASS="z"><TD CLASS="l">108</TD><TD>                                        result = XMLCatalogMessages.UI_KEY_TYPE_DESCRIPTION_URI;</TD></TR><TR><TD CLASS="l">109</TD><TD>                                        break;</TD></TR><TR><TD CLASS="l">110</TD><TD>                        }</TD></TR><TR><TD CLASS="l">111</TD><TD> </TD></TR><TR><TD CLASS="l">112</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">113</TD><TD>                return result;</TD></TR><TR><TD CLASS="l">114</TD><TD>        }</TD></TR><TR><TD CLASS="l">115</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="33.html">org.eclipse.wst.xml.ui.internal.catalog</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/19e.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/19e.html
deleted file mode 100644
index b109dc8..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/19e.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="33.html">org.eclipse.wst.xml.ui.internal.catalog</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">XMLCatalogFileType.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>XMLCatalogFileType.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/59)</TD><TD CLASS="h">0%   (0/14)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">XMLCatalogFileType</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/59)</TD><TD CLASS="h">0%   (0/14)</TD></TR><TR><TD CLASS="f"><A HREF="#0">XMLCatalogFileType (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">addExtensions (String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/26)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#3">parseExtensions (String): List</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/25)</TD><TD CLASS="h">0%   (0/6)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2002, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.ui.internal.catalog;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.util.ArrayList;</TD></TR><TR><TD CLASS="l">16</TD><TD>import java.util.Iterator;</TD></TR><TR><TD CLASS="l">17</TD><TD>import java.util.List;</TD></TR><TR><TD CLASS="l">18</TD><TD>import com.ibm.icu.util.StringTokenizer;</TD></TR><TR><TD CLASS="l"><A NAME="0">19</A></TD><TD> </TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.swt.graphics.Image;</TD></TR><TR><TD CLASS="l">21</TD><TD> </TD></TR><TR><TD CLASS="l">22</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">23</TD><TD>public class XMLCatalogFileType {</TD></TR><TR><TD CLASS="l">24</TD><TD>        public String description;</TD></TR><TR CLASS="z"><TD CLASS="l">25</TD><TD>        public List extensions = new ArrayList();</TD></TR><TR><TD CLASS="l"><A NAME="2">26</A></TD><TD>        public String iconFileName;</TD></TR><TR><TD CLASS="l">27</TD><TD>        public Image icon;</TD></TR><TR><TD CLASS="l">28</TD><TD> </TD></TR><TR><TD CLASS="l">29</TD><TD>        public void addExtensions(String contributedExtensions) {</TD></TR><TR CLASS="z"><TD CLASS="l">30</TD><TD>                List list = parseExtensions(contributedExtensions);</TD></TR><TR CLASS="z"><TD CLASS="l">31</TD><TD>                for (Iterator i = list.iterator(); i.hasNext();) {</TD></TR><TR CLASS="z"><TD CLASS="l">32</TD><TD>                        String extension = (String) i.next();</TD></TR><TR CLASS="z"><TD CLASS="l">33</TD><TD>                        if (!extensions.contains(extension)) {</TD></TR><TR CLASS="z"><TD CLASS="l">34</TD><TD>                                extensions.add(extension);</TD></TR><TR><TD CLASS="l">35</TD><TD>                        }</TD></TR><TR><TD CLASS="l"><A NAME="3">36</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">37</TD><TD>        }</TD></TR><TR><TD CLASS="l">38</TD><TD> </TD></TR><TR><TD CLASS="l">39</TD><TD>        protected List parseExtensions(String string) {</TD></TR><TR CLASS="z"><TD CLASS="l">40</TD><TD>                List list = new ArrayList();</TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>                for (StringTokenizer st = new StringTokenizer(string, &#34;, &#34;); st.hasMoreTokens();) //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">42</TD><TD>                {</TD></TR><TR CLASS="z"><TD CLASS="l">43</TD><TD>                        String token = st.nextToken();</TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>                        if (token != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">45</TD><TD>                                list.add(token);</TD></TR><TR><TD CLASS="l">46</TD><TD>                        }</TD></TR><TR><TD CLASS="l">47</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">48</TD><TD>                return list;</TD></TR><TR><TD CLASS="l">49</TD><TD>        }</TD></TR><TR><TD CLASS="l">50</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="33.html">org.eclipse.wst.xml.ui.internal.catalog</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/19f.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/19f.html
deleted file mode 100644
index 7ace19a..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/19f.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="33.html">org.eclipse.wst.xml.ui.internal.catalog</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">XMLCatalogMessages.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>XMLCatalogMessages.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/21)</TD><TD CLASS="h">0%   (0/4)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">XMLCatalogMessages</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/21)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#0">&lt;static initializer&gt;</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/18)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">XMLCatalogMessages (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/2)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2005, 2008 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> * IBM - Initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">11</TD><TD>package org.eclipse.wst.xml.ui.internal.catalog;</TD></TR><TR><TD CLASS="l">12</TD><TD> </TD></TR><TR><TD CLASS="l">13</TD><TD>import org.eclipse.osgi.util.NLS;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>/**</TD></TR><TR><TD CLASS="l">16</TD><TD> * Strings used by XML Editor</TD></TR><TR><TD CLASS="l">17</TD><TD> * </TD></TR><TR><TD CLASS="l">18</TD><TD> * @plannedfor 1.0</TD></TR><TR><TD CLASS="l">19</TD><TD> */</TD></TR><TR CLASS="z"><TD CLASS="l">20</TD><TD>public class XMLCatalogMessages extends NLS {</TD></TR><TR><TD CLASS="l">21</TD><TD>        private static final String BUNDLE_NAME = &#34;org.eclipse.wst.xml.ui.internal.catalog.XMLCatalogResources&#34;;//$NON-NLS-1$</TD></TR><TR><TD CLASS="l">22</TD><TD> </TD></TR><TR><TD CLASS="l">23</TD><TD>        public static String UI_WIZARD_SCHEMA_AND_NAME_SPACE_INFO;</TD></TR><TR><TD CLASS="l">24</TD><TD>        public static String UI_LABEL_NAME_SPACE_PREFIX;</TD></TR><TR><TD CLASS="l">25</TD><TD>        public static String UI_LABEL_NAME_SPACE_URI;</TD></TR><TR><TD CLASS="l">26</TD><TD>        public static String UI_LABEL_XSD_LOCATION;</TD></TR><TR><TD CLASS="l">27</TD><TD>        public static String UI_LABEL_DOCTYPE_INFORMATION;</TD></TR><TR><TD CLASS="l">28</TD><TD>        public static String UI_LABEL_SYSTEM_ID;</TD></TR><TR><TD CLASS="l">29</TD><TD>        public static String UI_LABEL_PUBLIC_ID;</TD></TR><TR><TD CLASS="l">30</TD><TD>        public static String UI_LABEL_SELECT_FILE;</TD></TR><TR><TD CLASS="l">31</TD><TD>        public static String UI_LABEL_KEY;</TD></TR><TR><TD CLASS="l">32</TD><TD>        public static String UI_LABEL_KEY_COLON;</TD></TR><TR><TD CLASS="l">33</TD><TD>        public static String UI_LABEL_DETAILS_KEY_COLON;</TD></TR><TR><TD CLASS="l">34</TD><TD>        public static String UI_LABEL_DETAILS_IN_JAR_FILE;</TD></TR><TR><TD CLASS="l">35</TD><TD>        public static String UI_LABEL_URI;</TD></TR><TR><TD CLASS="l">36</TD><TD>        public static String UI_LABEL_LOCATION_COLON;</TD></TR><TR><TD CLASS="l">37</TD><TD>        public static String UI_LABEL_CATALOG_URI_COLON;</TD></TR><TR><TD CLASS="l">38</TD><TD>        public static String UI_LABEL_DETAILS_URI_COLON;</TD></TR><TR><TD CLASS="l">39</TD><TD>        public static String UI_LABEL_DETAILS_URI_LOCATION;</TD></TR><TR><TD CLASS="l">40</TD><TD>        public static String UI_KEY_TYPE_COLON;</TD></TR><TR><TD CLASS="l">41</TD><TD>        public static String UI_KEY_TYPE_DETAILS_COLON;</TD></TR><TR><TD CLASS="l">42</TD><TD>        public static String UI_KEY_TYPE_DESCRIPTION_XSD_PUBLIC;</TD></TR><TR><TD CLASS="l">43</TD><TD>        public static String UI_KEY_TYPE_DESCRIPTION_XSD_SYSTEM;</TD></TR><TR><TD CLASS="l">44</TD><TD>        public static String UI_KEY_TYPE_DESCRIPTION_DTD_PUBLIC;</TD></TR><TR><TD CLASS="l">45</TD><TD>        public static String UI_KEY_TYPE_DESCRIPTION_DTD_SYSTEM;</TD></TR><TR><TD CLASS="l">46</TD><TD>        public static String UI_KEY_TYPE_DESCRIPTION_URI;</TD></TR><TR><TD CLASS="l">47</TD><TD>        public static String UI_LABEL_SPECIFY_ALTERNATIVE_WEB_URL;</TD></TR><TR><TD CLASS="l">48</TD><TD>        public static String UI_WARNING_URI_MUST_NOT_HAVE_DOTS;</TD></TR><TR><TD CLASS="l">49</TD><TD>        public static String UI_LABEL_FILE_SELECTION;</TD></TR><TR><TD CLASS="l">50</TD><TD>        public static String UI_LABEL_CHOOSE_FILE_TO_ADD_TO_CATALOG;</TD></TR><TR><TD CLASS="l">51</TD><TD> </TD></TR><TR><TD CLASS="l">52</TD><TD> </TD></TR><TR><TD CLASS="l">53</TD><TD>        public static String UI_WARNING_URI_NOT_FOUND_COLON;</TD></TR><TR><TD CLASS="l">54</TD><TD>        public static String UI_WARNING_URI_NOT_FOUND_LONG;</TD></TR><TR><TD CLASS="l">55</TD><TD>        public static String UI_WARNING_INVALID_FILE;</TD></TR><TR><TD CLASS="l">56</TD><TD>        public static String UI_WARNING_INVALID_FILE_LONG;</TD></TR><TR><TD CLASS="l">57</TD><TD>        public static String UI_WARNING_NO_ELEMENT;</TD></TR><TR><TD CLASS="l">58</TD><TD>        public static String UI_WARNING_NO_ELEMENT_DTD_LONG;</TD></TR><TR><TD CLASS="l">59</TD><TD>        public static String UI_WARNING_NO_ELEMENT_XSD_LONG;</TD></TR><TR><TD CLASS="l">60</TD><TD>        public static String UI_WARNING_SHOULD_BE_FULLY_QUALIFIED_URI;</TD></TR><TR><TD CLASS="l">61</TD><TD>        public static String UI_WARNING_DUPLICATE_ENTRY;</TD></TR><TR><TD CLASS="l">62</TD><TD> </TD></TR><TR><TD CLASS="l">63</TD><TD> </TD></TR><TR><TD CLASS="l">64</TD><TD>        // NewModelWizard</TD></TR><TR><TD CLASS="l">65</TD><TD>        public static String UI_INVALID_GRAMMAR_ERROR;</TD></TR><TR><TD CLASS="l">66</TD><TD>        public static String UI_BUTTON_BROWSE;</TD></TR><TR><TD CLASS="l">67</TD><TD> </TD></TR><TR><TD CLASS="l">68</TD><TD>        // XMLCatalogIdMappingPage</TD></TR><TR><TD CLASS="l">69</TD><TD>        public static String UI_LABEL_MAP_TO;</TD></TR><TR><TD CLASS="l">70</TD><TD>        public static String UI_LABEL_MAP_FROM;</TD></TR><TR><TD CLASS="l">71</TD><TD>        public static String UI_BUTTON_NEW;</TD></TR><TR><TD CLASS="l">72</TD><TD>        public static String UI_BUTTON_EDIT;</TD></TR><TR><TD CLASS="l">73</TD><TD>        public static String UI_BUTTON_DELETE;</TD></TR><TR><TD CLASS="l">74</TD><TD>        public static String UI_BUTTON_REMOVE;</TD></TR><TR><TD CLASS="l">75</TD><TD>        public static String UI_LABEL_NEW_DIALOG_TITLE;</TD></TR><TR><TD CLASS="l">76</TD><TD>        public static String UI_LABEL_EDIT_DIALOG_TITLE;</TD></TR><TR><TD CLASS="l">77</TD><TD> </TD></TR><TR><TD CLASS="l">78</TD><TD> </TD></TR><TR><TD CLASS="l">79</TD><TD>        // XMLCatalogPreferencePage</TD></TR><TR><TD CLASS="l">80</TD><TD>        public static String UI_LABEL_USER_ENTRIES;</TD></TR><TR><TD CLASS="l">81</TD><TD>        public static String UI_LABEL_USER_ENTRIES_TOOL_TIP;</TD></TR><TR><TD CLASS="l">82</TD><TD>        public static String UI_LABEL_SYSTEM_ENTRIES;</TD></TR><TR><TD CLASS="l">83</TD><TD>        public static String UI_LABEL_SYSTEM_ENTRIES_TOOL_TIP;</TD></TR><TR><TD CLASS="l">84</TD><TD>        public static String UI_BUTTON_CHANGE;</TD></TR><TR><TD CLASS="l">85</TD><TD>        public static String UI_LABEL_SELECT_PROJECT;</TD></TR><TR><TD CLASS="l">86</TD><TD>        public static String UI_LABEL_SPECIFY_PROJECT_DESCRIPTION;</TD></TR><TR><TD CLASS="l">87</TD><TD>        public static String UI_WARNING_NO_PROJECTS_CREATED;</TD></TR><TR><TD CLASS="l">88</TD><TD>        public static String UI_WARNING_PROJECT_NOT_SPECIFIED;</TD></TR><TR><TD CLASS="l">89</TD><TD>        public static String UI_WARNING_PROJECT_DOES_NOT_EXIST;</TD></TR><TR><TD CLASS="l">90</TD><TD>        public static String UI_LABEL_PROJECT_TO_USE;</TD></TR><TR><TD CLASS="l">91</TD><TD>        public static String UI_LABEL_CATALOG_SAVE_ERROR;</TD></TR><TR><TD CLASS="l">92</TD><TD>        public static String UI_LABEL_CATALOG_COULD_NOT_BE_SAVED;</TD></TR><TR><TD CLASS="l">93</TD><TD>        public static String UI_LABEL_ADVANCED;</TD></TR><TR><TD CLASS="l">94</TD><TD>        public static String UI_LABEL_ADVANCED_XML_CATALOG_PREFS;</TD></TR><TR><TD CLASS="l">95</TD><TD>        public static String UI_LABEL_SPECIFY_PERSISTENCE_FILE;</TD></TR><TR><TD CLASS="l">96</TD><TD>        public static String UI_LABEL_SAVE_CATALOG_DIALOG_TITLE;</TD></TR><TR><TD CLASS="l">97</TD><TD>        public static String UI_LABEL_SAVE_CATALOG_DIALOG_DESC;</TD></TR><TR><TD CLASS="l">98</TD><TD>        public static String UI_LABEL_BROWSE_CATALOG_FILE_TITLE;</TD></TR><TR><TD CLASS="l">99</TD><TD>        public static String UI_LABEL_BROWSE_CATALOG_FILE_DESC;</TD></TR><TR><TD CLASS="l">100</TD><TD>        public static String UI_LABEL_DETAILS;</TD></TR><TR><TD CLASS="l">101</TD><TD>        public static String UI_LABEL_USER_SPECIFIED_ENTRIES;</TD></TR><TR><TD CLASS="l">102</TD><TD>        public static String UI_LABEL_PLUGIN_SPECIFIED_ENTRIES;</TD></TR><TR><TD CLASS="l">103</TD><TD>        public static String UI_LABEL_PLATFORM_RESOURCE;</TD></TR><TR><TD CLASS="l">104</TD><TD>        public static String UI_LABEL_FILE_SYSTEM_RESOURCE;</TD></TR><TR><TD CLASS="l">105</TD><TD>        // AdvancedOptionsDialog</TD></TR><TR><TD CLASS="l">106</TD><TD>        public static String UI_BUTTON_IMPORT;</TD></TR><TR><TD CLASS="l">107</TD><TD>        public static String UI_BUTTON_EXPORT;</TD></TR><TR><TD CLASS="l">108</TD><TD> </TD></TR><TR><TD CLASS="l">109</TD><TD>        public static String UI_LABEL_IMPORT_DIALOG_TITLE;</TD></TR><TR><TD CLASS="l">110</TD><TD>        public static String UI_LABEL_IMPORT_DIALOG_HEADING;</TD></TR><TR><TD CLASS="l">111</TD><TD>        public static String UI_LABEL_IMPORT_DIALOG_MESSAGE;</TD></TR><TR><TD CLASS="l">112</TD><TD> </TD></TR><TR><TD CLASS="l">113</TD><TD>        public static String UI_LABEL_EXPORT_DIALOG_TITLE;</TD></TR><TR><TD CLASS="l">114</TD><TD>        public static String UI_LABEL_EXPORT_DIALOG_HEADING;</TD></TR><TR><TD CLASS="l">115</TD><TD>        public static String UI_LABEL_EXPORT_DIALOG_MESSAGE;</TD></TR><TR><TD CLASS="l">116</TD><TD>        public static String ERROR_SAVING_FILE;</TD></TR><TR><TD CLASS="l">117</TD><TD>        public static String UI_LABEL_FILE_IS_READ_ONLY;</TD></TR><TR><TD CLASS="l">118</TD><TD>        public static String UI_LABEL_DIALOG_DESCRIPTION;</TD></TR><TR><TD CLASS="l">119</TD><TD> </TD></TR><TR><TD CLASS="l">120</TD><TD>        public static String EditCatalogEntryDialog_catalogEntryLabel;</TD></TR><TR><TD CLASS="l">121</TD><TD>        public static String EditCatalogEntryDialog_nextCatalogLabel;</TD></TR><TR><TD CLASS="l">122</TD><TD>        public static String UI_BUTTON_MENU_BROWSE_WORKSPACE;</TD></TR><TR><TD CLASS="l">123</TD><TD>        public static String UI_BUTTON_MENU_BROWSE_FILE_SYSTEM;</TD></TR><TR><TD CLASS="l">124</TD><TD>        public static String UI_LABEL_SELECT_FILE_FILTER_CONTROL;</TD></TR><TR><TD CLASS="l">125</TD><TD>        public static String UI_TEXT_SELECT_FILE_FILTER_CONTROL;</TD></TR><TR><TD CLASS="l">126</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="0">127</A></TD><TD> </TD></TR><TR><TD CLASS="l">128</TD><TD> </TD></TR><TR><TD CLASS="l">129</TD><TD>        static {</TD></TR><TR><TD CLASS="l"><A NAME="2">130</A></TD><TD>                // load message values from bundle file</TD></TR><TR CLASS="z"><TD CLASS="l">131</TD><TD>                NLS.initializeMessages(BUNDLE_NAME, XMLCatalogMessages.class);</TD></TR><TR><TD CLASS="l">132</TD><TD>        }</TD></TR><TR><TD CLASS="l">133</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">134</TD><TD>        private XMLCatalogMessages() {</TD></TR><TR><TD CLASS="l">135</TD><TD>                // cannot create new instance</TD></TR><TR CLASS="z"><TD CLASS="l">136</TD><TD>        }</TD></TR><TR><TD CLASS="l">137</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="33.html">org.eclipse.wst.xml.ui.internal.catalog</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1a.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1a.html
deleted file mode 100644
index c0b5865..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1a.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR PACKAGE [<SPAN CLASS="in">org.eclipse.wst.sse.ui.internal.search</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>org.eclipse.wst.sse.ui.internal.search</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/84)</TD><TD CLASS="h">0%   (0/1169)</TD><TD CLASS="h">0%   (0/330)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY SOURCE FILE</H3><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR CLASS="o"><TD><A HREF="137.html">BasicSearchLabelProvider.java</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/53)</TD><TD CLASS="h">0%   (0/18)</TD></TR><TR><TD><A HREF="138.html">BasicSearchQuery.java</A></TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/18)</TD><TD CLASS="h">0%   (0/259)</TD><TD CLASS="h">0%   (0/66)</TD></TR><TR CLASS="o"><TD><A HREF="139.html">FindOccurrencesActionDelegate.java</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/189)</TD><TD CLASS="h">0%   (0/57)</TD></TR><TR><TD><A HREF="13a.html">FindOccurrencesProcessor.java</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/116)</TD><TD CLASS="h">0%   (0/31)</TD></TR><TR CLASS="o"><TD><A HREF="13b.html">OccurrencesContentProvider.java</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/103)</TD><TD CLASS="h">0%   (0/30)</TD></TR><TR><TD><A HREF="13c.html">OccurrencesSearchQuery.java</A></TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/237)</TD><TD CLASS="h">0%   (0/60)</TD></TR><TR CLASS="o"><TD><A HREF="13d.html">OccurrencesSearchResult.java</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/85)</TD><TD CLASS="h">0%   (0/28)</TD></TR><TR><TD><A HREF="13e.html">OccurrencesSearchViewPage.java</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/127)</TD><TD CLASS="h">0%   (0/40)</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1a0.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1a0.html
deleted file mode 100644
index 954ec8a..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1a0.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="33.html">org.eclipse.wst.xml.ui.internal.catalog</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">XMLCatalogPreferencePage.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>XMLCatalogPreferencePage.java</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/388)</TD><TD CLASS="h">0%   (0/93)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">XMLCatalogPreferencePage</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/306)</TD><TD CLASS="h">0%   (0/76)</TD></TR><TR><TD CLASS="f"><A HREF="#0">XMLCatalogPreferencePage (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/45)</TD><TD CLASS="h">0%   (0/12)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">catalogChanged (ICatalogEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#3">createAdvancedButton (Composite): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/85)</TD><TD CLASS="h">0%   (0/18)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">createCatalogDetailsView (Composite): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/37)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR><TD CLASS="f"><A HREF="#5">createCatalogEntriesView (Composite): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/41)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">createContents (Composite): Control</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/49)</TD><TD CLASS="h">0%   (0/12)</TD></TR><TR><TD CLASS="f"><A HREF="#7">dispose (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">init (IWorkbench): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#9">isSameFileName (String, String): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/19)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">performOk (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#b">storeValues (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#c">XMLCatalogPreferencePage$1</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/29)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR><TD CLASS="f"><A HREF="#c">XMLCatalogPreferencePage$1 (XMLCatalogPreferencePage): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#e">widgetSelected (SelectionEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/23)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#f">XMLCatalogPreferencePage$2</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/53)</TD><TD CLASS="h">0%   (0/12)</TD></TR><TR><TD CLASS="f"><A HREF="#f">XMLCatalogPreferencePage$2 (XMLCatalogPreferencePage, XMLCatalogEntryDetailsV...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#11">selectionChanged (SelectionChangedEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/44)</TD><TD CLASS="h">0%   (0/10)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR CLASS="z"><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2002, 2008 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     David Carver/STAR Standard - d_a_carver@yahoo.com - bug 192568</TD></TR><TR><TD CLASS="l">12</TD><TD> *            Removed Advanced button - Functionality is now in the</TD></TR><TR><TD CLASS="l">13</TD><TD> *            Import/Export XML Catalog Wizards. </TD></TR><TR><TD CLASS="l">14</TD><TD> *     </TD></TR><TR><TD CLASS="l">15</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">16</TD><TD>package org.eclipse.wst.xml.ui.internal.catalog;</TD></TR><TR><TD CLASS="l">17</TD><TD> </TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.jface.preference.PreferencePage;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.jface.viewers.ISelection;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.jface.viewers.ISelectionChangedListener;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.jface.viewers.IStructuredSelection;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.jface.viewers.SelectionChangedEvent;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.swt.SWT;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.swt.events.SelectionAdapter;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.swt.events.SelectionEvent;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.swt.events.SelectionListener;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.swt.layout.GridData;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.swt.layout.GridLayout;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.swt.widgets.Button;</TD></TR><TR><TD CLASS="l">30</TD><TD>import org.eclipse.swt.widgets.Composite;</TD></TR><TR><TD CLASS="l">31</TD><TD>import org.eclipse.swt.widgets.Control;</TD></TR><TR><TD CLASS="l">32</TD><TD>import org.eclipse.swt.widgets.Group;</TD></TR><TR><TD CLASS="l">33</TD><TD>import org.eclipse.swt.widgets.Label;</TD></TR><TR><TD CLASS="l">34</TD><TD>import org.eclipse.ui.IWorkbench;</TD></TR><TR><TD CLASS="l">35</TD><TD>import org.eclipse.ui.IWorkbenchPreferencePage;</TD></TR><TR><TD CLASS="l">36</TD><TD>import org.eclipse.wst.xml.core.internal.XMLCorePlugin;</TD></TR><TR><TD CLASS="l">37</TD><TD>import org.eclipse.wst.xml.core.internal.catalog.CatalogSet;</TD></TR><TR><TD CLASS="l">38</TD><TD>import org.eclipse.wst.xml.core.internal.catalog.provisional.ICatalog;</TD></TR><TR><TD CLASS="l">39</TD><TD>import org.eclipse.wst.xml.core.internal.catalog.provisional.ICatalogEntry;</TD></TR><TR><TD CLASS="l">40</TD><TD>import org.eclipse.wst.xml.core.internal.catalog.provisional.ICatalogEvent;</TD></TR><TR><TD CLASS="l">41</TD><TD>import org.eclipse.wst.xml.core.internal.catalog.provisional.ICatalogListener;</TD></TR><TR><TD CLASS="l">42</TD><TD>import org.eclipse.wst.xml.core.internal.catalog.provisional.INextCatalog;</TD></TR><TR><TD CLASS="l">43</TD><TD> </TD></TR><TR><TD CLASS="l">44</TD><TD>public class XMLCatalogPreferencePage extends PreferencePage implements IWorkbenchPreferencePage, ICatalogListener {</TD></TR><TR><TD CLASS="l">45</TD><TD> </TD></TR><TR><TD CLASS="l">46</TD><TD>        protected XMLCatalogEntriesView catalogEntriesView;</TD></TR><TR><TD CLASS="l">47</TD><TD> </TD></TR><TR><TD CLASS="l">48</TD><TD>        protected ICatalog workingUserCatalog;</TD></TR><TR><TD CLASS="l">49</TD><TD> </TD></TR><TR><TD CLASS="l">50</TD><TD>        protected ICatalog systemCatalog;</TD></TR><TR><TD CLASS="l">51</TD><TD> </TD></TR><TR><TD CLASS="l">52</TD><TD>        protected ICatalog userCatalog;</TD></TR><TR><TD CLASS="l">53</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="0">54</A></TD><TD>        protected ICatalog defaultCatalog;</TD></TR><TR><TD CLASS="l">55</TD><TD> </TD></TR><TR><TD CLASS="l">56</TD><TD>        protected Button advancedButton;</TD></TR><TR><TD CLASS="l">57</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>        public XMLCatalogPreferencePage() {</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>                defaultCatalog = XMLCorePlugin.getDefault().getDefaultXMLCatalog();</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                INextCatalog[] nextCatalogs = defaultCatalog.getNextCatalogs();</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                for (int i = 0; i &lt; nextCatalogs.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>                        INextCatalog catalog = nextCatalogs[i];</TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>                        ICatalog referencedCatalog = catalog.getReferencedCatalog();</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                        if (referencedCatalog != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>                                if (XMLCorePlugin.SYSTEM_CATALOG_ID.equals(referencedCatalog.getId())) {</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                                        systemCatalog = referencedCatalog;</TD></TR><TR><TD CLASS="l">67</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>                                else if (XMLCorePlugin.USER_CATALOG_ID.equals(referencedCatalog.getId())) {</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                                        userCatalog = referencedCatalog;</TD></TR><TR><TD CLASS="l">70</TD><TD>                                }</TD></TR><TR><TD CLASS="l">71</TD><TD>                        }</TD></TR><TR><TD CLASS="l"><A NAME="7">72</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">73</TD><TD>        }</TD></TR><TR><TD CLASS="l">74</TD><TD> </TD></TR><TR><TD CLASS="l">75</TD><TD>        public void dispose() {</TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>                super.dispose();</TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>                workingUserCatalog.removeListener(this);</TD></TR><TR CLASS="z"><TD CLASS="l">78</TD><TD>        }</TD></TR><TR><TD CLASS="l">79</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="2">80</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">81</TD><TD>         * Refresh the view in responce to an event sent by the Catalog</TD></TR><TR><TD CLASS="l">82</TD><TD>         */</TD></TR><TR><TD CLASS="l">83</TD><TD>        public void catalogChanged(ICatalogEvent event) {</TD></TR><TR CLASS="z"><TD CLASS="l">84</TD><TD>                catalogEntriesView.updatePage();</TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>        }</TD></TR><TR><TD CLASS="l">86</TD><TD> </TD></TR><TR><TD CLASS="l">87</TD><TD>        /**</TD></TR><TR><TD CLASS="l">88</TD><TD>         * Creates preference page controls on demand.</TD></TR><TR><TD CLASS="l">89</TD><TD>         * </TD></TR><TR><TD CLASS="l">90</TD><TD>         * @param parent</TD></TR><TR><TD CLASS="l">91</TD><TD>         *            the parent for the preference page</TD></TR><TR><TD CLASS="l"><A NAME="6">92</A></TD><TD>         */</TD></TR><TR><TD CLASS="l">93</TD><TD>        protected Control createContents(Composite parent) {</TD></TR><TR><TD CLASS="l">94</TD><TD>                // we create a working copy of the 'User Settings' for the Catalog</TD></TR><TR><TD CLASS="l">95</TD><TD>                // that we can modify</TD></TR><TR CLASS="z"><TD CLASS="l">96</TD><TD>                CatalogSet tempCatalogSet = new CatalogSet();</TD></TR><TR CLASS="z"><TD CLASS="l">97</TD><TD>                workingUserCatalog = tempCatalogSet.lookupOrCreateCatalog(&#34;working&#34;, &#34;&#34;); //$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR><TD CLASS="l">98</TD><TD> </TD></TR><TR><TD CLASS="l">99</TD><TD>                // TODO: add entries from the nested catalogs as well</TD></TR><TR CLASS="z"><TD CLASS="l">100</TD><TD>                workingUserCatalog.addEntriesFromCatalog(userCatalog);</TD></TR><TR CLASS="z"><TD CLASS="l">101</TD><TD>                workingUserCatalog.addListener(this);</TD></TR><TR CLASS="z"><TD CLASS="l">102</TD><TD>                noDefaultAndApplyButton();</TD></TR><TR CLASS="z"><TD CLASS="l">103</TD><TD>                Composite composite = new Composite(parent, SWT.NULL);</TD></TR><TR><TD CLASS="l">104</TD><TD>                // WorkbenchHelp.setHelp(composite, new</TD></TR><TR><TD CLASS="l">105</TD><TD>                // ControlContextComputer(composite,</TD></TR><TR><TD CLASS="l">106</TD><TD>                // XMLBuilderContextIds.XMLP_CATALOG_PAGE));</TD></TR><TR CLASS="z"><TD CLASS="l">107</TD><TD>                composite.setLayout(new GridLayout());</TD></TR><TR CLASS="z"><TD CLASS="l">108</TD><TD>                composite.setLayoutData(new GridData(GridData.FILL_BOTH));</TD></TR><TR CLASS="z"><TD CLASS="l">109</TD><TD>                createCatalogEntriesView(composite);</TD></TR><TR CLASS="z"><TD CLASS="l">110</TD><TD>                createCatalogDetailsView(composite);</TD></TR><TR><TD CLASS="l">111</TD><TD>                //createAdvancedButton(composite);</TD></TR><TR><TD CLASS="l">112</TD><TD>                // catalogEntriesView.updatePage();</TD></TR><TR CLASS="z"><TD CLASS="l">113</TD><TD>                applyDialogFont(composite);</TD></TR><TR><TD CLASS="l">114</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">115</TD><TD>                return composite;</TD></TR><TR><TD CLASS="l">116</TD><TD>        }</TD></TR><TR><TD CLASS="l">117</TD><TD> </TD></TR><TR><TD CLASS="l">118</TD><TD>        /**</TD></TR><TR><TD CLASS="l"><A NAME="3">119</A></TD><TD>         * @deprecated</TD></TR><TR><TD CLASS="l">120</TD><TD>         * @param composite</TD></TR><TR><TD CLASS="l">121</TD><TD>         */</TD></TR><TR><TD CLASS="l">122</TD><TD>        protected void createAdvancedButton(Composite composite) {</TD></TR><TR CLASS="z"><TD CLASS="l">123</TD><TD>                Composite panel = new Composite(composite, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">124</TD><TD>                GridLayout gridLayout = new GridLayout();</TD></TR><TR CLASS="z"><TD CLASS="l">125</TD><TD>                gridLayout.numColumns = 3;</TD></TR><TR CLASS="z"><TD CLASS="l">126</TD><TD>                panel.setLayout(gridLayout);</TD></TR><TR CLASS="z"><TD CLASS="l">127</TD><TD>                panel.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));</TD></TR><TR><TD CLASS="l">128</TD><TD>                // TODO... is there a better way to expand the page width?</TD></TR><TR><TD CLASS="l">129</TD><TD>                // This invisible label is created to force the width of the page to</TD></TR><TR><TD CLASS="l">130</TD><TD>                // be</TD></TR><TR><TD CLASS="l">131</TD><TD>                // wide enough to show</TD></TR><TR><TD CLASS="l">132</TD><TD>                // the rather long uri and key fields of a catalog entry.</TD></TR><TR CLASS="z"><TD CLASS="l">133</TD><TD>                Label widthFudger = new Label(panel, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">134</TD><TD>                String widthFudgerString = &#34;&#34;; //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">135</TD><TD>                for (int i = 0; i &lt; 55; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">136</TD><TD>                        widthFudgerString += &#34;x&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">137</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">138</TD><TD>                widthFudger.setText(widthFudgerString);</TD></TR><TR CLASS="z"><TD CLASS="l">139</TD><TD>                widthFudger.setVisible(false);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="c">140</A></TD><TD>                Composite placeHolder = new Composite(panel, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">141</TD><TD>                placeHolder.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="e">142</A></TD><TD>                advancedButton = new Button(panel, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">143</TD><TD>                advancedButton.setText(XMLCatalogMessages.UI_LABEL_ADVANCED);</TD></TR><TR CLASS="z"><TD CLASS="l">144</TD><TD>                SelectionListener selectionListener = new SelectionAdapter() {</TD></TR><TR><TD CLASS="l">145</TD><TD>                        public void widgetSelected(SelectionEvent e) {</TD></TR><TR CLASS="z"><TD CLASS="l">146</TD><TD>                                AdvancedOptionsDialog dialog = new AdvancedOptionsDialog(getShell(), workingUserCatalog);</TD></TR><TR CLASS="z"><TD CLASS="l">147</TD><TD>                                dialog.create();</TD></TR><TR CLASS="z"><TD CLASS="l">148</TD><TD>                                dialog.getShell().setText(XMLCatalogMessages.UI_LABEL_ADVANCED_XML_CATALOG_PREFS);</TD></TR><TR CLASS="z"><TD CLASS="l">149</TD><TD>                                dialog.setBlockOnOpen(true);</TD></TR><TR CLASS="z"><TD CLASS="l">150</TD><TD>                                dialog.open();</TD></TR><TR CLASS="z"><TD CLASS="l">151</TD><TD>                        }</TD></TR><TR><TD CLASS="l">152</TD><TD>                };</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="9">153</A></TD><TD>                advancedButton.addSelectionListener(selectionListener);</TD></TR><TR CLASS="z"><TD CLASS="l">154</TD><TD>        }</TD></TR><TR><TD CLASS="l">155</TD><TD> </TD></TR><TR><TD CLASS="l">156</TD><TD>        public boolean isSameFileName(String a, String b) {</TD></TR><TR CLASS="z"><TD CLASS="l">157</TD><TD>                boolean result = false;</TD></TR><TR CLASS="z"><TD CLASS="l">158</TD><TD>                if ((a == null) &amp;&amp; (b == null)) {</TD></TR><TR CLASS="z"><TD CLASS="l">159</TD><TD>                        result = true;</TD></TR><TR><TD CLASS="l">160</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">161</TD><TD>                else if ((a != null) &amp;&amp; (b != null)) {</TD></TR><TR CLASS="z"><TD CLASS="l">162</TD><TD>                        result = a.equals(b);</TD></TR><TR><TD CLASS="l">163</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="5">164</A></TD><TD>                return result;</TD></TR><TR><TD CLASS="l">165</TD><TD>        }</TD></TR><TR><TD CLASS="l">166</TD><TD> </TD></TR><TR><TD CLASS="l">167</TD><TD>        protected void createCatalogEntriesView(Composite parent) {</TD></TR><TR CLASS="z"><TD CLASS="l">168</TD><TD>                Group group = new Group(parent, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">169</TD><TD>                group.setLayout(new GridLayout());</TD></TR><TR CLASS="z"><TD CLASS="l">170</TD><TD>                group.setLayoutData(new GridData(GridData.FILL_BOTH));</TD></TR><TR CLASS="z"><TD CLASS="l">171</TD><TD>                group.setText(XMLCatalogMessages.UI_LABEL_USER_ENTRIES);</TD></TR><TR CLASS="z"><TD CLASS="l">172</TD><TD>                group.setToolTipText(XMLCatalogMessages.UI_LABEL_USER_ENTRIES_TOOL_TIP);</TD></TR><TR><TD CLASS="l">173</TD><TD>                // WorkbenchHelp.setHelp(userEntriesGroup, new</TD></TR><TR><TD CLASS="l">174</TD><TD>                // ControlContextComputer(userEntriesGroup,</TD></TR><TR><TD CLASS="l">175</TD><TD>                // XMLBuilderContextIds.XMLP_CATALOG_USER_GROUP));</TD></TR><TR CLASS="z"><TD CLASS="l">176</TD><TD>                catalogEntriesView = new XMLCatalogEntriesView(group, workingUserCatalog, systemCatalog);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">177</A></TD><TD>                catalogEntriesView.setLayoutData(new GridData(GridData.FILL_BOTH));</TD></TR><TR CLASS="z"><TD CLASS="l">178</TD><TD>        }</TD></TR><TR><TD CLASS="l">179</TD><TD> </TD></TR><TR><TD CLASS="l">180</TD><TD>        protected void createCatalogDetailsView(Composite parent) {</TD></TR><TR CLASS="z"><TD CLASS="l">181</TD><TD>                Group detailsGroup = new Group(parent, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="f">182</A></TD><TD>                detailsGroup.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));</TD></TR><TR CLASS="z"><TD CLASS="l">183</TD><TD>                detailsGroup.setLayout(new GridLayout());</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="11">184</A></TD><TD>                detailsGroup.setText(XMLCatalogMessages.UI_LABEL_DETAILS);</TD></TR><TR CLASS="z"><TD CLASS="l">185</TD><TD>                final XMLCatalogEntryDetailsView detailsView = new XMLCatalogEntryDetailsView(detailsGroup);</TD></TR><TR CLASS="z"><TD CLASS="l">186</TD><TD>                ISelectionChangedListener listener = new ISelectionChangedListener() {</TD></TR><TR><TD CLASS="l">187</TD><TD>                        public void selectionChanged(SelectionChangedEvent event) {</TD></TR><TR CLASS="z"><TD CLASS="l">188</TD><TD>                                ISelection selection = event.getSelection();</TD></TR><TR CLASS="z"><TD CLASS="l">189</TD><TD>                                Object selectedObject = (selection instanceof IStructuredSelection) &amp;&amp; ((IStructuredSelection) selection).size() == 1 ? ((IStructuredSelection) selection).getFirstElement() : null;</TD></TR><TR CLASS="z"><TD CLASS="l">190</TD><TD>                                if (selectedObject instanceof ICatalogEntry) {</TD></TR><TR CLASS="z"><TD CLASS="l">191</TD><TD>                                        ICatalogEntry entry = (ICatalogEntry) selectedObject;</TD></TR><TR CLASS="z"><TD CLASS="l">192</TD><TD>                                        detailsView.setCatalogElement(entry);</TD></TR><TR><TD CLASS="l">193</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">194</TD><TD>                                else if (selectedObject instanceof INextCatalog) {</TD></TR><TR CLASS="z"><TD CLASS="l">195</TD><TD>                                        INextCatalog entry = (INextCatalog) selectedObject;</TD></TR><TR CLASS="z"><TD CLASS="l">196</TD><TD>                                        detailsView.setCatalogElement(entry);</TD></TR><TR><TD CLASS="l">197</TD><TD>                                }</TD></TR><TR><TD CLASS="l">198</TD><TD>                                else {</TD></TR><TR CLASS="z"><TD CLASS="l">199</TD><TD>                                        detailsView.setCatalogElement((ICatalogEntry) null);</TD></TR><TR><TD CLASS="l">200</TD><TD>                                }</TD></TR><TR><TD CLASS="l">201</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">202</TD><TD>                        }</TD></TR><TR><TD CLASS="l">203</TD><TD>                };</TD></TR><TR CLASS="z"><TD CLASS="l">204</TD><TD>                catalogEntriesView.getViewer().addSelectionChangedListener(listener);</TD></TR><TR CLASS="z"><TD CLASS="l">205</TD><TD>        }</TD></TR><TR><TD CLASS="l">206</TD><TD> </TD></TR><TR><TD CLASS="l">207</TD><TD>        /**</TD></TR><TR><TD CLASS="l">208</TD><TD>         * Do anything necessary because the OK button has been pressed.</TD></TR><TR><TD CLASS="l"><A NAME="a">209</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">210</TD><TD>         * @return whether it is okay to close the preference page</TD></TR><TR><TD CLASS="l">211</TD><TD>         */</TD></TR><TR><TD CLASS="l">212</TD><TD>        public boolean performOk() {</TD></TR><TR CLASS="z"><TD CLASS="l">213</TD><TD>                return storeValues();</TD></TR><TR><TD CLASS="l">214</TD><TD>        }</TD></TR><TR><TD CLASS="l">215</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="8">216</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">217</TD><TD>         * @see IWorkbenchPreferencePage</TD></TR><TR><TD CLASS="l">218</TD><TD>         */</TD></TR><TR><TD CLASS="l">219</TD><TD>        public void init(IWorkbench workbench) {</TD></TR><TR CLASS="z"><TD CLASS="l">220</TD><TD>        }</TD></TR><TR><TD CLASS="l">221</TD><TD> </TD></TR><TR><TD CLASS="l">222</TD><TD>        /**</TD></TR><TR><TD CLASS="l">223</TD><TD>         * Stores the values of the controls back to the preference store.</TD></TR><TR><TD CLASS="l">224</TD><TD>         */</TD></TR><TR><TD CLASS="l">225</TD><TD>        private boolean storeValues() {</TD></TR><TR><TD CLASS="l"><A NAME="b">226</A></TD><TD>                // dw Object fileObject = null;</TD></TR><TR><TD CLASS="l">227</TD><TD>                try {</TD></TR><TR><TD CLASS="l">228</TD><TD>                        // update the userCatalog so that its the same as the working</TD></TR><TR><TD CLASS="l">229</TD><TD>                        // catalog</TD></TR><TR CLASS="z"><TD CLASS="l">230</TD><TD>                        userCatalog.clear();</TD></TR><TR><TD CLASS="l">231</TD><TD>                        // TODO add entries from the nested catalogs?</TD></TR><TR CLASS="z"><TD CLASS="l">232</TD><TD>                        userCatalog.addEntriesFromCatalog(workingUserCatalog);</TD></TR><TR><TD CLASS="l">233</TD><TD>                        // now save the userCatalog</TD></TR><TR CLASS="z"><TD CLASS="l">234</TD><TD>                        userCatalog.save();</TD></TR><TR><TD CLASS="l">235</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">236</TD><TD>                catch (Exception e) {</TD></TR><TR><TD CLASS="l">237</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">238</TD><TD>                return true;</TD></TR><TR><TD CLASS="l">239</TD><TD>        }</TD></TR><TR><TD CLASS="l">240</TD><TD> </TD></TR><TR><TD CLASS="l">241</TD><TD> </TD></TR><TR><TD CLASS="l">242</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="33.html">org.eclipse.wst.xml.ui.internal.catalog</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1a1.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1a1.html
deleted file mode 100644
index a116c0b..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1a1.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="33.html">org.eclipse.wst.xml.ui.internal.catalog</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">XMLCatalogTreeViewer.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>XMLCatalogTreeViewer.java</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/25)</TD><TD CLASS="h">0%   (0/459)</TD><TD CLASS="h">0%   (0/113)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">XMLCatalogTreeViewer</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/66)</TD><TD CLASS="h">0%   (0/20)</TD></TR><TR><TD CLASS="f"><A HREF="#0">&lt;static initializer&gt;</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/23)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">XMLCatalogTreeViewer (Composite, ICatalog, ICatalog): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/23)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#3">menuAboutToShow (IMenuManager): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">setFilterExtensions (String []): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#5">XMLCatalogTreeViewer$1</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/29)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR><TD CLASS="f"><A HREF="#5">XMLCatalogTreeViewer$1 (XMLCatalogTreeViewer$CatalogEntryContentProvider): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#7">compare (Object, Object): int</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/23)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#3">XMLCatalogTreeViewer$2</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#3">XMLCatalogTreeViewer$2 (XMLCatalogTreeViewer, String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">run (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#b">XMLCatalogTreeViewer$CatalogEntryContentProvider</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/140)</TD><TD CLASS="h">0%   (0/31)</TD></TR><TR><TD CLASS="f"><A HREF="#b">XMLCatalogTreeViewer$CatalogEntryContentProvider (XMLCatalogTreeViewer): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/20)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#d">dispose (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#e">getChildren (Object): Object []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/42)</TD><TD CLASS="h">0%   (0/9)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#f">getChildrenHelper (ICatalog): Object []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/39)</TD><TD CLASS="h">0%   (0/10)</TD></TR><TR><TD CLASS="f"><A HREF="#10">getElements (Object): Object []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#11">getParent (Object): Object</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#12">hasChildren (Object): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#13">inputChanged (Viewer, Object, Object): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#14">isDeleted (Object): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#15">isRoot (Object): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#16">XMLCatalogTreeViewer$CatalogEntryLabelProvider</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/161)</TD><TD CLASS="h">0%   (0/39)</TD></TR><TR><TD CLASS="f"><A HREF="#16">XMLCatalogTreeViewer$CatalogEntryLabelProvider (XMLCatalogTreeViewer): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#18">dispose (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/16)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#19">getImage (Object): Image</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/68)</TD><TD CLASS="h">0%   (0/21)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#1a">getText (Object): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/66)</TD><TD CLASS="h">0%   (0/12)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#1b">XMLCatalogTreeViewer$XMLCatalogTableViewerFilter</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/52)</TD><TD CLASS="h">0%   (0/14)</TD></TR><TR><TD CLASS="f"><A HREF="#1b">XMLCatalogTreeViewer$XMLCatalogTableViewerFilter (XMLCatalogTreeViewer, Strin...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#1d">isFilterProperty (Object, Object): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#1e">select (Viewer, Object, Object): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/41)</TD><TD CLASS="h">0%   (0/10)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR CLASS="z"><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2002, 2008 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.ui.internal.catalog;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import com.ibm.icu.text.Collator;</TD></TR><TR><TD CLASS="l">16</TD><TD>import java.util.Arrays;</TD></TR><TR><TD CLASS="l">17</TD><TD>import java.util.Comparator;</TD></TR><TR><TD CLASS="l">18</TD><TD>import java.util.HashMap;</TD></TR><TR><TD CLASS="l">19</TD><TD>import java.util.Iterator;</TD></TR><TR><TD CLASS="l">20</TD><TD>import java.util.List;</TD></TR><TR><TD CLASS="l">21</TD><TD>import java.util.Vector;</TD></TR><TR><TD CLASS="l">22</TD><TD> </TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.jface.action.Action;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.jface.action.IMenuManager;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.jface.resource.ImageDescriptor;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.jface.viewers.ITreeContentProvider;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.jface.viewers.LabelProvider;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.jface.viewers.TreeViewer;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.jface.viewers.Viewer;</TD></TR><TR><TD CLASS="l">30</TD><TD>import org.eclipse.jface.viewers.ViewerFilter;</TD></TR><TR><TD CLASS="l">31</TD><TD>import org.eclipse.swt.SWT;</TD></TR><TR><TD CLASS="l">32</TD><TD>import org.eclipse.swt.graphics.Image;</TD></TR><TR><TD CLASS="l">33</TD><TD>import org.eclipse.swt.widgets.Composite;</TD></TR><TR><TD CLASS="l">34</TD><TD>import org.eclipse.ui.IEditorRegistry;</TD></TR><TR><TD CLASS="l">35</TD><TD>import org.eclipse.ui.PlatformUI;</TD></TR><TR><TD CLASS="l">36</TD><TD>import org.eclipse.wst.common.uriresolver.internal.util.URIHelper;</TD></TR><TR><TD CLASS="l">37</TD><TD>import org.eclipse.wst.xml.core.internal.catalog.provisional.ICatalog;</TD></TR><TR><TD CLASS="l">38</TD><TD>import org.eclipse.wst.xml.core.internal.catalog.provisional.ICatalogElement;</TD></TR><TR><TD CLASS="l">39</TD><TD>import org.eclipse.wst.xml.core.internal.catalog.provisional.ICatalogEntry;</TD></TR><TR><TD CLASS="l"><A NAME="0">40</A></TD><TD>import org.eclipse.wst.xml.core.internal.catalog.provisional.INextCatalog;</TD></TR><TR><TD CLASS="l">41</TD><TD> </TD></TR><TR><TD CLASS="l">42</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">43</TD><TD>public class XMLCatalogTreeViewer extends TreeViewer {</TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>        protected static Image xmlCatalogImage = ImageFactory.INSTANCE.getImage(&#34;icons/obj16/xmlcatalog_obj.gif&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">45</TD><TD>        protected static Image errorImage = ImageFactory.INSTANCE.getImage(&#34;icons/ovr16/error-overlay.gif&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>        protected static Image entryImage = ImageFactory.INSTANCE.getImage(&#34;icons/obj16/entry_obj.png&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>        protected static Image nextCatalogImage = ImageFactory.INSTANCE.getImage(&#34;icons/obj16/nextCatalog_obj.gif&#34;); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">48</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>        protected static String ERROR_STATE_KEY = &#34;errorstatekey&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">50</TD><TD> </TD></TR><TR><TD CLASS="l">51</TD><TD>        protected ICatalog fWorkingUserCatalog;</TD></TR><TR><TD CLASS="l">52</TD><TD>        protected ICatalog fSystemCatalog;</TD></TR><TR><TD CLASS="l">53</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">54</A></TD><TD>        public static String USER_SPECIFIED_ENTRIES_OBJECT = XMLCatalogMessages.UI_LABEL_USER_SPECIFIED_ENTRIES;</TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>        public static String PLUGIN_SPECIFIED_ENTRIES_OBJECT = XMLCatalogMessages.UI_LABEL_PLUGIN_SPECIFIED_ENTRIES;</TD></TR><TR><TD CLASS="l">56</TD><TD> </TD></TR><TR><TD CLASS="l">57</TD><TD>        public XMLCatalogTreeViewer(Composite parent, ICatalog workingUserCatalog, ICatalog systemCatalog) {</TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>                super(parent, SWT.MULTI | SWT.BORDER);</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>                this.fWorkingUserCatalog = workingUserCatalog;</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                this.fSystemCatalog = systemCatalog;</TD></TR><TR><TD CLASS="l">61</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>                setContentProvider(new CatalogEntryContentProvider());</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">63</A></TD><TD>                setLabelProvider(new CatalogEntryLabelProvider());</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>        }</TD></TR><TR><TD CLASS="l">65</TD><TD> </TD></TR><TR><TD CLASS="l">66</TD><TD>        public void setFilterExtensions(String[] extensions) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="16">67</A></TD><TD>                resetFilters();</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>                addFilter(new XMLCatalogTableViewerFilter(extensions));</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>        }</TD></TR><TR><TD CLASS="l">70</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="1a">71</A></TD><TD>        public class CatalogEntryLabelProvider extends LabelProvider {</TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>                protected HashMap imageTable = new HashMap();</TD></TR><TR><TD CLASS="l">73</TD><TD> </TD></TR><TR><TD CLASS="l">74</TD><TD>                public String getText(Object object) {</TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>                        String result = null;</TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>                        if (object instanceof ICatalogEntry) {</TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>                                ICatalogEntry catalogEntry = (ICatalogEntry) object;</TD></TR><TR CLASS="z"><TD CLASS="l">78</TD><TD>                                result = catalogEntry.getKey();</TD></TR><TR><TD CLASS="l">79</TD><TD>                                // result = URIHelper.removePlatformResourceProtocol(result);</TD></TR><TR><TD CLASS="l">80</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">81</TD><TD>                        else if (object instanceof INextCatalog) {</TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>                                INextCatalog nextCatalog = (INextCatalog) object;</TD></TR><TR><TD CLASS="l">83</TD><TD>                                // result = nextCatalog.getCatalogLocation();</TD></TR><TR CLASS="z"><TD CLASS="l">84</TD><TD>                                result = URIUtils.convertURIToLocation(nextCatalog.getCatalogLocation());</TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>                                if (nextCatalog.getCatalogLocation().startsWith(&#34;file:&#34;)) {</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                                        result += &#34; (&#34; + XMLCatalogMessages.UI_LABEL_FILE_SYSTEM_RESOURCE + &#34;)&#34;;</TD></TR><TR><TD CLASS="l">87</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">88</TD><TD>                                else if (nextCatalog.getCatalogLocation().startsWith(&#34;platform:&#34;)) {</TD></TR><TR CLASS="z"><TD CLASS="l">89</TD><TD>                                        result += &#34; (&#34; + XMLCatalogMessages.UI_LABEL_PLATFORM_RESOURCE + &#34;)&#34;;</TD></TR><TR><TD CLASS="l">90</TD><TD>                                }</TD></TR><TR><TD CLASS="l">91</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="19">92</A></TD><TD>                        return result != null ? result : object.toString();</TD></TR><TR><TD CLASS="l">93</TD><TD>                }</TD></TR><TR><TD CLASS="l">94</TD><TD> </TD></TR><TR><TD CLASS="l">95</TD><TD>                public Image getImage(Object object) {</TD></TR><TR CLASS="z"><TD CLASS="l">96</TD><TD>                        Image result = null;</TD></TR><TR CLASS="z"><TD CLASS="l">97</TD><TD>                        Image base = null;</TD></TR><TR CLASS="z"><TD CLASS="l">98</TD><TD>                        if (object instanceof String) {</TD></TR><TR CLASS="z"><TD CLASS="l">99</TD><TD>                                result = xmlCatalogImage;</TD></TR><TR><TD CLASS="l">100</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">101</TD><TD>                        else if (object instanceof ICatalogEntry) {</TD></TR><TR CLASS="z"><TD CLASS="l">102</TD><TD>                                ICatalogEntry catalogEntry = (ICatalogEntry) object;</TD></TR><TR CLASS="z"><TD CLASS="l">103</TD><TD>                                String uri = catalogEntry.getURI();</TD></TR><TR CLASS="z"><TD CLASS="l">104</TD><TD>                                IEditorRegistry er = PlatformUI.getWorkbench().getEditorRegistry();</TD></TR><TR CLASS="z"><TD CLASS="l">105</TD><TD>                                ImageDescriptor imageDescriptor = er.getImageDescriptor(uri);</TD></TR><TR CLASS="z"><TD CLASS="l">106</TD><TD>                                Image image = (Image) imageTable.get(imageDescriptor);</TD></TR><TR CLASS="z"><TD CLASS="l">107</TD><TD>                                if (image == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">108</TD><TD>                                        image = imageDescriptor.createImage();</TD></TR><TR CLASS="z"><TD CLASS="l">109</TD><TD>                                        imageTable.put(imageDescriptor, image);</TD></TR><TR><TD CLASS="l">110</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">111</TD><TD>                                base = image;</TD></TR><TR><TD CLASS="l">112</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">113</TD><TD>                                if (base != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">114</TD><TD>                                        if (URIHelper.isReadableURI(uri, true)) {</TD></TR><TR CLASS="z"><TD CLASS="l">115</TD><TD>                                                result = base;</TD></TR><TR><TD CLASS="l">116</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">117</TD><TD>                                        else {</TD></TR><TR CLASS="z"><TD CLASS="l">118</TD><TD>                                                result = ImageFactory.INSTANCE.createCompositeImage(base, errorImage, ImageFactory.BOTTOM_LEFT);</TD></TR><TR><TD CLASS="l">119</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">120</TD><TD>                                }</TD></TR><TR><TD CLASS="l">121</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">122</TD><TD>                        else if (object instanceof INextCatalog) {</TD></TR><TR><TD CLASS="l">123</TD><TD>                                // TODO: add image to the imageTable and add error overlay if</TD></TR><TR><TD CLASS="l">124</TD><TD>                                // next catalog URI is not readable</TD></TR><TR CLASS="z"><TD CLASS="l">125</TD><TD>                                result = nextCatalogImage;</TD></TR><TR><TD CLASS="l">126</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="18">127</A></TD><TD>                        return result;</TD></TR><TR><TD CLASS="l">128</TD><TD>                }</TD></TR><TR><TD CLASS="l">129</TD><TD> </TD></TR><TR><TD CLASS="l">130</TD><TD>                public void dispose() {</TD></TR><TR CLASS="z"><TD CLASS="l">131</TD><TD>                        super.dispose();</TD></TR><TR CLASS="z"><TD CLASS="l">132</TD><TD>                        for (Iterator it = imageTable.values().iterator(); it.hasNext();) {</TD></TR><TR CLASS="z"><TD CLASS="l">133</TD><TD>                                ((Image) it.next()).dispose();</TD></TR><TR><TD CLASS="l">134</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">135</TD><TD>                }</TD></TR><TR><TD CLASS="l">136</TD><TD>        }</TD></TR><TR><TD CLASS="l">137</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="b">138</A></TD><TD> </TD></TR><TR><TD CLASS="l">139</TD><TD>        public class CatalogEntryContentProvider implements ITreeContentProvider {</TD></TR><TR><TD CLASS="l">140</TD><TD>                protected Object[] roots;</TD></TR><TR><TD CLASS="l">141</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">142</TD><TD>                public CatalogEntryContentProvider() {</TD></TR><TR CLASS="z"><TD CLASS="l">143</TD><TD>                        roots = new Object[2];</TD></TR><TR CLASS="z"><TD CLASS="l">144</TD><TD>                        roots[0] = USER_SPECIFIED_ENTRIES_OBJECT;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="15">145</A></TD><TD>                        roots[1] = PLUGIN_SPECIFIED_ENTRIES_OBJECT;</TD></TR><TR CLASS="z"><TD CLASS="l">146</TD><TD>                }</TD></TR><TR><TD CLASS="l">147</TD><TD> </TD></TR><TR><TD CLASS="l">148</TD><TD>                public boolean isRoot(Object object) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="10">149</A></TD><TD>                        return (object instanceof String) || (object instanceof INextCatalog);</TD></TR><TR><TD CLASS="l">150</TD><TD>                }</TD></TR><TR><TD CLASS="l">151</TD><TD> </TD></TR><TR><TD CLASS="l">152</TD><TD>                public Object[] getElements(Object element) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="e">153</A></TD><TD>                        return roots;</TD></TR><TR><TD CLASS="l">154</TD><TD>                }</TD></TR><TR><TD CLASS="l">155</TD><TD> </TD></TR><TR><TD CLASS="l">156</TD><TD>                public Object[] getChildren(Object parentElement) {</TD></TR><TR CLASS="z"><TD CLASS="l">157</TD><TD>                        Object[] result = new Object[0];</TD></TR><TR CLASS="z"><TD CLASS="l">158</TD><TD>                        if (parentElement == roots[0]) {</TD></TR><TR CLASS="z"><TD CLASS="l">159</TD><TD>                                result = getChildrenHelper(fWorkingUserCatalog);</TD></TR><TR><TD CLASS="l">160</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">161</TD><TD>                        else if (parentElement == roots[1]) {</TD></TR><TR CLASS="z"><TD CLASS="l">162</TD><TD>                                result = getChildrenHelper(fSystemCatalog);</TD></TR><TR><TD CLASS="l">163</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">164</TD><TD>                        else if (parentElement instanceof INextCatalog) {</TD></TR><TR CLASS="z"><TD CLASS="l">165</TD><TD>                                ICatalog nextCatalog = ((INextCatalog) parentElement).getReferencedCatalog();</TD></TR><TR CLASS="z"><TD CLASS="l">166</TD><TD>                                result = getChildrenHelper(nextCatalog);</TD></TR><TR><TD CLASS="l">167</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">168</TD><TD>                        return result;</TD></TR><TR><TD CLASS="l">169</TD><TD>                }</TD></TR><TR><TD CLASS="l"><A NAME="f">170</A></TD><TD> </TD></TR><TR><TD CLASS="l">171</TD><TD>                protected Object[] getChildrenHelper(ICatalog catalog) {</TD></TR><TR><TD CLASS="l"><A NAME="5">172</A></TD><TD>                        // TODO add entries from the nested catalogs</TD></TR><TR><TD CLASS="l">173</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="7">174</A></TD><TD>                        ICatalogEntry[] entries = catalog.getCatalogEntries();</TD></TR><TR CLASS="z"><TD CLASS="l">175</TD><TD>                        if (entries.length &gt; 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">176</TD><TD>                                Comparator comparator = new Comparator() {</TD></TR><TR><TD CLASS="l">177</TD><TD>                                        public int compare(Object o1, Object o2) {</TD></TR><TR CLASS="z"><TD CLASS="l">178</TD><TD>                                                int result = 0;</TD></TR><TR CLASS="z"><TD CLASS="l">179</TD><TD>                                                if ((o1 instanceof ICatalogEntry) &amp;&amp; (o2 instanceof ICatalogEntry)) {</TD></TR><TR CLASS="z"><TD CLASS="l">180</TD><TD>                                                        ICatalogEntry entry1 = (ICatalogEntry) o1;</TD></TR><TR CLASS="z"><TD CLASS="l">181</TD><TD>                                                        ICatalogEntry entry2 = (ICatalogEntry) o2;</TD></TR><TR CLASS="z"><TD CLASS="l">182</TD><TD>                                                        result = Collator.getInstance().compare(entry1.getKey(), entry2.getKey());</TD></TR><TR><TD CLASS="l">183</TD><TD>                                                }</TD></TR><TR CLASS="z"><TD CLASS="l">184</TD><TD>                                                return result;</TD></TR><TR><TD CLASS="l">185</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">186</TD><TD>                                };</TD></TR><TR CLASS="z"><TD CLASS="l">187</TD><TD>                                Arrays.sort(entries, comparator);</TD></TR><TR><TD CLASS="l">188</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">189</TD><TD>                        Vector result = new Vector();</TD></TR><TR CLASS="z"><TD CLASS="l">190</TD><TD>                        result.addAll(Arrays.asList(entries));</TD></TR><TR CLASS="z"><TD CLASS="l">191</TD><TD>                        INextCatalog[] nextCatalogs = catalog.getNextCatalogs();</TD></TR><TR CLASS="z"><TD CLASS="l">192</TD><TD>                        List nextCatalogsList = Arrays.asList(nextCatalogs);</TD></TR><TR CLASS="z"><TD CLASS="l">193</TD><TD>                        result.addAll(nextCatalogsList);</TD></TR><TR><TD CLASS="l">194</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="11">195</A></TD><TD>                        return result.toArray(new ICatalogElement[result.size()]);</TD></TR><TR><TD CLASS="l">196</TD><TD>                }</TD></TR><TR><TD CLASS="l">197</TD><TD> </TD></TR><TR><TD CLASS="l">198</TD><TD>                public Object getParent(Object element) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="12">199</A></TD><TD>                        return (element instanceof String) ? null : USER_SPECIFIED_ENTRIES_OBJECT;</TD></TR><TR><TD CLASS="l">200</TD><TD>                }</TD></TR><TR><TD CLASS="l">201</TD><TD> </TD></TR><TR><TD CLASS="l">202</TD><TD>                public boolean hasChildren(Object element) {</TD></TR><TR CLASS="z"><TD CLASS="l">203</TD><TD>                        return isRoot(element) ? getChildren(element).length &gt; 0 : false;</TD></TR><TR><TD CLASS="l"><A NAME="d">204</A></TD><TD>                }</TD></TR><TR><TD CLASS="l">205</TD><TD> </TD></TR><TR><TD CLASS="l">206</TD><TD>                public void dispose() {</TD></TR><TR><TD CLASS="l">207</TD><TD>                        // nothing to dispose</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="13">208</A></TD><TD>                }</TD></TR><TR><TD CLASS="l">209</TD><TD> </TD></TR><TR><TD CLASS="l">210</TD><TD>                public void inputChanged(Viewer viewer, Object old, Object newobj) {</TD></TR><TR><TD CLASS="l"><A NAME="14">211</A></TD><TD>                        // ISSUE: seems we should do something here</TD></TR><TR CLASS="z"><TD CLASS="l">212</TD><TD>                }</TD></TR><TR><TD CLASS="l">213</TD><TD> </TD></TR><TR><TD CLASS="l">214</TD><TD>                public boolean isDeleted(Object object) {</TD></TR><TR CLASS="z"><TD CLASS="l">215</TD><TD>                        return false;</TD></TR><TR><TD CLASS="l">216</TD><TD>                }</TD></TR><TR><TD CLASS="l"><A NAME="3">217</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">218</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="a">219</A></TD><TD> </TD></TR><TR><TD CLASS="l">220</TD><TD>        public void menuAboutToShow(IMenuManager menuManager) {</TD></TR><TR CLASS="z"><TD CLASS="l">221</TD><TD>                Action action = new Action(&#34;hello&#34;) { //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">222</TD><TD>                        public void run() {</TD></TR><TR CLASS="z"><TD CLASS="l">223</TD><TD>                                System.out.println(&#34;run!&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">224</TD><TD>                        }</TD></TR><TR><TD CLASS="l">225</TD><TD>                };</TD></TR><TR CLASS="z"><TD CLASS="l">226</TD><TD>                menuManager.add(action);</TD></TR><TR CLASS="z"><TD CLASS="l">227</TD><TD>        }</TD></TR><TR><TD CLASS="l">228</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="1b">229</A></TD><TD> </TD></TR><TR><TD CLASS="l">230</TD><TD>        class XMLCatalogTableViewerFilter extends ViewerFilter {</TD></TR><TR><TD CLASS="l">231</TD><TD>                protected String[] extensions;</TD></TR><TR><TD CLASS="l">232</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">233</TD><TD>                public XMLCatalogTableViewerFilter(String[] extensions1) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="1d">234</A></TD><TD>                        this.extensions = extensions1;</TD></TR><TR CLASS="z"><TD CLASS="l">235</TD><TD>                }</TD></TR><TR><TD CLASS="l">236</TD><TD> </TD></TR><TR><TD CLASS="l">237</TD><TD>                public boolean isFilterProperty(Object element, Object property) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="1e">238</A></TD><TD>                        return false;</TD></TR><TR><TD CLASS="l">239</TD><TD>                }</TD></TR><TR><TD CLASS="l">240</TD><TD> </TD></TR><TR><TD CLASS="l">241</TD><TD>                public boolean select(Viewer viewer, Object parent, Object element) {</TD></TR><TR CLASS="z"><TD CLASS="l">242</TD><TD>                        boolean result = false;</TD></TR><TR CLASS="z"><TD CLASS="l">243</TD><TD>                        if (element instanceof ICatalogEntry) {</TD></TR><TR CLASS="z"><TD CLASS="l">244</TD><TD>                                ICatalogEntry catalogEntry = (ICatalogEntry) element;</TD></TR><TR CLASS="z"><TD CLASS="l">245</TD><TD>                                for (int i = 0; i &lt; extensions.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">246</TD><TD>                                        if (catalogEntry.getURI().endsWith(extensions[i])) {</TD></TR><TR CLASS="z"><TD CLASS="l">247</TD><TD>                                                result = true;</TD></TR><TR CLASS="z"><TD CLASS="l">248</TD><TD>                                                break;</TD></TR><TR><TD CLASS="l">249</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">250</TD><TD>                                }</TD></TR><TR><TD CLASS="l">251</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">252</TD><TD>                        else if (element.equals(XMLCatalogTreeViewer.PLUGIN_SPECIFIED_ENTRIES_OBJECT) || element.equals(XMLCatalogTreeViewer.USER_SPECIFIED_ENTRIES_OBJECT)) {</TD></TR><TR CLASS="z"><TD CLASS="l">253</TD><TD>                                return true;</TD></TR><TR><TD CLASS="l">254</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">255</TD><TD>                        return result;</TD></TR><TR><TD CLASS="l">256</TD><TD>                }</TD></TR><TR><TD CLASS="l">257</TD><TD>        }</TD></TR><TR><TD CLASS="l">258</TD><TD> </TD></TR><TR><TD CLASS="l">259</TD><TD> </TD></TR><TR><TD CLASS="l">260</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="33.html">org.eclipse.wst.xml.ui.internal.catalog</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1a2.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1a2.html
deleted file mode 100644
index 72ceda5..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1a2.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="33.html">org.eclipse.wst.xml.ui.internal.catalog</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">XMLQuickScan.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>XMLQuickScan.java</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/125)</TD><TD CLASS="h">0%   (0/35)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">XMLQuickScan</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/88)</TD><TD CLASS="h">0%   (0/25)</TD></TR><TR><TD CLASS="f"><A HREF="#0">XMLQuickScan (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">getTargetNamespaceURIForSchema (InputStream): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/68)</TD><TD CLASS="h">0%   (0/18)</TD></TR><TR><TD CLASS="f"><A HREF="#3">getTargetNamespaceURIForSchema (String): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/17)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#4">XMLQuickScan$StopParseException</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#4">XMLQuickScan$StopParseException (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#6">XMLQuickScan$TargetNamespaceURIContentHandler</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/33)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR><TD CLASS="f"><A HREF="#6">XMLQuickScan$TargetNamespaceURIContentHandler (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">startElement (String, String, String, Attributes): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/30)</TD><TD CLASS="h">0%   (0/7)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2002, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.ui.internal.catalog;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.io.IOException;</TD></TR><TR><TD CLASS="l">16</TD><TD>import java.io.InputStream;</TD></TR><TR><TD CLASS="l">17</TD><TD>import java.net.URL;</TD></TR><TR><TD CLASS="l">18</TD><TD> </TD></TR><TR><TD CLASS="l">19</TD><TD>import javax.xml.parsers.ParserConfigurationException;</TD></TR><TR><TD CLASS="l">20</TD><TD>import javax.xml.parsers.SAXParser;</TD></TR><TR><TD CLASS="l">21</TD><TD>import javax.xml.parsers.SAXParserFactory;</TD></TR><TR><TD CLASS="l">22</TD><TD> </TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.wst.xml.ui.internal.Logger;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.xml.sax.Attributes;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.xml.sax.InputSource;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.xml.sax.SAXException;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.xml.sax.helpers.DefaultHandler;</TD></TR><TR><TD CLASS="l"><A NAME="0">28</A></TD><TD> </TD></TR><TR><TD CLASS="l">29</TD><TD>/**</TD></TR><TR><TD CLASS="l"><A NAME="3">30</A></TD><TD> * </TD></TR><TR><TD CLASS="l">31</TD><TD> */</TD></TR><TR CLASS="z"><TD CLASS="l">32</TD><TD>public class XMLQuickScan {</TD></TR><TR><TD CLASS="l">33</TD><TD>        public static String getTargetNamespaceURIForSchema(String uri) {</TD></TR><TR CLASS="z"><TD CLASS="l">34</TD><TD>                String result = null;</TD></TR><TR><TD CLASS="l">35</TD><TD>                try {</TD></TR><TR CLASS="z"><TD CLASS="l">36</TD><TD>                        URL url = new URL(uri);</TD></TR><TR CLASS="z"><TD CLASS="l">37</TD><TD>                        InputStream inputStream = url.openStream();</TD></TR><TR CLASS="z"><TD CLASS="l">38</TD><TD>                        result = XMLQuickScan.getTargetNamespaceURIForSchema(inputStream);</TD></TR><TR><TD CLASS="l">39</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">40</TD><TD>                catch (Exception e) {</TD></TR><TR><TD CLASS="l">41</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">42</A></TD><TD>                return result;</TD></TR><TR><TD CLASS="l">43</TD><TD>        }</TD></TR><TR><TD CLASS="l">44</TD><TD> </TD></TR><TR><TD CLASS="l">45</TD><TD>        public static String getTargetNamespaceURIForSchema(InputStream input) {</TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>                TargetNamespaceURIContentHandler handler = new TargetNamespaceURIContentHandler();</TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>                ClassLoader prevClassLoader = Thread.currentThread().getContextClassLoader();</TD></TR><TR><TD CLASS="l">48</TD><TD>                try {</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>                        Thread.currentThread().setContextClassLoader(XMLQuickScan.class.getClassLoader());</TD></TR><TR CLASS="z"><TD CLASS="l">50</TD><TD>                        SAXParserFactory factory = SAXParserFactory.newInstance();</TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>                        factory.setNamespaceAware(true);</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                        SAXParser parser = factory.newSAXParser();</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>                        parser.parse(new InputSource(input), handler);</TD></TR><TR><TD CLASS="l">54</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                catch (StopParseException e) {</TD></TR><TR><TD CLASS="l">56</TD><TD>                        // this is a normal exception to stop parsing early,</TD></TR><TR><TD CLASS="l">57</TD><TD>                        // when info is found, so we can safely ignore</TD></TR><TR><TD CLASS="l">58</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>                catch (ParserConfigurationException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                        Logger.logException(e);</TD></TR><TR><TD CLASS="l">61</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>                catch (SAXException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>                        Logger.logException(e);</TD></TR><TR><TD CLASS="l">64</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>                catch (IOException e) {</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                        Logger.logException(e);</TD></TR><TR><TD CLASS="l">67</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>                finally {</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                        Thread.currentThread().setContextClassLoader(prevClassLoader);</TD></TR><TR CLASS="z"><TD CLASS="l">70</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>                return handler.targetNamespaceURI;</TD></TR><TR><TD CLASS="l">72</TD><TD>        }</TD></TR><TR><TD CLASS="l">73</TD><TD> </TD></TR><TR><TD CLASS="l">74</TD><TD>        /**</TD></TR><TR><TD CLASS="l">75</TD><TD>         * This is a special exception that is used to stop parsing when required</TD></TR><TR><TD CLASS="l">76</TD><TD>         * information is found.</TD></TR><TR><TD CLASS="l">77</TD><TD>         */</TD></TR><TR><TD CLASS="l">78</TD><TD>        static class StopParseException extends org.xml.sax.SAXException {</TD></TR><TR><TD CLASS="l">79</TD><TD>                static final long serialVersionUID = 1L;</TD></TR><TR><TD CLASS="l">80</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="4">81</A></TD><TD>                /**</TD></TR><TR><TD CLASS="l">82</TD><TD>                 * Constructor StopParseException.</TD></TR><TR><TD CLASS="l">83</TD><TD>                 */</TD></TR><TR><TD CLASS="l">84</TD><TD>                StopParseException() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="6">85</A></TD><TD>                        super(&#34;targetnamespace found, no need to continue the parse&#34;);</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                }</TD></TR><TR><TD CLASS="l">87</TD><TD>        }</TD></TR><TR><TD CLASS="l">88</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="8">89</A></TD><TD>        static class TargetNamespaceURIContentHandler extends DefaultHandler {</TD></TR><TR><TD CLASS="l">90</TD><TD>                public String targetNamespaceURI;</TD></TR><TR><TD CLASS="l">91</TD><TD> </TD></TR><TR><TD CLASS="l">92</TD><TD>                public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException {</TD></TR><TR CLASS="z"><TD CLASS="l">93</TD><TD>                        if (localName.equals(&#34;schema&#34;)) //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">94</TD><TD>                        {</TD></TR><TR CLASS="z"><TD CLASS="l">95</TD><TD>                                int nAttributes = attributes.getLength();</TD></TR><TR CLASS="z"><TD CLASS="l">96</TD><TD>                                for (int i = 0; i &lt; nAttributes; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">97</TD><TD>                                        if (attributes.getLocalName(i).equals(&#34;targetNamespace&#34;)) //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">98</TD><TD>                                        {</TD></TR><TR CLASS="z"><TD CLASS="l">99</TD><TD>                                                targetNamespaceURI = attributes.getValue(i);</TD></TR><TR CLASS="z"><TD CLASS="l">100</TD><TD>                                                break;</TD></TR><TR><TD CLASS="l">101</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">102</TD><TD>                                }</TD></TR><TR><TD CLASS="l">103</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">104</TD><TD>                        throw new StopParseException();</TD></TR><TR><TD CLASS="l">105</TD><TD>                }</TD></TR><TR><TD CLASS="l">106</TD><TD>        }</TD></TR><TR><TD CLASS="l">107</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="33.html">org.eclipse.wst.xml.ui.internal.catalog</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1a3.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1a3.html
deleted file mode 100644
index 23501e7..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1a3.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="34.html">org.eclipse.wst.xml.ui.internal.contentoutline</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">JFaceNodeAdapter.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>JFaceNodeAdapter.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/314)</TD><TD CLASS="h">0%   (0/90)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">JFaceNodeAdapter</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/314)</TD><TD CLASS="h">0%   (0/90)</TD></TR><TR><TD CLASS="f"><A HREF="#0">&lt;static initializer&gt;</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/19)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">JFaceNodeAdapter (JFaceNodeAdapterFactory): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#3">createImage (Object): Image</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/59)</TD><TD CLASS="h">0%   (0/23)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">createXMLImageDescriptor (String): Image</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#5">getChildren (Object): Object []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/32)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">getDebugValue (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#7">getElements (Object): Object []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">getLabelImage (Object): Image</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/38)</TD><TD CLASS="h">0%   (0/12)</TD></TR><TR><TD CLASS="f"><A HREF="#9">getLabelText (Object): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">getNodeName (Object): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/27)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR><TD CLASS="f"><A HREF="#b">getParent (Object): Object</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#c">getRefreshJob (): RefreshStructureJob</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#d">hasChildren (Object): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/20)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#e">isAdapterForType (Object): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#f">notifyChanged (INodeNotifier, int, Object, Object, Object, int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/53)</TD><TD CLASS="h">0%   (0/12)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2007 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.ui.internal.contentoutline;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.util.ArrayList;</TD></TR><TR><TD CLASS="l">16</TD><TD>import java.util.Collection;</TD></TR><TR><TD CLASS="l">17</TD><TD>import java.util.Iterator;</TD></TR><TR><TD CLASS="l">18</TD><TD> </TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.core.runtime.Platform;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.jface.resource.ImageRegistry;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.jface.resource.JFaceResources;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.jface.viewers.StructuredViewer;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.swt.graphics.Image;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.wst.sse.ui.internal.contentoutline.IJFaceNodeAdapter;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.wst.xml.ui.internal.editor.CMImageUtil;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.wst.xml.ui.internal.editor.XMLEditorPluginImageHelper;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.wst.xml.ui.internal.editor.XMLEditorPluginImages;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.w3c.dom.Node;</TD></TR><TR><TD CLASS="l">30</TD><TD> </TD></TR><TR><TD CLASS="l">31</TD><TD>/**</TD></TR><TR><TD CLASS="l"><A NAME="0">32</A></TD><TD> * Adapts a DOM node to a JFace viewer.</TD></TR><TR><TD CLASS="l">33</TD><TD> */</TD></TR><TR CLASS="z"><TD CLASS="l">34</TD><TD>public class JFaceNodeAdapter implements IJFaceNodeAdapter {</TD></TR><TR><TD CLASS="l">35</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">36</TD><TD>        final static Class ADAPTER_KEY = IJFaceNodeAdapter.class;</TD></TR><TR><TD CLASS="l">37</TD><TD> </TD></TR><TR><TD CLASS="l">38</TD><TD>        /**</TD></TR><TR><TD CLASS="l">39</TD><TD>         * debug .option</TD></TR><TR><TD CLASS="l"><A NAME="6">40</A></TD><TD>         */</TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>        private static final boolean DEBUG = getDebugValue();</TD></TR><TR><TD CLASS="l">42</TD><TD> </TD></TR><TR><TD CLASS="l">43</TD><TD>        private static boolean getDebugValue() {</TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>                String value = Platform.getDebugOption(&#34;org.eclipse.wst.sse.ui/debug/outline&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">45</TD><TD>                boolean result = (value != null) &amp;&amp; value.equalsIgnoreCase(&#34;true&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>                return result;</TD></TR><TR><TD CLASS="l">47</TD><TD>        }</TD></TR><TR><TD CLASS="l">48</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="2">49</A></TD><TD>        JFaceNodeAdapterFactory fAdapterFactory;</TD></TR><TR CLASS="z"><TD CLASS="l">50</TD><TD>        private RefreshStructureJob fRefreshJob = null;</TD></TR><TR><TD CLASS="l">51</TD><TD> </TD></TR><TR><TD CLASS="l">52</TD><TD>        public JFaceNodeAdapter(JFaceNodeAdapterFactory adapterFactory) {</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>                super();</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">54</A></TD><TD>                this.fAdapterFactory = adapterFactory;</TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>        }</TD></TR><TR><TD CLASS="l">56</TD><TD> </TD></TR><TR><TD CLASS="l">57</TD><TD>        protected Image createImage(Object object) {</TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>                Image image = null;</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>                Node node = (Node) object;</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                switch (node.getNodeType()) {</TD></TR><TR><TD CLASS="l">61</TD><TD>                        case Node.ELEMENT_NODE : {</TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>                                image = createXMLImageDescriptor(XMLEditorPluginImages.IMG_OBJ_ELEMENT);</TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>                                break;</TD></TR><TR><TD CLASS="l">64</TD><TD>                        }</TD></TR><TR><TD CLASS="l">65</TD><TD>                        case Node.ATTRIBUTE_NODE : {</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                                image = createXMLImageDescriptor(XMLEditorPluginImages.IMG_OBJ_ATTRIBUTE);</TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>                                break;</TD></TR><TR><TD CLASS="l">68</TD><TD>                        }</TD></TR><TR><TD CLASS="l">69</TD><TD>                        case Node.TEXT_NODE : { // actually, TEXT should never be seen in</TD></TR><TR><TD CLASS="l">70</TD><TD>                                // the tree</TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>                                image = createXMLImageDescriptor(XMLEditorPluginImages.IMG_OBJ_TXTEXT);</TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>                                break;</TD></TR><TR><TD CLASS="l">73</TD><TD>                        }</TD></TR><TR><TD CLASS="l">74</TD><TD>                        case Node.CDATA_SECTION_NODE : {</TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>                                image = createXMLImageDescriptor(XMLEditorPluginImages.IMG_OBJ_CDATASECTION);</TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>                                break;</TD></TR><TR><TD CLASS="l">77</TD><TD>                        }</TD></TR><TR><TD CLASS="l">78</TD><TD>                        case Node.ENTITY_REFERENCE_NODE :</TD></TR><TR><TD CLASS="l">79</TD><TD>                        case Node.ENTITY_NODE : {</TD></TR><TR CLASS="z"><TD CLASS="l">80</TD><TD>                                image = createXMLImageDescriptor(XMLEditorPluginImages.IMG_OBJ_ENTITY);</TD></TR><TR CLASS="z"><TD CLASS="l">81</TD><TD>                                break;</TD></TR><TR><TD CLASS="l">82</TD><TD>                        }</TD></TR><TR><TD CLASS="l">83</TD><TD>                        case Node.PROCESSING_INSTRUCTION_NODE : {</TD></TR><TR CLASS="z"><TD CLASS="l">84</TD><TD>                                image = createXMLImageDescriptor(XMLEditorPluginImages.IMG_OBJ_PROCESSINGINSTRUCTION);</TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>                                break;</TD></TR><TR><TD CLASS="l">86</TD><TD>                        }</TD></TR><TR><TD CLASS="l">87</TD><TD>                        case Node.COMMENT_NODE : {</TD></TR><TR CLASS="z"><TD CLASS="l">88</TD><TD>                                image = createXMLImageDescriptor(XMLEditorPluginImages.IMG_OBJ_COMMENT);</TD></TR><TR CLASS="z"><TD CLASS="l">89</TD><TD>                                break;</TD></TR><TR><TD CLASS="l">90</TD><TD>                        }</TD></TR><TR><TD CLASS="l">91</TD><TD>                        case Node.DOCUMENT_TYPE_NODE : {</TD></TR><TR CLASS="z"><TD CLASS="l">92</TD><TD>                                image = createXMLImageDescriptor(XMLEditorPluginImages.IMG_OBJ_DOCTYPE);</TD></TR><TR CLASS="z"><TD CLASS="l">93</TD><TD>                                break;</TD></TR><TR><TD CLASS="l">94</TD><TD>                        }</TD></TR><TR><TD CLASS="l">95</TD><TD>                        case Node.NOTATION_NODE : {</TD></TR><TR CLASS="z"><TD CLASS="l">96</TD><TD>                                image = createXMLImageDescriptor(XMLEditorPluginImages.IMG_OBJ_NOTATION);</TD></TR><TR CLASS="z"><TD CLASS="l">97</TD><TD>                                break;</TD></TR><TR><TD CLASS="l">98</TD><TD>                        }</TD></TR><TR><TD CLASS="l">99</TD><TD>                        default : {</TD></TR><TR CLASS="z"><TD CLASS="l">100</TD><TD>                                image = createXMLImageDescriptor(XMLEditorPluginImages.IMG_OBJ_ELEMENT);</TD></TR><TR><TD CLASS="l">101</TD><TD>                                break;</TD></TR><TR><TD CLASS="l">102</TD><TD>                        }</TD></TR><TR><TD CLASS="l">103</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">104</A></TD><TD>                return image;</TD></TR><TR><TD CLASS="l">105</TD><TD>        }</TD></TR><TR><TD CLASS="l">106</TD><TD> </TD></TR><TR><TD CLASS="l">107</TD><TD>        protected Image createXMLImageDescriptor(String imageResourceName) {</TD></TR><TR CLASS="z"><TD CLASS="l">108</TD><TD>                return XMLEditorPluginImageHelper.getInstance().getImage(imageResourceName);</TD></TR><TR><TD CLASS="l">109</TD><TD>        }</TD></TR><TR><TD CLASS="l">110</TD><TD> </TD></TR><TR><TD CLASS="l">111</TD><TD>        public Object[] getChildren(Object object) {</TD></TR><TR><TD CLASS="l">112</TD><TD> </TD></TR><TR><TD CLASS="l">113</TD><TD>                // (pa) 20021217</TD></TR><TR><TD CLASS="l"><A NAME="5">114</A></TD><TD>                // cmvc defect 235554</TD></TR><TR><TD CLASS="l">115</TD><TD>                // performance enhancement: using child.getNextSibling() rather than</TD></TR><TR><TD CLASS="l">116</TD><TD>                // nodeList(item) for O(n) vs. O(n*n)</TD></TR><TR><TD CLASS="l">117</TD><TD>                //</TD></TR><TR CLASS="z"><TD CLASS="l">118</TD><TD>                ArrayList v = new ArrayList();</TD></TR><TR CLASS="z"><TD CLASS="l">119</TD><TD>                if (object instanceof Node) {</TD></TR><TR CLASS="z"><TD CLASS="l">120</TD><TD>                        Node node = (Node) object;</TD></TR><TR CLASS="z"><TD CLASS="l">121</TD><TD>                        for (Node child = node.getFirstChild(); child != null; child = child.getNextSibling()) {</TD></TR><TR CLASS="z"><TD CLASS="l">122</TD><TD>                                Node n = child;</TD></TR><TR CLASS="z"><TD CLASS="l">123</TD><TD>                                if (n.getNodeType() != Node.TEXT_NODE) {</TD></TR><TR CLASS="z"><TD CLASS="l">124</TD><TD>                                        v.add(n);</TD></TR><TR><TD CLASS="l">125</TD><TD>                                }</TD></TR><TR><TD CLASS="l">126</TD><TD>                        }</TD></TR><TR><TD CLASS="l">127</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">128</TD><TD>                return v.toArray();</TD></TR><TR><TD CLASS="l">129</TD><TD>        }</TD></TR><TR><TD CLASS="l">130</TD><TD> </TD></TR><TR><TD CLASS="l">131</TD><TD>        /**</TD></TR><TR><TD CLASS="l"><A NAME="7">132</A></TD><TD>         * Returns an enumeration with the elements belonging to the passed</TD></TR><TR><TD CLASS="l">133</TD><TD>         * element. These are the top level items in a list, tree, table, etc...</TD></TR><TR><TD CLASS="l">134</TD><TD>         */</TD></TR><TR><TD CLASS="l">135</TD><TD>        public Object[] getElements(Object node) {</TD></TR><TR CLASS="z"><TD CLASS="l">136</TD><TD>                return getChildren(node);</TD></TR><TR><TD CLASS="l">137</TD><TD>        }</TD></TR><TR><TD CLASS="l">138</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="8">139</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">140</TD><TD>         * Fetches the label image specific to this object instance.</TD></TR><TR><TD CLASS="l">141</TD><TD>         */</TD></TR><TR><TD CLASS="l">142</TD><TD>        public Image getLabelImage(Object node) {</TD></TR><TR CLASS="z"><TD CLASS="l">143</TD><TD>                Image image = null;</TD></TR><TR CLASS="z"><TD CLASS="l">144</TD><TD>                if (node instanceof Node) {</TD></TR><TR CLASS="z"><TD CLASS="l">145</TD><TD>                        image = CMImageUtil.getImage(CMImageUtil.getDeclaration((Node) node));</TD></TR><TR CLASS="z"><TD CLASS="l">146</TD><TD>                        if ((image == null) &amp;&amp; (JFaceResources.getImageRegistry() != null)) {</TD></TR><TR CLASS="z"><TD CLASS="l">147</TD><TD>                                ImageRegistry imageRegistry = JFaceResources.getImageRegistry();</TD></TR><TR CLASS="z"><TD CLASS="l">148</TD><TD>                                String nodeName = getNodeName(node);</TD></TR><TR CLASS="z"><TD CLASS="l">149</TD><TD>                                image = imageRegistry.get(nodeName);</TD></TR><TR CLASS="z"><TD CLASS="l">150</TD><TD>                                if (image == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">151</TD><TD>                                        image = createImage(node);</TD></TR><TR CLASS="z"><TD CLASS="l">152</TD><TD>                                        if (image != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">153</TD><TD>                                                imageRegistry.put(nodeName, image);</TD></TR><TR><TD CLASS="l">154</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">155</TD><TD>                                }</TD></TR><TR><TD CLASS="l">156</TD><TD>                        }</TD></TR><TR><TD CLASS="l">157</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">158</TD><TD>                return image;</TD></TR><TR><TD CLASS="l">159</TD><TD>        }</TD></TR><TR><TD CLASS="l">160</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="9">161</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">162</TD><TD>         * Fetches the label text specific to this object instance.</TD></TR><TR><TD CLASS="l">163</TD><TD>         */</TD></TR><TR><TD CLASS="l">164</TD><TD>        public String getLabelText(Object node) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="a">165</A></TD><TD>                return getNodeName(node);</TD></TR><TR><TD CLASS="l">166</TD><TD>        }</TD></TR><TR><TD CLASS="l">167</TD><TD> </TD></TR><TR><TD CLASS="l">168</TD><TD>        private String getNodeName(Object object) {</TD></TR><TR CLASS="z"><TD CLASS="l">169</TD><TD>                StringBuffer nodeName = new StringBuffer();</TD></TR><TR CLASS="z"><TD CLASS="l">170</TD><TD>                if (object instanceof Node) {</TD></TR><TR CLASS="z"><TD CLASS="l">171</TD><TD>                        Node node = (Node) object;</TD></TR><TR CLASS="z"><TD CLASS="l">172</TD><TD>                        nodeName.append(node.getNodeName());</TD></TR><TR><TD CLASS="l">173</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">174</TD><TD>                        if (node.getNodeType() == Node.DOCUMENT_TYPE_NODE) {</TD></TR><TR CLASS="z"><TD CLASS="l">175</TD><TD>                                nodeName.insert(0, &#34;DOCTYPE:&#34;); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">176</TD><TD>                        }</TD></TR><TR><TD CLASS="l">177</TD><TD> </TD></TR><TR><TD CLASS="l">178</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">179</TD><TD>                return nodeName.toString();</TD></TR><TR><TD CLASS="l"><A NAME="b">180</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">181</TD><TD> </TD></TR><TR><TD CLASS="l">182</TD><TD> </TD></TR><TR><TD CLASS="l">183</TD><TD>        public Object getParent(Object object) {</TD></TR><TR CLASS="z"><TD CLASS="l">184</TD><TD>                if (object instanceof Node) {</TD></TR><TR CLASS="z"><TD CLASS="l">185</TD><TD>                        Node node = (Node) object;</TD></TR><TR CLASS="z"><TD CLASS="l">186</TD><TD>                        return node.getParentNode();</TD></TR><TR><TD CLASS="l">187</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="c">188</A></TD><TD>                return null;</TD></TR><TR><TD CLASS="l">189</TD><TD>        }</TD></TR><TR><TD CLASS="l">190</TD><TD> </TD></TR><TR><TD CLASS="l">191</TD><TD>        private synchronized RefreshStructureJob getRefreshJob() {</TD></TR><TR CLASS="z"><TD CLASS="l">192</TD><TD>                if (fRefreshJob == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">193</TD><TD>                        fRefreshJob = new RefreshStructureJob();</TD></TR><TR><TD CLASS="l">194</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">195</TD><TD>                return fRefreshJob;</TD></TR><TR><TD CLASS="l">196</TD><TD>        }</TD></TR><TR><TD CLASS="l">197</TD><TD> </TD></TR><TR><TD CLASS="l">198</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="d">199</A></TD><TD>        public boolean hasChildren(Object object) {</TD></TR><TR><TD CLASS="l">200</TD><TD>                // (pa) 20021217</TD></TR><TR><TD CLASS="l">201</TD><TD>                // cmvc defect 235554 &gt; use child.getNextSibling() instead of</TD></TR><TR><TD CLASS="l">202</TD><TD>                // nodeList(item) for O(n) vs. O(n*n)</TD></TR><TR CLASS="z"><TD CLASS="l">203</TD><TD>                Node node = (Node) object;</TD></TR><TR CLASS="z"><TD CLASS="l">204</TD><TD>                for (Node child = node.getFirstChild(); child != null; child = child.getNextSibling()) {</TD></TR><TR CLASS="z"><TD CLASS="l">205</TD><TD>                        if (child.getNodeType() != Node.TEXT_NODE) {</TD></TR><TR CLASS="z"><TD CLASS="l">206</TD><TD>                                return true;</TD></TR><TR><TD CLASS="l">207</TD><TD>                        }</TD></TR><TR><TD CLASS="l">208</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">209</TD><TD>                return false;</TD></TR><TR><TD CLASS="l">210</TD><TD>        }</TD></TR><TR><TD CLASS="l">211</TD><TD> </TD></TR><TR><TD CLASS="l">212</TD><TD>        /**</TD></TR><TR><TD CLASS="l"><A NAME="e">213</A></TD><TD>         * Allowing the INodeAdapter to compare itself against the type allows it</TD></TR><TR><TD CLASS="l">214</TD><TD>         * to return true in more than one case.</TD></TR><TR><TD CLASS="l">215</TD><TD>         */</TD></TR><TR><TD CLASS="l">216</TD><TD>        public boolean isAdapterForType(Object type) {</TD></TR><TR CLASS="z"><TD CLASS="l">217</TD><TD>                if (type == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">218</TD><TD>                        return false;</TD></TR><TR><TD CLASS="l">219</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">220</TD><TD>                return type.equals(ADAPTER_KEY);</TD></TR><TR><TD CLASS="l">221</TD><TD>        }</TD></TR><TR><TD CLASS="l">222</TD><TD> </TD></TR><TR><TD CLASS="l">223</TD><TD>        /**</TD></TR><TR><TD CLASS="l">224</TD><TD>         * Called by the object being adapter (the notifier) when something has</TD></TR><TR><TD CLASS="l">225</TD><TD>         * changed.</TD></TR><TR><TD CLASS="l">226</TD><TD>         */</TD></TR><TR><TD CLASS="l">227</TD><TD>        public void notifyChanged(INodeNotifier notifier, int eventType, Object changedFeature, Object oldValue, Object newValue, int pos) {</TD></TR><TR><TD CLASS="l">228</TD><TD>                // future_TODO: the 'uijobs' used in this method were added to solve</TD></TR><TR><TD CLASS="l">229</TD><TD>                // threading problems when the dom</TD></TR><TR><TD CLASS="l">230</TD><TD>                // is updated in the background while the editor is open. They may be</TD></TR><TR><TD CLASS="l"><A NAME="f">231</A></TD><TD>                // a bit overkill and not that useful.</TD></TR><TR><TD CLASS="l">232</TD><TD>                // (That is, may be be worthy of job manager management). If they are</TD></TR><TR><TD CLASS="l">233</TD><TD>                // found to be important enough to leave in,</TD></TR><TR><TD CLASS="l">234</TD><TD>                // there's probably some optimization that can be done.</TD></TR><TR CLASS="z"><TD CLASS="l">235</TD><TD>                if (notifier instanceof Node) {</TD></TR><TR CLASS="z"><TD CLASS="l">236</TD><TD>                        Collection listeners = fAdapterFactory.getListeners();</TD></TR><TR CLASS="z"><TD CLASS="l">237</TD><TD>                        Iterator iterator = listeners.iterator();</TD></TR><TR><TD CLASS="l">238</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">239</TD><TD>                        while (iterator.hasNext()) {</TD></TR><TR CLASS="z"><TD CLASS="l">240</TD><TD>                                Object listener = iterator.next();</TD></TR><TR><TD CLASS="l">241</TD><TD>                                // https://bugs.eclipse.org/bugs/show_bug.cgi?id=90637</TD></TR><TR><TD CLASS="l">242</TD><TD>                                // if (notifier instanceof Node &amp;&amp; (listener instanceof</TD></TR><TR><TD CLASS="l">243</TD><TD>                                // StructuredViewer) &amp;&amp; (eventType ==</TD></TR><TR><TD CLASS="l">244</TD><TD>                                // INodeNotifier.STRUCTURE_CHANGED || (eventType ==</TD></TR><TR><TD CLASS="l">245</TD><TD>                                // INodeNotifier.CHANGE &amp;&amp; changedFeature == null))) {</TD></TR><TR CLASS="z"><TD CLASS="l">246</TD><TD>                                if ((listener instanceof StructuredViewer) &amp;&amp; ((eventType == INodeNotifier.STRUCTURE_CHANGED) || (eventType == INodeNotifier.CONTENT_CHANGED) || (eventType == INodeNotifier.CHANGE))) {</TD></TR><TR CLASS="z"><TD CLASS="l">247</TD><TD>                                        if (DEBUG) {</TD></TR><TR CLASS="z"><TD CLASS="l">248</TD><TD>                                                System.out.println(&#34;JFaceNodeAdapter notified on event type &gt; &#34; + eventType); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">249</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">250</TD><TD> </TD></TR><TR><TD CLASS="l">251</TD><TD>                                        // refresh on structural and &#34;unknown&#34; changes</TD></TR><TR CLASS="z"><TD CLASS="l">252</TD><TD>                                        StructuredViewer structuredViewer = (StructuredViewer) listener;</TD></TR><TR><TD CLASS="l">253</TD><TD>                                        // https://w3.opensource.ibm.com/bugzilla/show_bug.cgi?id=5230</TD></TR><TR CLASS="z"><TD CLASS="l">254</TD><TD>                                        if (structuredViewer.getControl() != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">255</TD><TD>                                                getRefreshJob().refresh(structuredViewer, (Node) notifier);</TD></TR><TR><TD CLASS="l">256</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">257</TD><TD>                                }</TD></TR><TR><TD CLASS="l">258</TD><TD>                        }</TD></TR><TR><TD CLASS="l">259</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">260</TD><TD>        }</TD></TR><TR><TD CLASS="l">261</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="34.html">org.eclipse.wst.xml.ui.internal.contentoutline</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1a4.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1a4.html
deleted file mode 100644
index b3c2073..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1a4.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="34.html">org.eclipse.wst.xml.ui.internal.contentoutline</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">JFaceNodeAdapterFactory.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>JFaceNodeAdapterFactory.java</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/18)</TD><TD CLASS="h">0%   (0/274)</TD><TD CLASS="h">0%   (0/60)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">JFaceNodeAdapterFactory</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/135)</TD><TD CLASS="h">0%   (0/28)</TD></TR><TR><TD CLASS="f"><A HREF="#0">JFaceNodeAdapterFactory (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/19)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">JFaceNodeAdapterFactory (Object, boolean): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#3">addListener (Object): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">copy (): INodeAdapterFactory</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#5">createAdapter (INodeNotifier): INodeAdapter</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/17)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">getListeners (): Collection</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#7">initAdapter (INodeAdapter, INodeNotifier): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/45)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">release (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#9">removeListener (Object): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#a">JFaceNodeAdapterFactory$1</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/25)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#a">JFaceNodeAdapterFactory$1 (JFaceNodeAdapterFactory$CMDocumentManagerListenerI...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#c">runInUIThread (IProgressMonitor): IStatus</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#d">JFaceNodeAdapterFactory$2</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/24)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#d">JFaceNodeAdapterFactory$2 (JFaceNodeAdapterFactory$CMDocumentManagerListenerI...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#f">runInUIThread (IProgressMonitor): IStatus</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/14)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#10">JFaceNodeAdapterFactory$CMDocumentManagerListenerImpl</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/90)</TD><TD CLASS="h">0%   (0/23)</TD></TR><TR><TD CLASS="f"><A HREF="#10">JFaceNodeAdapterFactory$CMDocumentManagerListenerImpl (JFaceNodeAdapterFactor...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#12">cacheCleared (CMDocumentCache): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#13">cacheUpdated (CMDocumentCache, String, int, int, CMDocument): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#14">propertyChanged (CMDocumentManager, String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#15">refreshViewers (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/67)</TD><TD CLASS="h">0%   (0/15)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR CLASS="z"><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.ui.internal.contentoutline;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.util.ArrayList;</TD></TR><TR><TD CLASS="l">16</TD><TD>import java.util.Collection;</TD></TR><TR><TD CLASS="l">17</TD><TD>import java.util.HashSet;</TD></TR><TR><TD CLASS="l">18</TD><TD>import java.util.Set;</TD></TR><TR><TD CLASS="l">19</TD><TD> </TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.core.runtime.IProgressMonitor;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.core.runtime.IStatus;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.core.runtime.Status;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.core.runtime.jobs.Job;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.jface.viewers.StructuredViewer;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.jface.viewers.Viewer;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.swt.widgets.Control;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.ui.progress.UIJob;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.AbstractAdapterFactory;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.INodeAdapter;</TD></TR><TR><TD CLASS="l">30</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.INodeAdapterFactory;</TD></TR><TR><TD CLASS="l">31</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;</TD></TR><TR><TD CLASS="l">32</TD><TD>import org.eclipse.wst.sse.ui.internal.contentoutline.IJFaceNodeAdapter;</TD></TR><TR><TD CLASS="l">33</TD><TD>import org.eclipse.wst.sse.ui.internal.contentoutline.IJFaceNodeAdapterFactory;</TD></TR><TR><TD CLASS="l">34</TD><TD>import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;</TD></TR><TR><TD CLASS="l">35</TD><TD>import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.CMDocumentManager;</TD></TR><TR><TD CLASS="l">36</TD><TD>import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.CMDocumentManagerListener;</TD></TR><TR><TD CLASS="l">37</TD><TD>import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQuery;</TD></TR><TR><TD CLASS="l">38</TD><TD>import org.eclipse.wst.xml.core.internal.contentmodel.util.CMDocumentCache;</TD></TR><TR><TD CLASS="l">39</TD><TD>import org.eclipse.wst.xml.core.internal.ssemodelquery.ModelQueryAdapter;</TD></TR><TR><TD CLASS="l">40</TD><TD>import org.eclipse.wst.xml.ui.internal.XMLUIMessages;</TD></TR><TR><TD CLASS="l">41</TD><TD> </TD></TR><TR><TD CLASS="l">42</TD><TD> </TD></TR><TR><TD CLASS="l">43</TD><TD>/**</TD></TR><TR><TD CLASS="l"><A NAME="10">44</A></TD><TD> * An adapter factory to create JFaceNodeAdapters. Use this adapter factory</TD></TR><TR><TD CLASS="l">45</TD><TD> * with a JFaceAdapterContentProvider to display DOM nodes in a tree.</TD></TR><TR><TD CLASS="l">46</TD><TD> */</TD></TR><TR><TD CLASS="l">47</TD><TD>public class JFaceNodeAdapterFactory extends AbstractAdapterFactory implements IJFaceNodeAdapterFactory {</TD></TR><TR CLASS="z"><TD CLASS="l">48</TD><TD>        public class CMDocumentManagerListenerImpl implements CMDocumentManagerListener {</TD></TR><TR><TD CLASS="l"><A NAME="12">49</A></TD><TD>                private static final int UPDATE_DELAY = 200;</TD></TR><TR><TD CLASS="l">50</TD><TD> </TD></TR><TR><TD CLASS="l">51</TD><TD>                public void cacheCleared(CMDocumentCache cache) {</TD></TR><TR><TD CLASS="l"><A NAME="13">52</A></TD><TD>                        // nothing to do</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>                }</TD></TR><TR><TD CLASS="l">54</TD><TD> </TD></TR><TR><TD CLASS="l">55</TD><TD>                public void cacheUpdated(CMDocumentCache cache, final String uri, int oldStatus, int newStatus, CMDocument cmDocument) {</TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>                        if ((newStatus == CMDocumentCache.STATUS_LOADED) || (newStatus == CMDocumentCache.STATUS_ERROR)) {</TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>                                refreshViewers();</TD></TR><TR><TD CLASS="l"><A NAME="14">58</A></TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>                }</TD></TR><TR><TD CLASS="l">60</TD><TD> </TD></TR><TR><TD CLASS="l">61</TD><TD>                public void propertyChanged(CMDocumentManager cmDocumentManager, String propertyName) {</TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>                        if (cmDocumentManager.getPropertyEnabled(CMDocumentManager.PROPERTY_AUTO_LOAD)) {</TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>                                refreshViewers();</TD></TR><TR><TD CLASS="l"><A NAME="15">64</A></TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>                }</TD></TR><TR><TD CLASS="l">66</TD><TD> </TD></TR><TR><TD CLASS="l">67</TD><TD>                private void refreshViewers() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="a">68</A></TD><TD>                        Object[] listeners = getListeners().toArray();</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                        for (int i = 0; i &lt; listeners.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="c">70</A></TD><TD>                                if (listeners[i] instanceof StructuredViewer) {</TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>                                        final StructuredViewer viewer = (StructuredViewer) listeners[i];</TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>                                        Job refresh = new UIJob(XMLUIMessages.refreshoutline_0) {</TD></TR><TR><TD CLASS="l">73</TD><TD>                                                public IStatus runInUIThread(IProgressMonitor monitor) {</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>                                                        Control refreshControl = viewer.getControl();</TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>                                                        if ((refreshControl != null) &amp;&amp; !refreshControl.isDisposed()) {</TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>                                                                viewer.refresh(true);</TD></TR><TR><TD CLASS="l">77</TD><TD>                                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">78</TD><TD>                                                        return Status.OK_STATUS;</TD></TR><TR><TD CLASS="l">79</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">80</TD><TD>                                        };</TD></TR><TR CLASS="z"><TD CLASS="l">81</TD><TD>                                        refresh.setSystem(true);</TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>                                        refresh.setPriority(Job.SHORT);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="d">83</A></TD><TD>                                        refresh.schedule(UPDATE_DELAY);</TD></TR><TR><TD CLASS="l">84</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="f">85</A></TD><TD>                                else if (listeners[i] instanceof Viewer) {</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                                        final Viewer viewer = (Viewer) listeners[i];</TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>                                        Job refresh = new UIJob(XMLUIMessages.refreshoutline_0) {</TD></TR><TR><TD CLASS="l">88</TD><TD>                                                public IStatus runInUIThread(IProgressMonitor monitor) {</TD></TR><TR CLASS="z"><TD CLASS="l">89</TD><TD>                                                        Control refreshControl = viewer.getControl();</TD></TR><TR CLASS="z"><TD CLASS="l">90</TD><TD>                                                        if ((refreshControl != null) &amp;&amp; !refreshControl.isDisposed()) {</TD></TR><TR CLASS="z"><TD CLASS="l">91</TD><TD>                                                                viewer.refresh();</TD></TR><TR><TD CLASS="l">92</TD><TD>                                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">93</TD><TD>                                                        return Status.OK_STATUS;</TD></TR><TR><TD CLASS="l">94</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">95</TD><TD>                                        };</TD></TR><TR CLASS="z"><TD CLASS="l">96</TD><TD>                                        refresh.setSystem(true);</TD></TR><TR CLASS="z"><TD CLASS="l">97</TD><TD>                                        refresh.setPriority(Job.SHORT);</TD></TR><TR CLASS="z"><TD CLASS="l">98</TD><TD>                                        refresh.schedule(UPDATE_DELAY);</TD></TR><TR><TD CLASS="l">99</TD><TD>                                }</TD></TR><TR><TD CLASS="l">100</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">101</TD><TD>                }</TD></TR><TR><TD CLASS="l">102</TD><TD>        }</TD></TR><TR><TD CLASS="l">103</TD><TD> </TD></TR><TR><TD CLASS="l">104</TD><TD>        private CMDocumentManager cmDocumentManager;</TD></TR><TR CLASS="z"><TD CLASS="l">105</TD><TD>        private CMDocumentManagerListenerImpl fCMDocumentManagerListener = null;</TD></TR><TR><TD CLASS="l">106</TD><TD>        /**</TD></TR><TR><TD CLASS="l">107</TD><TD>         * This keeps track of all the listeners.</TD></TR><TR><TD CLASS="l">108</TD><TD>         */</TD></TR><TR CLASS="z"><TD CLASS="l">109</TD><TD>        private Set fListeners = new HashSet();</TD></TR><TR><TD CLASS="l"><A NAME="0">110</A></TD><TD> </TD></TR><TR><TD CLASS="l">111</TD><TD>        protected INodeAdapter singletonAdapter;</TD></TR><TR><TD CLASS="l">112</TD><TD> </TD></TR><TR><TD CLASS="l">113</TD><TD>        public JFaceNodeAdapterFactory() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">114</A></TD><TD>                this(IJFaceNodeAdapter.class, true);</TD></TR><TR CLASS="z"><TD CLASS="l">115</TD><TD>        }</TD></TR><TR><TD CLASS="l">116</TD><TD> </TD></TR><TR><TD CLASS="l">117</TD><TD>        public JFaceNodeAdapterFactory(Object adapterKey, boolean registerAdapters) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">118</A></TD><TD>                super(adapterKey, registerAdapters);</TD></TR><TR CLASS="z"><TD CLASS="l">119</TD><TD>        }</TD></TR><TR><TD CLASS="l">120</TD><TD> </TD></TR><TR><TD CLASS="l">121</TD><TD>        public synchronized void addListener(Object listener) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">122</A></TD><TD>                fListeners.add(listener);</TD></TR><TR CLASS="z"><TD CLASS="l">123</TD><TD>        }</TD></TR><TR><TD CLASS="l">124</TD><TD> </TD></TR><TR><TD CLASS="l">125</TD><TD>        public INodeAdapterFactory copy() {</TD></TR><TR CLASS="z"><TD CLASS="l">126</TD><TD>                return new JFaceNodeAdapterFactory(getAdapterKey(), isShouldRegisterAdapter());</TD></TR><TR><TD CLASS="l">127</TD><TD>        }</TD></TR><TR><TD CLASS="l">128</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="5">129</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">130</TD><TD>         * Create a new JFace adapter for the DOM node passed in</TD></TR><TR><TD CLASS="l">131</TD><TD>         */</TD></TR><TR><TD CLASS="l">132</TD><TD>        protected INodeAdapter createAdapter(INodeNotifier node) {</TD></TR><TR CLASS="z"><TD CLASS="l">133</TD><TD>                if (singletonAdapter == null) {</TD></TR><TR><TD CLASS="l">134</TD><TD>                        // create the JFaceNodeAdapter</TD></TR><TR CLASS="z"><TD CLASS="l">135</TD><TD>                        singletonAdapter = new JFaceNodeAdapter(this);</TD></TR><TR CLASS="z"><TD CLASS="l">136</TD><TD>                        initAdapter(singletonAdapter, node);</TD></TR><TR><TD CLASS="l">137</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">138</TD><TD>                return singletonAdapter;</TD></TR><TR><TD CLASS="l">139</TD><TD>        }</TD></TR><TR><TD CLASS="l">140</TD><TD> </TD></TR><TR><TD CLASS="l">141</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="6">142</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">143</TD><TD>         * returns &#34;copy&#34; so no one can modify our list. It is a shallow copy.</TD></TR><TR><TD CLASS="l">144</TD><TD>         */</TD></TR><TR><TD CLASS="l">145</TD><TD>        public synchronized Collection getListeners() {</TD></TR><TR CLASS="z"><TD CLASS="l">146</TD><TD>                return new ArrayList(fListeners);</TD></TR><TR><TD CLASS="l"><A NAME="7">147</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">148</TD><TD> </TD></TR><TR><TD CLASS="l">149</TD><TD>        protected void initAdapter(INodeAdapter adapter, INodeNotifier node) {</TD></TR><TR><TD CLASS="l">150</TD><TD>                // register for CMDocumentManager events</TD></TR><TR CLASS="z"><TD CLASS="l">151</TD><TD>                ModelQueryAdapter mqadapter = (ModelQueryAdapter) node.getAdapterFor(ModelQueryAdapter.class);</TD></TR><TR CLASS="z"><TD CLASS="l">152</TD><TD>                if (mqadapter != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">153</TD><TD>                        ModelQuery mquery = mqadapter.getModelQuery();</TD></TR><TR CLASS="z"><TD CLASS="l">154</TD><TD>                        if ((mquery != null) &amp;&amp; (mquery.getCMDocumentManager() != null)) {</TD></TR><TR CLASS="z"><TD CLASS="l">155</TD><TD>                                cmDocumentManager = mquery.getCMDocumentManager();</TD></TR><TR CLASS="z"><TD CLASS="l">156</TD><TD>                                fCMDocumentManagerListener = new CMDocumentManagerListenerImpl();</TD></TR><TR CLASS="z"><TD CLASS="l">157</TD><TD>                                cmDocumentManager.addListener(fCMDocumentManagerListener);</TD></TR><TR><TD CLASS="l">158</TD><TD>                        }</TD></TR><TR><TD CLASS="l">159</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="8">160</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">161</TD><TD> </TD></TR><TR><TD CLASS="l">162</TD><TD>        public void release() {</TD></TR><TR><TD CLASS="l">163</TD><TD>                // deregister from CMDocumentManager events</TD></TR><TR CLASS="z"><TD CLASS="l">164</TD><TD>                if ((cmDocumentManager != null) &amp;&amp; (fCMDocumentManagerListener != null)) {</TD></TR><TR CLASS="z"><TD CLASS="l">165</TD><TD>                        cmDocumentManager.removeListener(fCMDocumentManagerListener);</TD></TR><TR><TD CLASS="l">166</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="9">167</A></TD><TD>                fListeners.clear();</TD></TR><TR CLASS="z"><TD CLASS="l">168</TD><TD>        }</TD></TR><TR><TD CLASS="l">169</TD><TD> </TD></TR><TR><TD CLASS="l">170</TD><TD>        public synchronized void removeListener(Object listener) {</TD></TR><TR CLASS="z"><TD CLASS="l">171</TD><TD>                fListeners.remove(listener);</TD></TR><TR CLASS="z"><TD CLASS="l">172</TD><TD>        }</TD></TR><TR><TD CLASS="l">173</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="34.html">org.eclipse.wst.xml.ui.internal.contentoutline</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1a5.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1a5.html
deleted file mode 100644
index 6112360..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1a5.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="34.html">org.eclipse.wst.xml.ui.internal.contentoutline</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">JFaceNodeContentProvider.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>JFaceNodeContentProvider.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/156)</TD><TD CLASS="h">0%   (0/36)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">JFaceNodeContentProvider</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/156)</TD><TD CLASS="h">0%   (0/36)</TD></TR><TR><TD CLASS="f"><A HREF="#0">JFaceNodeContentProvider (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">dispose (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#3">getAdapter (Object): IJFaceNodeAdapter</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/30)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">getChildren (Object): Object []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#5">getElements (Object): Object []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/22)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">getParent (Object): Object</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#7">hasChildren (Object): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">inputChanged (Viewer, Object, Object): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/63)</TD><TD CLASS="h">0%   (0/9)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.ui.internal.contentoutline;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.jface.viewers.ITreeContentProvider;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.jface.viewers.Viewer;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.INodeAdapter;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.wst.sse.ui.internal.contentoutline.IJFaceNodeAdapter;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.wst.sse.ui.internal.contentoutline.IJFaceNodeAdapterFactory;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;</TD></TR><TR><TD CLASS="l">23</TD><TD> </TD></TR><TR><TD CLASS="l">24</TD><TD> </TD></TR><TR><TD CLASS="l">25</TD><TD>/**</TD></TR><TR><TD CLASS="l">26</TD><TD> * An ITreeContentProvider for a TreeViewers used to display DOM nodes. This</TD></TR><TR><TD CLASS="l">27</TD><TD> * content provider takes an adapter factory to create JFace adapters for the</TD></TR><TR><TD CLASS="l">28</TD><TD> * nodes in the tree.</TD></TR><TR><TD CLASS="l"><A NAME="0">29</A></TD><TD> */</TD></TR><TR><TD CLASS="l">30</TD><TD>public class JFaceNodeContentProvider implements ITreeContentProvider {</TD></TR><TR><TD CLASS="l">31</TD><TD> </TD></TR><TR><TD CLASS="l">32</TD><TD>        public JFaceNodeContentProvider() {</TD></TR><TR CLASS="z"><TD CLASS="l">33</TD><TD>                super();</TD></TR><TR CLASS="z"><TD CLASS="l">34</TD><TD>        }</TD></TR><TR><TD CLASS="l">35</TD><TD> </TD></TR><TR><TD CLASS="l">36</TD><TD>        /**</TD></TR><TR><TD CLASS="l"><A NAME="2">37</A></TD><TD>         * The visual part that is using this content provider is about to be</TD></TR><TR><TD CLASS="l">38</TD><TD>         * disposed. Deallocate all allocated SWT resources.</TD></TR><TR><TD CLASS="l">39</TD><TD>         */</TD></TR><TR><TD CLASS="l">40</TD><TD>        public void dispose() {</TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>        }</TD></TR><TR><TD CLASS="l">42</TD><TD> </TD></TR><TR><TD CLASS="l">43</TD><TD>        /**</TD></TR><TR><TD CLASS="l">44</TD><TD>         * Returns the JFace adapter for the specified object.</TD></TR><TR><TD CLASS="l">45</TD><TD>         * </TD></TR><TR><TD CLASS="l"><A NAME="3">46</A></TD><TD>         * @param adaptable</TD></TR><TR><TD CLASS="l">47</TD><TD>         *            java.lang.Object The object to get the adapter for</TD></TR><TR><TD CLASS="l">48</TD><TD>         */</TD></TR><TR><TD CLASS="l">49</TD><TD>        protected IJFaceNodeAdapter getAdapter(Object adaptable) {</TD></TR><TR CLASS="z"><TD CLASS="l">50</TD><TD>                if (adaptable instanceof INodeNotifier) {</TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>                        INodeAdapter adapter = ((INodeNotifier) adaptable).getAdapterFor(IJFaceNodeAdapter.class);</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                        if (adapter instanceof IJFaceNodeAdapter) {</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>                                return (IJFaceNodeAdapter) adapter;</TD></TR><TR><TD CLASS="l">54</TD><TD>                        }</TD></TR><TR><TD CLASS="l">55</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">56</A></TD><TD>                return null;</TD></TR><TR><TD CLASS="l">57</TD><TD>        }</TD></TR><TR><TD CLASS="l">58</TD><TD> </TD></TR><TR><TD CLASS="l">59</TD><TD>        public Object[] getChildren(Object object) {</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                IJFaceNodeAdapter adapter = getAdapter(object);</TD></TR><TR><TD CLASS="l">61</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>                if (adapter != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>                        return adapter.getChildren(object);</TD></TR><TR><TD CLASS="l">64</TD><TD>                }</TD></TR><TR><TD CLASS="l">65</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                return new Object[0];</TD></TR><TR><TD CLASS="l">67</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="5">68</A></TD><TD> </TD></TR><TR><TD CLASS="l">69</TD><TD>        public Object[] getElements(Object object) {</TD></TR><TR><TD CLASS="l">70</TD><TD>                // The root is usually an instance of an XMLStructuredModel in</TD></TR><TR><TD CLASS="l">71</TD><TD>                // which case we want to extract the document.</TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>                Object topNode = object;</TD></TR><TR CLASS="z"><TD CLASS="l">73</TD><TD>                if (object instanceof IDOMModel) {</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>                        topNode = ((IDOMModel) object).getDocument();</TD></TR><TR><TD CLASS="l">75</TD><TD>                }</TD></TR><TR><TD CLASS="l">76</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>                IJFaceNodeAdapter adapter = getAdapter(topNode);</TD></TR><TR><TD CLASS="l">78</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">79</TD><TD>                if (adapter != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">80</TD><TD>                        return adapter.getElements(topNode);</TD></TR><TR><TD CLASS="l">81</TD><TD>                }</TD></TR><TR><TD CLASS="l">82</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="6">83</A></TD><TD>                return new Object[0];</TD></TR><TR><TD CLASS="l">84</TD><TD>        }</TD></TR><TR><TD CLASS="l">85</TD><TD> </TD></TR><TR><TD CLASS="l">86</TD><TD>        public Object getParent(Object object) {</TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>                IJFaceNodeAdapter adapter = getAdapter(object);</TD></TR><TR><TD CLASS="l">88</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">89</TD><TD>                if (adapter != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">90</TD><TD>                        return adapter.getParent(object);</TD></TR><TR><TD CLASS="l">91</TD><TD>                }</TD></TR><TR><TD CLASS="l">92</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="7">93</A></TD><TD>                return null;</TD></TR><TR><TD CLASS="l">94</TD><TD>        }</TD></TR><TR><TD CLASS="l">95</TD><TD> </TD></TR><TR><TD CLASS="l">96</TD><TD>        public boolean hasChildren(Object object) {</TD></TR><TR CLASS="z"><TD CLASS="l">97</TD><TD>                IJFaceNodeAdapter adapter = getAdapter(object);</TD></TR><TR><TD CLASS="l">98</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">99</TD><TD>                if (adapter != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">100</TD><TD>                        return adapter.hasChildren(object);</TD></TR><TR><TD CLASS="l">101</TD><TD>                }</TD></TR><TR><TD CLASS="l">102</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="8">103</A></TD><TD>                return false;</TD></TR><TR><TD CLASS="l">104</TD><TD>        }</TD></TR><TR><TD CLASS="l">105</TD><TD> </TD></TR><TR><TD CLASS="l">106</TD><TD>        public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {</TD></TR><TR CLASS="z"><TD CLASS="l">107</TD><TD>                if ((oldInput != null) &amp;&amp; (oldInput instanceof IStructuredModel)) {</TD></TR><TR CLASS="z"><TD CLASS="l">108</TD><TD>                        IJFaceNodeAdapterFactory factory = (IJFaceNodeAdapterFactory) ((IStructuredModel) oldInput).getFactoryRegistry().getFactoryFor(IJFaceNodeAdapter.class);</TD></TR><TR CLASS="z"><TD CLASS="l">109</TD><TD>                        if (factory != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">110</TD><TD>                                factory.removeListener(viewer);</TD></TR><TR><TD CLASS="l">111</TD><TD>                        }</TD></TR><TR><TD CLASS="l">112</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">113</TD><TD>                if ((newInput != null) &amp;&amp; (newInput instanceof IStructuredModel)) {</TD></TR><TR CLASS="z"><TD CLASS="l">114</TD><TD>                        IJFaceNodeAdapterFactory factory = (IJFaceNodeAdapterFactory) ((IStructuredModel) newInput).getFactoryRegistry().getFactoryFor(IJFaceNodeAdapter.class);</TD></TR><TR CLASS="z"><TD CLASS="l">115</TD><TD>                        if (factory != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">116</TD><TD>                                factory.addListener(viewer);</TD></TR><TR><TD CLASS="l">117</TD><TD>                        }</TD></TR><TR><TD CLASS="l">118</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">119</TD><TD>        }</TD></TR><TR><TD CLASS="l">120</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="34.html">org.eclipse.wst.xml.ui.internal.contentoutline</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1a6.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1a6.html
deleted file mode 100644
index e633ac6..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1a6.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="34.html">org.eclipse.wst.xml.ui.internal.contentoutline</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">JFaceNodeLabelProvider.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>JFaceNodeLabelProvider.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/63)</TD><TD CLASS="h">0%   (0/16)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">JFaceNodeLabelProvider</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/63)</TD><TD CLASS="h">0%   (0/16)</TD></TR><TR><TD CLASS="f"><A HREF="#0">JFaceNodeLabelProvider (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">getAdapter (Object): IJFaceNodeAdapter</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/30)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#3">getImage (Object): Image</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/14)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">getText (Object): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/14)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#5">isLabelProperty (Object, String): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2008 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.ui.internal.contentoutline;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.jface.viewers.ColumnLabelProvider;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.swt.graphics.Image;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.INodeAdapter;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.INodeNotifier;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.wst.sse.ui.internal.contentoutline.IJFaceNodeAdapter;</TD></TR><TR><TD CLASS="l">20</TD><TD> </TD></TR><TR><TD CLASS="l">21</TD><TD>/**</TD></TR><TR><TD CLASS="l">22</TD><TD> * A (column) label provider backed by JFaceNodeAdapters.</TD></TR><TR><TD CLASS="l">23</TD><TD> */</TD></TR><TR><TD CLASS="l">24</TD><TD>public class JFaceNodeLabelProvider extends ColumnLabelProvider {</TD></TR><TR><TD CLASS="l"><A NAME="0">25</A></TD><TD>        /**</TD></TR><TR><TD CLASS="l">26</TD><TD>         * JFaceNodeLabelProvider constructor comment.</TD></TR><TR><TD CLASS="l">27</TD><TD>         */</TD></TR><TR><TD CLASS="l">28</TD><TD>        public JFaceNodeLabelProvider() {</TD></TR><TR CLASS="z"><TD CLASS="l">29</TD><TD>                super();</TD></TR><TR CLASS="z"><TD CLASS="l">30</TD><TD>        }</TD></TR><TR><TD CLASS="l">31</TD><TD> </TD></TR><TR><TD CLASS="l">32</TD><TD>        /**</TD></TR><TR><TD CLASS="l">33</TD><TD>         * Returns the JFace adapter for the specified object.</TD></TR><TR><TD CLASS="l">34</TD><TD>         * </TD></TR><TR><TD CLASS="l"><A NAME="2">35</A></TD><TD>         * @param adaptable</TD></TR><TR><TD CLASS="l">36</TD><TD>         *            java.lang.Object The object to get the adapter for</TD></TR><TR><TD CLASS="l">37</TD><TD>         */</TD></TR><TR><TD CLASS="l">38</TD><TD>        protected IJFaceNodeAdapter getAdapter(Object adaptable) {</TD></TR><TR CLASS="z"><TD CLASS="l">39</TD><TD>                if (adaptable instanceof INodeNotifier) {</TD></TR><TR CLASS="z"><TD CLASS="l">40</TD><TD>                        INodeAdapter adapter = ((INodeNotifier) adaptable).getAdapterFor(IJFaceNodeAdapter.class);</TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>                        if (adapter instanceof IJFaceNodeAdapter) {</TD></TR><TR CLASS="z"><TD CLASS="l">42</TD><TD>                                return (IJFaceNodeAdapter) adapter;</TD></TR><TR><TD CLASS="l">43</TD><TD>                        }</TD></TR><TR><TD CLASS="l">44</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">45</TD><TD>                return null;</TD></TR><TR><TD CLASS="l">46</TD><TD>        }</TD></TR><TR><TD CLASS="l">47</TD><TD> </TD></TR><TR><TD CLASS="l">48</TD><TD>        /*</TD></TR><TR><TD CLASS="l">49</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="3">50</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">51</TD><TD>         * @see org.eclipse.jface.viewers.ILabelProvider#getImage(java.lang.Object)</TD></TR><TR><TD CLASS="l">52</TD><TD>         */</TD></TR><TR><TD CLASS="l">53</TD><TD>        public Image getImage(Object element) {</TD></TR><TR CLASS="z"><TD CLASS="l">54</TD><TD>                IJFaceNodeAdapter adapter = getAdapter(element);</TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                if (adapter != null)</TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>                        return adapter.getLabelImage(element);</TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>                return super.getImage(element);</TD></TR><TR><TD CLASS="l">58</TD><TD>        }</TD></TR><TR><TD CLASS="l">59</TD><TD> </TD></TR><TR><TD CLASS="l">60</TD><TD>        /*</TD></TR><TR><TD CLASS="l">61</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="4">62</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">63</TD><TD>         * @see org.eclipse.jface.viewers.ILabelProvider#getText(java.lang.Object)</TD></TR><TR><TD CLASS="l">64</TD><TD>         */</TD></TR><TR><TD CLASS="l">65</TD><TD>        public String getText(Object element) {</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                IJFaceNodeAdapter adapter = getAdapter(element);</TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>                if (adapter != null)</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>                        return adapter.getLabelText(element);</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                return super.getText(element);</TD></TR><TR><TD CLASS="l">70</TD><TD>        }</TD></TR><TR><TD CLASS="l">71</TD><TD> </TD></TR><TR><TD CLASS="l">72</TD><TD>        /*</TD></TR><TR><TD CLASS="l">73</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l">74</TD><TD>         * </TD></TR><TR><TD CLASS="l"><A NAME="5">75</A></TD><TD>         * @see org.eclipse.jface.viewers.IBaseLabelProvider#isLabelProperty(java.lang.Object,</TD></TR><TR><TD CLASS="l">76</TD><TD>         *      java.lang.String)</TD></TR><TR><TD CLASS="l">77</TD><TD>         */</TD></TR><TR><TD CLASS="l">78</TD><TD>        public boolean isLabelProperty(Object element, String property) {</TD></TR><TR CLASS="z"><TD CLASS="l">79</TD><TD>                return false;</TD></TR><TR><TD CLASS="l">80</TD><TD>        }</TD></TR><TR><TD CLASS="l">81</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="34.html">org.eclipse.wst.xml.ui.internal.contentoutline</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1a7.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1a7.html
deleted file mode 100644
index be2c455..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1a7.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="34.html">org.eclipse.wst.xml.ui.internal.contentoutline</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">RefreshStructureJob.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>RefreshStructureJob.java</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/20)</TD><TD CLASS="h">0%   (0/589)</TD><TD CLASS="h">0%   (0/126)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">RefreshStructureJob</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/16)</TD><TD CLASS="h">0%   (0/439)</TD><TD CLASS="h">0%   (0/107)</TD></TR><TR><TD CLASS="f"><A HREF="#0">&lt;static initializer&gt;</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/14)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">RefreshStructureJob (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/40)</TD><TD CLASS="h">0%   (0/9)</TD></TR><TR><TD CLASS="f"><A HREF="#3">addRefreshRequest (Node): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/46)</TD><TD CLASS="h">0%   (0/12)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">addRefreshViewer (StructuredViewer): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#5">addUpdateRequest (Node, String []): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">addUpdateViewer (StructuredViewer): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#7">contains (Node, Node): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/88)</TD><TD CLASS="h">0%   (0/24)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">doRefresh (Node, StructuredViewer []): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#9">doUpdate (StructuredViewer [], Node, String []): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">getRefreshRequests (): Object []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/35)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#b">getUpdateRequests (): Object []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/51)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#c">performRefreshes (IProgressMonitor): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/35)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR><TD CLASS="f"><A HREF="#d">performUpdates (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/36)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#e">refresh (StructuredViewer, Node): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#f">run (IProgressMonitor): IStatus</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/19)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#10">update (StructuredViewer, Node, String []): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/14)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#11">RefreshStructureJob$1</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/79)</TD><TD CLASS="h">0%   (0/12)</TD></TR><TR><TD CLASS="f"><A HREF="#11">RefreshStructureJob$1 (RefreshStructureJob, Node, StructuredViewer []): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#13">run (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/67)</TD><TD CLASS="h">0%   (0/10)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#14">RefreshStructureJob$2</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/71)</TD><TD CLASS="h">0%   (0/10)</TD></TR><TR><TD CLASS="f"><A HREF="#14">RefreshStructureJob$2 (RefreshStructureJob, Node, StructuredViewer [], String...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#16">run (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/56)</TD><TD CLASS="h">0%   (0/8)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR CLASS="z"><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.ui.internal.contentoutline;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.util.ArrayList;</TD></TR><TR><TD CLASS="l">16</TD><TD>import java.util.HashSet;</TD></TR><TR><TD CLASS="l">17</TD><TD>import java.util.List;</TD></TR><TR><TD CLASS="l">18</TD><TD>import java.util.Set;</TD></TR><TR><TD CLASS="l">19</TD><TD> </TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.core.runtime.IProgressMonitor;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.core.runtime.IStatus;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.core.runtime.OperationCanceledException;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.core.runtime.Platform;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.core.runtime.Status;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.core.runtime.jobs.Job;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.jface.viewers.StructuredViewer;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.swt.widgets.Display;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.ui.PlatformUI;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.wst.xml.ui.internal.XMLUIMessages;</TD></TR><TR><TD CLASS="l">30</TD><TD>import org.w3c.dom.Document;</TD></TR><TR><TD CLASS="l">31</TD><TD>import org.w3c.dom.Node;</TD></TR><TR><TD CLASS="l">32</TD><TD> </TD></TR><TR><TD CLASS="l">33</TD><TD>/**</TD></TR><TR><TD CLASS="l">34</TD><TD> * This job holds a queue of updates (affected nodes) for multiple structured</TD></TR><TR><TD CLASS="l">35</TD><TD> * viewers. When a new request comes in, the current run is cancelled, the new</TD></TR><TR><TD CLASS="l">36</TD><TD> * request is added to the queue, then the job is re-scheduled. Support for</TD></TR><TR><TD CLASS="l">37</TD><TD> * multiple structured viewers is required because refresh updates are usually</TD></TR><TR><TD CLASS="l">38</TD><TD> * triggered by model changes, and the model may be visible in more than one</TD></TR><TR><TD CLASS="l">39</TD><TD> * viewer.</TD></TR><TR><TD CLASS="l">40</TD><TD> * </TD></TR><TR><TD CLASS="l">41</TD><TD> * @author pavery</TD></TR><TR><TD CLASS="l">42</TD><TD> */</TD></TR><TR CLASS="z"><TD CLASS="l">43</TD><TD>class RefreshStructureJob extends Job {</TD></TR><TR><TD CLASS="l">44</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="0">45</A></TD><TD>        /** debug flag */</TD></TR><TR><TD CLASS="l">46</TD><TD>        static final boolean DEBUG;</TD></TR><TR><TD CLASS="l">47</TD><TD>        private static final long UPDATE_DELAY = 300;</TD></TR><TR><TD CLASS="l">48</TD><TD>        static {</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>                String value = Platform.getDebugOption(&#34;org.eclipse.wst.sse.ui/debug/refreshStructure&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">50</TD><TD>                DEBUG = (value != null) &amp;&amp; value.equalsIgnoreCase(&#34;true&#34;); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">51</TD><TD>        }</TD></TR><TR><TD CLASS="l">52</TD><TD>        /** List of refresh requests (Nodes) */</TD></TR><TR><TD CLASS="l">53</TD><TD>        private final List fRefreshes;</TD></TR><TR><TD CLASS="l">54</TD><TD>        /** List of update requests (Nodes) */</TD></TR><TR><TD CLASS="l">55</TD><TD>        private final List fUpdates;</TD></TR><TR><TD CLASS="l">56</TD><TD>        /** List of update requests (Nodes) */</TD></TR><TR><TD CLASS="l">57</TD><TD>        private final List fUpdateProperties;</TD></TR><TR><TD CLASS="l">58</TD><TD>        /** the structured viewers */</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">59</A></TD><TD>        Set fRefreshViewers = new HashSet(3);</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>        Set fUpdateViewers = new HashSet(3);</TD></TR><TR><TD CLASS="l">61</TD><TD> </TD></TR><TR><TD CLASS="l">62</TD><TD>        public RefreshStructureJob() {</TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>                super(XMLUIMessages.refreshoutline_0);</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                setPriority(Job.LONG);</TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>                setSystem(true);</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                fRefreshes = new ArrayList(5);</TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>                fUpdates = new ArrayList(5);</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>                fUpdateProperties = new ArrayList(5);</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>        }</TD></TR><TR><TD CLASS="l">70</TD><TD> </TD></TR><TR><TD CLASS="l">71</TD><TD>        private synchronized void addUpdateRequest(Node newNodeRequest, String[] updateProperties) {</TD></TR><TR><TD CLASS="l">72</TD><TD>                /*</TD></TR><TR><TD CLASS="l"><A NAME="5">73</A></TD><TD>                 * If we get to here, either from existing request list being zero</TD></TR><TR><TD CLASS="l">74</TD><TD>                 * length, or no exisitng requests &#34;matched&#34; new request, then add the</TD></TR><TR><TD CLASS="l">75</TD><TD>                 * new request.</TD></TR><TR><TD CLASS="l">76</TD><TD>                 */</TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>                fUpdates.add(newNodeRequest);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="6">78</A></TD><TD>                fUpdateProperties.add(updateProperties);</TD></TR><TR CLASS="z"><TD CLASS="l">79</TD><TD>        }</TD></TR><TR><TD CLASS="l">80</TD><TD> </TD></TR><TR><TD CLASS="l">81</TD><TD>        private synchronized void addUpdateViewer(StructuredViewer viewer) {</TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>                fUpdateViewers.add(viewer);</TD></TR><TR CLASS="z"><TD CLASS="l">83</TD><TD>        }</TD></TR><TR><TD CLASS="l">84</TD><TD> </TD></TR><TR><TD CLASS="l">85</TD><TD>        private synchronized void addRefreshRequest(Node newNodeRequest) {</TD></TR><TR><TD CLASS="l">86</TD><TD>                /*</TD></TR><TR><TD CLASS="l"><A NAME="3">87</A></TD><TD>                 * note: the caller must NOT pass in null node request (which, since</TD></TR><TR><TD CLASS="l">88</TD><TD>                 * private method, we do not need to gaurd against here, as long as we</TD></TR><TR><TD CLASS="l">89</TD><TD>                 * gaurd against it in calling method.</TD></TR><TR><TD CLASS="l">90</TD><TD>                 */</TD></TR><TR CLASS="z"><TD CLASS="l">91</TD><TD>                int size = fRefreshes.size();</TD></TR><TR CLASS="z"><TD CLASS="l">92</TD><TD>                for (int i = 0; i &lt; size; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">93</TD><TD>                        Node existingNodeRequest = (Node) fRefreshes.get(i);</TD></TR><TR><TD CLASS="l">94</TD><TD>                        /*</TD></TR><TR><TD CLASS="l">95</TD><TD>                         * https://bugs.eclipse.org/bugs/show_bug.cgi?id=157427 If we</TD></TR><TR><TD CLASS="l">96</TD><TD>                         * already have a request which equals the new request, discard</TD></TR><TR><TD CLASS="l">97</TD><TD>                         * the new request</TD></TR><TR><TD CLASS="l">98</TD><TD>                         */</TD></TR><TR CLASS="z"><TD CLASS="l">99</TD><TD>                        if (existingNodeRequest.equals(newNodeRequest)) {</TD></TR><TR CLASS="z"><TD CLASS="l">100</TD><TD>                                return;</TD></TR><TR><TD CLASS="l">101</TD><TD>                        }</TD></TR><TR><TD CLASS="l">102</TD><TD>                        /*</TD></TR><TR><TD CLASS="l">103</TD><TD>                         * If we already have a request which contains the new request,</TD></TR><TR><TD CLASS="l">104</TD><TD>                         * discard the new request</TD></TR><TR><TD CLASS="l">105</TD><TD>                         */</TD></TR><TR CLASS="z"><TD CLASS="l">106</TD><TD>                        if (contains(existingNodeRequest, newNodeRequest)) {</TD></TR><TR CLASS="z"><TD CLASS="l">107</TD><TD>                                return;</TD></TR><TR><TD CLASS="l">108</TD><TD>                        }</TD></TR><TR><TD CLASS="l">109</TD><TD>                        /*</TD></TR><TR><TD CLASS="l">110</TD><TD>                         * If new request contains any existing requests, replace it with</TD></TR><TR><TD CLASS="l">111</TD><TD>                         * new request. ISSUE: technically, we should replace ALL</TD></TR><TR><TD CLASS="l">112</TD><TD>                         * contained, existing requests (such as if many siblings already</TD></TR><TR><TD CLASS="l">113</TD><TD>                         * que'd up when their common parent is then requested, but, I'm</TD></TR><TR><TD CLASS="l">114</TD><TD>                         * not sure if that occurs much, in practice, or if there's an</TD></TR><TR><TD CLASS="l">115</TD><TD>                         * algorithm to quickly find them all. Actually, I guess we could</TD></TR><TR><TD CLASS="l">116</TD><TD>                         * just go through the _rest_ of the list (i+1 to size) and remove</TD></TR><TR><TD CLASS="l">117</TD><TD>                         * any that are contained by new request ... in future :) .</TD></TR><TR><TD CLASS="l">118</TD><TD>                         */</TD></TR><TR CLASS="z"><TD CLASS="l">119</TD><TD>                        if (contains(newNodeRequest, existingNodeRequest)) {</TD></TR><TR CLASS="z"><TD CLASS="l">120</TD><TD>                                fRefreshes.set(i, newNodeRequest);</TD></TR><TR CLASS="z"><TD CLASS="l">121</TD><TD>                                return;</TD></TR><TR><TD CLASS="l">122</TD><TD>                        }</TD></TR><TR><TD CLASS="l">123</TD><TD>                }</TD></TR><TR><TD CLASS="l">124</TD><TD>                /*</TD></TR><TR><TD CLASS="l">125</TD><TD>                 * If we get to here, either from existing request list being zero</TD></TR><TR><TD CLASS="l">126</TD><TD>                 * length, or no exisitng requests &#34;matched&#34; new request, then add the</TD></TR><TR><TD CLASS="l">127</TD><TD>                 * new request.</TD></TR><TR><TD CLASS="l">128</TD><TD>                 */</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">129</A></TD><TD>                fRefreshes.add(newNodeRequest);</TD></TR><TR CLASS="z"><TD CLASS="l">130</TD><TD>        }</TD></TR><TR><TD CLASS="l">131</TD><TD> </TD></TR><TR><TD CLASS="l">132</TD><TD>        private synchronized void addRefreshViewer(StructuredViewer viewer) {</TD></TR><TR CLASS="z"><TD CLASS="l">133</TD><TD>                fRefreshViewers.add(viewer);</TD></TR><TR CLASS="z"><TD CLASS="l">134</TD><TD>        }</TD></TR><TR><TD CLASS="l">135</TD><TD> </TD></TR><TR><TD CLASS="l">136</TD><TD>        /**</TD></TR><TR><TD CLASS="l">137</TD><TD>         * Simple hierarchical containment relationship. Note, this method returns</TD></TR><TR><TD CLASS="l">138</TD><TD>         * &#34;false&#34; if the two nodes are equal!</TD></TR><TR><TD CLASS="l">139</TD><TD>         * </TD></TR><TR><TD CLASS="l">140</TD><TD>         * @param root</TD></TR><TR><TD CLASS="l">141</TD><TD>         * @param possible</TD></TR><TR><TD CLASS="l"><A NAME="7">142</A></TD><TD>         * @return if the root is parent of possible, return true, otherwise</TD></TR><TR><TD CLASS="l">143</TD><TD>         *         return false</TD></TR><TR><TD CLASS="l">144</TD><TD>         */</TD></TR><TR><TD CLASS="l">145</TD><TD>        private boolean contains(Node root, Node possible) {</TD></TR><TR CLASS="z"><TD CLASS="l">146</TD><TD>                if (DEBUG) {</TD></TR><TR CLASS="z"><TD CLASS="l">147</TD><TD>                        System.out.println(&#34;==============================================================================================================&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">148</TD><TD>                        System.out.println(&#34;recursive call w/ root: &#34; + root.getNodeName() + &#34; and possible: &#34; + possible); //$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR CLASS="z"><TD CLASS="l">149</TD><TD>                        System.out.println(&#34;--------------------------------------------------------------------------------------------------------------&#34;); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">150</TD><TD>                }</TD></TR><TR><TD CLASS="l">151</TD><TD> </TD></TR><TR><TD CLASS="l">152</TD><TD>                // the following checks are important</TD></TR><TR><TD CLASS="l">153</TD><TD>                // #document node will break the algorithm otherwise</TD></TR><TR><TD CLASS="l">154</TD><TD> </TD></TR><TR><TD CLASS="l">155</TD><TD>                // can't contain the child if it's null</TD></TR><TR CLASS="z"><TD CLASS="l">156</TD><TD>                if (root == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">157</TD><TD>                        if (DEBUG) {</TD></TR><TR CLASS="z"><TD CLASS="l">158</TD><TD>                                System.out.println(&#34;returning false: root is null&#34;); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">159</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">160</TD><TD>                        return false;</TD></TR><TR><TD CLASS="l">161</TD><TD>                }</TD></TR><TR><TD CLASS="l">162</TD><TD>                // nothing can be parent of Document node</TD></TR><TR CLASS="z"><TD CLASS="l">163</TD><TD>                if (possible instanceof Document) {</TD></TR><TR CLASS="z"><TD CLASS="l">164</TD><TD>                        if (DEBUG) {</TD></TR><TR CLASS="z"><TD CLASS="l">165</TD><TD>                                System.out.println(&#34;returning false: possible is Document node&#34;); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">166</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">167</TD><TD>                        return false;</TD></TR><TR><TD CLASS="l">168</TD><TD>                }</TD></TR><TR><TD CLASS="l">169</TD><TD>                // document contains everything</TD></TR><TR CLASS="z"><TD CLASS="l">170</TD><TD>                if (root instanceof Document) {</TD></TR><TR CLASS="z"><TD CLASS="l">171</TD><TD>                        if (DEBUG) {</TD></TR><TR CLASS="z"><TD CLASS="l">172</TD><TD>                                System.out.println(&#34;returning true: root is Document node&#34;); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">173</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">174</TD><TD>                        return true;</TD></TR><TR><TD CLASS="l">175</TD><TD>                }</TD></TR><TR><TD CLASS="l">176</TD><TD> </TD></TR><TR><TD CLASS="l">177</TD><TD>                // check parentage</TD></TR><TR CLASS="z"><TD CLASS="l">178</TD><TD>                Node current = possible;</TD></TR><TR><TD CLASS="l">179</TD><TD>                // loop parents</TD></TR><TR CLASS="z"><TD CLASS="l">180</TD><TD>                while ((current != null) &amp;&amp; (current.getNodeType() != Node.DOCUMENT_NODE)) {</TD></TR><TR><TD CLASS="l">181</TD><TD>                        // found it</TD></TR><TR CLASS="z"><TD CLASS="l">182</TD><TD>                        if (root.equals(current)) {</TD></TR><TR CLASS="z"><TD CLASS="l">183</TD><TD>                                if (DEBUG) {</TD></TR><TR CLASS="z"><TD CLASS="l">184</TD><TD>                                        System.out.println(&#34;   !!! found: &#34; + possible.getNodeName() + &#34; in subelement of: &#34; + root.getNodeName()); //$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR><TD CLASS="l">185</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">186</TD><TD>                                return true;</TD></TR><TR><TD CLASS="l">187</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">188</TD><TD>                        current = current.getParentNode();</TD></TR><TR><TD CLASS="l">189</TD><TD>                }</TD></TR><TR><TD CLASS="l">190</TD><TD>                // never found it</TD></TR><TR CLASS="z"><TD CLASS="l">191</TD><TD>                return false;</TD></TR><TR><TD CLASS="l">192</TD><TD>        }</TD></TR><TR><TD CLASS="l">193</TD><TD> </TD></TR><TR><TD CLASS="l">194</TD><TD>        /**</TD></TR><TR><TD CLASS="l">195</TD><TD>         * Refresh must be on UI thread because it's on a SWT widget.</TD></TR><TR><TD CLASS="l"><A NAME="8">196</A></TD><TD>         * </TD></TR><TR><TD CLASS="l"><A NAME="11">197</A></TD><TD>         * @param node</TD></TR><TR><TD CLASS="l">198</TD><TD>         */</TD></TR><TR><TD CLASS="l"><A NAME="13">199</A></TD><TD>        private void doRefresh(final Node node, final StructuredViewer[] viewers) {</TD></TR><TR CLASS="z"><TD CLASS="l">200</TD><TD>                final Display display = PlatformUI.getWorkbench().getDisplay();</TD></TR><TR CLASS="z"><TD CLASS="l">201</TD><TD>                display.asyncExec(new Runnable() {</TD></TR><TR><TD CLASS="l">202</TD><TD>                        public void run() {</TD></TR><TR CLASS="z"><TD CLASS="l">203</TD><TD>                                if (DEBUG) {</TD></TR><TR CLASS="z"><TD CLASS="l">204</TD><TD>                                        System.out.println(&#34;refresh on: [&#34; + node.getNodeName() + &#34;]&#34;); //$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR><TD CLASS="l">205</TD><TD>                                }</TD></TR><TR><TD CLASS="l">206</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">207</TD><TD>                                for (int i = 0; i &lt; viewers.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">208</TD><TD>                                        if (!viewers[i].getControl().isDisposed()) {</TD></TR><TR CLASS="z"><TD CLASS="l">209</TD><TD>                                                if (node.getNodeType() == Node.DOCUMENT_NODE) {</TD></TR><TR CLASS="z"><TD CLASS="l">210</TD><TD>                                                        viewers[i].refresh(true);</TD></TR><TR><TD CLASS="l">211</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">212</TD><TD>                                                else {</TD></TR><TR CLASS="z"><TD CLASS="l">213</TD><TD>                                                        viewers[i].refresh(node, true);</TD></TR><TR><TD CLASS="l">214</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">215</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">216</TD><TD>                                        else {</TD></TR><TR CLASS="z"><TD CLASS="l">217</TD><TD>                                                if (DEBUG) {</TD></TR><TR CLASS="z"><TD CLASS="l">218</TD><TD>                                                        System.out.println(&#34;   !!! skipped refreshing disposed viewer: &#34; + viewers[i]); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">219</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">220</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">221</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">222</TD><TD>                        }</TD></TR><TR><TD CLASS="l">223</TD><TD>                });</TD></TR><TR CLASS="z"><TD CLASS="l">224</TD><TD>        }</TD></TR><TR><TD CLASS="l">225</TD><TD> </TD></TR><TR><TD CLASS="l">226</TD><TD>        /**</TD></TR><TR><TD CLASS="l">227</TD><TD>         * Update must be on UI thread because it's on a SWT widget.</TD></TR><TR><TD CLASS="l"><A NAME="9">228</A></TD><TD>         * </TD></TR><TR><TD CLASS="l"><A NAME="14">229</A></TD><TD>         * @param node</TD></TR><TR><TD CLASS="l">230</TD><TD>         */</TD></TR><TR><TD CLASS="l"><A NAME="16">231</A></TD><TD>        private void doUpdate(final StructuredViewer[] viewers, final Node node, final String[] properties) {</TD></TR><TR CLASS="z"><TD CLASS="l">232</TD><TD>                final Display display = PlatformUI.getWorkbench().getDisplay();</TD></TR><TR CLASS="z"><TD CLASS="l">233</TD><TD>                display.asyncExec(new Runnable() {</TD></TR><TR><TD CLASS="l">234</TD><TD>                        public void run() {</TD></TR><TR CLASS="z"><TD CLASS="l">235</TD><TD>                                if (DEBUG) {</TD></TR><TR CLASS="z"><TD CLASS="l">236</TD><TD>                                        System.out.println(&#34;refresh on: [&#34; + node.getNodeName() + &#34;]&#34;); //$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR><TD CLASS="l">237</TD><TD>                                }</TD></TR><TR><TD CLASS="l">238</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">239</TD><TD>                                for (int i = 0; i &lt; viewers.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">240</TD><TD>                                        if (!viewers[i].getControl().isDisposed()) {</TD></TR><TR CLASS="z"><TD CLASS="l">241</TD><TD>                                                viewers[i].update(node, properties);</TD></TR><TR><TD CLASS="l">242</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">243</TD><TD>                                        else {</TD></TR><TR CLASS="z"><TD CLASS="l">244</TD><TD>                                                if (DEBUG) {</TD></TR><TR CLASS="z"><TD CLASS="l">245</TD><TD>                                                        System.out.println(&#34;   !!! skipped refreshing disposed viewer: &#34; + viewers[i]); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">246</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">247</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">248</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">249</TD><TD>                        }</TD></TR><TR><TD CLASS="l">250</TD><TD>                });</TD></TR><TR CLASS="z"><TD CLASS="l">251</TD><TD>        }</TD></TR><TR><TD CLASS="l">252</TD><TD> </TD></TR><TR><TD CLASS="l">253</TD><TD>        /**</TD></TR><TR><TD CLASS="l">254</TD><TD>         * This method also synchronized because it accesses the fRefreshes queue</TD></TR><TR><TD CLASS="l">255</TD><TD>         * and fRefreshViewers list</TD></TR><TR><TD CLASS="l">256</TD><TD>         * </TD></TR><TR><TD CLASS="l"><A NAME="a">257</A></TD><TD>         * @return an array containing and array of the currently requested Nodes</TD></TR><TR><TD CLASS="l">258</TD><TD>         *         to refresh and the viewers in which to refresh them</TD></TR><TR><TD CLASS="l">259</TD><TD>         */</TD></TR><TR><TD CLASS="l">260</TD><TD>        private synchronized Object[] getRefreshRequests() {</TD></TR><TR CLASS="z"><TD CLASS="l">261</TD><TD>                Node[] toRefresh = (Node[]) fRefreshes.toArray(new Node[fRefreshes.size()]);</TD></TR><TR CLASS="z"><TD CLASS="l">262</TD><TD>                fRefreshes.clear();</TD></TR><TR><TD CLASS="l">263</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">264</TD><TD>                StructuredViewer[] viewers = (StructuredViewer[]) fRefreshViewers.toArray(new StructuredViewer[fRefreshViewers.size()]);</TD></TR><TR CLASS="z"><TD CLASS="l">265</TD><TD>                fRefreshViewers.clear();</TD></TR><TR><TD CLASS="l">266</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">267</TD><TD>                return new Object[]{toRefresh, viewers};</TD></TR><TR><TD CLASS="l">268</TD><TD>        }</TD></TR><TR><TD CLASS="l">269</TD><TD> </TD></TR><TR><TD CLASS="l">270</TD><TD>        /**</TD></TR><TR><TD CLASS="l">271</TD><TD>         * This method also synchronized because it accesses the fUpdates queue</TD></TR><TR><TD CLASS="l">272</TD><TD>         * and fUpdateViewers list</TD></TR><TR><TD CLASS="l">273</TD><TD>         * </TD></TR><TR><TD CLASS="l"><A NAME="b">274</A></TD><TD>         * @return an array containing and array of the currently requested Nodes</TD></TR><TR><TD CLASS="l">275</TD><TD>         *         to refresh and the viewers in which to refresh them</TD></TR><TR><TD CLASS="l">276</TD><TD>         */</TD></TR><TR><TD CLASS="l">277</TD><TD>        private synchronized Object[] getUpdateRequests() {</TD></TR><TR CLASS="z"><TD CLASS="l">278</TD><TD>                Node[] toUpdate = (Node[]) fUpdates.toArray(new Node[fUpdates.size()]);</TD></TR><TR CLASS="z"><TD CLASS="l">279</TD><TD>                fUpdates.clear();</TD></TR><TR><TD CLASS="l">280</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">281</TD><TD>                StructuredViewer[] viewers = (StructuredViewer[]) fUpdateViewers.toArray(new StructuredViewer[fUpdateViewers.size()]);</TD></TR><TR CLASS="z"><TD CLASS="l">282</TD><TD>                fUpdateViewers.clear();</TD></TR><TR><TD CLASS="l">283</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">284</TD><TD>                String[][] properties = (String[][]) fUpdateProperties.toArray(new String[fUpdateProperties.size()][]);</TD></TR><TR CLASS="z"><TD CLASS="l">285</TD><TD>                fUpdateProperties.clear();</TD></TR><TR><TD CLASS="l">286</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">287</TD><TD>                return new Object[]{toUpdate, viewers, properties};</TD></TR><TR><TD CLASS="l">288</TD><TD>        }</TD></TR><TR><TD CLASS="l">289</TD><TD> </TD></TR><TR><TD CLASS="l">290</TD><TD>        /**</TD></TR><TR><TD CLASS="l">291</TD><TD>         * Invoke a refresh on the viewer on the given node.</TD></TR><TR><TD CLASS="l"><A NAME="e">292</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">293</TD><TD>         * @param node</TD></TR><TR><TD CLASS="l">294</TD><TD>         */</TD></TR><TR><TD CLASS="l">295</TD><TD>        public void refresh(StructuredViewer viewer, Node node) {</TD></TR><TR CLASS="z"><TD CLASS="l">296</TD><TD>                if (node == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">297</TD><TD>                        return;</TD></TR><TR><TD CLASS="l">298</TD><TD>                }</TD></TR><TR><TD CLASS="l">299</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">300</TD><TD>                addRefreshViewer(viewer);</TD></TR><TR CLASS="z"><TD CLASS="l">301</TD><TD>                addRefreshRequest(node);</TD></TR><TR CLASS="z"><TD CLASS="l">302</TD><TD>                schedule(UPDATE_DELAY);</TD></TR><TR CLASS="z"><TD CLASS="l">303</TD><TD>        }</TD></TR><TR><TD CLASS="l">304</TD><TD> </TD></TR><TR><TD CLASS="l">305</TD><TD>        /**</TD></TR><TR><TD CLASS="l">306</TD><TD>         * Invoke a refresh on the viewer on the given node.</TD></TR><TR><TD CLASS="l"><A NAME="10">307</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">308</TD><TD>         * @param node</TD></TR><TR><TD CLASS="l">309</TD><TD>         */</TD></TR><TR><TD CLASS="l">310</TD><TD>        public void update(StructuredViewer viewer, Node node, String[] properties) {</TD></TR><TR CLASS="z"><TD CLASS="l">311</TD><TD>                if (node == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">312</TD><TD>                        return;</TD></TR><TR><TD CLASS="l">313</TD><TD>                }</TD></TR><TR><TD CLASS="l">314</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">315</TD><TD>                addUpdateViewer(viewer);</TD></TR><TR CLASS="z"><TD CLASS="l">316</TD><TD>                addUpdateRequest(node, properties);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="f">317</A></TD><TD>                schedule(UPDATE_DELAY);</TD></TR><TR CLASS="z"><TD CLASS="l">318</TD><TD>        }</TD></TR><TR><TD CLASS="l">319</TD><TD> </TD></TR><TR><TD CLASS="l">320</TD><TD>        protected IStatus run(IProgressMonitor monitor) {</TD></TR><TR CLASS="z"><TD CLASS="l">321</TD><TD>                IStatus status = Status.OK_STATUS;</TD></TR><TR><TD CLASS="l">322</TD><TD>                try {</TD></TR><TR CLASS="z"><TD CLASS="l">323</TD><TD>                        performUpdates();</TD></TR><TR><TD CLASS="l">324</TD><TD>                        </TD></TR><TR CLASS="z"><TD CLASS="l">325</TD><TD>                        performRefreshes(monitor);</TD></TR><TR><TD CLASS="l">326</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">327</TD><TD>                finally {</TD></TR><TR CLASS="z"><TD CLASS="l">328</TD><TD>                        monitor.done();</TD></TR><TR CLASS="z"><TD CLASS="l">329</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">330</TD><TD>                return status;</TD></TR><TR><TD CLASS="l"><A NAME="c">331</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">332</TD><TD> </TD></TR><TR><TD CLASS="l">333</TD><TD>        private void performRefreshes(IProgressMonitor monitor) {</TD></TR><TR><TD CLASS="l">334</TD><TD>                // Retrieve BOTH viewers and Nodes on one block</TD></TR><TR CLASS="z"><TD CLASS="l">335</TD><TD>                Object[] requests = getRefreshRequests();</TD></TR><TR CLASS="z"><TD CLASS="l">336</TD><TD>                Node[] nodes = (Node[]) requests[0];</TD></TR><TR CLASS="z"><TD CLASS="l">337</TD><TD>                StructuredViewer[] viewers = (StructuredViewer[]) requests[1];</TD></TR><TR><TD CLASS="l">338</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">339</TD><TD>                for (int i = 0; i &lt; nodes.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">340</TD><TD>                        if (monitor.isCanceled()) {</TD></TR><TR CLASS="z"><TD CLASS="l">341</TD><TD>                                throw new OperationCanceledException();</TD></TR><TR><TD CLASS="l">342</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">343</TD><TD>                        doRefresh(nodes[i], viewers);</TD></TR><TR><TD CLASS="l">344</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="d">345</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">346</TD><TD> </TD></TR><TR><TD CLASS="l">347</TD><TD>        private void performUpdates() {</TD></TR><TR><TD CLASS="l">348</TD><TD>                // Retrieve BOTH viewers and Nodes on one block</TD></TR><TR CLASS="z"><TD CLASS="l">349</TD><TD>                Object[] requests = getUpdateRequests();</TD></TR><TR CLASS="z"><TD CLASS="l">350</TD><TD>                Node[] nodes = (Node[]) requests[0];</TD></TR><TR CLASS="z"><TD CLASS="l">351</TD><TD>                StructuredViewer[] viewers = (StructuredViewer[]) requests[1];</TD></TR><TR CLASS="z"><TD CLASS="l">352</TD><TD>                String[][] properties = (String[][]) requests[2];</TD></TR><TR><TD CLASS="l">353</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">354</TD><TD>                for (int i = 0; i &lt; nodes.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">355</TD><TD>                        doUpdate(viewers, nodes[i], properties[i]);</TD></TR><TR><TD CLASS="l">356</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">357</TD><TD>        }</TD></TR><TR><TD CLASS="l">358</TD><TD> </TD></TR><TR><TD CLASS="l">359</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="34.html">org.eclipse.wst.xml.ui.internal.contentoutline</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1a8.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1a8.html
deleted file mode 100644
index b920ac8..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1a8.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="34.html">org.eclipse.wst.xml.ui.internal.contentoutline</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">XMLNodeActionManager.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>XMLNodeActionManager.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/41)</TD><TD CLASS="h">0%   (0/14)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">XMLNodeActionManager</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/41)</TD><TD CLASS="h">0%   (0/14)</TD></TR><TR><TD CLASS="f"><A HREF="#0">XMLNodeActionManager (IStructuredModel, Viewer): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">reformat (Node, boolean): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/22)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR><TD CLASS="f"><A HREF="#3">setModel (IStructuredModel): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">setModelQuery (ModelQuery): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.ui.internal.contentoutline;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.jface.viewers.Viewer;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.wst.sse.core.internal.format.IStructuredFormatProcessor;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQuery;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.wst.xml.core.internal.modelquery.ModelQueryUtil;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.wst.xml.core.internal.provisional.format.FormatProcessorXML;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.wst.xml.ui.internal.actions.AbstractNodeActionManager;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.w3c.dom.Node;</TD></TR><TR><TD CLASS="l"><A NAME="0">23</A></TD><TD> </TD></TR><TR><TD CLASS="l">24</TD><TD> </TD></TR><TR><TD CLASS="l">25</TD><TD>public class XMLNodeActionManager extends AbstractNodeActionManager {</TD></TR><TR><TD CLASS="l">26</TD><TD>        public XMLNodeActionManager(IStructuredModel model, Viewer viewer) {</TD></TR><TR CLASS="z"><TD CLASS="l">27</TD><TD>                super(model, ModelQueryUtil.getModelQuery(model), viewer);</TD></TR><TR CLASS="z"><TD CLASS="l">28</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="2">29</A></TD><TD> </TD></TR><TR><TD CLASS="l">30</TD><TD>        public void reformat(Node newElement, boolean deep) {</TD></TR><TR><TD CLASS="l">31</TD><TD>                try {</TD></TR><TR><TD CLASS="l">32</TD><TD>                        // tell the model that we are about to make a big model change</TD></TR><TR CLASS="z"><TD CLASS="l">33</TD><TD>                        fModel.aboutToChangeModel();</TD></TR><TR><TD CLASS="l">34</TD><TD> </TD></TR><TR><TD CLASS="l">35</TD><TD>                        // format selected node</TD></TR><TR CLASS="z"><TD CLASS="l">36</TD><TD>                        IStructuredFormatProcessor formatProcessor = new FormatProcessorXML();</TD></TR><TR CLASS="z"><TD CLASS="l">37</TD><TD>                        formatProcessor.formatNode(newElement);</TD></TR><TR><TD CLASS="l">38</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">39</TD><TD>                finally {</TD></TR><TR><TD CLASS="l">40</TD><TD>                        // tell the model that we are done with the big model change</TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>                        fModel.changedModel();</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">42</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">43</TD><TD>        }</TD></TR><TR><TD CLASS="l">44</TD><TD> </TD></TR><TR><TD CLASS="l">45</TD><TD>        public void setModel(IStructuredModel newModel) {</TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>                fModel = newModel;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">47</A></TD><TD>                setModelQuery(ModelQueryUtil.getModelQuery(newModel));</TD></TR><TR CLASS="z"><TD CLASS="l">48</TD><TD>        }</TD></TR><TR><TD CLASS="l">49</TD><TD> </TD></TR><TR><TD CLASS="l">50</TD><TD>        protected void setModelQuery(ModelQuery newModelQuery) {</TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>                modelQuery = newModelQuery;</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>        }</TD></TR><TR><TD CLASS="l">53</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="34.html">org.eclipse.wst.xml.ui.internal.contentoutline</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1a9.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1a9.html
deleted file mode 100644
index e8d8e8f..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1a9.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="35.html">org.eclipse.wst.xml.ui.internal.correction</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">CorrectionAssistantProviderXML.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>CorrectionAssistantProviderXML.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/46)</TD><TD CLASS="h">0%   (0/14)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">CorrectionAssistantProviderXML</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/46)</TD><TD CLASS="h">0%   (0/14)</TD></TR><TR><TD CLASS="f"><A HREF="#0">CorrectionAssistantProviderXML (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">getCorrectionAssistant (ISourceViewer): IContentAssistant</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/43)</TD><TD CLASS="h">0%   (0/13)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2005, 2007 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.ui.internal.correction;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.jface.text.contentassist.ContentAssistant;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.jface.text.contentassist.IContentAssistProcessor;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.jface.text.contentassist.IContentAssistant;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.jface.text.source.ISourceViewer;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.wst.sse.ui.internal.correction.CorrectionAssistantProvider;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.wst.xml.core.text.IXMLPartitions;</TD></TR><TR><TD CLASS="l">21</TD><TD> </TD></TR><TR><TD CLASS="l">22</TD><TD>/**</TD></TR><TR><TD CLASS="l">23</TD><TD> * Correction assistant for XML</TD></TR><TR><TD CLASS="l"><A NAME="0">24</A></TD><TD> * </TD></TR><TR><TD CLASS="l">25</TD><TD> * @deprecated since 2.0 RC0 Use</TD></TR><TR><TD CLASS="l">26</TD><TD> *             org.eclipse.jface.text.quickassist.IQuickAssistProcessor;</TD></TR><TR><TD CLASS="l"><A NAME="2">27</A></TD><TD> */</TD></TR><TR CLASS="z"><TD CLASS="l">28</TD><TD>public class CorrectionAssistantProviderXML extends CorrectionAssistantProvider {</TD></TR><TR><TD CLASS="l">29</TD><TD> </TD></TR><TR><TD CLASS="l">30</TD><TD>        public IContentAssistant getCorrectionAssistant(ISourceViewer sourceViewer) {</TD></TR><TR CLASS="z"><TD CLASS="l">31</TD><TD>                IContentAssistant ca = null;</TD></TR><TR><TD CLASS="l">32</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">33</TD><TD>                if (sourceViewer != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">34</TD><TD>                        ContentAssistant assistant = new ContentAssistant();</TD></TR><TR><TD CLASS="l">35</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">36</TD><TD>                        if (sourceViewer != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">37</TD><TD>                                IContentAssistProcessor correctionProcessor = new CorrectionProcessorXML(sourceViewer);</TD></TR><TR CLASS="z"><TD CLASS="l">38</TD><TD>                                assistant.setContentAssistProcessor(correctionProcessor, IXMLPartitions.XML_DEFAULT);</TD></TR><TR CLASS="z"><TD CLASS="l">39</TD><TD>                                assistant.setContentAssistProcessor(correctionProcessor, IXMLPartitions.XML_CDATA);</TD></TR><TR CLASS="z"><TD CLASS="l">40</TD><TD>                                assistant.setContentAssistProcessor(correctionProcessor, IXMLPartitions.XML_COMMENT);</TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>                                assistant.setContentAssistProcessor(correctionProcessor, IXMLPartitions.XML_DECLARATION);</TD></TR><TR CLASS="z"><TD CLASS="l">42</TD><TD>                                assistant.setContentAssistProcessor(correctionProcessor, IXMLPartitions.XML_PI);</TD></TR><TR CLASS="z"><TD CLASS="l">43</TD><TD>                                assistant.setContentAssistProcessor(correctionProcessor, IXMLPartitions.DTD_SUBSET);</TD></TR><TR><TD CLASS="l">44</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">45</TD><TD>                        ca = assistant;</TD></TR><TR><TD CLASS="l">46</TD><TD>                }</TD></TR><TR><TD CLASS="l">47</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">48</TD><TD>                return ca;</TD></TR><TR><TD CLASS="l">49</TD><TD>        }</TD></TR><TR><TD CLASS="l">50</TD><TD> </TD></TR><TR><TD CLASS="l">51</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="35.html">org.eclipse.wst.xml.ui.internal.correction</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1aa.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1aa.html
deleted file mode 100644
index 8bb9cd5..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1aa.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="35.html">org.eclipse.wst.xml.ui.internal.correction</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">CorrectionProcessorXML.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>CorrectionProcessorXML.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/26)</TD><TD CLASS="h">0%   (0/8)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">CorrectionProcessorXML</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/26)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR><TD CLASS="f"><A HREF="#0">CorrectionProcessorXML (ISourceViewer): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">getQuickAssistProcessor (): IQuickAssistProcessor</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#3">getQuickFixProcessor (): IQuickFixProcessor</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/3)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2007 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.ui.internal.correction;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.jface.text.source.ISourceViewer;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.wst.sse.ui.internal.correction.IQuickAssistProcessor;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.wst.sse.ui.internal.correction.IQuickFixProcessor;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.wst.sse.ui.internal.correction.StructuredCorrectionProcessor;</TD></TR><TR><TD CLASS="l">19</TD><TD> </TD></TR><TR><TD CLASS="l">20</TD><TD>/**</TD></TR><TR><TD CLASS="l">21</TD><TD> * @deprecated since 2.0 RC0 Use</TD></TR><TR><TD CLASS="l">22</TD><TD> *             org.eclipse.jface.text.quickassist.IQuickAssistProcessor;</TD></TR><TR><TD CLASS="l">23</TD><TD> */</TD></TR><TR><TD CLASS="l">24</TD><TD>public class CorrectionProcessorXML extends StructuredCorrectionProcessor {</TD></TR><TR><TD CLASS="l"><A NAME="0">25</A></TD><TD>        protected IQuickAssistProcessor fQuickAssistProcessor;</TD></TR><TR><TD CLASS="l">26</TD><TD>        protected IQuickFixProcessor fQuickFixProcessor;</TD></TR><TR><TD CLASS="l">27</TD><TD> </TD></TR><TR><TD CLASS="l">28</TD><TD>        public CorrectionProcessorXML(ISourceViewer sourceViewer) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">29</A></TD><TD>                super(sourceViewer);</TD></TR><TR CLASS="z"><TD CLASS="l">30</TD><TD>        }</TD></TR><TR><TD CLASS="l">31</TD><TD> </TD></TR><TR><TD CLASS="l">32</TD><TD>        protected IQuickAssistProcessor getQuickAssistProcessor() {</TD></TR><TR CLASS="z"><TD CLASS="l">33</TD><TD>                if (fQuickAssistProcessor == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">34</TD><TD>                        fQuickAssistProcessor = new QuickAssistProcessorXML();</TD></TR><TR><TD CLASS="l">35</TD><TD>                }</TD></TR><TR><TD CLASS="l">36</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">37</A></TD><TD>                return fQuickAssistProcessor;</TD></TR><TR><TD CLASS="l">38</TD><TD>        }</TD></TR><TR><TD CLASS="l">39</TD><TD> </TD></TR><TR><TD CLASS="l">40</TD><TD>        protected IQuickFixProcessor getQuickFixProcessor() {</TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>                if (fQuickFixProcessor == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">42</TD><TD>                        fQuickFixProcessor = new QuickFixProcessorXML();</TD></TR><TR><TD CLASS="l">43</TD><TD>                }</TD></TR><TR><TD CLASS="l">44</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">45</TD><TD>                return fQuickFixProcessor;</TD></TR><TR><TD CLASS="l">46</TD><TD>        }</TD></TR><TR><TD CLASS="l">47</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="35.html">org.eclipse.wst.xml.ui.internal.correction</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1ab.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1ab.html
deleted file mode 100644
index bb01356..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1ab.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="35.html">org.eclipse.wst.xml.ui.internal.correction</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">InsertRequiredAttrsQuickAssistProposal.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>InsertRequiredAttrsQuickAssistProposal.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/134)</TD><TD CLASS="h">0%   (0/38)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">InsertRequiredAttrsQuickAssistProposal</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/134)</TD><TD CLASS="h">0%   (0/38)</TD></TR><TR><TD CLASS="f"><A HREF="#0">InsertRequiredAttrsQuickAssistProposal (List): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">apply (IDocument): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#3">apply (ITextViewer, char, int, int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/111)</TD><TD CLASS="h">0%   (0/26)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">getAdditionalProposalInfo (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#5">getContextInformation (): IContextInformation</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">getDisplayString (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#7">getImage (): Image</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">getSelection (IDocument): Point</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#9">selected (ITextViewer, boolean): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">unselected (ITextViewer): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#b">validate (IDocument, int, DocumentEvent): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.ui.internal.correction;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.util.List;</TD></TR><TR><TD CLASS="l">16</TD><TD> </TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.jface.text.BadLocationException;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.jface.text.DocumentEvent;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.jface.text.IDocument;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.jface.text.ITextViewer;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.jface.text.contentassist.ICompletionProposal;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.jface.text.contentassist.ICompletionProposalExtension2;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.jface.text.contentassist.IContextInformation;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.swt.graphics.Image;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.swt.graphics.Point;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.text.edits.InsertEdit;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.text.edits.MultiTextEdit;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;</TD></TR><TR><TD CLASS="l">30</TD><TD>import org.eclipse.wst.sse.ui.internal.contentassist.ContentAssistUtils;</TD></TR><TR><TD CLASS="l">31</TD><TD>import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;</TD></TR><TR><TD CLASS="l">32</TD><TD>import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;</TD></TR><TR><TD CLASS="l">33</TD><TD>import org.eclipse.wst.xml.core.internal.regions.DOMRegionContext;</TD></TR><TR><TD CLASS="l">34</TD><TD>import org.eclipse.wst.xml.ui.internal.Logger;</TD></TR><TR><TD CLASS="l">35</TD><TD>import org.eclipse.wst.xml.ui.internal.XMLUIMessages;</TD></TR><TR><TD CLASS="l">36</TD><TD>import org.eclipse.wst.xml.ui.internal.editor.XMLEditorPluginImageHelper;</TD></TR><TR><TD CLASS="l">37</TD><TD>import org.eclipse.wst.xml.ui.internal.editor.XMLEditorPluginImages;</TD></TR><TR><TD CLASS="l">38</TD><TD> </TD></TR><TR><TD CLASS="l">39</TD><TD>public class InsertRequiredAttrsQuickAssistProposal implements ICompletionProposal, ICompletionProposalExtension2 {</TD></TR><TR><TD CLASS="l">40</TD><TD>        private final List fRequiredAttrs;</TD></TR><TR><TD CLASS="l"><A NAME="0">41</A></TD><TD> </TD></TR><TR><TD CLASS="l">42</TD><TD>        /**</TD></TR><TR><TD CLASS="l">43</TD><TD>         * @param requiredAttrs</TD></TR><TR><TD CLASS="l">44</TD><TD>         */</TD></TR><TR CLASS="z"><TD CLASS="l">45</TD><TD>        public InsertRequiredAttrsQuickAssistProposal(List requiredAttrs) {</TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>                fRequiredAttrs = requiredAttrs;</TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>        }</TD></TR><TR><TD CLASS="l">48</TD><TD> </TD></TR><TR><TD CLASS="l">49</TD><TD>        /*</TD></TR><TR><TD CLASS="l">50</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l">51</TD><TD>         * </TD></TR><TR><TD CLASS="l"><A NAME="2">52</A></TD><TD>         * @see org.eclipse.jface.text.contentassist.ICompletionProposal#apply(org.eclipse.jface.text.IDocument)</TD></TR><TR><TD CLASS="l">53</TD><TD>         */</TD></TR><TR><TD CLASS="l">54</TD><TD>        public void apply(IDocument document) {</TD></TR><TR><TD CLASS="l">55</TD><TD>                // not implemented?</TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>        }</TD></TR><TR><TD CLASS="l">57</TD><TD> </TD></TR><TR><TD CLASS="l">58</TD><TD>        /*</TD></TR><TR><TD CLASS="l">59</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l">60</TD><TD>         * </TD></TR><TR><TD CLASS="l"><A NAME="3">61</A></TD><TD>         * @see org.eclipse.jface.text.contentassist.ICompletionProposalExtension2#apply(org.eclipse.jface.text.ITextViewer,</TD></TR><TR><TD CLASS="l">62</TD><TD>         *      char, int, int)</TD></TR><TR><TD CLASS="l">63</TD><TD>         */</TD></TR><TR><TD CLASS="l">64</TD><TD>        public void apply(ITextViewer viewer, char trigger, int stateMask, int offset) {</TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>                IDOMNode node = (IDOMNode) ContentAssistUtils.getNodeAt(viewer, offset);</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                IStructuredDocumentRegion startStructuredDocumentRegion = node.getStartStructuredDocumentRegion();</TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>                int index = startStructuredDocumentRegion.getEndOffset();</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>                ITextRegion lastRegion = startStructuredDocumentRegion.getLastRegion();</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                if (lastRegion.getType() == DOMRegionContext.XML_TAG_CLOSE) {</TD></TR><TR CLASS="z"><TD CLASS="l">70</TD><TD>                        index--;</TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>                        lastRegion = startStructuredDocumentRegion.getRegionAtCharacterOffset(index - 1);</TD></TR><TR><TD CLASS="l">72</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">73</TD><TD>                else if (lastRegion.getType() == DOMRegionContext.XML_EMPTY_TAG_CLOSE) {</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>                        index = index - 2;</TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>                        lastRegion = startStructuredDocumentRegion.getRegionAtCharacterOffset(index - 1);</TD></TR><TR><TD CLASS="l">76</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>                MultiTextEdit multiTextEdit = new MultiTextEdit();</TD></TR><TR><TD CLASS="l">78</TD><TD>                try {</TD></TR><TR CLASS="z"><TD CLASS="l">79</TD><TD>                        for (int i = 0; i &lt; fRequiredAttrs.size(); i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">80</TD><TD>                                CMAttributeDeclaration attrDecl = (CMAttributeDeclaration) fRequiredAttrs.get(i);</TD></TR><TR CLASS="z"><TD CLASS="l">81</TD><TD>                                String requiredAttributeName = attrDecl.getAttrName();</TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>                                String defaultValue = attrDecl.getDefaultValue();</TD></TR><TR CLASS="z"><TD CLASS="l">83</TD><TD>                                if (defaultValue == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">84</TD><TD>                                        defaultValue = &#34;&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">85</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                                String nameAndDefaultValue = &#34; &#34;; //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>                                if ((i == 0) &amp;&amp; (lastRegion.getLength() &gt; lastRegion.getTextLength())) {</TD></TR><TR CLASS="z"><TD CLASS="l">88</TD><TD>                                        nameAndDefaultValue = &#34;&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">89</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">90</TD><TD>                                nameAndDefaultValue += requiredAttributeName + &#34;=\&#34;&#34; + defaultValue + &#34;\&#34;&#34;; //$NON-NLS-1$//$NON-NLS-2$</TD></TR><TR CLASS="z"><TD CLASS="l">91</TD><TD>                                multiTextEdit.addChild(new InsertEdit(index, nameAndDefaultValue));</TD></TR><TR><TD CLASS="l">92</TD><TD>                                // BUG3381: MultiTextEdit applies all child TextEdit's basing</TD></TR><TR><TD CLASS="l">93</TD><TD>                                // on offsets</TD></TR><TR><TD CLASS="l">94</TD><TD>                                // in the document before the first TextEdit, not after each</TD></TR><TR><TD CLASS="l">95</TD><TD>                                // child TextEdit. Therefore, do not need to advance the</TD></TR><TR><TD CLASS="l">96</TD><TD>                                // index.</TD></TR><TR><TD CLASS="l">97</TD><TD>                                // index += nameAndDefaultValue.length();</TD></TR><TR><TD CLASS="l">98</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">99</TD><TD>                        multiTextEdit.apply(viewer.getDocument());</TD></TR><TR><TD CLASS="l">100</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">101</TD><TD>                catch (BadLocationException e) {</TD></TR><TR><TD CLASS="l">102</TD><TD>                        // log, for now, unless we find there's reasons why we get some</TD></TR><TR><TD CLASS="l">103</TD><TD>                        // here.</TD></TR><TR CLASS="z"><TD CLASS="l">104</TD><TD>                        Logger.log(Logger.INFO, e.getMessage());</TD></TR><TR><TD CLASS="l">105</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">106</TD><TD>        }</TD></TR><TR><TD CLASS="l">107</TD><TD> </TD></TR><TR><TD CLASS="l">108</TD><TD>        /*</TD></TR><TR><TD CLASS="l">109</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="4">110</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">111</TD><TD>         * @see org.eclipse.jface.text.contentassist.ICompletionProposal#getAdditionalProposalInfo()</TD></TR><TR><TD CLASS="l">112</TD><TD>         */</TD></TR><TR><TD CLASS="l">113</TD><TD>        public String getAdditionalProposalInfo() {</TD></TR><TR CLASS="z"><TD CLASS="l">114</TD><TD>                return XMLUIMessages.InsertRequiredAttrsQuickAssistProposal_0;</TD></TR><TR><TD CLASS="l">115</TD><TD>        }</TD></TR><TR><TD CLASS="l">116</TD><TD> </TD></TR><TR><TD CLASS="l">117</TD><TD>        /*</TD></TR><TR><TD CLASS="l">118</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="5">119</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">120</TD><TD>         * @see org.eclipse.jface.text.contentassist.ICompletionProposal#getContextInformation()</TD></TR><TR><TD CLASS="l">121</TD><TD>         */</TD></TR><TR><TD CLASS="l">122</TD><TD>        public IContextInformation getContextInformation() {</TD></TR><TR CLASS="z"><TD CLASS="l">123</TD><TD>                return null;</TD></TR><TR><TD CLASS="l">124</TD><TD>        }</TD></TR><TR><TD CLASS="l">125</TD><TD> </TD></TR><TR><TD CLASS="l">126</TD><TD>        /*</TD></TR><TR><TD CLASS="l">127</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="6">128</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">129</TD><TD>         * @see org.eclipse.jface.text.contentassist.ICompletionProposal#getDisplayString()</TD></TR><TR><TD CLASS="l">130</TD><TD>         */</TD></TR><TR><TD CLASS="l">131</TD><TD>        public String getDisplayString() {</TD></TR><TR CLASS="z"><TD CLASS="l">132</TD><TD>                return XMLUIMessages.InsertRequiredAttrsQuickAssistProposal_1;</TD></TR><TR><TD CLASS="l">133</TD><TD>        }</TD></TR><TR><TD CLASS="l">134</TD><TD> </TD></TR><TR><TD CLASS="l">135</TD><TD>        /*</TD></TR><TR><TD CLASS="l">136</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l">137</TD><TD>         * </TD></TR><TR><TD CLASS="l"><A NAME="7">138</A></TD><TD>         * @see org.eclipse.jface.text.contentassist.ICompletionProposal#getImage()</TD></TR><TR><TD CLASS="l">139</TD><TD>         */</TD></TR><TR><TD CLASS="l">140</TD><TD>        public Image getImage() {</TD></TR><TR><TD CLASS="l">141</TD><TD>                // return JavaPluginImages.get(JavaPluginImages.IMG_CORRECTION_LOCAL);</TD></TR><TR CLASS="z"><TD CLASS="l">142</TD><TD>                return XMLEditorPluginImageHelper.getInstance().getImage(XMLEditorPluginImages.IMG_OBJ_ADD_CORRECTION);</TD></TR><TR><TD CLASS="l">143</TD><TD>        }</TD></TR><TR><TD CLASS="l">144</TD><TD> </TD></TR><TR><TD CLASS="l">145</TD><TD>        /*</TD></TR><TR><TD CLASS="l">146</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="8">147</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">148</TD><TD>         * @see org.eclipse.jface.text.contentassist.ICompletionProposal#getSelection(org.eclipse.jface.text.IDocument)</TD></TR><TR><TD CLASS="l">149</TD><TD>         */</TD></TR><TR><TD CLASS="l">150</TD><TD>        public Point getSelection(IDocument document) {</TD></TR><TR CLASS="z"><TD CLASS="l">151</TD><TD>                return null;</TD></TR><TR><TD CLASS="l">152</TD><TD>        }</TD></TR><TR><TD CLASS="l">153</TD><TD> </TD></TR><TR><TD CLASS="l">154</TD><TD>        /*</TD></TR><TR><TD CLASS="l">155</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l">156</TD><TD>         * </TD></TR><TR><TD CLASS="l"><A NAME="9">157</A></TD><TD>         * @see org.eclipse.jface.text.contentassist.ICompletionProposalExtension2#selected(org.eclipse.jface.text.ITextViewer,</TD></TR><TR><TD CLASS="l">158</TD><TD>         *      boolean)</TD></TR><TR><TD CLASS="l">159</TD><TD>         */</TD></TR><TR><TD CLASS="l">160</TD><TD>        public void selected(ITextViewer viewer, boolean smartToggle) {</TD></TR><TR CLASS="z"><TD CLASS="l">161</TD><TD>        }</TD></TR><TR><TD CLASS="l">162</TD><TD> </TD></TR><TR><TD CLASS="l">163</TD><TD>        /*</TD></TR><TR><TD CLASS="l">164</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="a">165</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">166</TD><TD>         * @see org.eclipse.jface.text.contentassist.ICompletionProposalExtension2#unselected(org.eclipse.jface.text.ITextViewer)</TD></TR><TR><TD CLASS="l">167</TD><TD>         */</TD></TR><TR><TD CLASS="l">168</TD><TD>        public void unselected(ITextViewer viewer) {</TD></TR><TR CLASS="z"><TD CLASS="l">169</TD><TD>        }</TD></TR><TR><TD CLASS="l">170</TD><TD> </TD></TR><TR><TD CLASS="l">171</TD><TD>        /*</TD></TR><TR><TD CLASS="l">172</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l">173</TD><TD>         * </TD></TR><TR><TD CLASS="l"><A NAME="b">174</A></TD><TD>         * @see org.eclipse.jface.text.contentassist.ICompletionProposalExtension2#validate(org.eclipse.jface.text.IDocument,</TD></TR><TR><TD CLASS="l">175</TD><TD>         *      int, org.eclipse.jface.text.DocumentEvent)</TD></TR><TR><TD CLASS="l">176</TD><TD>         */</TD></TR><TR><TD CLASS="l">177</TD><TD>        public boolean validate(IDocument document, int offset, DocumentEvent event) {</TD></TR><TR CLASS="z"><TD CLASS="l">178</TD><TD>                return false;</TD></TR><TR><TD CLASS="l">179</TD><TD>        }</TD></TR><TR><TD CLASS="l">180</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="35.html">org.eclipse.wst.xml.ui.internal.correction</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1ac.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1ac.html
deleted file mode 100644
index 6f2e705..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1ac.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="35.html">org.eclipse.wst.xml.ui.internal.correction</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">QuickAssistProcessorXML.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>QuickAssistProcessorXML.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/310)</TD><TD CLASS="h">0%   (0/72)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">QuickAssistProcessorXML</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/310)</TD><TD CLASS="h">0%   (0/72)</TD></TR><TR><TD CLASS="f"><A HREF="#0">QuickAssistProcessorXML (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">canAssist (StructuredTextViewer, int): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#3">getInsertRequiredAttrs (ArrayList, StructuredTextViewer, int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/102)</TD><TD CLASS="h">0%   (0/24)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">getLocalRenameQuickAssistProposal (ArrayList, StructuredTextViewer, int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/72)</TD><TD CLASS="h">0%   (0/14)</TD></TR><TR><TD CLASS="f"><A HREF="#5">getModelQuery (Node): ModelQuery</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">getProposals (StructuredTextViewer, int): ICompletionProposal []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/26)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#7">getRequiredAttrs (Node): List</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/79)</TD><TD CLASS="h">0%   (0/20)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">getSurroundWithNewElementQuickAssistProposal (ArrayList, StructuredTextViewer...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/14)</TD><TD CLASS="h">0%   (0/4)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2009 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.ui.internal.correction;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.util.ArrayList;</TD></TR><TR><TD CLASS="l">16</TD><TD>import java.util.Iterator;</TD></TR><TR><TD CLASS="l">17</TD><TD>import java.util.List;</TD></TR><TR><TD CLASS="l">18</TD><TD> </TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.core.runtime.CoreException;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.jface.text.contentassist.ICompletionProposal;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.wst.sse.ui.internal.StructuredTextViewer;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.wst.sse.ui.internal.contentassist.ContentAssistUtils;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.wst.sse.ui.internal.correction.IQuickAssistProcessor;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;</TD></TR><TR><TD CLASS="l">30</TD><TD>import org.eclipse.wst.xml.core.internal.contentmodel.basic.CMNamedNodeMapImpl;</TD></TR><TR><TD CLASS="l">31</TD><TD>import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQuery;</TD></TR><TR><TD CLASS="l">32</TD><TD>import org.eclipse.wst.xml.core.internal.modelquery.ModelQueryUtil;</TD></TR><TR><TD CLASS="l">33</TD><TD>import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;</TD></TR><TR><TD CLASS="l">34</TD><TD>import org.eclipse.wst.xml.core.internal.regions.DOMRegionContext;</TD></TR><TR><TD CLASS="l">35</TD><TD>import org.w3c.dom.Document;</TD></TR><TR><TD CLASS="l">36</TD><TD>import org.w3c.dom.Element;</TD></TR><TR><TD CLASS="l">37</TD><TD>import org.w3c.dom.NamedNodeMap;</TD></TR><TR><TD CLASS="l">38</TD><TD>import org.w3c.dom.Node;</TD></TR><TR><TD CLASS="l">39</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="0">40</A></TD><TD>/**</TD></TR><TR><TD CLASS="l">41</TD><TD> * @deprecated since 2.0 RC0 Use</TD></TR><TR><TD CLASS="l">42</TD><TD> *             org.eclipse.jface.text.quickassist.IQuickAssistProcessor and XMLQuickAssistProcessor</TD></TR><TR><TD CLASS="l">43</TD><TD> */</TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>public class QuickAssistProcessorXML implements IQuickAssistProcessor {</TD></TR><TR><TD CLASS="l">45</TD><TD>        /*</TD></TR><TR><TD CLASS="l">46</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l">47</TD><TD>         * </TD></TR><TR><TD CLASS="l"><A NAME="2">48</A></TD><TD>         * @see org.eclipse.wst.sse.ui.correction.IQuickAssistProcessor#canAssist(org.eclipse.wst.sse.core.text.IStructuredDocument,</TD></TR><TR><TD CLASS="l">49</TD><TD>         *      int)</TD></TR><TR><TD CLASS="l">50</TD><TD>         */</TD></TR><TR><TD CLASS="l">51</TD><TD>        public boolean canAssist(StructuredTextViewer viewer, int offset) {</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                return true;</TD></TR><TR><TD CLASS="l">53</TD><TD>        }</TD></TR><TR><TD CLASS="l">54</TD><TD> </TD></TR><TR><TD CLASS="l">55</TD><TD>        /**</TD></TR><TR><TD CLASS="l">56</TD><TD>         * @param proposals</TD></TR><TR><TD CLASS="l"><A NAME="3">57</A></TD><TD>         * @param viewer</TD></TR><TR><TD CLASS="l">58</TD><TD>         * @param offset</TD></TR><TR><TD CLASS="l">59</TD><TD>         */</TD></TR><TR><TD CLASS="l">60</TD><TD>        protected void getInsertRequiredAttrs(ArrayList proposals, StructuredTextViewer viewer, int offset) {</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                IDOMNode node = (IDOMNode) ContentAssistUtils.getNodeAt(viewer, offset);</TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>                if ((node != null) &amp;&amp; (node.getNodeType() == Node.ELEMENT_NODE)) {</TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>                        IStructuredDocumentRegion startStructuredDocumentRegion = node.getStartStructuredDocumentRegion();</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                        if ((startStructuredDocumentRegion != null) &amp;&amp; startStructuredDocumentRegion.containsOffset(offset)) {</TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>                                IDOMNode cursorNode = (IDOMNode) ContentAssistUtils.getNodeAt(viewer, offset);</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                                List requiredAttrs = getRequiredAttrs(cursorNode);</TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>                                if (requiredAttrs.size() &gt; 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>                                        NamedNodeMap currentAttrs = node.getAttributes();</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                                        List insertAttrs = new ArrayList();</TD></TR><TR CLASS="z"><TD CLASS="l">70</TD><TD>                                        if (currentAttrs.getLength() == 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>                                                insertAttrs.addAll(requiredAttrs);</TD></TR><TR><TD CLASS="l">72</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">73</TD><TD>                                        else {</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>                                                for (int i = 0; i &lt; requiredAttrs.size(); i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>                                                        String requiredAttrName = ((CMAttributeDeclaration) requiredAttrs.get(i)).getAttrName();</TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>                                                        boolean found = false;</TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>                                                        for (int j = 0; j &lt; currentAttrs.getLength(); j++) {</TD></TR><TR CLASS="z"><TD CLASS="l">78</TD><TD>                                                                String currentAttrName = currentAttrs.item(j).getNodeName();</TD></TR><TR CLASS="z"><TD CLASS="l">79</TD><TD>                                                                if (requiredAttrName.compareToIgnoreCase(currentAttrName) == 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">80</TD><TD>                                                                        found = true;</TD></TR><TR CLASS="z"><TD CLASS="l">81</TD><TD>                                                                        break;</TD></TR><TR><TD CLASS="l">82</TD><TD>                                                                }</TD></TR><TR><TD CLASS="l">83</TD><TD>                                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">84</TD><TD>                                                        if (!found) {</TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>                                                                insertAttrs.add(requiredAttrs.get(i));</TD></TR><TR><TD CLASS="l">86</TD><TD>                                                        }</TD></TR><TR><TD CLASS="l">87</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">88</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">89</TD><TD>                                        if (insertAttrs.size() &gt; 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">90</TD><TD>                                                proposals.add(new InsertRequiredAttrsQuickAssistProposal(insertAttrs));</TD></TR><TR><TD CLASS="l">91</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">92</TD><TD>                                }</TD></TR><TR><TD CLASS="l">93</TD><TD>                        }</TD></TR><TR><TD CLASS="l">94</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">95</TD><TD>        }</TD></TR><TR><TD CLASS="l">96</TD><TD> </TD></TR><TR><TD CLASS="l">97</TD><TD>        /**</TD></TR><TR><TD CLASS="l">98</TD><TD>         * @param proposals</TD></TR><TR><TD CLASS="l"><A NAME="4">99</A></TD><TD>         * @param viewer</TD></TR><TR><TD CLASS="l">100</TD><TD>         * @param offset</TD></TR><TR><TD CLASS="l">101</TD><TD>         */</TD></TR><TR><TD CLASS="l">102</TD><TD>        protected void getLocalRenameQuickAssistProposal(ArrayList proposals, StructuredTextViewer viewer, int offset) {</TD></TR><TR CLASS="z"><TD CLASS="l">103</TD><TD>                IDOMNode node = (IDOMNode) ContentAssistUtils.getNodeAt(viewer, offset);</TD></TR><TR CLASS="z"><TD CLASS="l">104</TD><TD>                IStructuredDocumentRegion startStructuredDocumentRegion = node == null ? null : node.getStartStructuredDocumentRegion();</TD></TR><TR CLASS="z"><TD CLASS="l">105</TD><TD>                IStructuredDocumentRegion endStructuredDocumentRegion = node == null ? null : node.getEndStructuredDocumentRegion();</TD></TR><TR><TD CLASS="l">106</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">107</TD><TD>                ITextRegion region = null;</TD></TR><TR CLASS="z"><TD CLASS="l">108</TD><TD>                int regionTextEndOffset = 0;</TD></TR><TR CLASS="z"><TD CLASS="l">109</TD><TD>                if ((startStructuredDocumentRegion != null) &amp;&amp; startStructuredDocumentRegion.containsOffset(offset)) {</TD></TR><TR CLASS="z"><TD CLASS="l">110</TD><TD>                        region = startStructuredDocumentRegion.getRegionAtCharacterOffset(offset);</TD></TR><TR CLASS="z"><TD CLASS="l">111</TD><TD>                        regionTextEndOffset = startStructuredDocumentRegion.getTextEndOffset(region);</TD></TR><TR><TD CLASS="l">112</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">113</TD><TD>                else if ((endStructuredDocumentRegion != null) &amp;&amp; endStructuredDocumentRegion.containsOffset(offset)) {</TD></TR><TR CLASS="z"><TD CLASS="l">114</TD><TD>                        region = endStructuredDocumentRegion.getRegionAtCharacterOffset(offset);</TD></TR><TR CLASS="z"><TD CLASS="l">115</TD><TD>                        regionTextEndOffset = endStructuredDocumentRegion.getTextEndOffset(region);</TD></TR><TR><TD CLASS="l">116</TD><TD>                }</TD></TR><TR><TD CLASS="l">117</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">118</TD><TD>                if ((region != null) &amp;&amp; ((region.getType() == DOMRegionContext.XML_TAG_NAME) || (region.getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_NAME)) &amp;&amp; (offset &lt;= regionTextEndOffset)) {</TD></TR><TR CLASS="z"><TD CLASS="l">119</TD><TD>                        proposals.add(new RenameInFileQuickAssistProposal());</TD></TR><TR><TD CLASS="l"><A NAME="5">120</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">121</TD><TD>        }</TD></TR><TR><TD CLASS="l">122</TD><TD> </TD></TR><TR><TD CLASS="l">123</TD><TD>        protected ModelQuery getModelQuery(Node node) {</TD></TR><TR CLASS="z"><TD CLASS="l">124</TD><TD>                if (node.getNodeType() == Node.DOCUMENT_NODE) {</TD></TR><TR CLASS="z"><TD CLASS="l">125</TD><TD>                        return ModelQueryUtil.getModelQuery((Document) node);</TD></TR><TR><TD CLASS="l">126</TD><TD>                }</TD></TR><TR><TD CLASS="l">127</TD><TD>                else {</TD></TR><TR CLASS="z"><TD CLASS="l">128</TD><TD>                        return ModelQueryUtil.getModelQuery(node.getOwnerDocument());</TD></TR><TR><TD CLASS="l">129</TD><TD>                }</TD></TR><TR><TD CLASS="l">130</TD><TD>        }</TD></TR><TR><TD CLASS="l">131</TD><TD> </TD></TR><TR><TD CLASS="l">132</TD><TD>        /*</TD></TR><TR><TD CLASS="l">133</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l">134</TD><TD>         * </TD></TR><TR><TD CLASS="l"><A NAME="6">135</A></TD><TD>         * @see org.eclipse.wst.sse.ui.correction.IQuickAssistProcessor#getProposals(org.eclipse.wst.sse.core.text.IStructuredDocument,</TD></TR><TR><TD CLASS="l">136</TD><TD>         *      int)</TD></TR><TR><TD CLASS="l">137</TD><TD>         */</TD></TR><TR><TD CLASS="l">138</TD><TD>        public ICompletionProposal[] getProposals(StructuredTextViewer viewer, int offset) throws CoreException {</TD></TR><TR CLASS="z"><TD CLASS="l">139</TD><TD>                ArrayList proposals = new ArrayList();</TD></TR><TR><TD CLASS="l">140</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">141</TD><TD>                getLocalRenameQuickAssistProposal(proposals, viewer, offset);</TD></TR><TR CLASS="z"><TD CLASS="l">142</TD><TD>                getSurroundWithNewElementQuickAssistProposal(proposals, viewer, offset);</TD></TR><TR CLASS="z"><TD CLASS="l">143</TD><TD>                getInsertRequiredAttrs(proposals, viewer, offset);</TD></TR><TR><TD CLASS="l">144</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="7">145</A></TD><TD>                return (ICompletionProposal[]) proposals.toArray(new ICompletionProposal[proposals.size()]);</TD></TR><TR><TD CLASS="l">146</TD><TD>        }</TD></TR><TR><TD CLASS="l">147</TD><TD> </TD></TR><TR><TD CLASS="l">148</TD><TD>        protected List getRequiredAttrs(Node node) {</TD></TR><TR CLASS="z"><TD CLASS="l">149</TD><TD>                List result = new ArrayList();</TD></TR><TR><TD CLASS="l">150</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">151</TD><TD>                ModelQuery modelQuery = getModelQuery(node);</TD></TR><TR CLASS="z"><TD CLASS="l">152</TD><TD>                if (modelQuery != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">153</TD><TD>                        CMElementDeclaration elementDecl = modelQuery.getCMElementDeclaration((Element) node);</TD></TR><TR CLASS="z"><TD CLASS="l">154</TD><TD>                        if (elementDecl != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">155</TD><TD>                                CMNamedNodeMap attrMap = elementDecl.getAttributes();</TD></TR><TR><TD CLASS="l">156</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">157</TD><TD>                                CMNamedNodeMapImpl allAttributes = new CMNamedNodeMapImpl(attrMap);</TD></TR><TR CLASS="z"><TD CLASS="l">158</TD><TD>                                List nodes = ModelQueryUtil.getModelQuery(node.getOwnerDocument()).getAvailableContent((Element)node, elementDecl, ModelQuery.INCLUDE_ATTRIBUTES);</TD></TR><TR CLASS="z"><TD CLASS="l">159</TD><TD>                                for (int k = 0; k &lt; nodes.size(); k++) {</TD></TR><TR CLASS="z"><TD CLASS="l">160</TD><TD>                                        CMNode cmnode = (CMNode) nodes.get(k);</TD></TR><TR CLASS="z"><TD CLASS="l">161</TD><TD>                                        if (cmnode.getNodeType() == CMNode.ATTRIBUTE_DECLARATION) {</TD></TR><TR CLASS="z"><TD CLASS="l">162</TD><TD>                                                allAttributes.put(cmnode);</TD></TR><TR><TD CLASS="l">163</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">164</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">165</TD><TD>                                attrMap = allAttributes;</TD></TR><TR><TD CLASS="l">166</TD><TD>                                </TD></TR><TR CLASS="z"><TD CLASS="l">167</TD><TD>                                Iterator it = attrMap.iterator();</TD></TR><TR CLASS="z"><TD CLASS="l">168</TD><TD>                                CMAttributeDeclaration attr = null;</TD></TR><TR CLASS="z"><TD CLASS="l">169</TD><TD>                                while (it.hasNext()) {</TD></TR><TR CLASS="z"><TD CLASS="l">170</TD><TD>                                        attr = (CMAttributeDeclaration) it.next();</TD></TR><TR CLASS="z"><TD CLASS="l">171</TD><TD>                                        if (attr.getUsage() == CMAttributeDeclaration.REQUIRED) {</TD></TR><TR CLASS="z"><TD CLASS="l">172</TD><TD>                                                result.add(attr);</TD></TR><TR><TD CLASS="l">173</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">174</TD><TD>                                }</TD></TR><TR><TD CLASS="l">175</TD><TD>                        }</TD></TR><TR><TD CLASS="l">176</TD><TD>                }</TD></TR><TR><TD CLASS="l">177</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">178</TD><TD>                return result;</TD></TR><TR><TD CLASS="l">179</TD><TD>        }</TD></TR><TR><TD CLASS="l">180</TD><TD> </TD></TR><TR><TD CLASS="l">181</TD><TD>        /**</TD></TR><TR><TD CLASS="l">182</TD><TD>         * @param proposals</TD></TR><TR><TD CLASS="l"><A NAME="8">183</A></TD><TD>         * @param viewer</TD></TR><TR><TD CLASS="l">184</TD><TD>         * @param offset</TD></TR><TR><TD CLASS="l">185</TD><TD>         */</TD></TR><TR><TD CLASS="l">186</TD><TD>        protected void getSurroundWithNewElementQuickAssistProposal(ArrayList proposals, StructuredTextViewer viewer, int offset) {</TD></TR><TR CLASS="z"><TD CLASS="l">187</TD><TD>                IDOMNode node = (IDOMNode) ContentAssistUtils.getNodeAt(viewer, offset);</TD></TR><TR CLASS="z"><TD CLASS="l">188</TD><TD>                if (node != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">189</TD><TD>                        proposals.add(new SurroundWithNewElementQuickAssistProposal());</TD></TR><TR><TD CLASS="l">190</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">191</TD><TD>        }</TD></TR><TR><TD CLASS="l">192</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="35.html">org.eclipse.wst.xml.ui.internal.correction</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1ad.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1ad.html
deleted file mode 100644
index 70e14c7..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1ad.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="35.html">org.eclipse.wst.xml.ui.internal.correction</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">QuickFixProcessorXML.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>QuickFixProcessorXML.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/556)</TD><TD CLASS="h">0%   (0/61)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">QuickFixProcessorXML</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/556)</TD><TD CLASS="h">0%   (0/61)</TD></TR><TR><TD CLASS="f"><A HREF="#0">QuickFixProcessorXML (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">canFix (Annotation): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/17)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR><TD CLASS="f"><A HREF="#3">getImage (): Image</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">getProposals (Annotation): ICompletionProposal []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/532)</TD><TD CLASS="h">0%   (0/52)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2007 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.ui.internal.correction;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.util.ArrayList;</TD></TR><TR><TD CLASS="l">16</TD><TD> </TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.core.runtime.CoreException;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.jface.text.contentassist.CompletionProposal;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.jface.text.contentassist.ICompletionProposal;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.jface.text.source.Annotation;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.swt.graphics.Image;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.wst.sse.ui.internal.correction.IQuickFixProcessor;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.wst.sse.ui.internal.reconcile.TemporaryAnnotation;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.wst.xml.ui.internal.XMLUIMessages;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.wst.xml.ui.internal.editor.XMLEditorPluginImageHelper;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.wst.xml.ui.internal.editor.XMLEditorPluginImages;</TD></TR><TR><TD CLASS="l">27</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="0">28</A></TD><TD>/**</TD></TR><TR><TD CLASS="l">29</TD><TD> * @deprecated since 2.0 RC0 Use</TD></TR><TR><TD CLASS="l">30</TD><TD> *             org.eclipse.jface.text.quickassist.IQuickAssistProcessor;</TD></TR><TR><TD CLASS="l">31</TD><TD> */</TD></TR><TR CLASS="z"><TD CLASS="l">32</TD><TD>public class QuickFixProcessorXML implements IQuickFixProcessor {</TD></TR><TR><TD CLASS="l">33</TD><TD> </TD></TR><TR><TD CLASS="l">34</TD><TD>        /*</TD></TR><TR><TD CLASS="l">35</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="2">36</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">37</TD><TD>         * @see org.eclipse.wst.sse.ui.correction.IQuickFixProcessor#canFix(int)</TD></TR><TR><TD CLASS="l">38</TD><TD>         */</TD></TR><TR><TD CLASS="l">39</TD><TD>        public boolean canFix(Annotation annotation) {</TD></TR><TR CLASS="z"><TD CLASS="l">40</TD><TD>                boolean result = false;</TD></TR><TR><TD CLASS="l">41</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">42</TD><TD>                if (annotation instanceof TemporaryAnnotation) {</TD></TR><TR CLASS="z"><TD CLASS="l">43</TD><TD>                        TemporaryAnnotation tempAnnotation = (TemporaryAnnotation) annotation;</TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>                        int problemID = tempAnnotation.getProblemID();</TD></TR><TR CLASS="z"><TD CLASS="l">45</TD><TD>                        switch (problemID) {</TD></TR><TR><TD CLASS="l">46</TD><TD>                                case ProblemIDsXML.EmptyTag :</TD></TR><TR><TD CLASS="l">47</TD><TD>                                case ProblemIDsXML.MissingEndTag :</TD></TR><TR><TD CLASS="l">48</TD><TD>                                case ProblemIDsXML.AttrsInEndTag :</TD></TR><TR><TD CLASS="l">49</TD><TD>                                case ProblemIDsXML.MissingAttrValue :</TD></TR><TR><TD CLASS="l">50</TD><TD>                                case ProblemIDsXML.NoAttrValue :</TD></TR><TR><TD CLASS="l">51</TD><TD>                                case ProblemIDsXML.SpacesBeforeTagName :</TD></TR><TR><TD CLASS="l">52</TD><TD>                                case ProblemIDsXML.SpacesBeforePI :</TD></TR><TR><TD CLASS="l">53</TD><TD>                                case ProblemIDsXML.NamespaceInPI :</TD></TR><TR><TD CLASS="l">54</TD><TD>                                case ProblemIDsXML.UnknownElement :</TD></TR><TR><TD CLASS="l">55</TD><TD>                                case ProblemIDsXML.UnknownAttr :</TD></TR><TR><TD CLASS="l">56</TD><TD>                                case ProblemIDsXML.InvalidAttrValue :</TD></TR><TR><TD CLASS="l">57</TD><TD>                                case ProblemIDsXML.MissingRequiredAttr :</TD></TR><TR><TD CLASS="l">58</TD><TD>                                case ProblemIDsXML.AttrValueNotQuoted :</TD></TR><TR><TD CLASS="l">59</TD><TD>                                case ProblemIDsXML.MissingClosingBracket :</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                                        result = true;</TD></TR><TR><TD CLASS="l">61</TD><TD>                        }</TD></TR><TR><TD CLASS="l">62</TD><TD>                }</TD></TR><TR><TD CLASS="l">63</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                return result;</TD></TR><TR><TD CLASS="l">65</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="3">66</A></TD><TD> </TD></TR><TR><TD CLASS="l">67</TD><TD>        public Image getImage() {</TD></TR><TR><TD CLASS="l">68</TD><TD>                // return</TD></TR><TR><TD CLASS="l">69</TD><TD>                // JavaPluginImages.get(JavaPluginImages.IMG_CORRECTION_CHANGE);</TD></TR><TR CLASS="z"><TD CLASS="l">70</TD><TD>                return XMLEditorPluginImageHelper.getInstance().getImage(XMLEditorPluginImages.IMG_OBJ_CORRECTION_CHANGE);</TD></TR><TR><TD CLASS="l">71</TD><TD>        }</TD></TR><TR><TD CLASS="l">72</TD><TD> </TD></TR><TR><TD CLASS="l">73</TD><TD>        /*</TD></TR><TR><TD CLASS="l">74</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="4">75</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">76</TD><TD>         * @see org.eclipse.wst.sse.ui.correction.IQuickFixProcessor#getProposals(org.eclipse.wst.sse.ui.internal.reconcile.TemporaryAnnotation)</TD></TR><TR><TD CLASS="l">77</TD><TD>         */</TD></TR><TR><TD CLASS="l">78</TD><TD>        public ICompletionProposal[] getProposals(Annotation annotation) throws CoreException {</TD></TR><TR CLASS="z"><TD CLASS="l">79</TD><TD>                ArrayList proposals = new ArrayList();</TD></TR><TR><TD CLASS="l">80</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">81</TD><TD>                if (annotation instanceof TemporaryAnnotation) {</TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>                        TemporaryAnnotation tempAnnotation = (TemporaryAnnotation) annotation;</TD></TR><TR CLASS="z"><TD CLASS="l">83</TD><TD>                        int problemID = tempAnnotation.getProblemID();</TD></TR><TR CLASS="z"><TD CLASS="l">84</TD><TD>                        switch (problemID) {</TD></TR><TR><TD CLASS="l">85</TD><TD>                                case ProblemIDsXML.EmptyTag :</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                                        proposals.add(new CompletionProposal(&#34;&#34;, tempAnnotation.getPosition().getOffset(), tempAnnotation.getPosition().getLength(), 0, getImage(), XMLUIMessages.QuickFixProcessorXML_0, null, &#34;&#34;)); //$NON-NLS-1$ //$NON-NLS-2$ </TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>                                        break;</TD></TR><TR><TD CLASS="l">88</TD><TD>                                case ProblemIDsXML.MissingEndTag :</TD></TR><TR CLASS="z"><TD CLASS="l">89</TD><TD>                                        String tagName = (String) ((Object[]) tempAnnotation.getAdditionalFixInfo())[0];</TD></TR><TR CLASS="z"><TD CLASS="l">90</TD><TD>                                        String tagClose = (String) ((Object[]) tempAnnotation.getAdditionalFixInfo())[1];</TD></TR><TR CLASS="z"><TD CLASS="l">91</TD><TD>                                        int tagCloseOffset = ((Integer) ((Object[]) tempAnnotation.getAdditionalFixInfo())[2]).intValue();</TD></TR><TR CLASS="z"><TD CLASS="l">92</TD><TD>                                        int startTagEndOffset = ((Integer) ((Object[]) tempAnnotation.getAdditionalFixInfo())[3]).intValue();</TD></TR><TR CLASS="z"><TD CLASS="l">93</TD><TD>                                        int firstChildStartOffset = ((Integer) ((Object[]) tempAnnotation.getAdditionalFixInfo())[4]).intValue();</TD></TR><TR CLASS="z"><TD CLASS="l">94</TD><TD>                                        int endOffset = ((Integer) ((Object[]) tempAnnotation.getAdditionalFixInfo())[5]).intValue();</TD></TR><TR CLASS="z"><TD CLASS="l">95</TD><TD>                                        proposals.add(new CompletionProposal(tagClose, tagCloseOffset, 0, 0, getImage(), XMLUIMessages.QuickFixProcessorXML_1, null, &#34;&#34;)); //$NON-NLS-1$ </TD></TR><TR CLASS="z"><TD CLASS="l">96</TD><TD>                                        proposals.add(new CompletionProposal(&#34;&#34;, tempAnnotation.getPosition().getOffset(), startTagEndOffset - tempAnnotation.getPosition().getOffset(), 0, getImage(), XMLUIMessages.QuickFixProcessorXML_2, null, &#34;&#34;)); //$NON-NLS-1$ //$NON-NLS-2$ </TD></TR><TR CLASS="z"><TD CLASS="l">97</TD><TD>                                        proposals.add(new CompletionProposal(&#34;&lt;/&#34; + tagName + &#34;&gt;&#34;, firstChildStartOffset, 0, 0, getImage(), XMLUIMessages.QuickFixProcessorXML_3, null, &#34;&#34;)); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ </TD></TR><TR CLASS="z"><TD CLASS="l">98</TD><TD>                                        proposals.add(new CompletionProposal(&#34;&lt;/&#34; + tagName + &#34;&gt;&#34;, endOffset, 0, 0, getImage(), XMLUIMessages.QuickFixProcessorXML_4, null, &#34;&#34;)); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ </TD></TR><TR CLASS="z"><TD CLASS="l">99</TD><TD>                                        break;</TD></TR><TR><TD CLASS="l">100</TD><TD>                                case ProblemIDsXML.AttrsInEndTag :</TD></TR><TR CLASS="z"><TD CLASS="l">101</TD><TD>                                        proposals.add(new CompletionProposal(&#34;&#34;, tempAnnotation.getPosition().getOffset(), tempAnnotation.getPosition().getLength(), 0, getImage(), XMLUIMessages.QuickFixProcessorXML_5, null, &#34;&#34;)); //$NON-NLS-1$ //$NON-NLS-2$ </TD></TR><TR CLASS="z"><TD CLASS="l">102</TD><TD>                                        break;</TD></TR><TR><TD CLASS="l">103</TD><TD>                                case ProblemIDsXML.MissingAttrValue :</TD></TR><TR CLASS="z"><TD CLASS="l">104</TD><TD>                                        String defaultAttrValue = (String) ((Object[]) tempAnnotation.getAdditionalFixInfo())[0];</TD></TR><TR CLASS="z"><TD CLASS="l">105</TD><TD>                                        int insertOffset = ((Integer) ((Object[]) tempAnnotation.getAdditionalFixInfo())[1]).intValue();</TD></TR><TR CLASS="z"><TD CLASS="l">106</TD><TD>                                        proposals.add(new CompletionProposal(&#34;\&#34;&#34; + defaultAttrValue + &#34;\&#34;&#34;, tempAnnotation.getPosition().getOffset() + tempAnnotation.getPosition().getLength() + insertOffset, 0, defaultAttrValue.length() + 2, getImage(), XMLUIMessages.QuickFixProcessorXML_6, null, &#34;&#34;)); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ </TD></TR><TR CLASS="z"><TD CLASS="l">107</TD><TD>                                        proposals.add(new CompletionProposal(&#34;&#34;, tempAnnotation.getPosition().getOffset(), tempAnnotation.getPosition().getLength(), 0, getImage(), XMLUIMessages.QuickFixProcessorXML_7, null, &#34;&#34;)); //$NON-NLS-1$ //$NON-NLS-2$ </TD></TR><TR CLASS="z"><TD CLASS="l">108</TD><TD>                                        break;</TD></TR><TR><TD CLASS="l">109</TD><TD>                                case ProblemIDsXML.NoAttrValue :</TD></TR><TR CLASS="z"><TD CLASS="l">110</TD><TD>                                        defaultAttrValue = (String) tempAnnotation.getAdditionalFixInfo();</TD></TR><TR CLASS="z"><TD CLASS="l">111</TD><TD>                                        proposals.add(new CompletionProposal(&#34;=\&#34;&#34; + defaultAttrValue + &#34;\&#34;&#34;, tempAnnotation.getPosition().getOffset() + tempAnnotation.getPosition().getLength(), 0, defaultAttrValue.length() + 3, getImage(), XMLUIMessages.QuickFixProcessorXML_6, null, &#34;&#34;)); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ </TD></TR><TR CLASS="z"><TD CLASS="l">112</TD><TD>                                        proposals.add(new CompletionProposal(&#34;&#34;, tempAnnotation.getPosition().getOffset(), tempAnnotation.getPosition().getLength(), 0, getImage(), XMLUIMessages.QuickFixProcessorXML_7, null, &#34;&#34;)); //$NON-NLS-1$ //$NON-NLS-2$ </TD></TR><TR CLASS="z"><TD CLASS="l">113</TD><TD>                                        break;</TD></TR><TR><TD CLASS="l">114</TD><TD>                                case ProblemIDsXML.SpacesBeforeTagName :</TD></TR><TR CLASS="z"><TD CLASS="l">115</TD><TD>                                        proposals.add(new CompletionProposal(&#34;&#34;, tempAnnotation.getPosition().getOffset(), tempAnnotation.getPosition().getLength(), 0, getImage(), XMLUIMessages.QuickFixProcessorXML_8, null, &#34;&#34;)); //$NON-NLS-1$ //$NON-NLS-2$ </TD></TR><TR CLASS="z"><TD CLASS="l">116</TD><TD>                                        break;</TD></TR><TR><TD CLASS="l">117</TD><TD>                                case ProblemIDsXML.SpacesBeforePI :</TD></TR><TR CLASS="z"><TD CLASS="l">118</TD><TD>                                        proposals.add(new CompletionProposal(&#34;&#34;, tempAnnotation.getPosition().getOffset(), tempAnnotation.getPosition().getLength(), 0, getImage(), XMLUIMessages.QuickFixProcessorXML_9, null, &#34;&#34;)); //$NON-NLS-1$ //$NON-NLS-2$ </TD></TR><TR CLASS="z"><TD CLASS="l">119</TD><TD>                                        break;</TD></TR><TR><TD CLASS="l">120</TD><TD>                                case ProblemIDsXML.NamespaceInPI :</TD></TR><TR CLASS="z"><TD CLASS="l">121</TD><TD>                                        proposals.add(new CompletionProposal(&#34;&#34;, tempAnnotation.getPosition().getOffset(), tempAnnotation.getPosition().getLength(), 0, getImage(), XMLUIMessages.QuickFixProcessorXML_10, null, &#34;&#34;)); //$NON-NLS-1$ //$NON-NLS-2$ </TD></TR><TR CLASS="z"><TD CLASS="l">122</TD><TD>                                        break;</TD></TR><TR><TD CLASS="l">123</TD><TD>                                case ProblemIDsXML.UnknownElement :</TD></TR><TR CLASS="z"><TD CLASS="l">124</TD><TD>                                        proposals.add(new RemoveUnknownElementQuickFixProposal(tempAnnotation.getAdditionalFixInfo(), getImage(), XMLUIMessages.QuickFixProcessorXML_11));</TD></TR><TR CLASS="z"><TD CLASS="l">125</TD><TD>                                        proposals.add(new RenameInFileQuickAssistProposal());</TD></TR><TR CLASS="z"><TD CLASS="l">126</TD><TD>                                        break;</TD></TR><TR><TD CLASS="l">127</TD><TD>                                case ProblemIDsXML.UnknownAttr :</TD></TR><TR CLASS="z"><TD CLASS="l">128</TD><TD>                                        proposals.add(new CompletionProposal(&#34;&#34;, tempAnnotation.getPosition().getOffset(), tempAnnotation.getPosition().getLength(), 0, getImage(), XMLUIMessages.QuickFixProcessorXML_7, null, &#34;&#34;)); //$NON-NLS-1$ //$NON-NLS-2$ </TD></TR><TR CLASS="z"><TD CLASS="l">129</TD><TD>                                        proposals.add(new RenameInFileQuickAssistProposal());</TD></TR><TR CLASS="z"><TD CLASS="l">130</TD><TD>                                        break;</TD></TR><TR><TD CLASS="l">131</TD><TD>                                case ProblemIDsXML.InvalidAttrValue :</TD></TR><TR CLASS="z"><TD CLASS="l">132</TD><TD>                                        proposals.add(new CompletionProposal(&#34;&#34;, tempAnnotation.getPosition().getOffset(), tempAnnotation.getPosition().getLength(), 0, getImage(), XMLUIMessages.QuickFixProcessorXML_12, null, &#34;&#34;)); //$NON-NLS-1$ //$NON-NLS-2$ </TD></TR><TR CLASS="z"><TD CLASS="l">133</TD><TD>                                        break;</TD></TR><TR><TD CLASS="l">134</TD><TD>                                case ProblemIDsXML.MissingRequiredAttr :</TD></TR><TR CLASS="z"><TD CLASS="l">135</TD><TD>                                        String requiredAttr = (String) ((Object[]) tempAnnotation.getAdditionalFixInfo())[0];</TD></TR><TR CLASS="z"><TD CLASS="l">136</TD><TD>                                        insertOffset = ((Integer) ((Object[]) tempAnnotation.getAdditionalFixInfo())[1]).intValue();</TD></TR><TR CLASS="z"><TD CLASS="l">137</TD><TD>                                        proposals.add(new CompletionProposal(requiredAttr, tempAnnotation.getPosition().getOffset() + insertOffset, 0, requiredAttr.length(), getImage(), XMLUIMessages.QuickFixProcessorXML_13, null, &#34;&#34;)); //$NON-NLS-1$ </TD></TR><TR CLASS="z"><TD CLASS="l">138</TD><TD>                                        break;</TD></TR><TR><TD CLASS="l">139</TD><TD>                                case ProblemIDsXML.AttrValueNotQuoted :</TD></TR><TR CLASS="z"><TD CLASS="l">140</TD><TD>                                        String attrValue = (String) tempAnnotation.getAdditionalFixInfo();</TD></TR><TR CLASS="z"><TD CLASS="l">141</TD><TD>                                        proposals.add(new CompletionProposal(&#34;\&#34;&#34; + attrValue + &#34;\&#34;&#34;, tempAnnotation.getPosition().getOffset(), tempAnnotation.getPosition().getLength(), attrValue.length() + 2, getImage(), XMLUIMessages.QuickFixProcessorXML_14, null, &#34;&#34;)); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ </TD></TR><TR CLASS="z"><TD CLASS="l">142</TD><TD>                                        break;</TD></TR><TR><TD CLASS="l">143</TD><TD>                                case ProblemIDsXML.MissingClosingBracket :</TD></TR><TR CLASS="z"><TD CLASS="l">144</TD><TD>                                        proposals.add(new CompletionProposal(&#34;&gt;&#34;, tempAnnotation.getPosition().getOffset() + tempAnnotation.getPosition().getLength(), 0, 1, getImage(), XMLUIMessages.QuickFixProcessorXML_15, null, &#34;&#34;)); //$NON-NLS-1$ //$NON-NLS-2$ </TD></TR><TR><TD CLASS="l">145</TD><TD>                                        break;</TD></TR><TR><TD CLASS="l">146</TD><TD>                        }</TD></TR><TR><TD CLASS="l">147</TD><TD>                }</TD></TR><TR><TD CLASS="l">148</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">149</TD><TD>                return (ICompletionProposal[]) proposals.toArray(new ICompletionProposal[proposals.size()]);</TD></TR><TR><TD CLASS="l">150</TD><TD>        }</TD></TR><TR><TD CLASS="l">151</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="35.html">org.eclipse.wst.xml.ui.internal.correction</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1ae.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1ae.html
deleted file mode 100644
index bb2c602..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1ae.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="35.html">org.eclipse.wst.xml.ui.internal.correction</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">RemoveUnknownElementQuickFixProposal.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>RemoveUnknownElementQuickFixProposal.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/127)</TD><TD CLASS="h">0%   (0/34)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">RemoveUnknownElementQuickFixProposal</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/127)</TD><TD CLASS="h">0%   (0/34)</TD></TR><TR><TD CLASS="f"><A HREF="#0">RemoveUnknownElementQuickFixProposal (Object, Image, String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">apply (IDocument): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#3">apply (ITextViewer, char, int, int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/88)</TD><TD CLASS="h">0%   (0/17)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">getAdditionalProposalInfo (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#5">getContextInformation (): IContextInformation</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">getDisplayString (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#7">getImage (): Image</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">getSelection (IDocument): Point</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#9">selected (ITextViewer, boolean): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">unselected (ITextViewer): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#b">validate (IDocument, int, DocumentEvent): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.ui.internal.correction;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.jface.text.BadLocationException;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.jface.text.DocumentEvent;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.jface.text.IDocument;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.jface.text.ITextViewer;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.jface.text.contentassist.ICompletionProposal;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.jface.text.contentassist.ICompletionProposalExtension2;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.jface.text.contentassist.IContextInformation;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.swt.graphics.Image;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.swt.graphics.Point;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.text.edits.DeleteEdit;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.text.edits.MalformedTreeException;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.text.edits.MultiTextEdit;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.wst.xml.ui.internal.Logger;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.wst.xml.ui.internal.XMLUIMessages;</TD></TR><TR><TD CLASS="l">29</TD><TD> </TD></TR><TR><TD CLASS="l">30</TD><TD>public class RemoveUnknownElementQuickFixProposal implements ICompletionProposal, ICompletionProposalExtension2 {</TD></TR><TR CLASS="z"><TD CLASS="l">31</TD><TD>        private Object fAdditionalFixInfo = null;</TD></TR><TR><TD CLASS="l"><A NAME="0">32</A></TD><TD>        private String fDisplayString;</TD></TR><TR><TD CLASS="l">33</TD><TD>        private Image fImage;</TD></TR><TR><TD CLASS="l">34</TD><TD>        private Point fSelection; // initialized by apply()</TD></TR><TR><TD CLASS="l">35</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">36</TD><TD>        public RemoveUnknownElementQuickFixProposal(Object additionalFixInfo, Image image, String displayString) {</TD></TR><TR CLASS="z"><TD CLASS="l">37</TD><TD>                fAdditionalFixInfo = additionalFixInfo;</TD></TR><TR CLASS="z"><TD CLASS="l">38</TD><TD>                fImage = image;</TD></TR><TR CLASS="z"><TD CLASS="l">39</TD><TD>                fDisplayString = displayString;</TD></TR><TR CLASS="z"><TD CLASS="l">40</TD><TD>        }</TD></TR><TR><TD CLASS="l">41</TD><TD> </TD></TR><TR><TD CLASS="l">42</TD><TD>        /*</TD></TR><TR><TD CLASS="l">43</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l">44</TD><TD>         * </TD></TR><TR><TD CLASS="l"><A NAME="2">45</A></TD><TD>         * @see org.eclipse.jface.text.contentassist.ICompletionProposal#apply(org.eclipse.jface.text.IDocument)</TD></TR><TR><TD CLASS="l">46</TD><TD>         */</TD></TR><TR><TD CLASS="l">47</TD><TD>        public void apply(IDocument document) {</TD></TR><TR><TD CLASS="l">48</TD><TD>                // not implemented?</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>        }</TD></TR><TR><TD CLASS="l">50</TD><TD> </TD></TR><TR><TD CLASS="l">51</TD><TD>        /*</TD></TR><TR><TD CLASS="l">52</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l">53</TD><TD>         * </TD></TR><TR><TD CLASS="l"><A NAME="3">54</A></TD><TD>         * @see org.eclipse.jface.text.contentassist.ICompletionProposalExtension2#apply(org.eclipse.jface.text.ITextViewer,</TD></TR><TR><TD CLASS="l">55</TD><TD>         *      char, int, int)</TD></TR><TR><TD CLASS="l">56</TD><TD>         */</TD></TR><TR><TD CLASS="l">57</TD><TD>        public void apply(ITextViewer viewer, char trigger, int stateMask, int offset) {</TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>                int startTagOffset = ((Integer) ((Object[]) fAdditionalFixInfo)[0]).intValue();</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>                int startTagLength = ((Integer) ((Object[]) fAdditionalFixInfo)[1]).intValue();</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                int endTagOffset = ((Integer) ((Object[]) fAdditionalFixInfo)[2]).intValue();</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                int endTagLength = ((Integer) ((Object[]) fAdditionalFixInfo)[3]).intValue();</TD></TR><TR><TD CLASS="l">62</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>                MultiTextEdit multiTextEdit = new MultiTextEdit();</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                if (endTagOffset != -1) {</TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>                        multiTextEdit.addChild(new DeleteEdit(endTagOffset, endTagLength));</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                        fSelection = new Point(endTagOffset, 0);</TD></TR><TR><TD CLASS="l">67</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>                if (startTagOffset != -1) {</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                        multiTextEdit.addChild(new DeleteEdit(startTagOffset, startTagLength));</TD></TR><TR CLASS="z"><TD CLASS="l">70</TD><TD>                        fSelection = new Point(startTagOffset, 0);</TD></TR><TR><TD CLASS="l">71</TD><TD>                }</TD></TR><TR><TD CLASS="l">72</TD><TD> </TD></TR><TR><TD CLASS="l">73</TD><TD>                try {</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>                        multiTextEdit.apply(viewer.getDocument());</TD></TR><TR><TD CLASS="l">75</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>                catch (MalformedTreeException e) {</TD></TR><TR><TD CLASS="l">77</TD><TD>                        // log for now, unless find reasons not to.</TD></TR><TR CLASS="z"><TD CLASS="l">78</TD><TD>                        Logger.log(Logger.INFO, e.getMessage());</TD></TR><TR><TD CLASS="l">79</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">80</TD><TD>                catch (BadLocationException e) {</TD></TR><TR><TD CLASS="l">81</TD><TD>                        // log for now, unless find reasons not to.</TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>                        Logger.log(Logger.INFO, e.getMessage());</TD></TR><TR><TD CLASS="l">83</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">84</TD><TD>        }</TD></TR><TR><TD CLASS="l">85</TD><TD> </TD></TR><TR><TD CLASS="l">86</TD><TD>        /*</TD></TR><TR><TD CLASS="l">87</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="4">88</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">89</TD><TD>         * @see org.eclipse.jface.text.contentassist.ICompletionProposal#getAdditionalProposalInfo()</TD></TR><TR><TD CLASS="l">90</TD><TD>         */</TD></TR><TR><TD CLASS="l">91</TD><TD>        public String getAdditionalProposalInfo() {</TD></TR><TR CLASS="z"><TD CLASS="l">92</TD><TD>                return null;</TD></TR><TR><TD CLASS="l">93</TD><TD>        }</TD></TR><TR><TD CLASS="l">94</TD><TD> </TD></TR><TR><TD CLASS="l">95</TD><TD>        /*</TD></TR><TR><TD CLASS="l">96</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="5">97</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">98</TD><TD>         * @see org.eclipse.jface.text.contentassist.ICompletionProposal#getContextInformation()</TD></TR><TR><TD CLASS="l">99</TD><TD>         */</TD></TR><TR><TD CLASS="l">100</TD><TD>        public IContextInformation getContextInformation() {</TD></TR><TR CLASS="z"><TD CLASS="l">101</TD><TD>                return null;</TD></TR><TR><TD CLASS="l">102</TD><TD>        }</TD></TR><TR><TD CLASS="l">103</TD><TD> </TD></TR><TR><TD CLASS="l">104</TD><TD>        /*</TD></TR><TR><TD CLASS="l">105</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="6">106</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">107</TD><TD>         * @see org.eclipse.jface.text.contentassist.ICompletionProposal#getDisplayString()</TD></TR><TR><TD CLASS="l">108</TD><TD>         */</TD></TR><TR><TD CLASS="l">109</TD><TD>        public String getDisplayString() {</TD></TR><TR CLASS="z"><TD CLASS="l">110</TD><TD>                if (fDisplayString == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">111</TD><TD>                        fDisplayString = XMLUIMessages.QuickFixProcessorXML_11;</TD></TR><TR><TD CLASS="l">112</TD><TD>                }</TD></TR><TR><TD CLASS="l">113</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">114</TD><TD>                return fDisplayString;</TD></TR><TR><TD CLASS="l">115</TD><TD>        }</TD></TR><TR><TD CLASS="l">116</TD><TD> </TD></TR><TR><TD CLASS="l">117</TD><TD>        /*</TD></TR><TR><TD CLASS="l">118</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="7">119</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">120</TD><TD>         * @see org.eclipse.jface.text.contentassist.ICompletionProposal#getImage()</TD></TR><TR><TD CLASS="l">121</TD><TD>         */</TD></TR><TR><TD CLASS="l">122</TD><TD>        public Image getImage() {</TD></TR><TR CLASS="z"><TD CLASS="l">123</TD><TD>                return fImage;</TD></TR><TR><TD CLASS="l">124</TD><TD>        }</TD></TR><TR><TD CLASS="l">125</TD><TD> </TD></TR><TR><TD CLASS="l">126</TD><TD>        /*</TD></TR><TR><TD CLASS="l">127</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="8">128</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">129</TD><TD>         * @see org.eclipse.jface.text.contentassist.ICompletionProposal#getSelection(org.eclipse.jface.text.IDocument)</TD></TR><TR><TD CLASS="l">130</TD><TD>         */</TD></TR><TR><TD CLASS="l">131</TD><TD>        public Point getSelection(IDocument document) {</TD></TR><TR CLASS="z"><TD CLASS="l">132</TD><TD>                return fSelection;</TD></TR><TR><TD CLASS="l">133</TD><TD>        }</TD></TR><TR><TD CLASS="l">134</TD><TD> </TD></TR><TR><TD CLASS="l">135</TD><TD>        /*</TD></TR><TR><TD CLASS="l">136</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l">137</TD><TD>         * </TD></TR><TR><TD CLASS="l"><A NAME="9">138</A></TD><TD>         * @see org.eclipse.jface.text.contentassist.ICompletionProposalExtension2#selected(org.eclipse.jface.text.ITextViewer,</TD></TR><TR><TD CLASS="l">139</TD><TD>         *      boolean)</TD></TR><TR><TD CLASS="l">140</TD><TD>         */</TD></TR><TR><TD CLASS="l">141</TD><TD>        public void selected(ITextViewer viewer, boolean smartToggle) {</TD></TR><TR CLASS="z"><TD CLASS="l">142</TD><TD>        }</TD></TR><TR><TD CLASS="l">143</TD><TD> </TD></TR><TR><TD CLASS="l">144</TD><TD>        /*</TD></TR><TR><TD CLASS="l">145</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="a">146</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">147</TD><TD>         * @see org.eclipse.jface.text.contentassist.ICompletionProposalExtension2#unselected(org.eclipse.jface.text.ITextViewer)</TD></TR><TR><TD CLASS="l">148</TD><TD>         */</TD></TR><TR><TD CLASS="l">149</TD><TD>        public void unselected(ITextViewer viewer) {</TD></TR><TR CLASS="z"><TD CLASS="l">150</TD><TD>        }</TD></TR><TR><TD CLASS="l">151</TD><TD> </TD></TR><TR><TD CLASS="l">152</TD><TD>        /*</TD></TR><TR><TD CLASS="l">153</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l">154</TD><TD>         * </TD></TR><TR><TD CLASS="l"><A NAME="b">155</A></TD><TD>         * @see org.eclipse.jface.text.contentassist.ICompletionProposalExtension2#validate(org.eclipse.jface.text.IDocument,</TD></TR><TR><TD CLASS="l">156</TD><TD>         *      int, org.eclipse.jface.text.DocumentEvent)</TD></TR><TR><TD CLASS="l">157</TD><TD>         */</TD></TR><TR><TD CLASS="l">158</TD><TD>        public boolean validate(IDocument document, int offset, DocumentEvent event) {</TD></TR><TR CLASS="z"><TD CLASS="l">159</TD><TD>                return false;</TD></TR><TR><TD CLASS="l">160</TD><TD>        }</TD></TR><TR><TD CLASS="l">161</TD><TD> </TD></TR><TR><TD CLASS="l">162</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="35.html">org.eclipse.wst.xml.ui.internal.correction</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1af.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1af.html
deleted file mode 100644
index 0243b97..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1af.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="35.html">org.eclipse.wst.xml.ui.internal.correction</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">RenameInFileQuickAssistProposal.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>RenameInFileQuickAssistProposal.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/211)</TD><TD CLASS="h">0%   (0/42)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">RenameInFileQuickAssistProposal</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/211)</TD><TD CLASS="h">0%   (0/42)</TD></TR><TR><TD CLASS="f"><A HREF="#0">RenameInFileQuickAssistProposal (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">apply (IDocument): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#3">apply (ITextViewer, char, int, int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/183)</TD><TD CLASS="h">0%   (0/32)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">getAdditionalProposalInfo (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#5">getContextInformation (): IContextInformation</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">getDisplayString (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#7">getImage (): Image</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">getSelection (IDocument): Point</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#9">selected (ITextViewer, boolean): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">unselected (ITextViewer): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#b">validate (IDocument, int, DocumentEvent): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.ui.internal.correction;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.jface.text.BadLocationException;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.jface.text.DocumentEvent;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.jface.text.IDocument;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.jface.text.IRegion;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.jface.text.ITextViewer;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.jface.text.contentassist.ICompletionProposal;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.jface.text.contentassist.ICompletionProposalExtension2;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.jface.text.contentassist.IContextInformation;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.jface.text.link.LinkedModeModel;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.jface.text.link.LinkedModeUI;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.jface.text.link.LinkedPosition;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.jface.text.link.LinkedPositionGroup;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.swt.graphics.Image;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.swt.graphics.Point;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.ui.texteditor.link.EditorLinkedModeUI;</TD></TR><TR><TD CLASS="l">30</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;</TD></TR><TR><TD CLASS="l">31</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;</TD></TR><TR><TD CLASS="l">32</TD><TD>import org.eclipse.wst.sse.ui.internal.StructuredTextViewer;</TD></TR><TR><TD CLASS="l">33</TD><TD>import org.eclipse.wst.sse.ui.internal.contentassist.ContentAssistUtils;</TD></TR><TR><TD CLASS="l">34</TD><TD>import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;</TD></TR><TR><TD CLASS="l">35</TD><TD>import org.eclipse.wst.xml.core.internal.regions.DOMRegionContext;</TD></TR><TR><TD CLASS="l">36</TD><TD>import org.eclipse.wst.xml.ui.internal.Logger;</TD></TR><TR><TD CLASS="l"><A NAME="0">37</A></TD><TD>import org.eclipse.wst.xml.ui.internal.XMLUIMessages;</TD></TR><TR><TD CLASS="l">38</TD><TD>import org.eclipse.wst.xml.ui.internal.editor.XMLEditorPluginImageHelper;</TD></TR><TR><TD CLASS="l">39</TD><TD>import org.eclipse.wst.xml.ui.internal.editor.XMLEditorPluginImages;</TD></TR><TR><TD CLASS="l">40</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>public class RenameInFileQuickAssistProposal implements ICompletionProposal, ICompletionProposalExtension2 {</TD></TR><TR><TD CLASS="l">42</TD><TD>        protected IRegion fSelectedRegion; // initialized by apply()</TD></TR><TR><TD CLASS="l">43</TD><TD> </TD></TR><TR><TD CLASS="l">44</TD><TD>        /*</TD></TR><TR><TD CLASS="l">45</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="2">46</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">47</TD><TD>         * @see org.eclipse.jface.text.contentassist.ICompletionProposal#apply(org.eclipse.jface.text.IDocument)</TD></TR><TR><TD CLASS="l">48</TD><TD>         */</TD></TR><TR><TD CLASS="l">49</TD><TD>        public void apply(IDocument document) {</TD></TR><TR CLASS="z"><TD CLASS="l">50</TD><TD>        }</TD></TR><TR><TD CLASS="l">51</TD><TD> </TD></TR><TR><TD CLASS="l">52</TD><TD>        /*</TD></TR><TR><TD CLASS="l">53</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l">54</TD><TD>         * </TD></TR><TR><TD CLASS="l"><A NAME="3">55</A></TD><TD>         * @see org.eclipse.jface.text.contentassist.ICompletionProposalExtension2#apply(org.eclipse.jface.text.ITextViewer,</TD></TR><TR><TD CLASS="l">56</TD><TD>         *      char, int, int)</TD></TR><TR><TD CLASS="l">57</TD><TD>         */</TD></TR><TR><TD CLASS="l">58</TD><TD>        public void apply(ITextViewer viewer, char trigger, int stateMask, int offset) {</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>                IDocument document = viewer.getDocument();</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                LinkedPositionGroup group = new LinkedPositionGroup();</TD></TR><TR><TD CLASS="l">61</TD><TD>                try {</TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>                        if (viewer instanceof StructuredTextViewer) {</TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>                                IDOMNode node = (IDOMNode) ContentAssistUtils.getNodeAt(viewer, offset);</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                                IStructuredDocumentRegion startStructuredDocumentRegion = node.getStartStructuredDocumentRegion();</TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>                                ITextRegion region = (startStructuredDocumentRegion == null) ? null : startStructuredDocumentRegion.getRegionAtCharacterOffset(offset);</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                                if (region != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>                                        group.addPosition(new LinkedPosition(document, startStructuredDocumentRegion.getStartOffset() + region.getStart(), region.getTextLength(), 0));</TD></TR><TR><TD CLASS="l">68</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                                        if ((region.getType() == DOMRegionContext.XML_TAG_NAME) &amp;&amp; (node.getEndStructuredDocumentRegion() != null)) {</TD></TR><TR CLASS="z"><TD CLASS="l">70</TD><TD>                                                region = node.getEndStructuredDocumentRegion().getRegions().get(1);</TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>                                                if (region != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>                                                        group.addPosition(new LinkedPosition(document, node.getEndStructuredDocumentRegion().getStartOffset() + region.getStart(), region.getTextLength(), 1));</TD></TR><TR><TD CLASS="l">73</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">74</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">75</TD><TD>                                }</TD></TR><TR><TD CLASS="l">76</TD><TD>                                else {</TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>                                        IStructuredDocumentRegion endStructuredDocumentRegion = node.getEndStructuredDocumentRegion();</TD></TR><TR CLASS="z"><TD CLASS="l">78</TD><TD>                                        region = (endStructuredDocumentRegion == null) ? null : endStructuredDocumentRegion.getRegionAtCharacterOffset(offset);</TD></TR><TR CLASS="z"><TD CLASS="l">79</TD><TD>                                        if (region != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">80</TD><TD>                                                if ((region.getType() == DOMRegionContext.XML_TAG_NAME) &amp;&amp; (node.getStartStructuredDocumentRegion() != null)) {</TD></TR><TR CLASS="z"><TD CLASS="l">81</TD><TD>                                                        ITextRegion startTagNameRegion = node.getStartStructuredDocumentRegion().getRegions().get(1);</TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>                                                        if (region != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">83</TD><TD>                                                                group.addPosition(new LinkedPosition(document, node.getStartStructuredDocumentRegion().getStartOffset() + startTagNameRegion.getStart(), startTagNameRegion.getTextLength(), 0));</TD></TR><TR CLASS="z"><TD CLASS="l">84</TD><TD>                                                                group.addPosition(new LinkedPosition(document, endStructuredDocumentRegion.getStartOffset() + region.getStart(), region.getTextLength(), 1));</TD></TR><TR><TD CLASS="l">85</TD><TD>                                                        }</TD></TR><TR><TD CLASS="l">86</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">87</TD><TD>                                                else {</TD></TR><TR CLASS="z"><TD CLASS="l">88</TD><TD>                                                        group.addPosition(new LinkedPosition(document, endStructuredDocumentRegion.getStartOffset() + region.getStart(), region.getTextLength(), 0));</TD></TR><TR><TD CLASS="l">89</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">90</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">91</TD><TD>                                }</TD></TR><TR><TD CLASS="l">92</TD><TD> </TD></TR><TR><TD CLASS="l">93</TD><TD>                                // TODO CompletionProposalPopup#insertProposal() calls</TD></TR><TR><TD CLASS="l">94</TD><TD>                                // IRewriteTarget.beginCompoundChange()</TD></TR><TR><TD CLASS="l">95</TD><TD>                                // which disables redraw in ITextViewer. Workaround for now.</TD></TR><TR CLASS="z"><TD CLASS="l">96</TD><TD>                                ((StructuredTextViewer) viewer).setRedraw(true);</TD></TR><TR><TD CLASS="l">97</TD><TD>                        }</TD></TR><TR><TD CLASS="l">98</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">99</TD><TD>                        LinkedModeModel linkedModeModel = new LinkedModeModel();</TD></TR><TR CLASS="z"><TD CLASS="l">100</TD><TD>                        linkedModeModel.addGroup(group);</TD></TR><TR CLASS="z"><TD CLASS="l">101</TD><TD>                        linkedModeModel.forceInstall();</TD></TR><TR><TD CLASS="l">102</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">103</TD><TD>                        LinkedModeUI ui = new EditorLinkedModeUI(linkedModeModel, viewer);</TD></TR><TR CLASS="z"><TD CLASS="l">104</TD><TD>                        ui.setExitPosition(viewer, offset, 0, LinkedPositionGroup.NO_STOP);</TD></TR><TR CLASS="z"><TD CLASS="l">105</TD><TD>                        ui.enter();</TD></TR><TR><TD CLASS="l">106</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">107</TD><TD>                        fSelectedRegion = ui.getSelectedRegion();</TD></TR><TR><TD CLASS="l">108</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">109</TD><TD>                catch (BadLocationException e) {</TD></TR><TR><TD CLASS="l">110</TD><TD>                        // log for now, unless find reason not to</TD></TR><TR CLASS="z"><TD CLASS="l">111</TD><TD>                        Logger.log(Logger.INFO, e.getMessage());</TD></TR><TR><TD CLASS="l">112</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">113</TD><TD>        }</TD></TR><TR><TD CLASS="l">114</TD><TD> </TD></TR><TR><TD CLASS="l">115</TD><TD>        /*</TD></TR><TR><TD CLASS="l">116</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="4">117</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">118</TD><TD>         * @see org.eclipse.jface.text.contentassist.ICompletionProposal#getAdditionalProposalInfo()</TD></TR><TR><TD CLASS="l">119</TD><TD>         */</TD></TR><TR><TD CLASS="l">120</TD><TD>        public String getAdditionalProposalInfo() {</TD></TR><TR CLASS="z"><TD CLASS="l">121</TD><TD>                return XMLUIMessages.RenameInFileQuickAssistProposal_0;</TD></TR><TR><TD CLASS="l">122</TD><TD>        }</TD></TR><TR><TD CLASS="l">123</TD><TD> </TD></TR><TR><TD CLASS="l">124</TD><TD>        /*</TD></TR><TR><TD CLASS="l">125</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="5">126</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">127</TD><TD>         * @see org.eclipse.jface.text.contentassist.ICompletionProposal#getContextInformation()</TD></TR><TR><TD CLASS="l">128</TD><TD>         */</TD></TR><TR><TD CLASS="l">129</TD><TD>        public IContextInformation getContextInformation() {</TD></TR><TR CLASS="z"><TD CLASS="l">130</TD><TD>                return null;</TD></TR><TR><TD CLASS="l">131</TD><TD>        }</TD></TR><TR><TD CLASS="l">132</TD><TD> </TD></TR><TR><TD CLASS="l">133</TD><TD>        /*</TD></TR><TR><TD CLASS="l">134</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="6">135</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">136</TD><TD>         * @see org.eclipse.jface.text.contentassist.ICompletionProposal#getDisplayString()</TD></TR><TR><TD CLASS="l">137</TD><TD>         */</TD></TR><TR><TD CLASS="l">138</TD><TD>        public String getDisplayString() {</TD></TR><TR CLASS="z"><TD CLASS="l">139</TD><TD>                return XMLUIMessages.RenameInFileQuickAssistProposal_1;</TD></TR><TR><TD CLASS="l">140</TD><TD>        }</TD></TR><TR><TD CLASS="l">141</TD><TD> </TD></TR><TR><TD CLASS="l">142</TD><TD>        /*</TD></TR><TR><TD CLASS="l">143</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l">144</TD><TD>         * </TD></TR><TR><TD CLASS="l"><A NAME="7">145</A></TD><TD>         * @see org.eclipse.jface.text.contentassist.ICompletionProposal#getImage()</TD></TR><TR><TD CLASS="l">146</TD><TD>         */</TD></TR><TR><TD CLASS="l">147</TD><TD>        public Image getImage() {</TD></TR><TR><TD CLASS="l">148</TD><TD>                // return JavaPluginImages.get(JavaPluginImages.IMG_CORRECTION_LOCAL);</TD></TR><TR CLASS="z"><TD CLASS="l">149</TD><TD>                return XMLEditorPluginImageHelper.getInstance().getImage(XMLEditorPluginImages.IMG_OBJ_LOCAL_VARIABLE);</TD></TR><TR><TD CLASS="l">150</TD><TD>        }</TD></TR><TR><TD CLASS="l">151</TD><TD> </TD></TR><TR><TD CLASS="l">152</TD><TD>        /*</TD></TR><TR><TD CLASS="l">153</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="8">154</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">155</TD><TD>         * @see org.eclipse.jface.text.contentassist.ICompletionProposal#getSelection(org.eclipse.jface.text.IDocument)</TD></TR><TR><TD CLASS="l">156</TD><TD>         */</TD></TR><TR><TD CLASS="l">157</TD><TD>        public Point getSelection(IDocument document) {</TD></TR><TR CLASS="z"><TD CLASS="l">158</TD><TD>                return new Point(fSelectedRegion.getOffset(), fSelectedRegion.getLength());</TD></TR><TR><TD CLASS="l">159</TD><TD>        }</TD></TR><TR><TD CLASS="l">160</TD><TD> </TD></TR><TR><TD CLASS="l">161</TD><TD>        /*</TD></TR><TR><TD CLASS="l">162</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l">163</TD><TD>         * </TD></TR><TR><TD CLASS="l"><A NAME="9">164</A></TD><TD>         * @see org.eclipse.jface.text.contentassist.ICompletionProposalExtension2#selected(org.eclipse.jface.text.ITextViewer,</TD></TR><TR><TD CLASS="l">165</TD><TD>         *      boolean)</TD></TR><TR><TD CLASS="l">166</TD><TD>         */</TD></TR><TR><TD CLASS="l">167</TD><TD>        public void selected(ITextViewer viewer, boolean smartToggle) {</TD></TR><TR CLASS="z"><TD CLASS="l">168</TD><TD>        }</TD></TR><TR><TD CLASS="l">169</TD><TD> </TD></TR><TR><TD CLASS="l">170</TD><TD>        /*</TD></TR><TR><TD CLASS="l">171</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="a">172</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">173</TD><TD>         * @see org.eclipse.jface.text.contentassist.ICompletionProposalExtension2#unselected(org.eclipse.jface.text.ITextViewer)</TD></TR><TR><TD CLASS="l">174</TD><TD>         */</TD></TR><TR><TD CLASS="l">175</TD><TD>        public void unselected(ITextViewer viewer) {</TD></TR><TR CLASS="z"><TD CLASS="l">176</TD><TD>        }</TD></TR><TR><TD CLASS="l">177</TD><TD> </TD></TR><TR><TD CLASS="l">178</TD><TD>        /*</TD></TR><TR><TD CLASS="l">179</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l">180</TD><TD>         * </TD></TR><TR><TD CLASS="l"><A NAME="b">181</A></TD><TD>         * @see org.eclipse.jface.text.contentassist.ICompletionProposalExtension2#validate(org.eclipse.jface.text.IDocument,</TD></TR><TR><TD CLASS="l">182</TD><TD>         *      int, org.eclipse.jface.text.DocumentEvent)</TD></TR><TR><TD CLASS="l">183</TD><TD>         */</TD></TR><TR><TD CLASS="l">184</TD><TD>        public boolean validate(IDocument document, int offset, DocumentEvent event) {</TD></TR><TR CLASS="z"><TD CLASS="l">185</TD><TD>                return false;</TD></TR><TR><TD CLASS="l">186</TD><TD>        }</TD></TR><TR><TD CLASS="l">187</TD><TD> </TD></TR><TR><TD CLASS="l">188</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="35.html">org.eclipse.wst.xml.ui.internal.correction</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1b.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1b.html
deleted file mode 100644
index 096077a..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1b.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR PACKAGE [<SPAN CLASS="in">org.eclipse.wst.sse.ui.internal.selection</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>org.eclipse.wst.sse.ui.internal.selection</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/36)</TD><TD CLASS="h">0%   (0/730)</TD><TD CLASS="h">0%   (0/190)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY SOURCE FILE</H3><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR CLASS="o"><TD><A HREF="13f.html">SelectionHistory.java</A></TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/195)</TD><TD CLASS="h">0%   (0/54)</TD></TR><TR><TD><A HREF="140.html">StructureSelectAction.java</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/220)</TD><TD CLASS="h">0%   (0/47)</TD></TR><TR CLASS="o"><TD><A HREF="141.html">StructureSelectHistoryAction.java</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/57)</TD><TD CLASS="h">0%   (0/18)</TD></TR><TR><TD><A HREF="142.html">StructuredSelectActionDelegate.java</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/158)</TD><TD CLASS="h">0%   (0/42)</TD></TR><TR CLASS="o"><TD><A HREF="143.html">StructuredSelectHistoryActionDelegate.java</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/100)</TD><TD CLASS="h">0%   (0/29)</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1b0.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1b0.html
deleted file mode 100644
index d0ef998..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1b0.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="35.html">org.eclipse.wst.xml.ui.internal.correction</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">SurroundWithNewElementQuickAssistProposal.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>SurroundWithNewElementQuickAssistProposal.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/103)</TD><TD CLASS="h">0%   (0/25)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">SurroundWithNewElementQuickAssistProposal</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/103)</TD><TD CLASS="h">0%   (0/25)</TD></TR><TR><TD CLASS="f"><A HREF="#0">SurroundWithNewElementQuickAssistProposal (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">apply (ITextViewer, char, int, int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/92)</TD><TD CLASS="h">0%   (0/21)</TD></TR><TR><TD CLASS="f"><A HREF="#3">getAdditionalProposalInfo (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">getDisplayString (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#5">getImage (): Image</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/1)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.ui.internal.correction;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.jface.text.BadLocationException;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.jface.text.ITextViewer;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.swt.graphics.Image;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.text.edits.InsertEdit;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.text.edits.MalformedTreeException;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.text.edits.MultiTextEdit;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.wst.sse.core.internal.format.IStructuredFormatProcessor;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.wst.sse.ui.internal.contentassist.ContentAssistUtils;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.wst.xml.core.internal.provisional.format.FormatProcessorXML;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.wst.xml.ui.internal.Logger;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.wst.xml.ui.internal.XMLUIMessages;</TD></TR><TR><TD CLASS="l"><A NAME="0">27</A></TD><TD>import org.eclipse.wst.xml.ui.internal.editor.XMLEditorPluginImageHelper;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.wst.xml.ui.internal.editor.XMLEditorPluginImages;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.w3c.dom.Node;</TD></TR><TR><TD CLASS="l">30</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">31</TD><TD>public class SurroundWithNewElementQuickAssistProposal extends RenameInFileQuickAssistProposal {</TD></TR><TR><TD CLASS="l">32</TD><TD> </TD></TR><TR><TD CLASS="l">33</TD><TD>        /*</TD></TR><TR><TD CLASS="l">34</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l">35</TD><TD>         * </TD></TR><TR><TD CLASS="l">36</TD><TD>         * @see org.eclipse.jface.text.contentassist.ICompletionProposalExtension2#apply(org.eclipse.jface.text.ITextViewer,</TD></TR><TR><TD CLASS="l"><A NAME="2">37</A></TD><TD>         *      char, int, int)</TD></TR><TR><TD CLASS="l">38</TD><TD>         */</TD></TR><TR><TD CLASS="l">39</TD><TD>        public void apply(ITextViewer viewer, char trigger, int stateMask, int offset) {</TD></TR><TR><TD CLASS="l">40</TD><TD>                try {</TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>                        int startTagOffset = offset;</TD></TR><TR CLASS="z"><TD CLASS="l">42</TD><TD>                        int endTagOffset = offset + viewer.getSelectedRange().y;</TD></TR><TR><TD CLASS="l">43</TD><TD> </TD></TR><TR><TD CLASS="l">44</TD><TD>                        // surround the node if no selection</TD></TR><TR CLASS="z"><TD CLASS="l">45</TD><TD>                        if (startTagOffset == endTagOffset) {</TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>                                IDOMNode cursorNode = (IDOMNode) ContentAssistUtils.getNodeAt(viewer, offset);</TD></TR><TR><TD CLASS="l">47</TD><TD>                                // use parent node if text node is empty</TD></TR><TR CLASS="z"><TD CLASS="l">48</TD><TD>                                if ((cursorNode.getNodeType() == Node.TEXT_NODE) &amp;&amp; (cursorNode.getNodeValue().trim().length() == 0)) {</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>                                        cursorNode = (IDOMNode) cursorNode.getParentNode();</TD></TR><TR><TD CLASS="l">50</TD><TD>                                }</TD></TR><TR><TD CLASS="l">51</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                                startTagOffset = cursorNode.getStartOffset();</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>                                endTagOffset = cursorNode.getEndOffset();</TD></TR><TR><TD CLASS="l">54</TD><TD>                        }</TD></TR><TR><TD CLASS="l">55</TD><TD> </TD></TR><TR><TD CLASS="l">56</TD><TD>                        // insert new element</TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>                        MultiTextEdit multiTextEdit = new MultiTextEdit();</TD></TR><TR><TD CLASS="l">58</TD><TD>                        // element tag name cannot be DBCS, do not translate &#34;&lt;element&gt;&#34;</TD></TR><TR><TD CLASS="l">59</TD><TD>                        // and &#34;&lt;/element&gt;&#34;</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                        multiTextEdit.addChild(new InsertEdit(startTagOffset, &#34;&lt;element&gt;&#34;)); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                        multiTextEdit.addChild(new InsertEdit(endTagOffset, &#34;&lt;/element&gt;&#34;)); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>                        multiTextEdit.apply(viewer.getDocument());</TD></TR><TR><TD CLASS="l">63</TD><TD> </TD></TR><TR><TD CLASS="l">64</TD><TD>                        // get new element node</TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>                        IDOMNode newElementNode = (IDOMNode) ContentAssistUtils.getNodeAt(viewer, startTagOffset);</TD></TR><TR><TD CLASS="l">66</TD><TD> </TD></TR><TR><TD CLASS="l">67</TD><TD>                        // format new element</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>                        IStructuredFormatProcessor formatProcessor = new FormatProcessorXML();</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                        formatProcessor.formatNode(newElementNode);</TD></TR><TR><TD CLASS="l">70</TD><TD> </TD></TR><TR><TD CLASS="l">71</TD><TD>                        // rename new element</TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>                        super.apply(viewer, trigger, stateMask, newElementNode.getStartOffset() + 1);</TD></TR><TR><TD CLASS="l">73</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>                catch (MalformedTreeException e) {</TD></TR><TR><TD CLASS="l">75</TD><TD>                        // log for now, unless find reason not to</TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>                        Logger.log(Logger.INFO, e.getMessage());</TD></TR><TR><TD CLASS="l">77</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">78</TD><TD>                catch (BadLocationException e) {</TD></TR><TR><TD CLASS="l">79</TD><TD>                        // log for now, unless find reason not to</TD></TR><TR CLASS="z"><TD CLASS="l">80</TD><TD>                        Logger.log(Logger.INFO, e.getMessage());</TD></TR><TR><TD CLASS="l">81</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>        }</TD></TR><TR><TD CLASS="l">83</TD><TD> </TD></TR><TR><TD CLASS="l">84</TD><TD>        /*</TD></TR><TR><TD CLASS="l">85</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="3">86</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">87</TD><TD>         * @see org.eclipse.jface.text.contentassist.ICompletionProposal#getAdditionalProposalInfo()</TD></TR><TR><TD CLASS="l">88</TD><TD>         */</TD></TR><TR><TD CLASS="l">89</TD><TD>        public String getAdditionalProposalInfo() {</TD></TR><TR CLASS="z"><TD CLASS="l">90</TD><TD>                return XMLUIMessages.SurroundWithNewElementQuickAssistProposal_0;</TD></TR><TR><TD CLASS="l">91</TD><TD>        }</TD></TR><TR><TD CLASS="l">92</TD><TD> </TD></TR><TR><TD CLASS="l">93</TD><TD>        /*</TD></TR><TR><TD CLASS="l">94</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l"><A NAME="4">95</A></TD><TD>         * </TD></TR><TR><TD CLASS="l">96</TD><TD>         * @see org.eclipse.jface.text.contentassist.ICompletionProposal#getDisplayString()</TD></TR><TR><TD CLASS="l">97</TD><TD>         */</TD></TR><TR><TD CLASS="l">98</TD><TD>        public String getDisplayString() {</TD></TR><TR CLASS="z"><TD CLASS="l">99</TD><TD>                return XMLUIMessages.SurroundWithNewElementQuickAssistProposal_1;</TD></TR><TR><TD CLASS="l">100</TD><TD>        }</TD></TR><TR><TD CLASS="l">101</TD><TD> </TD></TR><TR><TD CLASS="l">102</TD><TD>        /*</TD></TR><TR><TD CLASS="l">103</TD><TD>         * (non-Javadoc)</TD></TR><TR><TD CLASS="l">104</TD><TD>         * </TD></TR><TR><TD CLASS="l"><A NAME="5">105</A></TD><TD>         * @see org.eclipse.jface.text.contentassist.ICompletionProposal#getImage()</TD></TR><TR><TD CLASS="l">106</TD><TD>         */</TD></TR><TR><TD CLASS="l">107</TD><TD>        public Image getImage() {</TD></TR><TR><TD CLASS="l">108</TD><TD>                // return JavaPluginImages.get(JavaPluginImages.IMG_CORRECTION_LOCAL);</TD></TR><TR CLASS="z"><TD CLASS="l">109</TD><TD>                return XMLEditorPluginImageHelper.getInstance().getImage(XMLEditorPluginImages.IMG_OBJ_ADD_CORRECTION);</TD></TR><TR><TD CLASS="l">110</TD><TD>        }</TD></TR><TR><TD CLASS="l">111</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="35.html">org.eclipse.wst.xml.ui.internal.correction</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1b1.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1b1.html
deleted file mode 100644
index 95c091d..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1b1.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="35.html">org.eclipse.wst.xml.ui.internal.correction</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">XMLQuickAssistProcessor.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>XMLQuickAssistProcessor.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/373)</TD><TD CLASS="h">0%   (0/92)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">XMLQuickAssistProcessor</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/373)</TD><TD CLASS="h">0%   (0/92)</TD></TR><TR><TD CLASS="f"><A HREF="#0">XMLQuickAssistProcessor (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">canAssist (IQuickAssistInvocationContext): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#3">canFix (Annotation): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">computeQuickAssistProposals (IQuickAssistInvocationContext): ICompletionPropo...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/32)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#5">getErrorMessage (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">getInsertRequiredAttrs (List, ISourceViewer, int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/104)</TD><TD CLASS="h">0%   (0/24)</TD></TR><TR><TD CLASS="f"><A HREF="#7">getLocalRenameQuickAssistProposal (List, ISourceViewer, int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/73)</TD><TD CLASS="h">0%   (0/14)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">getModelQuery (Node): ModelQuery</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#9">getNodeAt (ITextViewer, int): IndexedRegion</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/49)</TD><TD CLASS="h">0%   (0/18)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">getRequiredAttrs (Node): List</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/79)</TD><TD CLASS="h">0%   (0/20)</TD></TR><TR><TD CLASS="f"><A HREF="#b">getSurroundWithNewElementQuickAssistProposal (List, ISourceViewer, int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/4)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2007, 2008 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">11</TD><TD>package org.eclipse.wst.xml.ui.internal.correction;</TD></TR><TR><TD CLASS="l">12</TD><TD> </TD></TR><TR><TD CLASS="l">13</TD><TD>import java.util.ArrayList;</TD></TR><TR><TD CLASS="l">14</TD><TD>import java.util.Iterator;</TD></TR><TR><TD CLASS="l">15</TD><TD>import java.util.List;</TD></TR><TR><TD CLASS="l">16</TD><TD> </TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.jface.text.ITextViewer;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.jface.text.contentassist.ICompletionProposal;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.jface.text.quickassist.IQuickAssistInvocationContext;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.jface.text.quickassist.IQuickAssistProcessor;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.jface.text.source.Annotation;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.jface.text.source.ISourceViewer;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.wst.sse.core.StructuredModelManager;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.IModelManager;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;</TD></TR><TR><TD CLASS="l">30</TD><TD>import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;</TD></TR><TR><TD CLASS="l">31</TD><TD>import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;</TD></TR><TR><TD CLASS="l">32</TD><TD>import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;</TD></TR><TR><TD CLASS="l">33</TD><TD>import org.eclipse.wst.xml.core.internal.contentmodel.basic.CMNamedNodeMapImpl;</TD></TR><TR><TD CLASS="l">34</TD><TD>import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQuery;</TD></TR><TR><TD CLASS="l">35</TD><TD>import org.eclipse.wst.xml.core.internal.modelquery.ModelQueryUtil;</TD></TR><TR><TD CLASS="l">36</TD><TD>import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;</TD></TR><TR><TD CLASS="l">37</TD><TD>import org.eclipse.wst.xml.core.internal.regions.DOMRegionContext;</TD></TR><TR><TD CLASS="l">38</TD><TD>import org.w3c.dom.Document;</TD></TR><TR><TD CLASS="l"><A NAME="0">39</A></TD><TD>import org.w3c.dom.Element;</TD></TR><TR><TD CLASS="l">40</TD><TD>import org.w3c.dom.NamedNodeMap;</TD></TR><TR><TD CLASS="l">41</TD><TD>import org.w3c.dom.Node;</TD></TR><TR><TD CLASS="l"><A NAME="2">42</A></TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">43</TD><TD>public class XMLQuickAssistProcessor implements IQuickAssistProcessor {</TD></TR><TR><TD CLASS="l">44</TD><TD> </TD></TR><TR><TD CLASS="l">45</TD><TD>        public boolean canAssist(IQuickAssistInvocationContext invocationContext) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">46</A></TD><TD>                return true;</TD></TR><TR><TD CLASS="l">47</TD><TD>        }</TD></TR><TR><TD CLASS="l">48</TD><TD> </TD></TR><TR><TD CLASS="l">49</TD><TD>        public boolean canFix(Annotation annotation) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">50</A></TD><TD>                return false;</TD></TR><TR><TD CLASS="l">51</TD><TD>        }</TD></TR><TR><TD CLASS="l">52</TD><TD> </TD></TR><TR><TD CLASS="l">53</TD><TD>        public ICompletionProposal[] computeQuickAssistProposals(IQuickAssistInvocationContext invocationContext) {</TD></TR><TR CLASS="z"><TD CLASS="l">54</TD><TD>                List proposals = new ArrayList();</TD></TR><TR><TD CLASS="l">55</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>                getLocalRenameQuickAssistProposal(proposals, invocationContext.getSourceViewer(), invocationContext.getOffset());</TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>                getSurroundWithNewElementQuickAssistProposal(proposals, invocationContext.getSourceViewer(), invocationContext.getOffset());</TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>                getInsertRequiredAttrs(proposals, invocationContext.getSourceViewer(), invocationContext.getOffset());</TD></TR><TR><TD CLASS="l">59</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="5">60</A></TD><TD>                return (ICompletionProposal[]) proposals.toArray(new ICompletionProposal[proposals.size()]);</TD></TR><TR><TD CLASS="l">61</TD><TD>        }</TD></TR><TR><TD CLASS="l">62</TD><TD> </TD></TR><TR><TD CLASS="l">63</TD><TD>        public String getErrorMessage() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="6">64</A></TD><TD>                return null;</TD></TR><TR><TD CLASS="l">65</TD><TD>        }</TD></TR><TR><TD CLASS="l">66</TD><TD> </TD></TR><TR><TD CLASS="l">67</TD><TD>        private void getInsertRequiredAttrs(List proposals, ISourceViewer viewer, int offset) {</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>                IDOMNode node = (IDOMNode) getNodeAt(viewer, offset);</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                if ((node != null) &amp;&amp; (node.getNodeType() == Node.ELEMENT_NODE)) {</TD></TR><TR CLASS="z"><TD CLASS="l">70</TD><TD>                        IStructuredDocumentRegion startStructuredDocumentRegion = node.getStartStructuredDocumentRegion();</TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>                        if ((startStructuredDocumentRegion != null) &amp;&amp; startStructuredDocumentRegion.containsOffset(offset)) {</TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>                                IDOMNode cursorNode = (IDOMNode) getNodeAt(viewer, offset);</TD></TR><TR CLASS="z"><TD CLASS="l">73</TD><TD>                                List requiredAttrs = getRequiredAttrs(cursorNode);</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>                                if (requiredAttrs.size() &gt; 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>                                        NamedNodeMap currentAttrs = node.getAttributes();</TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>                                        List insertAttrs = new ArrayList();</TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>                                        if (currentAttrs.getLength() == 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">78</TD><TD>                                                insertAttrs.addAll(requiredAttrs);</TD></TR><TR><TD CLASS="l">79</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">80</TD><TD>                                        else {</TD></TR><TR CLASS="z"><TD CLASS="l">81</TD><TD>                                                for (int i = 0; i &lt; requiredAttrs.size(); i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>                                                        String requiredAttrName = ((CMAttributeDeclaration) requiredAttrs.get(i)).getAttrName();</TD></TR><TR CLASS="z"><TD CLASS="l">83</TD><TD>                                                        boolean found = false;</TD></TR><TR CLASS="z"><TD CLASS="l">84</TD><TD>                                                        for (int j = 0; j &lt; currentAttrs.getLength(); j++) {</TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>                                                                String currentAttrName = currentAttrs.item(j).getNodeName();</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                                                                if (requiredAttrName.compareToIgnoreCase(currentAttrName) == 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>                                                                        found = true;</TD></TR><TR CLASS="z"><TD CLASS="l">88</TD><TD>                                                                        break;</TD></TR><TR><TD CLASS="l">89</TD><TD>                                                                }</TD></TR><TR><TD CLASS="l">90</TD><TD>                                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">91</TD><TD>                                                        if (!found) {</TD></TR><TR CLASS="z"><TD CLASS="l">92</TD><TD>                                                                insertAttrs.add(requiredAttrs.get(i));</TD></TR><TR><TD CLASS="l">93</TD><TD>                                                        }</TD></TR><TR><TD CLASS="l">94</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">95</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">96</TD><TD>                                        if (insertAttrs.size() &gt; 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">97</TD><TD>                                                proposals.add(new InsertRequiredAttrsQuickAssistProposal(insertAttrs));</TD></TR><TR><TD CLASS="l">98</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">99</TD><TD>                                }</TD></TR><TR><TD CLASS="l">100</TD><TD>                        }</TD></TR><TR><TD CLASS="l"><A NAME="7">101</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">102</TD><TD>        }</TD></TR><TR><TD CLASS="l">103</TD><TD> </TD></TR><TR><TD CLASS="l">104</TD><TD>        private void getLocalRenameQuickAssistProposal(List proposals, ISourceViewer viewer, int offset) {</TD></TR><TR CLASS="z"><TD CLASS="l">105</TD><TD>                IDOMNode node = (IDOMNode) getNodeAt(viewer, offset);</TD></TR><TR CLASS="z"><TD CLASS="l">106</TD><TD>                IStructuredDocumentRegion startStructuredDocumentRegion = node == null ? null : node.getStartStructuredDocumentRegion();</TD></TR><TR CLASS="z"><TD CLASS="l">107</TD><TD>                IStructuredDocumentRegion endStructuredDocumentRegion = node == null ? null : node.getEndStructuredDocumentRegion();</TD></TR><TR><TD CLASS="l">108</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">109</TD><TD>                ITextRegion region = null;</TD></TR><TR CLASS="z"><TD CLASS="l">110</TD><TD>                int regionTextEndOffset = 0;</TD></TR><TR CLASS="z"><TD CLASS="l">111</TD><TD>                if ((startStructuredDocumentRegion != null) &amp;&amp; startStructuredDocumentRegion.containsOffset(offset)) {</TD></TR><TR CLASS="z"><TD CLASS="l">112</TD><TD>                        region = startStructuredDocumentRegion.getRegionAtCharacterOffset(offset);</TD></TR><TR CLASS="z"><TD CLASS="l">113</TD><TD>                        regionTextEndOffset = startStructuredDocumentRegion.getTextEndOffset(region);</TD></TR><TR><TD CLASS="l">114</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">115</TD><TD>                else if ((endStructuredDocumentRegion != null) &amp;&amp; endStructuredDocumentRegion.containsOffset(offset)) {</TD></TR><TR CLASS="z"><TD CLASS="l">116</TD><TD>                        region = endStructuredDocumentRegion.getRegionAtCharacterOffset(offset);</TD></TR><TR CLASS="z"><TD CLASS="l">117</TD><TD>                        regionTextEndOffset = endStructuredDocumentRegion.getTextEndOffset(region);</TD></TR><TR><TD CLASS="l">118</TD><TD>                }</TD></TR><TR><TD CLASS="l">119</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">120</TD><TD>                if ((region != null) &amp;&amp; ((region.getType() == DOMRegionContext.XML_TAG_NAME) || (region.getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_NAME)) &amp;&amp; (offset &lt;= regionTextEndOffset)) {</TD></TR><TR CLASS="z"><TD CLASS="l">121</TD><TD>                        proposals.add(new RenameInFileQuickAssistProposal());</TD></TR><TR><TD CLASS="l"><A NAME="8">122</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">123</TD><TD>        }</TD></TR><TR><TD CLASS="l">124</TD><TD> </TD></TR><TR><TD CLASS="l">125</TD><TD>        private ModelQuery getModelQuery(Node node) {</TD></TR><TR CLASS="z"><TD CLASS="l">126</TD><TD>                if (node.getNodeType() == Node.DOCUMENT_NODE) {</TD></TR><TR CLASS="z"><TD CLASS="l">127</TD><TD>                        return ModelQueryUtil.getModelQuery((Document) node);</TD></TR><TR><TD CLASS="l">128</TD><TD>                }</TD></TR><TR><TD CLASS="l">129</TD><TD>                else {</TD></TR><TR CLASS="z"><TD CLASS="l">130</TD><TD>                        return ModelQueryUtil.getModelQuery(node.getOwnerDocument());</TD></TR><TR><TD CLASS="l"><A NAME="a">131</A></TD><TD>                }</TD></TR><TR><TD CLASS="l">132</TD><TD>        }</TD></TR><TR><TD CLASS="l">133</TD><TD> </TD></TR><TR><TD CLASS="l">134</TD><TD>        private List getRequiredAttrs(Node node) {</TD></TR><TR CLASS="z"><TD CLASS="l">135</TD><TD>                List result = new ArrayList();</TD></TR><TR><TD CLASS="l">136</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">137</TD><TD>                ModelQuery modelQuery = getModelQuery(node);</TD></TR><TR CLASS="z"><TD CLASS="l">138</TD><TD>                if (modelQuery != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">139</TD><TD>                        CMElementDeclaration elementDecl = modelQuery.getCMElementDeclaration((Element) node);</TD></TR><TR CLASS="z"><TD CLASS="l">140</TD><TD>                        if (elementDecl != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">141</TD><TD>                                CMNamedNodeMap attrMap = elementDecl.getAttributes();</TD></TR><TR><TD CLASS="l">142</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">143</TD><TD>                                CMNamedNodeMapImpl allAttributes = new CMNamedNodeMapImpl(attrMap);</TD></TR><TR CLASS="z"><TD CLASS="l">144</TD><TD>                                List nodes = ModelQueryUtil.getModelQuery(node.getOwnerDocument()).getAvailableContent((Element) node, elementDecl, ModelQuery.INCLUDE_ATTRIBUTES);</TD></TR><TR CLASS="z"><TD CLASS="l">145</TD><TD>                                for (int k = 0; k &lt; nodes.size(); k++) {</TD></TR><TR CLASS="z"><TD CLASS="l">146</TD><TD>                                        CMNode cmnode = (CMNode) nodes.get(k);</TD></TR><TR CLASS="z"><TD CLASS="l">147</TD><TD>                                        if (cmnode.getNodeType() == CMNode.ATTRIBUTE_DECLARATION) {</TD></TR><TR CLASS="z"><TD CLASS="l">148</TD><TD>                                                allAttributes.put(cmnode);</TD></TR><TR><TD CLASS="l">149</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">150</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">151</TD><TD>                                attrMap = allAttributes;</TD></TR><TR><TD CLASS="l">152</TD><TD>                                </TD></TR><TR CLASS="z"><TD CLASS="l">153</TD><TD>                                Iterator it = attrMap.iterator();</TD></TR><TR CLASS="z"><TD CLASS="l">154</TD><TD>                                CMAttributeDeclaration attr = null;</TD></TR><TR CLASS="z"><TD CLASS="l">155</TD><TD>                                while (it.hasNext()) {</TD></TR><TR CLASS="z"><TD CLASS="l">156</TD><TD>                                        attr = (CMAttributeDeclaration) it.next();</TD></TR><TR CLASS="z"><TD CLASS="l">157</TD><TD>                                        if (attr.getUsage() == CMAttributeDeclaration.REQUIRED) {</TD></TR><TR CLASS="z"><TD CLASS="l">158</TD><TD>                                                result.add(attr);</TD></TR><TR><TD CLASS="l">159</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">160</TD><TD>                                }</TD></TR><TR><TD CLASS="l">161</TD><TD>                        }</TD></TR><TR><TD CLASS="l">162</TD><TD>                }</TD></TR><TR><TD CLASS="l">163</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="b">164</A></TD><TD>                return result;</TD></TR><TR><TD CLASS="l">165</TD><TD>        }</TD></TR><TR><TD CLASS="l">166</TD><TD> </TD></TR><TR><TD CLASS="l">167</TD><TD>        private void getSurroundWithNewElementQuickAssistProposal(List proposals, ISourceViewer viewer, int offset) {</TD></TR><TR CLASS="z"><TD CLASS="l">168</TD><TD>                IDOMNode node = (IDOMNode) getNodeAt(viewer, offset);</TD></TR><TR CLASS="z"><TD CLASS="l">169</TD><TD>                if (node != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">170</TD><TD>                        proposals.add(new SurroundWithNewElementQuickAssistProposal());</TD></TR><TR><TD CLASS="l">171</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">172</TD><TD>        }</TD></TR><TR><TD CLASS="l">173</TD><TD> </TD></TR><TR><TD CLASS="l">174</TD><TD>        /**</TD></TR><TR><TD CLASS="l">175</TD><TD>         * Returns the closest IndexedRegion for the offset and viewer allowing</TD></TR><TR><TD CLASS="l">176</TD><TD>         * for differences between viewer offsets and model positions. note: this</TD></TR><TR><TD CLASS="l">177</TD><TD>         * method returns an IndexedRegion for read only</TD></TR><TR><TD CLASS="l">178</TD><TD>         * </TD></TR><TR><TD CLASS="l">179</TD><TD>         * @param viewer</TD></TR><TR><TD CLASS="l">180</TD><TD>         *            the viewer whose document is used to compute the proposals</TD></TR><TR><TD CLASS="l">181</TD><TD>         * @param documentOffset</TD></TR><TR><TD CLASS="l">182</TD><TD>         *            an offset within the document for which completions should</TD></TR><TR><TD CLASS="l">183</TD><TD>         *            be computed</TD></TR><TR><TD CLASS="l"><A NAME="9">184</A></TD><TD>         * @return an IndexedRegion</TD></TR><TR><TD CLASS="l">185</TD><TD>         */</TD></TR><TR><TD CLASS="l">186</TD><TD>        private IndexedRegion getNodeAt(ITextViewer viewer, int documentOffset) {</TD></TR><TR><TD CLASS="l">187</TD><TD>                // copied from ContentAssistUtils.getNodeAt()</TD></TR><TR CLASS="z"><TD CLASS="l">188</TD><TD>                if (viewer == null)</TD></TR><TR CLASS="z"><TD CLASS="l">189</TD><TD>                        return null;</TD></TR><TR><TD CLASS="l">190</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">191</TD><TD>                IndexedRegion node = null;</TD></TR><TR CLASS="z"><TD CLASS="l">192</TD><TD>                IModelManager mm = StructuredModelManager.getModelManager();</TD></TR><TR CLASS="z"><TD CLASS="l">193</TD><TD>                IStructuredModel model = null;</TD></TR><TR CLASS="z"><TD CLASS="l">194</TD><TD>                if (mm != null)</TD></TR><TR CLASS="z"><TD CLASS="l">195</TD><TD>                        model = mm.getExistingModelForRead(viewer.getDocument());</TD></TR><TR><TD CLASS="l">196</TD><TD>                try {</TD></TR><TR CLASS="z"><TD CLASS="l">197</TD><TD>                        if (model != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">198</TD><TD>                                int lastOffset = documentOffset;</TD></TR><TR CLASS="z"><TD CLASS="l">199</TD><TD>                                node = model.getIndexedRegion(documentOffset);</TD></TR><TR CLASS="z"><TD CLASS="l">200</TD><TD>                                while (node == null &amp;&amp; lastOffset &gt;= 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">201</TD><TD>                                        lastOffset--;</TD></TR><TR CLASS="z"><TD CLASS="l">202</TD><TD>                                        node = model.getIndexedRegion(lastOffset);</TD></TR><TR><TD CLASS="l">203</TD><TD>                                }</TD></TR><TR><TD CLASS="l">204</TD><TD>                        }</TD></TR><TR><TD CLASS="l">205</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">206</TD><TD>                finally {</TD></TR><TR CLASS="z"><TD CLASS="l">207</TD><TD>                        if (model != null)</TD></TR><TR CLASS="z"><TD CLASS="l">208</TD><TD>                                model.releaseFromRead();</TD></TR><TR CLASS="z"><TD CLASS="l">209</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">210</TD><TD>                return node;</TD></TR><TR><TD CLASS="l">211</TD><TD>        }</TD></TR><TR><TD CLASS="l">212</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="35.html">org.eclipse.wst.xml.ui.internal.correction</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1b2.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1b2.html
deleted file mode 100644
index c1fba18..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1b2.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="36.html">org.eclipse.wst.xml.ui.internal.dialogs</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">EditAttributeDialog.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>EditAttributeDialog.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/333)</TD><TD CLASS="h">0%   (0/75)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">EditAttributeDialog</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/333)</TD><TD CLASS="h">0%   (0/75)</TD></TR><TR><TD CLASS="f"><A HREF="#0">EditAttributeDialog (Shell, Element, Attr): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/16)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">buttonPressed (int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/18)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#3">createButtonsForButtonBar (Composite): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/16)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">createContents (Composite): Control</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#5">createDialogArea (Composite): Control</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/194)</TD><TD CLASS="h">0%   (0/37)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">getAttributeName (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#7">getAttributeValue (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">getDisplayValue (String): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#9">getModelValue (String): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">modifyText (ModifyEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#b">updateErrorMessage (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/47)</TD><TD CLASS="h">0%   (0/11)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.ui.internal.dialogs;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.jface.dialogs.Dialog;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.jface.dialogs.IDialogConstants;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.swt.SWT;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.swt.events.ModifyEvent;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.swt.events.ModifyListener;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.swt.graphics.Color;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.swt.layout.GridData;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.swt.layout.GridLayout;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.swt.widgets.Button;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.swt.widgets.Composite;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.swt.widgets.Control;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.swt.widgets.Label;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.swt.widgets.Shell;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.swt.widgets.Text;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.ui.PlatformUI;</TD></TR><TR><TD CLASS="l">30</TD><TD>import org.eclipse.wst.xml.ui.internal.XMLUIMessages;</TD></TR><TR><TD CLASS="l">31</TD><TD>import org.eclipse.wst.xml.ui.internal.util.XMLCommonUIContextIds;</TD></TR><TR><TD CLASS="l">32</TD><TD>import org.w3c.dom.Attr;</TD></TR><TR><TD CLASS="l">33</TD><TD>import org.w3c.dom.Element;</TD></TR><TR><TD CLASS="l">34</TD><TD> </TD></TR><TR><TD CLASS="l">35</TD><TD>public class EditAttributeDialog extends Dialog implements ModifyListener {</TD></TR><TR><TD CLASS="l">36</TD><TD>        protected Attr attribute;</TD></TR><TR><TD CLASS="l">37</TD><TD>        protected String attributeName;</TD></TR><TR><TD CLASS="l">38</TD><TD>        protected Text attributeNameField;</TD></TR><TR><TD CLASS="l">39</TD><TD>        protected String attributeValue;</TD></TR><TR><TD CLASS="l">40</TD><TD>        protected Text attributeValueField;</TD></TR><TR><TD CLASS="l">41</TD><TD>        protected Label errorMessageLabel;</TD></TR><TR><TD CLASS="l"><A NAME="0">42</A></TD><TD>        protected Button okButton;</TD></TR><TR><TD CLASS="l">43</TD><TD>        protected Element ownerElement;</TD></TR><TR><TD CLASS="l">44</TD><TD> </TD></TR><TR><TD CLASS="l">45</TD><TD>        public EditAttributeDialog(Shell parentShell, Element ownerElement, Attr attribute) {</TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>                super(parentShell);</TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>                setShellStyle(getShellStyle() | SWT.RESIZE);</TD></TR><TR CLASS="z"><TD CLASS="l">48</TD><TD>                this.ownerElement = ownerElement;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">49</A></TD><TD>                this.attribute = attribute;</TD></TR><TR CLASS="z"><TD CLASS="l">50</TD><TD>        }</TD></TR><TR><TD CLASS="l">51</TD><TD> </TD></TR><TR><TD CLASS="l">52</TD><TD>        protected void buttonPressed(int buttonId) {</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>                if (buttonId == IDialogConstants.OK_ID) {</TD></TR><TR CLASS="z"><TD CLASS="l">54</TD><TD>                        attributeName = getModelValue(attributeNameField.getText());</TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                        attributeValue = attributeValueField.getText();</TD></TR><TR><TD CLASS="l">56</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">57</A></TD><TD>                super.buttonPressed(buttonId);</TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>        }</TD></TR><TR><TD CLASS="l">59</TD><TD> </TD></TR><TR><TD CLASS="l">60</TD><TD>        protected void createButtonsForButtonBar(Composite parent) {</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                okButton = createButton(parent, IDialogConstants.OK_ID, IDialogConstants.OK_LABEL, true);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">62</A></TD><TD>                createButton(parent, IDialogConstants.CANCEL_ID, IDialogConstants.CANCEL_LABEL, false);</TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>        }</TD></TR><TR><TD CLASS="l">64</TD><TD> </TD></TR><TR><TD CLASS="l">65</TD><TD>        protected Control createContents(Composite parent) {</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                Control control = super.createContents(parent);</TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>                attributeNameField.forceFocus();</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>                attributeNameField.selectAll();</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                updateErrorMessage();</TD></TR><TR CLASS="z"><TD CLASS="l">70</TD><TD>                return control;</TD></TR><TR><TD CLASS="l"><A NAME="5">71</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">72</TD><TD> </TD></TR><TR><TD CLASS="l">73</TD><TD> </TD></TR><TR><TD CLASS="l">74</TD><TD>        protected Control createDialogArea(Composite parent) {</TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>                Composite dialogArea = (Composite) super.createDialogArea(parent);</TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>                PlatformUI.getWorkbench().getHelpSystem().setHelp(dialogArea, XMLCommonUIContextIds.XCUI_ATTRIBUTE_DIALOG);</TD></TR><TR><TD CLASS="l">77</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">78</TD><TD>                Composite composite = new Composite(dialogArea, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">79</TD><TD>                GridLayout layout = new GridLayout();</TD></TR><TR CLASS="z"><TD CLASS="l">80</TD><TD>                layout.numColumns = 2;</TD></TR><TR CLASS="z"><TD CLASS="l">81</TD><TD>                layout.marginWidth = 0;</TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>                composite.setLayout(layout);</TD></TR><TR><TD CLASS="l">83</TD><TD> </TD></TR><TR><TD CLASS="l">84</TD><TD>                //</TD></TR><TR><TD CLASS="l">85</TD><TD>                // Style convenience constants</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                composite.setLayoutData(new GridData(GridData.FILL_BOTH));</TD></TR><TR><TD CLASS="l">87</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">88</TD><TD>                Label attributeNameLabel = new Label(composite, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">89</TD><TD>                attributeNameLabel.setText(XMLUIMessages._UI_LABEL_NAME_COLON);</TD></TR><TR><TD CLASS="l">90</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">91</TD><TD>                attributeNameField = new Text(composite, SWT.SINGLE | SWT.BORDER);</TD></TR><TR CLASS="z"><TD CLASS="l">92</TD><TD>                GridData gd = new GridData(GridData.FILL_HORIZONTAL);</TD></TR><TR CLASS="z"><TD CLASS="l">93</TD><TD>                gd.widthHint = 300;</TD></TR><TR CLASS="z"><TD CLASS="l">94</TD><TD>                attributeNameField.setLayoutData(gd);</TD></TR><TR CLASS="z"><TD CLASS="l">95</TD><TD>                attributeNameField.setText(getDisplayValue(attribute != null ? attribute.getName() : &#34;&#34;)); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">96</TD><TD>                attributeNameField.addModifyListener(this);</TD></TR><TR><TD CLASS="l">97</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">98</TD><TD>                Label attributeValueLabel = new Label(composite, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">99</TD><TD>                attributeValueLabel.setText(XMLUIMessages._UI_LABEL_VALUE_COLON);</TD></TR><TR><TD CLASS="l">100</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">101</TD><TD>                String value = attribute != null ? attribute.getValue() : &#34;&#34;; //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">102</TD><TD>                int style = SWT.SINGLE | SWT.BORDER;</TD></TR><TR CLASS="z"><TD CLASS="l">103</TD><TD>                if (value.indexOf(&#34;\n&#34;) != -1) { //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">104</TD><TD>                        style = SWT.MULTI | SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL;</TD></TR><TR><TD CLASS="l">105</TD><TD>                }</TD></TR><TR><TD CLASS="l">106</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">107</TD><TD>                attributeValueField = new Text(composite, style);</TD></TR><TR CLASS="z"><TD CLASS="l">108</TD><TD>                gd = new GridData(GridData.FILL_HORIZONTAL);</TD></TR><TR CLASS="z"><TD CLASS="l">109</TD><TD>                gd.widthHint = 300;</TD></TR><TR CLASS="z"><TD CLASS="l">110</TD><TD>                attributeValueField.setLayoutData(gd);</TD></TR><TR CLASS="z"><TD CLASS="l">111</TD><TD>                attributeValueField.setText(getDisplayValue(attribute != null ? attribute.getValue() : &#34;&#34;)); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">112</TD><TD> </TD></TR><TR><TD CLASS="l">113</TD><TD>                // error message</TD></TR><TR CLASS="z"><TD CLASS="l">114</TD><TD>                errorMessageLabel = new Label(composite, SWT.WRAP);</TD></TR><TR CLASS="z"><TD CLASS="l">115</TD><TD>                errorMessageLabel.setText(XMLUIMessages.error_message_goes_here);</TD></TR><TR CLASS="z"><TD CLASS="l">116</TD><TD>                gd = new GridData(GridData.FILL_HORIZONTAL);</TD></TR><TR CLASS="z"><TD CLASS="l">117</TD><TD>                gd.widthHint = 200;</TD></TR><TR CLASS="z"><TD CLASS="l">118</TD><TD>                gd.heightHint = Math.max(30, errorMessageLabel.computeSize(0, 0, false).y * 2);</TD></TR><TR CLASS="z"><TD CLASS="l">119</TD><TD>                gd.horizontalSpan = 2;</TD></TR><TR CLASS="z"><TD CLASS="l">120</TD><TD>                errorMessageLabel.setLayoutData(gd);</TD></TR><TR CLASS="z"><TD CLASS="l">121</TD><TD>                Color color = new Color(errorMessageLabel.getDisplay(), 200, 0, 0);</TD></TR><TR CLASS="z"><TD CLASS="l">122</TD><TD>                errorMessageLabel.setForeground(color);</TD></TR><TR><TD CLASS="l">123</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="6">124</A></TD><TD>                return dialogArea;</TD></TR><TR><TD CLASS="l">125</TD><TD>        }</TD></TR><TR><TD CLASS="l">126</TD><TD> </TD></TR><TR><TD CLASS="l">127</TD><TD>        public String getAttributeName() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="7">128</A></TD><TD>                return attributeName;</TD></TR><TR><TD CLASS="l">129</TD><TD>        }</TD></TR><TR><TD CLASS="l">130</TD><TD> </TD></TR><TR><TD CLASS="l">131</TD><TD>        public String getAttributeValue() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="8">132</A></TD><TD>                return attributeValue;</TD></TR><TR><TD CLASS="l">133</TD><TD>        }</TD></TR><TR><TD CLASS="l">134</TD><TD> </TD></TR><TR><TD CLASS="l">135</TD><TD>        protected String getDisplayValue(String string) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="9">136</A></TD><TD>                return string != null ? string : &#34;&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">137</TD><TD>        }</TD></TR><TR><TD CLASS="l">138</TD><TD> </TD></TR><TR><TD CLASS="l">139</TD><TD>        protected String getModelValue(String string) {</TD></TR><TR CLASS="z"><TD CLASS="l">140</TD><TD>                String result = null;</TD></TR><TR CLASS="z"><TD CLASS="l">141</TD><TD>                if ((string != null) &amp;&amp; (string.trim().length() &gt; 0)) {</TD></TR><TR CLASS="z"><TD CLASS="l">142</TD><TD>                        result = string;</TD></TR><TR><TD CLASS="l">143</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="a">144</A></TD><TD>                return result;</TD></TR><TR><TD CLASS="l">145</TD><TD>        }</TD></TR><TR><TD CLASS="l">146</TD><TD> </TD></TR><TR><TD CLASS="l">147</TD><TD>        public void modifyText(ModifyEvent e) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="b">148</A></TD><TD>                updateErrorMessage();</TD></TR><TR CLASS="z"><TD CLASS="l">149</TD><TD>        }</TD></TR><TR><TD CLASS="l">150</TD><TD> </TD></TR><TR><TD CLASS="l">151</TD><TD>        protected void updateErrorMessage() {</TD></TR><TR CLASS="z"><TD CLASS="l">152</TD><TD>                String errorMessage = null;</TD></TR><TR CLASS="z"><TD CLASS="l">153</TD><TD>                String name = attributeNameField.getText().trim();</TD></TR><TR CLASS="z"><TD CLASS="l">154</TD><TD>                if (name.length() &gt; 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">155</TD><TD>                        Attr matchingAttribute = ownerElement.getAttributeNode(name);</TD></TR><TR CLASS="z"><TD CLASS="l">156</TD><TD>                        if ((matchingAttribute != null) &amp;&amp; (matchingAttribute != attribute)) {</TD></TR><TR CLASS="z"><TD CLASS="l">157</TD><TD>                                errorMessage = XMLUIMessages._ERROR_XML_ATTRIBUTE_ALREADY_EXISTS;</TD></TR><TR><TD CLASS="l">158</TD><TD>                        }</TD></TR><TR><TD CLASS="l">159</TD><TD>                        else {</TD></TR><TR><TD CLASS="l">160</TD><TD>                                // TODO get checkName from Model</TD></TR><TR><TD CLASS="l">161</TD><TD>                                // errorMessage = ValidateHelper.checkXMLName(name);</TD></TR><TR><TD CLASS="l">162</TD><TD>                        }</TD></TR><TR><TD CLASS="l">163</TD><TD>                }</TD></TR><TR><TD CLASS="l">164</TD><TD>                else {</TD></TR><TR CLASS="z"><TD CLASS="l">165</TD><TD>                        errorMessage = &#34;&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">166</TD><TD>                }</TD></TR><TR><TD CLASS="l">167</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">168</TD><TD>                errorMessageLabel.setText(errorMessage != null ? errorMessage : &#34;&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">169</TD><TD>                errorMessageLabel.getParent().layout();</TD></TR><TR CLASS="z"><TD CLASS="l">170</TD><TD>                okButton.setEnabled(errorMessage == null);</TD></TR><TR CLASS="z"><TD CLASS="l">171</TD><TD>        }</TD></TR><TR><TD CLASS="l">172</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="36.html">org.eclipse.wst.xml.ui.internal.dialogs</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1b3.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1b3.html
deleted file mode 100644
index 908620d..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1b3.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="36.html">org.eclipse.wst.xml.ui.internal.dialogs</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">EditDoctypeDialog.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>EditDoctypeDialog.java</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/21)</TD><TD CLASS="h">0%   (0/510)</TD><TD CLASS="h">0%   (0/104)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">EditDoctypeDialog</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/17)</TD><TD CLASS="h">0%   (0/438)</TD><TD CLASS="h">0%   (0/93)</TD></TR><TR><TD CLASS="f"><A HREF="#0">EditDoctypeDialog (Shell, DocumentType): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">EditDoctypeDialog (Shell, String, String, String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/29)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR><TD CLASS="f"><A HREF="#3">buttonPressed (int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/31)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">createButtonsForButtonBar (Composite): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/16)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#5">createContents (Composite): Control</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">createDialogArea (Composite): Control</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/249)</TD><TD CLASS="h">0%   (0/47)</TD></TR><TR><TD CLASS="f"><A HREF="#7">createMessageArea (Composite): Label</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">getDisplayValue (String): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#9">getErrorChecking (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">getModelValue (String): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#b">getName (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#c">getPublicId (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#d">getSystemId (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#e">setComputeSystemId (boolean): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#f">setErrorChecking (boolean): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#10">setResourceLocation (IPath): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#11">updateErrorMessage (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/39)</TD><TD CLASS="h">0%   (0/9)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#12">EditDoctypeDialog$1</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/20)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#12">EditDoctypeDialog$1 (EditDoctypeDialog): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#14">modifyText (ModifyEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/14)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#15">EditDoctypeDialog$2</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/52)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR><TD CLASS="f"><A HREF="#15">EditDoctypeDialog$2 (EditDoctypeDialog): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#17">widgetSelected (SelectionEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/46)</TD><TD CLASS="h">0%   (0/6)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR CLASS="z"><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *           David Schneider, david.schneider@unisys.com - [142500] WTP properties pages fonts don't follow Eclipse preferences</TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.ui.internal.dialogs;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.core.runtime.IPath;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.jface.dialogs.Dialog;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.jface.dialogs.IDialogConstants;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.swt.SWT;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.swt.events.ModifyEvent;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.swt.events.ModifyListener;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.swt.events.SelectionAdapter;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.swt.events.SelectionEvent;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.swt.events.SelectionListener;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.swt.graphics.Color;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.swt.layout.GridData;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.swt.layout.GridLayout;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.swt.widgets.Button;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.swt.widgets.Composite;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.swt.widgets.Control;</TD></TR><TR><TD CLASS="l">30</TD><TD>import org.eclipse.swt.widgets.Label;</TD></TR><TR><TD CLASS="l">31</TD><TD>import org.eclipse.swt.widgets.Shell;</TD></TR><TR><TD CLASS="l">32</TD><TD>import org.eclipse.swt.widgets.Text;</TD></TR><TR><TD CLASS="l">33</TD><TD>import org.eclipse.ui.PlatformUI;</TD></TR><TR><TD CLASS="l">34</TD><TD>import org.eclipse.wst.xml.ui.internal.XMLUIMessages;</TD></TR><TR><TD CLASS="l">35</TD><TD>import org.eclipse.wst.xml.ui.internal.util.XMLCommonUIContextIds;</TD></TR><TR><TD CLASS="l">36</TD><TD>import org.w3c.dom.DocumentType;</TD></TR><TR><TD CLASS="l">37</TD><TD> </TD></TR><TR><TD CLASS="l">38</TD><TD>public class EditDoctypeDialog extends Dialog {</TD></TR><TR><TD CLASS="l">39</TD><TD>        protected boolean computeSystemId;</TD></TR><TR><TD CLASS="l">40</TD><TD>        protected String[] doctypeData;</TD></TR><TR><TD CLASS="l">41</TD><TD>        protected boolean errorChecking;</TD></TR><TR><TD CLASS="l">42</TD><TD>        protected Label errorMessageLabel;</TD></TR><TR><TD CLASS="l">43</TD><TD>        protected Button okButton;</TD></TR><TR><TD CLASS="l">44</TD><TD>        protected Button publicIdBrowseButton;</TD></TR><TR><TD CLASS="l">45</TD><TD>        protected Text publicIdField;</TD></TR><TR><TD CLASS="l">46</TD><TD>        protected IPath resourceLocation;</TD></TR><TR><TD CLASS="l">47</TD><TD>        protected Text rootElementNameField;</TD></TR><TR><TD CLASS="l"><A NAME="0">48</A></TD><TD>        protected Button systemIdBrowseButton;</TD></TR><TR><TD CLASS="l">49</TD><TD>        protected Text systemIdField;</TD></TR><TR><TD CLASS="l">50</TD><TD> </TD></TR><TR><TD CLASS="l">51</TD><TD>        public EditDoctypeDialog(Shell parentShell, DocumentType doctype) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">52</A></TD><TD>                this(parentShell, doctype.getName(), doctype.getPublicId(), doctype.getSystemId());</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>        }</TD></TR><TR><TD CLASS="l">54</TD><TD> </TD></TR><TR><TD CLASS="l">55</TD><TD>        public EditDoctypeDialog(Shell parentShell, String name, String publicId, String systemId) {</TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>                super(parentShell);</TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>                setShellStyle(getShellStyle() | SWT.RESIZE);</TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>                doctypeData = new String[3];</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>                doctypeData[0] = name;</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                doctypeData[1] = publicId;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">61</A></TD><TD>                doctypeData[2] = systemId;</TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>        }</TD></TR><TR><TD CLASS="l">63</TD><TD> </TD></TR><TR><TD CLASS="l">64</TD><TD>        protected void buttonPressed(int buttonId) {</TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>                doctypeData[0] = getModelValue(rootElementNameField.getText());</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                doctypeData[1] = getModelValue(publicIdField.getText());</TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>                doctypeData[2] = getModelValue(systemIdField.getText());</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">68</A></TD><TD>                super.buttonPressed(buttonId);</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>        }</TD></TR><TR><TD CLASS="l">70</TD><TD> </TD></TR><TR><TD CLASS="l">71</TD><TD>        protected void createButtonsForButtonBar(Composite parent) {</TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>                okButton = createButton(parent, IDialogConstants.OK_ID, IDialogConstants.OK_LABEL, true);</TD></TR><TR CLASS="z"><TD CLASS="l">73</TD><TD>                createButton(parent, IDialogConstants.CANCEL_ID, IDialogConstants.CANCEL_LABEL, false);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="5">74</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">75</TD><TD> </TD></TR><TR><TD CLASS="l">76</TD><TD> </TD></TR><TR><TD CLASS="l">77</TD><TD>        protected Control createContents(Composite parent) {</TD></TR><TR CLASS="z"><TD CLASS="l">78</TD><TD>                Control control = super.createContents(parent);</TD></TR><TR CLASS="z"><TD CLASS="l">79</TD><TD>                updateErrorMessage();</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="6">80</A></TD><TD>                return control;</TD></TR><TR><TD CLASS="l">81</TD><TD>        }</TD></TR><TR><TD CLASS="l">82</TD><TD> </TD></TR><TR><TD CLASS="l">83</TD><TD>        protected Control createDialogArea(Composite parent) {</TD></TR><TR CLASS="z"><TD CLASS="l">84</TD><TD>                Composite dialogControl = (Composite) super.createDialogArea(parent);</TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>                PlatformUI.getWorkbench().getHelpSystem().setHelp(dialogControl, XMLCommonUIContextIds.XCUI_DOCTYPE_DIALOG);</TD></TR><TR><TD CLASS="l">86</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>                Composite composite = new Composite(dialogControl, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">88</TD><TD>                GridLayout layout = new GridLayout();</TD></TR><TR CLASS="z"><TD CLASS="l">89</TD><TD>                layout.numColumns = 3;</TD></TR><TR CLASS="z"><TD CLASS="l">90</TD><TD>                layout.marginWidth = 0;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="12">91</A></TD><TD>                composite.setLayout(layout);</TD></TR><TR CLASS="z"><TD CLASS="l">92</TD><TD>                composite.setLayoutData(new GridData(GridData.FILL_BOTH));</TD></TR><TR><TD CLASS="l"><A NAME="14">93</A></TD><TD> </TD></TR><TR><TD CLASS="l">94</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">95</TD><TD>                ModifyListener modifyListener = new ModifyListener() {</TD></TR><TR><TD CLASS="l">96</TD><TD>                        public void modifyText(ModifyEvent e) {</TD></TR><TR CLASS="z"><TD CLASS="l">97</TD><TD>                                if (e.widget == systemIdField) {</TD></TR><TR CLASS="z"><TD CLASS="l">98</TD><TD>                                        computeSystemId = false;</TD></TR><TR><TD CLASS="l">99</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">100</TD><TD>                                updateErrorMessage();</TD></TR><TR CLASS="z"><TD CLASS="l">101</TD><TD>                        }</TD></TR><TR><TD CLASS="l">102</TD><TD>                };</TD></TR><TR><TD CLASS="l">103</TD><TD> </TD></TR><TR><TD CLASS="l">104</TD><TD>                // row 1</TD></TR><TR><TD CLASS="l">105</TD><TD>                //</TD></TR><TR CLASS="z"><TD CLASS="l">106</TD><TD>                Label rootElementNameLabel = new Label(composite, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">107</TD><TD>                rootElementNameLabel.setText(XMLUIMessages._UI_LABEL_ROOT_ELEMENT_NAME_COLON);</TD></TR><TR><TD CLASS="l">108</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">109</TD><TD>                rootElementNameField = new Text(composite, SWT.SINGLE | SWT.BORDER);</TD></TR><TR CLASS="z"><TD CLASS="l">110</TD><TD>                PlatformUI.getWorkbench().getHelpSystem().setHelp(rootElementNameField, XMLCommonUIContextIds.XCUI_DOCTYPE_ROOT);</TD></TR><TR CLASS="z"><TD CLASS="l">111</TD><TD>                GridData gd = new GridData(GridData.FILL_HORIZONTAL);</TD></TR><TR CLASS="z"><TD CLASS="l">112</TD><TD>                gd.widthHint = 200;</TD></TR><TR CLASS="z"><TD CLASS="l">113</TD><TD>                rootElementNameField.setLayoutData(gd);</TD></TR><TR CLASS="z"><TD CLASS="l">114</TD><TD>                rootElementNameField.setText(getDisplayValue(doctypeData[0]));</TD></TR><TR CLASS="z"><TD CLASS="l">115</TD><TD>                rootElementNameField.addModifyListener(modifyListener);</TD></TR><TR><TD CLASS="l">116</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">117</TD><TD>                Label placeHolder = new Label(composite, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">118</TD><TD>                placeHolder.setLayoutData(new GridData());</TD></TR><TR><TD CLASS="l">119</TD><TD> </TD></TR><TR><TD CLASS="l">120</TD><TD>                // row 2</TD></TR><TR><TD CLASS="l">121</TD><TD>                //</TD></TR><TR CLASS="z"><TD CLASS="l">122</TD><TD>                Label publicIdLabel = new Label(composite, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">123</TD><TD>                publicIdLabel.setText(XMLUIMessages._UI_LABEL_PUBLIC_ID_COLON);</TD></TR><TR><TD CLASS="l">124</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">125</TD><TD>                publicIdField = new Text(composite, SWT.SINGLE | SWT.BORDER);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="15">126</A></TD><TD>                PlatformUI.getWorkbench().getHelpSystem().setHelp(publicIdField, XMLCommonUIContextIds.XCUI_DOCTYPE_PUBLIC);</TD></TR><TR CLASS="z"><TD CLASS="l">127</TD><TD>                publicIdField.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="17">128</A></TD><TD>                publicIdField.setText(getDisplayValue(doctypeData[1]));</TD></TR><TR><TD CLASS="l">129</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">130</TD><TD>                SelectionListener selectionListener = new SelectionAdapter() {</TD></TR><TR><TD CLASS="l">131</TD><TD>                        public void widgetSelected(SelectionEvent e) {</TD></TR><TR CLASS="z"><TD CLASS="l">132</TD><TD>                                EditEntityHelper helper = new EditEntityHelper();</TD></TR><TR CLASS="z"><TD CLASS="l">133</TD><TD>                                if (e.widget == publicIdBrowseButton) {</TD></TR><TR CLASS="z"><TD CLASS="l">134</TD><TD>                                        helper.performBrowseForPublicId(getShell(), publicIdField, computeSystemId ? systemIdField : null);</TD></TR><TR><TD CLASS="l">135</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">136</TD><TD>                                else if (e.widget == systemIdBrowseButton) {</TD></TR><TR CLASS="z"><TD CLASS="l">137</TD><TD>                                        helper.performBrowseForSystemId(getShell(), systemIdField, resourceLocation);</TD></TR><TR><TD CLASS="l">138</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">139</TD><TD>                        }</TD></TR><TR><TD CLASS="l">140</TD><TD>                };</TD></TR><TR><TD CLASS="l">141</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">142</TD><TD>                publicIdBrowseButton = new Button(composite, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">143</TD><TD>                publicIdBrowseButton.setText(XMLUIMessages._UI_LABEL_BROWSE);</TD></TR><TR CLASS="z"><TD CLASS="l">144</TD><TD>                publicIdBrowseButton.addSelectionListener(selectionListener);</TD></TR><TR><TD CLASS="l">145</TD><TD> </TD></TR><TR><TD CLASS="l">146</TD><TD>                // row 3</TD></TR><TR CLASS="z"><TD CLASS="l">147</TD><TD>                Label systemIdLabel = new Label(composite, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">148</TD><TD>                systemIdLabel.setText(XMLUIMessages._UI_LABEL_SYSTEM_ID_COLON);</TD></TR><TR><TD CLASS="l">149</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">150</TD><TD>                systemIdField = new Text(composite, SWT.SINGLE | SWT.BORDER);</TD></TR><TR CLASS="z"><TD CLASS="l">151</TD><TD>                PlatformUI.getWorkbench().getHelpSystem().setHelp(systemIdField, XMLCommonUIContextIds.XCUI_DOCTYPE_SYSTEM);</TD></TR><TR CLASS="z"><TD CLASS="l">152</TD><TD>                systemIdField.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));</TD></TR><TR CLASS="z"><TD CLASS="l">153</TD><TD>                systemIdField.setText(getDisplayValue(doctypeData[2]));</TD></TR><TR CLASS="z"><TD CLASS="l">154</TD><TD>                systemIdField.addModifyListener(modifyListener);</TD></TR><TR><TD CLASS="l">155</TD><TD> </TD></TR><TR><TD CLASS="l">156</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">157</TD><TD>                systemIdBrowseButton = new Button(composite, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">158</TD><TD>                systemIdBrowseButton.setText(XMLUIMessages._UI_LABEL_BROWSE);</TD></TR><TR CLASS="z"><TD CLASS="l">159</TD><TD>                systemIdBrowseButton.addSelectionListener(selectionListener);</TD></TR><TR><TD CLASS="l">160</TD><TD> </TD></TR><TR><TD CLASS="l">161</TD><TD>                // error message</TD></TR><TR CLASS="z"><TD CLASS="l">162</TD><TD>                errorMessageLabel = new Label(dialogControl, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">163</TD><TD>                errorMessageLabel.setText(&#34;&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">164</TD><TD>                errorMessageLabel.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));</TD></TR><TR CLASS="z"><TD CLASS="l">165</TD><TD>                Color color = new Color(errorMessageLabel.getDisplay(), 200, 0, 0);</TD></TR><TR CLASS="z"><TD CLASS="l">166</TD><TD>                errorMessageLabel.setForeground(color);</TD></TR><TR><TD CLASS="l">167</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">168</TD><TD>                Dialog.applyDialogFont(parent);</TD></TR><TR CLASS="z"><TD CLASS="l">169</TD><TD>                return dialogControl;</TD></TR><TR><TD CLASS="l"><A NAME="7">170</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">171</TD><TD> </TD></TR><TR><TD CLASS="l">172</TD><TD> </TD></TR><TR><TD CLASS="l">173</TD><TD>        protected Label createMessageArea(Composite composite) {</TD></TR><TR CLASS="z"><TD CLASS="l">174</TD><TD>                Label label = new Label(composite, SWT.NONE);</TD></TR><TR><TD CLASS="l">175</TD><TD>                // label.setText(message);</TD></TR><TR CLASS="z"><TD CLASS="l">176</TD><TD>                return label;</TD></TR><TR><TD CLASS="l"><A NAME="8">177</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">178</TD><TD> </TD></TR><TR><TD CLASS="l">179</TD><TD> </TD></TR><TR><TD CLASS="l">180</TD><TD>        protected String getDisplayValue(String string) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="9">181</A></TD><TD>                return string != null ? string : &#34;&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">182</TD><TD>        }</TD></TR><TR><TD CLASS="l">183</TD><TD> </TD></TR><TR><TD CLASS="l">184</TD><TD>        public boolean getErrorChecking() {</TD></TR><TR CLASS="z"><TD CLASS="l">185</TD><TD>                return errorChecking;</TD></TR><TR><TD CLASS="l"><A NAME="a">186</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">187</TD><TD> </TD></TR><TR><TD CLASS="l">188</TD><TD> </TD></TR><TR><TD CLASS="l">189</TD><TD>        protected String getModelValue(String string) {</TD></TR><TR CLASS="z"><TD CLASS="l">190</TD><TD>                String result = null;</TD></TR><TR CLASS="z"><TD CLASS="l">191</TD><TD>                if ((string != null) &amp;&amp; (string.trim().length() &gt; 0)) {</TD></TR><TR CLASS="z"><TD CLASS="l">192</TD><TD>                        result = string;</TD></TR><TR><TD CLASS="l">193</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="b">194</A></TD><TD>                return result;</TD></TR><TR><TD CLASS="l">195</TD><TD>        }</TD></TR><TR><TD CLASS="l">196</TD><TD> </TD></TR><TR><TD CLASS="l">197</TD><TD>        public String getName() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="c">198</A></TD><TD>                return doctypeData[0];</TD></TR><TR><TD CLASS="l">199</TD><TD>        }</TD></TR><TR><TD CLASS="l">200</TD><TD> </TD></TR><TR><TD CLASS="l">201</TD><TD>        public String getPublicId() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="d">202</A></TD><TD>                return doctypeData[1];</TD></TR><TR><TD CLASS="l">203</TD><TD>        }</TD></TR><TR><TD CLASS="l">204</TD><TD> </TD></TR><TR><TD CLASS="l">205</TD><TD>        public String getSystemId() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="e">206</A></TD><TD>                return doctypeData[2];</TD></TR><TR><TD CLASS="l">207</TD><TD>        }</TD></TR><TR><TD CLASS="l">208</TD><TD> </TD></TR><TR><TD CLASS="l">209</TD><TD>        public void setComputeSystemId(boolean computeSystemId) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="f">210</A></TD><TD>                this.computeSystemId = computeSystemId;</TD></TR><TR CLASS="z"><TD CLASS="l">211</TD><TD>        }</TD></TR><TR><TD CLASS="l">212</TD><TD> </TD></TR><TR><TD CLASS="l">213</TD><TD>        public void setErrorChecking(boolean errorChecking) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="10">214</A></TD><TD>                this.errorChecking = errorChecking;</TD></TR><TR CLASS="z"><TD CLASS="l">215</TD><TD>        }</TD></TR><TR><TD CLASS="l">216</TD><TD> </TD></TR><TR><TD CLASS="l">217</TD><TD>        public void setResourceLocation(IPath path) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="11">218</A></TD><TD>                resourceLocation = path;</TD></TR><TR CLASS="z"><TD CLASS="l">219</TD><TD>        }</TD></TR><TR><TD CLASS="l">220</TD><TD> </TD></TR><TR><TD CLASS="l">221</TD><TD>        public void updateErrorMessage() {</TD></TR><TR CLASS="z"><TD CLASS="l">222</TD><TD>                if (errorChecking) {</TD></TR><TR CLASS="z"><TD CLASS="l">223</TD><TD>                        String errorMessage = null;</TD></TR><TR CLASS="z"><TD CLASS="l">224</TD><TD>                        if (getModelValue(systemIdField.getText()) == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">225</TD><TD>                                errorMessage = XMLUIMessages._UI_WARNING_SYSTEM_ID_MUST_BE_SPECIFIED;</TD></TR><TR><TD CLASS="l">226</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">227</TD><TD>                        else if (getModelValue(rootElementNameField.getText()) == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">228</TD><TD>                                errorMessage = XMLUIMessages._UI_WARNING_ROOT_ELEMENT_MUST_BE_SPECIFIED;</TD></TR><TR><TD CLASS="l">229</TD><TD>                        }</TD></TR><TR><TD CLASS="l">230</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">231</TD><TD>                        errorMessageLabel.setText(errorMessage != null ? errorMessage : &#34;&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">232</TD><TD>                        okButton.setEnabled(errorMessage == null);</TD></TR><TR><TD CLASS="l">233</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">234</TD><TD>        }</TD></TR><TR><TD CLASS="l">235</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="36.html">org.eclipse.wst.xml.ui.internal.dialogs</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1b4.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1b4.html
deleted file mode 100644
index 1702d48..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1b4.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="36.html">org.eclipse.wst.xml.ui.internal.dialogs</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">EditElementDialog.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>EditElementDialog.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/234)</TD><TD CLASS="h">0%   (0/57)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">EditElementDialog</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/234)</TD><TD CLASS="h">0%   (0/57)</TD></TR><TR><TD CLASS="f"><A HREF="#0">EditElementDialog (Shell, Element): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">buttonPressed (int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#3">createButtonsForButtonBar (Composite): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/16)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">createContents (Composite): Control</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#5">createDialogArea (Composite): Control</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/119)</TD><TD CLASS="h">0%   (0/24)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">getDisplayValue (String): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#7">getElementName (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">getModelValue (String): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#9">modifyText (ModifyEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">updateErrorMessage (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/34)</TD><TD CLASS="h">0%   (0/9)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.ui.internal.dialogs;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.jface.dialogs.Dialog;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.jface.dialogs.IDialogConstants;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.swt.SWT;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.swt.events.ModifyEvent;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.swt.events.ModifyListener;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.swt.graphics.Color;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.swt.layout.GridData;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.swt.layout.GridLayout;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.swt.widgets.Button;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.swt.widgets.Composite;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.swt.widgets.Control;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.swt.widgets.Label;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.swt.widgets.Shell;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.swt.widgets.Text;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.ui.PlatformUI;</TD></TR><TR><TD CLASS="l">30</TD><TD>import org.eclipse.wst.xml.core.internal.provisional.NameValidator;</TD></TR><TR><TD CLASS="l">31</TD><TD>import org.eclipse.wst.xml.ui.internal.XMLUIMessages;</TD></TR><TR><TD CLASS="l">32</TD><TD>import org.eclipse.wst.xml.ui.internal.util.XMLCommonUIContextIds;</TD></TR><TR><TD CLASS="l">33</TD><TD>import org.w3c.dom.Element;</TD></TR><TR><TD CLASS="l">34</TD><TD> </TD></TR><TR><TD CLASS="l">35</TD><TD>public class EditElementDialog extends Dialog implements ModifyListener {</TD></TR><TR><TD CLASS="l">36</TD><TD>        protected Element element;</TD></TR><TR><TD CLASS="l">37</TD><TD>        protected String elementName;</TD></TR><TR><TD CLASS="l">38</TD><TD>        protected Text elementNameField;</TD></TR><TR><TD CLASS="l"><A NAME="0">39</A></TD><TD>        protected Label errorMessageLabel;</TD></TR><TR><TD CLASS="l">40</TD><TD>        protected Button okButton;</TD></TR><TR><TD CLASS="l">41</TD><TD> </TD></TR><TR><TD CLASS="l">42</TD><TD>        public EditElementDialog(Shell parentShell, Element element) {</TD></TR><TR CLASS="z"><TD CLASS="l">43</TD><TD>                super(parentShell);</TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>                setShellStyle(getShellStyle() | SWT.RESIZE);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">45</A></TD><TD>                this.element = element;</TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>        }</TD></TR><TR><TD CLASS="l">47</TD><TD> </TD></TR><TR><TD CLASS="l">48</TD><TD>        protected void buttonPressed(int buttonId) {</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>                if (buttonId == IDialogConstants.OK_ID) {</TD></TR><TR CLASS="z"><TD CLASS="l">50</TD><TD>                        elementName = getModelValue(elementNameField.getText());</TD></TR><TR><TD CLASS="l">51</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                super.buttonPressed(buttonId);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">53</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">54</TD><TD> </TD></TR><TR><TD CLASS="l">55</TD><TD> </TD></TR><TR><TD CLASS="l">56</TD><TD>        protected void createButtonsForButtonBar(Composite parent) {</TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>                okButton = createButton(parent, IDialogConstants.OK_ID, IDialogConstants.OK_LABEL, true);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">58</A></TD><TD>                createButton(parent, IDialogConstants.CANCEL_ID, IDialogConstants.CANCEL_LABEL, false);</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>        }</TD></TR><TR><TD CLASS="l">60</TD><TD> </TD></TR><TR><TD CLASS="l">61</TD><TD>        protected Control createContents(Composite parent) {</TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>                Control control = super.createContents(parent);</TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>                elementNameField.forceFocus();</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                elementNameField.selectAll();</TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>                updateErrorMessage();</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                return control;</TD></TR><TR><TD CLASS="l"><A NAME="5">67</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">68</TD><TD> </TD></TR><TR><TD CLASS="l">69</TD><TD> </TD></TR><TR><TD CLASS="l">70</TD><TD>        protected Control createDialogArea(Composite parent) {</TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>                Composite dialogArea = (Composite) super.createDialogArea(parent);</TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>                PlatformUI.getWorkbench().getHelpSystem().setHelp(dialogArea, XMLCommonUIContextIds.XCUI_ELEMENT_DIALOG);</TD></TR><TR><TD CLASS="l">73</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>                Composite composite = new Composite(dialogArea, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>                GridLayout layout = new GridLayout();</TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>                layout.numColumns = 2;</TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>                layout.marginWidth = 0;</TD></TR><TR CLASS="z"><TD CLASS="l">78</TD><TD>                composite.setLayout(layout);</TD></TR><TR CLASS="z"><TD CLASS="l">79</TD><TD>                composite.setLayoutData(new GridData(GridData.FILL_BOTH));</TD></TR><TR><TD CLASS="l">80</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">81</TD><TD>                Label elementNameLabel = new Label(composite, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>                elementNameLabel.setText(XMLUIMessages._UI_LABEL_ELEMENT_NAME);</TD></TR><TR><TD CLASS="l">83</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">84</TD><TD>                elementNameField = new Text(composite, SWT.SINGLE | SWT.BORDER);</TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>                GridData gd = new GridData(GridData.FILL_HORIZONTAL);</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                gd.widthHint = 200;</TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>                elementNameField.setLayoutData(gd);</TD></TR><TR CLASS="z"><TD CLASS="l">88</TD><TD>                elementNameField.setText(getDisplayValue(element != null ? element.getNodeName() : &#34;&#34;)); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">89</TD><TD>                elementNameField.addModifyListener(this);</TD></TR><TR><TD CLASS="l">90</TD><TD> </TD></TR><TR><TD CLASS="l">91</TD><TD>                // error message</TD></TR><TR CLASS="z"><TD CLASS="l">92</TD><TD>                errorMessageLabel = new Label(composite, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">93</TD><TD>                errorMessageLabel.setText(XMLUIMessages.error_message_goes_here);</TD></TR><TR CLASS="z"><TD CLASS="l">94</TD><TD>                gd = new GridData(GridData.FILL_HORIZONTAL);</TD></TR><TR CLASS="z"><TD CLASS="l">95</TD><TD>                gd.horizontalSpan = 2;</TD></TR><TR CLASS="z"><TD CLASS="l">96</TD><TD>                errorMessageLabel.setLayoutData(gd);</TD></TR><TR CLASS="z"><TD CLASS="l">97</TD><TD>                Color color = new Color(errorMessageLabel.getDisplay(), 200, 0, 0);</TD></TR><TR CLASS="z"><TD CLASS="l">98</TD><TD>                errorMessageLabel.setForeground(color);</TD></TR><TR><TD CLASS="l">99</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="6">100</A></TD><TD>                return dialogArea;</TD></TR><TR><TD CLASS="l">101</TD><TD>        }</TD></TR><TR><TD CLASS="l">102</TD><TD> </TD></TR><TR><TD CLASS="l">103</TD><TD>        protected String getDisplayValue(String string) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="7">104</A></TD><TD>                return string != null ? string : &#34;&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">105</TD><TD>        }</TD></TR><TR><TD CLASS="l">106</TD><TD> </TD></TR><TR><TD CLASS="l">107</TD><TD>        public String getElementName() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="8">108</A></TD><TD>                return elementName;</TD></TR><TR><TD CLASS="l">109</TD><TD>        }</TD></TR><TR><TD CLASS="l">110</TD><TD> </TD></TR><TR><TD CLASS="l">111</TD><TD>        protected String getModelValue(String string) {</TD></TR><TR CLASS="z"><TD CLASS="l">112</TD><TD>                String result = null;</TD></TR><TR CLASS="z"><TD CLASS="l">113</TD><TD>                if ((string != null) &amp;&amp; (string.trim().length() &gt; 0)) {</TD></TR><TR CLASS="z"><TD CLASS="l">114</TD><TD>                        result = string;</TD></TR><TR><TD CLASS="l">115</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="9">116</A></TD><TD>                return result;</TD></TR><TR><TD CLASS="l">117</TD><TD>        }</TD></TR><TR><TD CLASS="l">118</TD><TD> </TD></TR><TR><TD CLASS="l">119</TD><TD>        public void modifyText(ModifyEvent e) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="a">120</A></TD><TD>                updateErrorMessage();</TD></TR><TR CLASS="z"><TD CLASS="l">121</TD><TD>        }</TD></TR><TR><TD CLASS="l">122</TD><TD> </TD></TR><TR><TD CLASS="l">123</TD><TD>        protected void updateErrorMessage() {</TD></TR><TR CLASS="z"><TD CLASS="l">124</TD><TD>                String errorMessage = null;</TD></TR><TR CLASS="z"><TD CLASS="l">125</TD><TD>                String name = elementNameField.getText();</TD></TR><TR><TD CLASS="l">126</TD><TD>                // String name = elementNameField.getText().trim();</TD></TR><TR CLASS="z"><TD CLASS="l">127</TD><TD>                if (name.length() &gt; 0) {</TD></TR><TR><TD CLASS="l">128</TD><TD>                        // TODO use checkName from model level</TD></TR><TR><TD CLASS="l">129</TD><TD>                        // errorMessage = ValidateHelper.checkXMLName(name);</TD></TR><TR CLASS="z"><TD CLASS="l">130</TD><TD>                        if (!NameValidator.isValid(name)) {</TD></TR><TR CLASS="z"><TD CLASS="l">131</TD><TD>                                errorMessage = XMLUIMessages._UI_INVALID_NAME;</TD></TR><TR><TD CLASS="l">132</TD><TD>                        }</TD></TR><TR><TD CLASS="l">133</TD><TD>                }</TD></TR><TR><TD CLASS="l">134</TD><TD>                else {</TD></TR><TR CLASS="z"><TD CLASS="l">135</TD><TD>                        errorMessage = &#34;&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">136</TD><TD>                }</TD></TR><TR><TD CLASS="l">137</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">138</TD><TD>                errorMessageLabel.setText(errorMessage != null ? errorMessage : &#34;&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">139</TD><TD>                okButton.setEnabled(errorMessage == null);</TD></TR><TR CLASS="z"><TD CLASS="l">140</TD><TD>        }</TD></TR><TR><TD CLASS="l">141</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="36.html">org.eclipse.wst.xml.ui.internal.dialogs</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1b5.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1b5.html
deleted file mode 100644
index 89ba56a..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1b5.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="36.html">org.eclipse.wst.xml.ui.internal.dialogs</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">EditEntityHelper.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>EditEntityHelper.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/120)</TD><TD CLASS="h">0%   (0/34)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">EditEntityHelper</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/120)</TD><TD CLASS="h">0%   (0/34)</TD></TR><TR><TD CLASS="f"><A HREF="#0">EditEntityHelper (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">performBrowseForPublicId (Shell, Text): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#3">performBrowseForPublicId (Shell, Text, Text): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/50)</TD><TD CLASS="h">0%   (0/13)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">performBrowseForSystemId (Shell, Text, IPath): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/61)</TD><TD CLASS="h">0%   (0/18)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.ui.internal.dialogs;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.core.resources.IFile;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.core.runtime.IPath;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.jface.window.Window;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.swt.widgets.Shell;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.swt.widgets.Text;</TD></TR><TR><TD CLASS="l"><A NAME="0">20</A></TD><TD>import org.eclipse.wst.common.uriresolver.internal.util.URIHelper;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.wst.xml.core.internal.catalog.provisional.ICatalogEntry;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.wst.xml.ui.internal.XMLUIMessages;</TD></TR><TR><TD CLASS="l"><A NAME="2">23</A></TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">24</TD><TD>public class EditEntityHelper {</TD></TR><TR><TD CLASS="l">25</TD><TD> </TD></TR><TR><TD CLASS="l">26</TD><TD>        public void performBrowseForPublicId(Shell parentShell, Text publicIdField) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">27</A></TD><TD>                performBrowseForPublicId(parentShell, publicIdField, null);</TD></TR><TR CLASS="z"><TD CLASS="l">28</TD><TD>        }</TD></TR><TR><TD CLASS="l">29</TD><TD> </TD></TR><TR><TD CLASS="l">30</TD><TD>        public void performBrowseForPublicId(Shell parentShell, Text publicIdField, Text systemIdField) {</TD></TR><TR CLASS="z"><TD CLASS="l">31</TD><TD>                String[] extensions = {&#34;dtd&#34;, &#34;txt&#34;}; //$NON-NLS-1$ //$NON-NLS-2$</TD></TR><TR CLASS="z"><TD CLASS="l">32</TD><TD>                SelectXMLCatalogIdDialog dialog = new SelectXMLCatalogIdDialog(parentShell, extensions);</TD></TR><TR CLASS="z"><TD CLASS="l">33</TD><TD>                dialog.create();</TD></TR><TR CLASS="z"><TD CLASS="l">34</TD><TD>                dialog.getShell().setText(XMLUIMessages._UI_LABEL_SELECT_XML_CATALOG_ENTRY);</TD></TR><TR CLASS="z"><TD CLASS="l">35</TD><TD>                dialog.setBlockOnOpen(true);</TD></TR><TR CLASS="z"><TD CLASS="l">36</TD><TD>                dialog.open();</TD></TR><TR CLASS="z"><TD CLASS="l">37</TD><TD>                if (dialog.getReturnCode() == Window.OK) {</TD></TR><TR CLASS="z"><TD CLASS="l">38</TD><TD>                        String id = dialog.getId();</TD></TR><TR CLASS="z"><TD CLASS="l">39</TD><TD>                        if (id != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">40</TD><TD>                                publicIdField.setText(id);</TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>                                if ((systemIdField != null) &amp;&amp; (dialog.getSystemId() != null)) {</TD></TR><TR CLASS="z"><TD CLASS="l">42</TD><TD>                                        systemIdField.setText(dialog.getSystemId());</TD></TR><TR><TD CLASS="l">43</TD><TD>                                }</TD></TR><TR><TD CLASS="l">44</TD><TD>                        }</TD></TR><TR><TD CLASS="l"><A NAME="4">45</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>        }</TD></TR><TR><TD CLASS="l">47</TD><TD> </TD></TR><TR><TD CLASS="l">48</TD><TD>        public void performBrowseForSystemId(Shell parentShell, Text systemIdField, IPath resourceLocation) {</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>                String[] extensions = {&#34;dtd&#34;}; //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">50</TD><TD>                SelectFileOrXMLCatalogIdDialog dialog = new SelectFileOrXMLCatalogIdDialog(parentShell, extensions, ICatalogEntry.ENTRY_TYPE_SYSTEM);</TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>                dialog.create();</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                dialog.getShell().setText(XMLUIMessages._UI_LABEL_SPECIFY_SYSTEM_ID);</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>                dialog.setBlockOnOpen(true);</TD></TR><TR CLASS="z"><TD CLASS="l">54</TD><TD>                dialog.open();</TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                if (dialog.getReturnCode() == Window.OK) {</TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>                        String id = dialog.getId();</TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>                        IFile file = dialog.getFile();</TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>                        if (id != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>                                systemIdField.setText(id);</TD></TR><TR><TD CLASS="l">60</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                        else if (file != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>                                String uri = null;</TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>                                if (resourceLocation != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                                        uri = URIHelper.getRelativeURI(file.getLocation(), resourceLocation);</TD></TR><TR><TD CLASS="l">65</TD><TD>                                }</TD></TR><TR><TD CLASS="l">66</TD><TD>                                else {</TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>                                        uri = file.getLocation().toOSString();</TD></TR><TR><TD CLASS="l">68</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                                systemIdField.setText(uri);</TD></TR><TR><TD CLASS="l">70</TD><TD>                        }</TD></TR><TR><TD CLASS="l">71</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>        }</TD></TR><TR><TD CLASS="l">73</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="36.html">org.eclipse.wst.xml.ui.internal.dialogs</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1b6.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1b6.html
deleted file mode 100644
index 3ba8e24..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1b6.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="36.html">org.eclipse.wst.xml.ui.internal.dialogs</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">EditNamespaceInfoDialog.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>EditNamespaceInfoDialog.java</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/16)</TD><TD CLASS="h">0%   (0/596)</TD><TD CLASS="h">0%   (0/134)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">EditNamespaceInfoDialog</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/576)</TD><TD CLASS="h">0%   (0/129)</TD></TR><TR><TD CLASS="f"><A HREF="#1">EditNamespaceInfoDialog (Shell, NamespaceInfo): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">buttonPressed (int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/24)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#3">computeErrorMessage (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">createButtonsForButtonBar (Composite): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/22)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#5">createDialogArea (Composite): Control</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/276)</TD><TD CLASS="h">0%   (0/53)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">getDisplayValue (String): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#0">invokeDialog (Shell, String, NamespaceInfo, IPath): EditNamespaceInfoDialog</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/23)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">performBrowse (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/150)</TD><TD CLASS="h">0%   (0/38)</TD></TR><TR><TD CLASS="f"><A HREF="#9">setResourceLocation (IPath): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">updateErrorMessageLabel (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#b">updateOKButtonState (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/36)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#c">updateWidgets (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#d">EditNamespaceInfoDialog$1</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#d">EditNamespaceInfoDialog$1 (EditNamespaceInfoDialog): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#f">modifyText (ModifyEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#10">EditNamespaceInfoDialog$2</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#10">EditNamespaceInfoDialog$2 (EditNamespaceInfoDialog): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#12">widgetSelected (SelectionEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR CLASS="z"><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2008 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.ui.internal.dialogs;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.util.List;</TD></TR><TR><TD CLASS="l">16</TD><TD> </TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.core.resources.IFile;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.core.resources.IResource;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.core.resources.ResourcesPlugin;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.core.runtime.IPath;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.jface.dialogs.Dialog;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.jface.dialogs.IDialogConstants;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.jface.window.Window;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.swt.SWT;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.swt.events.ModifyEvent;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.swt.events.ModifyListener;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.swt.events.SelectionAdapter;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.swt.events.SelectionEvent;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.swt.events.SelectionListener;</TD></TR><TR><TD CLASS="l">30</TD><TD>import org.eclipse.swt.graphics.Color;</TD></TR><TR><TD CLASS="l">31</TD><TD>import org.eclipse.swt.layout.GridData;</TD></TR><TR><TD CLASS="l">32</TD><TD>import org.eclipse.swt.layout.GridLayout;</TD></TR><TR><TD CLASS="l">33</TD><TD>import org.eclipse.swt.widgets.Button;</TD></TR><TR><TD CLASS="l">34</TD><TD>import org.eclipse.swt.widgets.Composite;</TD></TR><TR><TD CLASS="l">35</TD><TD>import org.eclipse.swt.widgets.Control;</TD></TR><TR><TD CLASS="l">36</TD><TD>import org.eclipse.swt.widgets.Label;</TD></TR><TR><TD CLASS="l">37</TD><TD>import org.eclipse.swt.widgets.Shell;</TD></TR><TR><TD CLASS="l">38</TD><TD>import org.eclipse.swt.widgets.Text;</TD></TR><TR><TD CLASS="l">39</TD><TD>import org.eclipse.ui.PlatformUI;</TD></TR><TR><TD CLASS="l">40</TD><TD>import org.eclipse.wst.common.uriresolver.internal.provisional.URIResolver;</TD></TR><TR><TD CLASS="l">41</TD><TD>import org.eclipse.wst.common.uriresolver.internal.provisional.URIResolverPlugin;</TD></TR><TR><TD CLASS="l">42</TD><TD>import org.eclipse.wst.common.uriresolver.internal.util.URIHelper;</TD></TR><TR><TD CLASS="l">43</TD><TD>import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;</TD></TR><TR><TD CLASS="l">44</TD><TD>import org.eclipse.wst.xml.core.internal.contentmodel.ContentModelManager;</TD></TR><TR><TD CLASS="l">45</TD><TD>import org.eclipse.wst.xml.core.internal.contentmodel.util.NamespaceInfo;</TD></TR><TR><TD CLASS="l">46</TD><TD>import org.eclipse.wst.xml.ui.internal.XMLUIMessages;</TD></TR><TR><TD CLASS="l">47</TD><TD>import org.eclipse.wst.xml.ui.internal.util.XMLCommonUIContextIds;</TD></TR><TR><TD CLASS="l"><A NAME="0">48</A></TD><TD> </TD></TR><TR><TD CLASS="l">49</TD><TD>public class EditNamespaceInfoDialog extends Dialog {</TD></TR><TR><TD CLASS="l">50</TD><TD> </TD></TR><TR><TD CLASS="l">51</TD><TD>        public static EditNamespaceInfoDialog invokeDialog(Shell shell, String title, NamespaceInfo info, IPath resourceLocation) {</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                EditNamespaceInfoDialog dialog = new EditNamespaceInfoDialog(shell, info);</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>                dialog.create();</TD></TR><TR CLASS="z"><TD CLASS="l">54</TD><TD>                dialog.getShell().setText(title);</TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                dialog.setBlockOnOpen(true);</TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>                dialog.setResourceLocation(resourceLocation);</TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>                dialog.open();</TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>                return dialog;</TD></TR><TR><TD CLASS="l">59</TD><TD>        }</TD></TR><TR><TD CLASS="l">60</TD><TD> </TD></TR><TR><TD CLASS="l">61</TD><TD>        protected Button browseButton;</TD></TR><TR><TD CLASS="l">62</TD><TD>        protected String errorMessage;</TD></TR><TR><TD CLASS="l">63</TD><TD> </TD></TR><TR><TD CLASS="l">64</TD><TD>        protected Label errorMessageLabel;</TD></TR><TR><TD CLASS="l">65</TD><TD>        protected NamespaceInfo fInfo;</TD></TR><TR><TD CLASS="l">66</TD><TD>        protected Text locationHintField;</TD></TR><TR><TD CLASS="l">67</TD><TD> </TD></TR><TR><TD CLASS="l">68</TD><TD>        protected Button okButton;</TD></TR><TR><TD CLASS="l">69</TD><TD>        protected Text prefixField;</TD></TR><TR><TD CLASS="l"><A NAME="1">70</A></TD><TD>        protected IPath resourceLocation;</TD></TR><TR><TD CLASS="l">71</TD><TD>        protected Text uriField;</TD></TR><TR><TD CLASS="l">72</TD><TD> </TD></TR><TR><TD CLASS="l">73</TD><TD>        public EditNamespaceInfoDialog(Shell parentShell, NamespaceInfo info) {</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>                super(parentShell);</TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>                setShellStyle(getShellStyle() | SWT.RESIZE);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">76</A></TD><TD>                this.fInfo = info;</TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>        }</TD></TR><TR><TD CLASS="l">78</TD><TD> </TD></TR><TR><TD CLASS="l">79</TD><TD>        protected void buttonPressed(int buttonId) {</TD></TR><TR CLASS="z"><TD CLASS="l">80</TD><TD>                if (buttonId == IDialogConstants.OK_ID) {</TD></TR><TR CLASS="z"><TD CLASS="l">81</TD><TD>                        fInfo.uri = uriField.getText();</TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>                        fInfo.prefix = prefixField.getText();</TD></TR><TR CLASS="z"><TD CLASS="l">83</TD><TD>                        fInfo.locationHint = locationHintField.getText();</TD></TR><TR><TD CLASS="l">84</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">85</A></TD><TD>                super.buttonPressed(buttonId);</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>        }</TD></TR><TR><TD CLASS="l">87</TD><TD> </TD></TR><TR><TD CLASS="l">88</TD><TD>        protected void computeErrorMessage() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">89</A></TD><TD>                errorMessage = null;</TD></TR><TR CLASS="z"><TD CLASS="l">90</TD><TD>        }</TD></TR><TR><TD CLASS="l">91</TD><TD> </TD></TR><TR><TD CLASS="l">92</TD><TD>        protected void createButtonsForButtonBar(Composite parent) {</TD></TR><TR CLASS="z"><TD CLASS="l">93</TD><TD>                okButton = createButton(parent, IDialogConstants.OK_ID, IDialogConstants.OK_LABEL, true);</TD></TR><TR CLASS="z"><TD CLASS="l">94</TD><TD>                okButton.setEnabled(false);</TD></TR><TR CLASS="z"><TD CLASS="l">95</TD><TD>                createButton(parent, IDialogConstants.CANCEL_ID, IDialogConstants.CANCEL_LABEL, false);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="5">96</A></TD><TD>                updateWidgets();</TD></TR><TR CLASS="z"><TD CLASS="l">97</TD><TD>        }</TD></TR><TR><TD CLASS="l">98</TD><TD> </TD></TR><TR><TD CLASS="l">99</TD><TD>        protected Control createDialogArea(Composite parent) {</TD></TR><TR CLASS="z"><TD CLASS="l">100</TD><TD>                Composite dialogsubArea = (Composite) super.createDialogArea(parent);</TD></TR><TR CLASS="z"><TD CLASS="l">101</TD><TD>                PlatformUI.getWorkbench().getHelpSystem().setHelp(dialogsubArea, XMLCommonUIContextIds.XCUI_NAMESPACE_DIALOG);</TD></TR><TR><TD CLASS="l">102</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">103</TD><TD>                Composite composite = new Composite(dialogsubArea, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">104</TD><TD>                GridLayout layout = new GridLayout();</TD></TR><TR CLASS="z"><TD CLASS="l">105</TD><TD>                layout.numColumns = 3;</TD></TR><TR CLASS="z"><TD CLASS="l">106</TD><TD>                layout.marginWidth = 0;</TD></TR><TR CLASS="z"><TD CLASS="l">107</TD><TD>                composite.setLayout(layout);</TD></TR><TR><TD CLASS="l">108</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="d">109</A></TD><TD>                GridData gd = new GridData(GridData.FILL_HORIZONTAL);</TD></TR><TR CLASS="z"><TD CLASS="l">110</TD><TD>                gd.widthHint = 350;</TD></TR><TR CLASS="z"><TD CLASS="l">111</TD><TD>                composite.setLayoutData(gd);</TD></TR><TR><TD CLASS="l"><A NAME="f">112</A></TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">113</TD><TD>                ModifyListener modifyListener = new ModifyListener() {</TD></TR><TR><TD CLASS="l">114</TD><TD>                        public void modifyText(ModifyEvent e) {</TD></TR><TR CLASS="z"><TD CLASS="l">115</TD><TD>                                updateWidgets();</TD></TR><TR CLASS="z"><TD CLASS="l">116</TD><TD>                        }</TD></TR><TR><TD CLASS="l">117</TD><TD>                };</TD></TR><TR><TD CLASS="l">118</TD><TD> </TD></TR><TR><TD CLASS="l">119</TD><TD> </TD></TR><TR><TD CLASS="l">120</TD><TD>                // row 1</TD></TR><TR><TD CLASS="l">121</TD><TD>                //</TD></TR><TR CLASS="z"><TD CLASS="l">122</TD><TD>                Label uriLabel = new Label(composite, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">123</TD><TD>                uriLabel.setText(XMLUIMessages._UI_LABEL_NAMESPACE_NAME_COLON);</TD></TR><TR><TD CLASS="l">124</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">125</TD><TD>                uriField = new Text(composite, SWT.SINGLE | SWT.BORDER);</TD></TR><TR CLASS="z"><TD CLASS="l">126</TD><TD>                gd = new GridData(GridData.FILL_HORIZONTAL);</TD></TR><TR CLASS="z"><TD CLASS="l">127</TD><TD>                gd.grabExcessHorizontalSpace = true;</TD></TR><TR CLASS="z"><TD CLASS="l">128</TD><TD>                uriField.setLayoutData(gd);</TD></TR><TR CLASS="z"><TD CLASS="l">129</TD><TD>                uriField.setText(getDisplayValue(fInfo.uri));</TD></TR><TR CLASS="z"><TD CLASS="l">130</TD><TD>                uriField.addModifyListener(modifyListener);</TD></TR><TR CLASS="z"><TD CLASS="l">131</TD><TD>                uriField.setEnabled(fInfo.getProperty(&#34;uri-readOnly&#34;) == null); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">132</TD><TD> </TD></TR><TR><TD CLASS="l">133</TD><TD>                // never read</TD></TR><TR CLASS="z"><TD CLASS="l">134</TD><TD>                Label placeHolder1 = new Label(composite, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">135</TD><TD>                placeHolder1.setText(&#34;&#34;); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">136</TD><TD> </TD></TR><TR><TD CLASS="l">137</TD><TD>                // row 2</TD></TR><TR><TD CLASS="l">138</TD><TD>                //</TD></TR><TR CLASS="z"><TD CLASS="l">139</TD><TD>                Label prefixLabel = new Label(composite, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">140</TD><TD>                prefixLabel.setText(XMLUIMessages._UI_LABEL_PREFIX_COLON);</TD></TR><TR><TD CLASS="l">141</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">142</TD><TD>                prefixField = new Text(composite, SWT.SINGLE | SWT.BORDER);</TD></TR><TR CLASS="z"><TD CLASS="l">143</TD><TD>                gd = new GridData(GridData.FILL_HORIZONTAL);</TD></TR><TR CLASS="z"><TD CLASS="l">144</TD><TD>                gd.grabExcessHorizontalSpace = true;</TD></TR><TR CLASS="z"><TD CLASS="l">145</TD><TD>                prefixField.setLayoutData(gd);</TD></TR><TR CLASS="z"><TD CLASS="l">146</TD><TD>                prefixField.setText(getDisplayValue(fInfo.prefix));</TD></TR><TR CLASS="z"><TD CLASS="l">147</TD><TD>                prefixField.addModifyListener(modifyListener);</TD></TR><TR CLASS="z"><TD CLASS="l">148</TD><TD>                prefixField.setEnabled(fInfo.getProperty(&#34;prefix-readOnly&#34;) == null); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">149</TD><TD> </TD></TR><TR><TD CLASS="l">150</TD><TD>                // never read</TD></TR><TR CLASS="z"><TD CLASS="l">151</TD><TD>                Label placeHolder2 = new Label(composite, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">152</TD><TD>                placeHolder2.setText(&#34;&#34;); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">153</TD><TD> </TD></TR><TR><TD CLASS="l">154</TD><TD>                // row 3</TD></TR><TR><TD CLASS="l">155</TD><TD>                //</TD></TR><TR CLASS="z"><TD CLASS="l">156</TD><TD>                Label locationHintLabel = new Label(composite, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">157</TD><TD>                locationHintLabel.setText(XMLUIMessages._UI_LABEL_LOCATION_HINT_COLON);</TD></TR><TR><TD CLASS="l">158</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">159</TD><TD>                locationHintField = new Text(composite, SWT.SINGLE | SWT.BORDER);</TD></TR><TR CLASS="z"><TD CLASS="l">160</TD><TD>                gd = new GridData(GridData.FILL_HORIZONTAL);</TD></TR><TR CLASS="z"><TD CLASS="l">161</TD><TD>                gd.grabExcessHorizontalSpace = true;</TD></TR><TR CLASS="z"><TD CLASS="l">162</TD><TD>                locationHintField.setLayoutData(gd);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="10">163</A></TD><TD>                locationHintField.setText(getDisplayValue(fInfo.locationHint));</TD></TR><TR CLASS="z"><TD CLASS="l">164</TD><TD>                locationHintField.addModifyListener(modifyListener);</TD></TR><TR CLASS="z"><TD CLASS="l">165</TD><TD>                locationHintField.setEnabled(fInfo.getProperty(&#34;locationHint-readOnly&#34;) == null); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l"><A NAME="12">166</A></TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">167</TD><TD>                SelectionListener selectionListener = new SelectionAdapter() {</TD></TR><TR><TD CLASS="l">168</TD><TD>                        public void widgetSelected(SelectionEvent e) {</TD></TR><TR CLASS="z"><TD CLASS="l">169</TD><TD>                                performBrowse();</TD></TR><TR CLASS="z"><TD CLASS="l">170</TD><TD>                        }</TD></TR><TR><TD CLASS="l">171</TD><TD>                };</TD></TR><TR><TD CLASS="l">172</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">173</TD><TD>                browseButton = new Button(composite, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">174</TD><TD>                browseButton.setText(XMLUIMessages._UI_LABEL_BROWSE);</TD></TR><TR CLASS="z"><TD CLASS="l">175</TD><TD>                browseButton.addSelectionListener(selectionListener);</TD></TR><TR CLASS="z"><TD CLASS="l">176</TD><TD>                browseButton.setEnabled(locationHintField.getEnabled());</TD></TR><TR><TD CLASS="l">177</TD><TD> </TD></TR><TR><TD CLASS="l">178</TD><TD>                // error message</TD></TR><TR CLASS="z"><TD CLASS="l">179</TD><TD>                errorMessageLabel = new Label(dialogsubArea, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">180</TD><TD>                errorMessageLabel.setText(XMLUIMessages.error_message_goes_here);</TD></TR><TR CLASS="z"><TD CLASS="l">181</TD><TD>                errorMessageLabel.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));</TD></TR><TR CLASS="z"><TD CLASS="l">182</TD><TD>                Color color = new Color(errorMessageLabel.getDisplay(), 200, 0, 0);</TD></TR><TR CLASS="z"><TD CLASS="l">183</TD><TD>                errorMessageLabel.setForeground(color);</TD></TR><TR><TD CLASS="l">184</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="6">185</A></TD><TD>                return dialogsubArea;</TD></TR><TR><TD CLASS="l">186</TD><TD>        }</TD></TR><TR><TD CLASS="l">187</TD><TD> </TD></TR><TR><TD CLASS="l">188</TD><TD>        protected String getDisplayValue(String string) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="8">189</A></TD><TD>                return string != null ? string : &#34;&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">190</TD><TD>        }</TD></TR><TR><TD CLASS="l">191</TD><TD> </TD></TR><TR><TD CLASS="l">192</TD><TD>        protected void performBrowse() {</TD></TR><TR CLASS="z"><TD CLASS="l">193</TD><TD>                String[] extensions = {&#34;.xsd&#34;}; //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">194</TD><TD>                SelectFileOrXMLCatalogIdDialog dialog = new SelectFileOrXMLCatalogIdDialog(getShell(), extensions);</TD></TR><TR CLASS="z"><TD CLASS="l">195</TD><TD>                dialog.create();</TD></TR><TR CLASS="z"><TD CLASS="l">196</TD><TD>                dialog.getShell().setText(XMLUIMessages._UI_LABEL_SELECT_FILE);</TD></TR><TR CLASS="z"><TD CLASS="l">197</TD><TD>                dialog.setBlockOnOpen(true);</TD></TR><TR CLASS="z"><TD CLASS="l">198</TD><TD>                dialog.open();</TD></TR><TR><TD CLASS="l">199</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">200</TD><TD>                if (dialog.getReturnCode() == Window.OK) {</TD></TR><TR CLASS="z"><TD CLASS="l">201</TD><TD>                        String grammarURI = null;</TD></TR><TR CLASS="z"><TD CLASS="l">202</TD><TD>                        IFile file = dialog.getFile();</TD></TR><TR CLASS="z"><TD CLASS="l">203</TD><TD>                        String id = dialog.getId();</TD></TR><TR CLASS="z"><TD CLASS="l">204</TD><TD>                        if (file != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">205</TD><TD>                                String uri = null;</TD></TR><TR CLASS="z"><TD CLASS="l">206</TD><TD>                                if (resourceLocation != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">207</TD><TD>                                        IResource resource = ResourcesPlugin.getWorkspace().getRoot().findMember(resourceLocation);</TD></TR><TR CLASS="z"><TD CLASS="l">208</TD><TD>                                        if (resource != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">209</TD><TD>                                                IPath location = resource.getLocation();</TD></TR><TR CLASS="z"><TD CLASS="l">210</TD><TD>                                                if (location != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">211</TD><TD>                                                        uri = URIHelper.getRelativeURI(file.getLocation(), location);</TD></TR><TR><TD CLASS="l">212</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">213</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">214</TD><TD>                                        else {</TD></TR><TR CLASS="z"><TD CLASS="l">215</TD><TD>                                          uri = URIHelper.getRelativeURI(file.getLocation(), resourceLocation);</TD></TR><TR><TD CLASS="l">216</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">217</TD><TD>                                        grammarURI = file.getLocation().toOSString();</TD></TR><TR><TD CLASS="l">218</TD><TD>                                }</TD></TR><TR><TD CLASS="l">219</TD><TD>                                else {</TD></TR><TR CLASS="z"><TD CLASS="l">220</TD><TD>                                        uri = file.getLocation().toOSString();</TD></TR><TR CLASS="z"><TD CLASS="l">221</TD><TD>                                        grammarURI = uri;</TD></TR><TR><TD CLASS="l">222</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">223</TD><TD>                                locationHintField.setText(uri);</TD></TR><TR><TD CLASS="l">224</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">225</TD><TD>                        else if (id != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">226</TD><TD>                                locationHintField.setText(id);</TD></TR><TR CLASS="z"><TD CLASS="l">227</TD><TD>                                URIResolver resolver = URIResolverPlugin.createResolver();</TD></TR><TR CLASS="z"><TD CLASS="l">228</TD><TD>                                grammarURI = resolver.resolve(null, id, id);</TD></TR><TR><TD CLASS="l">229</TD><TD>                        }</TD></TR><TR><TD CLASS="l">230</TD><TD> </TD></TR><TR><TD CLASS="l">231</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">232</TD><TD>                        CMDocument document = ContentModelManager.getInstance().createCMDocument(URIHelper.getURIForFilePath(grammarURI), &#34;xsd&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">233</TD><TD>                        if(document != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">234</TD><TD>                                List namespaceInfoList = (List) document.getProperty(&#34;http://org.eclipse.wst/cm/properties/namespaceInfo&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">235</TD><TD>                                if(namespaceInfoList != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">236</TD><TD>                                        NamespaceInfo info = (NamespaceInfo) namespaceInfoList.get(0);</TD></TR><TR CLASS="z"><TD CLASS="l">237</TD><TD>                                        if(info != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">238</TD><TD>                                                if ((uriField.getText().trim().length() == 0) &amp;&amp; (info.uri != null)) {</TD></TR><TR CLASS="z"><TD CLASS="l">239</TD><TD>                                                        uriField.setText(info.uri);</TD></TR><TR><TD CLASS="l">240</TD><TD>                                                }</TD></TR><TR CLASS="z"><TD CLASS="l">241</TD><TD>                                                if ((prefixField.getText().trim().length() == 0) &amp;&amp; (info.prefix != null)) {</TD></TR><TR CLASS="z"><TD CLASS="l">242</TD><TD>                                                        prefixField.setText(info.prefix);</TD></TR><TR><TD CLASS="l">243</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">244</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">245</TD><TD>                                }</TD></TR><TR><TD CLASS="l">246</TD><TD>                        }</TD></TR><TR><TD CLASS="l"><A NAME="9">247</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">248</TD><TD>        }</TD></TR><TR><TD CLASS="l">249</TD><TD> </TD></TR><TR><TD CLASS="l">250</TD><TD>        public void setResourceLocation(IPath path) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="a">251</A></TD><TD>                resourceLocation = path;</TD></TR><TR CLASS="z"><TD CLASS="l">252</TD><TD>        }</TD></TR><TR><TD CLASS="l">253</TD><TD> </TD></TR><TR><TD CLASS="l">254</TD><TD>        protected void updateErrorMessageLabel() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="b">255</A></TD><TD>                errorMessageLabel.setText(errorMessage != null ? errorMessage : &#34;&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">256</TD><TD>        }</TD></TR><TR><TD CLASS="l">257</TD><TD> </TD></TR><TR><TD CLASS="l">258</TD><TD>        protected void updateOKButtonState() {</TD></TR><TR CLASS="z"><TD CLASS="l">259</TD><TD>                if (okButton != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">260</TD><TD>                        if ((uriField.getText().trim().length() == 0) &amp;&amp; (prefixField.getText().trim().length() == 0) &amp;&amp; (locationHintField.getText().trim().length() == 0)) {</TD></TR><TR CLASS="z"><TD CLASS="l">261</TD><TD>                                okButton.setEnabled(false);</TD></TR><TR><TD CLASS="l">262</TD><TD>                        }</TD></TR><TR><TD CLASS="l">263</TD><TD>                        else {</TD></TR><TR CLASS="z"><TD CLASS="l">264</TD><TD>                                okButton.setEnabled(errorMessage == null);</TD></TR><TR><TD CLASS="l">265</TD><TD>                        }</TD></TR><TR><TD CLASS="l"><A NAME="c">266</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">267</TD><TD>        }</TD></TR><TR><TD CLASS="l">268</TD><TD> </TD></TR><TR><TD CLASS="l">269</TD><TD>        protected void updateWidgets() {</TD></TR><TR CLASS="z"><TD CLASS="l">270</TD><TD>                computeErrorMessage();</TD></TR><TR CLASS="z"><TD CLASS="l">271</TD><TD>                updateErrorMessageLabel();</TD></TR><TR CLASS="z"><TD CLASS="l">272</TD><TD>                updateOKButtonState();</TD></TR><TR CLASS="z"><TD CLASS="l">273</TD><TD>        }</TD></TR><TR><TD CLASS="l">274</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="36.html">org.eclipse.wst.xml.ui.internal.dialogs</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1b7.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1b7.html
deleted file mode 100644
index b956900..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1b7.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="36.html">org.eclipse.wst.xml.ui.internal.dialogs</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">EditProcessingInstructionDialog.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>EditProcessingInstructionDialog.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/191)</TD><TD CLASS="h">0%   (0/44)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">EditProcessingInstructionDialog</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/191)</TD><TD CLASS="h">0%   (0/44)</TD></TR><TR><TD CLASS="f"><A HREF="#0">EditProcessingInstructionDialog (Shell, ProcessingInstruction): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">EditProcessingInstructionDialog (Shell, String, String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/16)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#3">buttonPressed (int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/18)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">createButtonsForButtonBar (Composite): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#5">createDialogArea (Composite): Control</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/102)</TD><TD CLASS="h">0%   (0/21)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">createMessageArea (Composite): Label</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#7">getData (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">getDisplayValue (String): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#9">getModelValue (String): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">getTarget (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.ui.internal.dialogs;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.jface.dialogs.Dialog;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.jface.dialogs.IDialogConstants;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.swt.SWT;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.swt.layout.GridData;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.swt.layout.GridLayout;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.swt.widgets.Composite;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.swt.widgets.Control;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.swt.widgets.Label;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.swt.widgets.Shell;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.swt.widgets.Text;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.ui.PlatformUI;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.wst.xml.ui.internal.XMLUIMessages;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.wst.xml.ui.internal.util.XMLCommonUIContextIds;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.w3c.dom.ProcessingInstruction;</TD></TR><TR><TD CLASS="l">29</TD><TD> </TD></TR><TR><TD CLASS="l">30</TD><TD>public class EditProcessingInstructionDialog extends Dialog {</TD></TR><TR><TD CLASS="l">31</TD><TD>        protected String data;</TD></TR><TR><TD CLASS="l">32</TD><TD>        protected Text dataField;</TD></TR><TR><TD CLASS="l"><A NAME="0">33</A></TD><TD>        protected String target;</TD></TR><TR><TD CLASS="l">34</TD><TD>        protected Text targetField;</TD></TR><TR><TD CLASS="l">35</TD><TD> </TD></TR><TR><TD CLASS="l">36</TD><TD>        public EditProcessingInstructionDialog(Shell parentShell, ProcessingInstruction pi) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">37</A></TD><TD>                this(parentShell, pi.getTarget(), pi.getData());</TD></TR><TR CLASS="z"><TD CLASS="l">38</TD><TD>        }</TD></TR><TR><TD CLASS="l">39</TD><TD> </TD></TR><TR><TD CLASS="l">40</TD><TD>        public EditProcessingInstructionDialog(Shell parentShell, String target, String data) {</TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>                super(parentShell);</TD></TR><TR CLASS="z"><TD CLASS="l">42</TD><TD>                setShellStyle(getShellStyle() | SWT.RESIZE);</TD></TR><TR CLASS="z"><TD CLASS="l">43</TD><TD>                this.target = target;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">44</A></TD><TD>                this.data = data;</TD></TR><TR CLASS="z"><TD CLASS="l">45</TD><TD>        }</TD></TR><TR><TD CLASS="l">46</TD><TD> </TD></TR><TR><TD CLASS="l">47</TD><TD>        protected void buttonPressed(int buttonId) {</TD></TR><TR CLASS="z"><TD CLASS="l">48</TD><TD>                target = getModelValue(targetField.getText());</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>                data = getModelValue(dataField.getText());</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">50</A></TD><TD>                super.buttonPressed(buttonId);</TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>        }</TD></TR><TR><TD CLASS="l">52</TD><TD> </TD></TR><TR><TD CLASS="l">53</TD><TD>        protected void createButtonsForButtonBar(Composite parent) {</TD></TR><TR CLASS="z"><TD CLASS="l">54</TD><TD>                createButton(parent, IDialogConstants.OK_ID, IDialogConstants.OK_LABEL, true);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="5">55</A></TD><TD>                createButton(parent, IDialogConstants.CANCEL_ID, IDialogConstants.CANCEL_LABEL, false);</TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>        }</TD></TR><TR><TD CLASS="l">57</TD><TD> </TD></TR><TR><TD CLASS="l">58</TD><TD>        protected Control createDialogArea(Composite parent) {</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>                Composite dialogArea1 = (Composite) super.createDialogArea(parent);</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                PlatformUI.getWorkbench().getHelpSystem().setHelp(dialogArea1, XMLCommonUIContextIds.XCUI_PROCESSING_DIALOG);</TD></TR><TR><TD CLASS="l">61</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>                Composite composite = new Composite(dialogArea1, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>                GridLayout layout = new GridLayout();</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                layout.numColumns = 2;</TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>                layout.marginWidth = 0;</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                composite.setLayout(layout);</TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>                composite.setLayoutData(new GridData(GridData.FILL_BOTH));</TD></TR><TR><TD CLASS="l">68</TD><TD> </TD></TR><TR><TD CLASS="l">69</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">70</TD><TD>                GridData gd = new GridData(GridData.FILL_HORIZONTAL);</TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>                gd.widthHint = 250;</TD></TR><TR><TD CLASS="l">72</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">73</TD><TD>                Label targetLabel = new Label(composite, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>                targetLabel.setText(XMLUIMessages._UI_LABEL_TARGET_COLON);</TD></TR><TR><TD CLASS="l">75</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>                targetField = new Text(composite, SWT.SINGLE | SWT.BORDER);</TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>                targetField.setLayoutData(gd);</TD></TR><TR CLASS="z"><TD CLASS="l">78</TD><TD>                targetField.setText(getDisplayValue(target));</TD></TR><TR><TD CLASS="l">79</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">80</TD><TD>                Label dataLabel = new Label(composite, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">81</TD><TD>                dataLabel.setText(XMLUIMessages._UI_LABEL_DATA_COLON);</TD></TR><TR><TD CLASS="l">82</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">83</TD><TD>                dataField = new Text(composite, SWT.SINGLE | SWT.BORDER);</TD></TR><TR CLASS="z"><TD CLASS="l">84</TD><TD>                dataField.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));</TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>                dataField.setText(getDisplayValue(data));</TD></TR><TR><TD CLASS="l">86</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="6">87</A></TD><TD>                return dialogArea1;</TD></TR><TR><TD CLASS="l">88</TD><TD>        }</TD></TR><TR><TD CLASS="l">89</TD><TD> </TD></TR><TR><TD CLASS="l">90</TD><TD>        protected Label createMessageArea(Composite composite) {</TD></TR><TR CLASS="z"><TD CLASS="l">91</TD><TD>                Label label = new Label(composite, SWT.NONE);</TD></TR><TR><TD CLASS="l">92</TD><TD>                // label.setText(message);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="7">93</A></TD><TD>                return label;</TD></TR><TR><TD CLASS="l">94</TD><TD>        }</TD></TR><TR><TD CLASS="l">95</TD><TD> </TD></TR><TR><TD CLASS="l">96</TD><TD>        public String getData() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="8">97</A></TD><TD>                return data;</TD></TR><TR><TD CLASS="l">98</TD><TD>        }</TD></TR><TR><TD CLASS="l">99</TD><TD> </TD></TR><TR><TD CLASS="l">100</TD><TD>        protected String getDisplayValue(String string) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="9">101</A></TD><TD>                return string != null ? string : &#34;&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">102</TD><TD>        }</TD></TR><TR><TD CLASS="l">103</TD><TD> </TD></TR><TR><TD CLASS="l">104</TD><TD>        protected String getModelValue(String string) {</TD></TR><TR CLASS="z"><TD CLASS="l">105</TD><TD>                String result = null;</TD></TR><TR CLASS="z"><TD CLASS="l">106</TD><TD>                if ((string != null) &amp;&amp; (string.trim().length() &gt; 0)) {</TD></TR><TR CLASS="z"><TD CLASS="l">107</TD><TD>                        result = string;</TD></TR><TR><TD CLASS="l">108</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">109</TD><TD>                return result;</TD></TR><TR><TD CLASS="l"><A NAME="a">110</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">111</TD><TD> </TD></TR><TR><TD CLASS="l">112</TD><TD> </TD></TR><TR><TD CLASS="l">113</TD><TD>        public String getTarget() {</TD></TR><TR CLASS="z"><TD CLASS="l">114</TD><TD>                return target;</TD></TR><TR><TD CLASS="l">115</TD><TD>        }</TD></TR><TR><TD CLASS="l">116</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="36.html">org.eclipse.wst.xml.ui.internal.dialogs</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1b8.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1b8.html
deleted file mode 100644
index 0c8655e..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1b8.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="36.html">org.eclipse.wst.xml.ui.internal.dialogs</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">EditSchemaInfoDialog.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>EditSchemaInfoDialog.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/92)</TD><TD CLASS="h">0%   (0/23)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">EditSchemaInfoDialog</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/92)</TD><TD CLASS="h">0%   (0/23)</TD></TR><TR><TD CLASS="f"><A HREF="#0">EditSchemaInfoDialog (Shell, IPath): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">createButtonsForButtonBar (Composite): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#3">createDialogArea (Composite): Control</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/30)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">getDialogArea (Composite): Control</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#5">getNamespaceInfoList (): List</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">setNamespaceInfoList (List): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#7">updateErrorMessage (List): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/18)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">updateOccured (Object, Object): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/2)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.ui.internal.dialogs;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.util.List;</TD></TR><TR><TD CLASS="l">16</TD><TD> </TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.core.runtime.IPath;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.jface.dialogs.Dialog;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.jface.dialogs.IDialogConstants;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.swt.SWT;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.swt.widgets.Composite;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.swt.widgets.Control;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.swt.widgets.Label;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.swt.widgets.Shell;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.ui.PlatformUI;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.wst.xml.ui.internal.XMLUIMessages;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.wst.xml.ui.internal.nsedit.CommonEditNamespacesDialog;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.wst.xml.ui.internal.util.XMLCommonUIContextIds;</TD></TR><TR><TD CLASS="l">29</TD><TD> </TD></TR><TR><TD CLASS="l">30</TD><TD>public class EditSchemaInfoDialog extends Dialog implements UpdateListener {</TD></TR><TR><TD CLASS="l">31</TD><TD>        // protected NamespaceInfoTable namespaceInfoTable;</TD></TR><TR><TD CLASS="l">32</TD><TD>        protected Label errorMessageLabel;</TD></TR><TR><TD CLASS="l"><A NAME="0">33</A></TD><TD>        protected List namespaceInfoList;</TD></TR><TR><TD CLASS="l">34</TD><TD>        protected IPath resourceLocation;</TD></TR><TR><TD CLASS="l">35</TD><TD> </TD></TR><TR><TD CLASS="l">36</TD><TD>        public EditSchemaInfoDialog(Shell parentShell, IPath resourceLocation) {</TD></TR><TR CLASS="z"><TD CLASS="l">37</TD><TD>                super(parentShell);</TD></TR><TR CLASS="z"><TD CLASS="l">38</TD><TD>                setShellStyle(getShellStyle() | SWT.RESIZE);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">39</A></TD><TD>                this.resourceLocation = resourceLocation;</TD></TR><TR CLASS="z"><TD CLASS="l">40</TD><TD>        }</TD></TR><TR><TD CLASS="l">41</TD><TD> </TD></TR><TR><TD CLASS="l">42</TD><TD>        protected void createButtonsForButtonBar(Composite parent) {</TD></TR><TR CLASS="z"><TD CLASS="l">43</TD><TD>                createButton(parent, IDialogConstants.OK_ID, IDialogConstants.OK_LABEL, true);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">44</A></TD><TD>                createButton(parent, IDialogConstants.CANCEL_ID, IDialogConstants.CANCEL_LABEL, false);</TD></TR><TR CLASS="z"><TD CLASS="l">45</TD><TD>        }</TD></TR><TR><TD CLASS="l">46</TD><TD> </TD></TR><TR><TD CLASS="l">47</TD><TD>        protected Control createDialogArea(Composite parent) {</TD></TR><TR CLASS="z"><TD CLASS="l">48</TD><TD>                Composite dialogArea = (Composite) super.createDialogArea(parent);</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>                PlatformUI.getWorkbench().getHelpSystem().setHelp(dialogArea, XMLCommonUIContextIds.XCUI_SCHEMA_INFO_DIALOG);</TD></TR><TR><TD CLASS="l">50</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>                CommonEditNamespacesDialog editNamespacesControl = new CommonEditNamespacesDialog(dialogArea, resourceLocation, XMLUIMessages._UI_NAMESPACE_DECLARATIONS, false, true);</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                editNamespacesControl.setNamespaceInfoList(namespaceInfoList);</TD></TR><TR><TD CLASS="l">53</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">54</TD><TD>                editNamespacesControl.updateErrorMessage(namespaceInfoList);</TD></TR><TR><TD CLASS="l">55</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">56</A></TD><TD>                return dialogArea;</TD></TR><TR><TD CLASS="l">57</TD><TD>        }</TD></TR><TR><TD CLASS="l">58</TD><TD> </TD></TR><TR><TD CLASS="l">59</TD><TD>        protected Control getDialogArea(Composite parent) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="5">60</A></TD><TD>                return super.createDialogArea(parent);</TD></TR><TR><TD CLASS="l">61</TD><TD>        }</TD></TR><TR><TD CLASS="l">62</TD><TD> </TD></TR><TR><TD CLASS="l">63</TD><TD>        public List getNamespaceInfoList() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="6">64</A></TD><TD>                return namespaceInfoList;</TD></TR><TR><TD CLASS="l">65</TD><TD>        }</TD></TR><TR><TD CLASS="l">66</TD><TD> </TD></TR><TR><TD CLASS="l">67</TD><TD>        public void setNamespaceInfoList(List list) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="7">68</A></TD><TD>                namespaceInfoList = list;</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>        }</TD></TR><TR><TD CLASS="l">70</TD><TD> </TD></TR><TR><TD CLASS="l">71</TD><TD>        public void updateErrorMessage(List namespaceInfoList) {</TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>                NamespaceInfoErrorHelper helper = new NamespaceInfoErrorHelper();</TD></TR><TR CLASS="z"><TD CLASS="l">73</TD><TD>                String errorMessage = helper.computeErrorMessage(namespaceInfoList, null);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="8">74</A></TD><TD>                errorMessageLabel.setText(errorMessage != null ? errorMessage : &#34;&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>        }</TD></TR><TR><TD CLASS="l">76</TD><TD> </TD></TR><TR><TD CLASS="l">77</TD><TD>        public void updateOccured(Object object, Object arg) {</TD></TR><TR CLASS="z"><TD CLASS="l">78</TD><TD>                updateErrorMessage((List) arg);</TD></TR><TR CLASS="z"><TD CLASS="l">79</TD><TD>        }</TD></TR><TR><TD CLASS="l">80</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="36.html">org.eclipse.wst.xml.ui.internal.dialogs</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1b9.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1b9.html
deleted file mode 100644
index 3c0d491..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1b9.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="36.html">org.eclipse.wst.xml.ui.internal.dialogs</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">NamespaceInfoErrorHelper.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>NamespaceInfoErrorHelper.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/232)</TD><TD CLASS="h">0%   (0/44)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">NamespaceInfoErrorHelper</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/232)</TD><TD CLASS="h">0%   (0/44)</TD></TR><TR><TD CLASS="f"><A HREF="#0">NamespaceInfoErrorHelper (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">computeErrorMessage (List, URIResolver): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/229)</TD><TD CLASS="h">0%   (0/42)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.ui.internal.dialogs;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.util.Hashtable;</TD></TR><TR><TD CLASS="l">16</TD><TD>import java.util.Iterator;</TD></TR><TR><TD CLASS="l">17</TD><TD>import java.util.List;</TD></TR><TR><TD CLASS="l">18</TD><TD> </TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.wst.common.uriresolver.internal.provisional.URIResolver;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.wst.common.uriresolver.internal.util.URIHelper;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.wst.xml.core.internal.contentmodel.util.DOMNamespaceInfoManager;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.wst.xml.core.internal.contentmodel.util.NamespaceInfo;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.wst.xml.ui.internal.XMLUIMessages;</TD></TR><TR><TD CLASS="l">24</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="0">25</A></TD><TD>public class NamespaceInfoErrorHelper {</TD></TR><TR><TD CLASS="l">26</TD><TD> </TD></TR><TR><TD CLASS="l">27</TD><TD>        protected List errorList;</TD></TR><TR><TD CLASS="l">28</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">29</A></TD><TD>        public NamespaceInfoErrorHelper() {</TD></TR><TR CLASS="z"><TD CLASS="l">30</TD><TD>        }</TD></TR><TR><TD CLASS="l">31</TD><TD> </TD></TR><TR><TD CLASS="l">32</TD><TD>        public String computeErrorMessage(List namespaceInfoList, URIResolver idResolver) {</TD></TR><TR CLASS="z"><TD CLASS="l">33</TD><TD>                String result = null;</TD></TR><TR CLASS="z"><TD CLASS="l">34</TD><TD>                Hashtable prefixTable = new Hashtable();</TD></TR><TR CLASS="z"><TD CLASS="l">35</TD><TD>                Hashtable uriTable = new Hashtable();</TD></TR><TR CLASS="z"><TD CLASS="l">36</TD><TD>                for (Iterator iterator = namespaceInfoList.iterator(); iterator.hasNext();) {</TD></TR><TR CLASS="z"><TD CLASS="l">37</TD><TD>                        NamespaceInfo nsInfo = (NamespaceInfo) iterator.next();</TD></TR><TR CLASS="z"><TD CLASS="l">38</TD><TD>                        nsInfo.normalize();</TD></TR><TR><TD CLASS="l">39</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">40</TD><TD>                        String urikey = nsInfo.uri != null ? nsInfo.uri : &#34;&#34;; //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>                        NamespaceInfo nsInfo2 = null;</TD></TR><TR CLASS="z"><TD CLASS="l">42</TD><TD>                        if ((nsInfo2 = (NamespaceInfo) uriTable.get(urikey)) != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">43</TD><TD>                                if ((nsInfo.uri != null) &amp;&amp; nsInfo.uri.equals(nsInfo2.uri)) {</TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>                                        result = XMLUIMessages._UI_WARNING_MORE_THAN_ONE_NS_WITH_NAME + &#34;'&#34; + nsInfo.uri + &#34;'&#34;; //$NON-NLS-1$ //$NON-NLS-2$ </TD></TR><TR><TD CLASS="l">45</TD><TD>                                }</TD></TR><TR><TD CLASS="l">46</TD><TD>                                else {</TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>                                        result = XMLUIMessages._UI_WARNING_MORE_THAN_ONE_NS_WITHOUT_NAME;</TD></TR><TR><TD CLASS="l">48</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>                                break;</TD></TR><TR><TD CLASS="l">50</TD><TD>                        }</TD></TR><TR><TD CLASS="l">51</TD><TD>                        else {</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                                uriTable.put(urikey, nsInfo);</TD></TR><TR><TD CLASS="l">53</TD><TD>                        }</TD></TR><TR><TD CLASS="l">54</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                        if (nsInfo.uri != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>                                String key = nsInfo.prefix != null ? nsInfo.prefix : &#34;&#34;; //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>                                if (prefixTable.get(key) != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>                                        if (nsInfo.prefix != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>                                                result = XMLUIMessages._UI_WARNING_MORE_THAN_ONE_NS_WITH_PREFIX + &#34;'&#34; + nsInfo.prefix + &#34;'&#34;; //$NON-NLS-1$ //$NON-NLS-2$ </TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                                                break;</TD></TR><TR><TD CLASS="l">61</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">62</TD><TD>                                        else {</TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>                                                result = XMLUIMessages._UI_WARNING_MORE_THAN_ONE_NS_WITHOUT_PREFIX;</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                                                break;</TD></TR><TR><TD CLASS="l">65</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">66</TD><TD>                                }</TD></TR><TR><TD CLASS="l">67</TD><TD>                                else {</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>                                        prefixTable.put(key, nsInfo);</TD></TR><TR><TD CLASS="l">69</TD><TD>                                }</TD></TR><TR><TD CLASS="l">70</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>                                if ((nsInfo.locationHint != null) &amp;&amp; (idResolver != null)) {</TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>                                        String grammarURI = idResolver.resolve(null, nsInfo.locationHint, nsInfo.locationHint);</TD></TR><TR CLASS="z"><TD CLASS="l">73</TD><TD>                                        if (!URIHelper.isReadableURI(grammarURI, false)) {</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>                                                result = XMLUIMessages._UI_WARNING_SCHEMA_CAN_NOT_BE_LOCATED + &#34; '&#34; + nsInfo.locationHint + &#34;'&#34;; //$NON-NLS-1$ //$NON-NLS-2$ </TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>                                                break;</TD></TR><TR><TD CLASS="l">76</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">77</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">78</TD><TD>                                if ((idResolver != null) &amp;&amp; (nsInfo.locationHint == null) &amp;&amp; !nsInfo.uri.equals(DOMNamespaceInfoManager.XSI_URI)) {</TD></TR><TR CLASS="z"><TD CLASS="l">79</TD><TD>                                        result = XMLUIMessages._UI_WARNING_LOCATION_HINT_NOT_SPECIFIED + &#34; '&#34; + nsInfo.uri + &#34;'&#34;; //$NON-NLS-1$ //$NON-NLS-2$ </TD></TR><TR CLASS="z"><TD CLASS="l">80</TD><TD>                                        break;</TD></TR><TR><TD CLASS="l">81</TD><TD>                                }</TD></TR><TR><TD CLASS="l">82</TD><TD>                        }</TD></TR><TR><TD CLASS="l">83</TD><TD>                        else {</TD></TR><TR CLASS="z"><TD CLASS="l">84</TD><TD>                                if (nsInfo.prefix != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>                                        result = XMLUIMessages._UI_WARNING_NAMESPACE_NAME_NOT_SPECIFIED + &#34; '&#34; + nsInfo.prefix + &#34;'&#34;; //$NON-NLS-1$ //$NON-NLS-2$ </TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                                        break;</TD></TR><TR><TD CLASS="l">87</TD><TD>                                }</TD></TR><TR><TD CLASS="l">88</TD><TD>                        }</TD></TR><TR><TD CLASS="l">89</TD><TD>                }</TD></TR><TR><TD CLASS="l">90</TD><TD>                // additional tests</TD></TR><TR CLASS="z"><TD CLASS="l">91</TD><TD>                if (result == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">92</TD><TD>                        for (Iterator iterator = namespaceInfoList.iterator(); iterator.hasNext();) {</TD></TR><TR CLASS="z"><TD CLASS="l">93</TD><TD>                                NamespaceInfo nsInfo = (NamespaceInfo) iterator.next();</TD></TR><TR CLASS="z"><TD CLASS="l">94</TD><TD>                                nsInfo.normalize();</TD></TR><TR CLASS="z"><TD CLASS="l">95</TD><TD>                                if ((nsInfo.uri != null) &amp;&amp; nsInfo.isPrefixRequired &amp;&amp; (nsInfo.prefix == null)) {</TD></TR><TR CLASS="z"><TD CLASS="l">96</TD><TD>                                        result = XMLUIMessages._UI_WARNING_PREFIX_NOT_SPECIFIED + &#34; '&#34; + nsInfo.uri + &#34;'&#34;; //$NON-NLS-1$ //$NON-NLS-2$ </TD></TR><TR CLASS="z"><TD CLASS="l">97</TD><TD>                                        break;</TD></TR><TR><TD CLASS="l">98</TD><TD>                                }</TD></TR><TR><TD CLASS="l">99</TD><TD>                        }</TD></TR><TR><TD CLASS="l">100</TD><TD>                }</TD></TR><TR><TD CLASS="l">101</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">102</TD><TD>                return result;</TD></TR><TR><TD CLASS="l">103</TD><TD>        }</TD></TR><TR><TD CLASS="l">104</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="36.html">org.eclipse.wst.xml.ui.internal.dialogs</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1ba.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1ba.html
deleted file mode 100644
index 59ad43b..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1ba.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="36.html">org.eclipse.wst.xml.ui.internal.dialogs</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">NamespaceInfoTable.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>NamespaceInfoTable.java</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/40)</TD><TD CLASS="h">0%   (0/848)</TD><TD CLASS="h">0%   (0/203)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">NamespaceInfoTable</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/20)</TD><TD CLASS="h">0%   (0/645)</TD><TD CLASS="h">0%   (0/149)</TD></TR><TR><TD CLASS="f"><A HREF="#0">&lt;static initializer&gt;</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">NamespaceInfoTable (Composite): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#3">NamespaceInfoTable (Composite, int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">NamespaceInfoTable (Composite, int, int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#5">NamespaceInfoTable (Composite, int, int, int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/229)</TD><TD CLASS="h">0%   (0/46)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">createButtons (Composite): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/143)</TD><TD CLASS="h">0%   (0/31)</TD></TR><TR><TD CLASS="f"><A HREF="#7">createGridLayout (): GridLayout</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">getNamespaceInfoList (): List</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#9">getTargetNamespaceInfo (): NamespaceInfo</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">invokeDialog (String, NamespaceInfo): EditNamespaceInfoDialog</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/29)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR><TD CLASS="f"><A HREF="#b">performDelayedUpdate (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/19)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#c">performDelete (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/23)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#d">performEdit (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/25)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#e">performNew (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/20)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#f">setNamespaceInfoList (List): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#10">setResourceLocation (IPath): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#11">setUpdateListener (UpdateListener): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#12">update (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#13">updateButtonEnabledState (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/37)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#14">updateHelper (List): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/43)</TD><TD CLASS="h">0%   (0/10)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#15">NamespaceInfoTable$1</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/23)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#15">NamespaceInfoTable$1 (NamespaceInfoTable): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#17">mouseDoubleClick (MouseEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/17)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#18">NamespaceInfoTable$2</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#18">NamespaceInfoTable$2 (NamespaceInfoTable): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#1a">selectionChanged (SelectionChangedEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#1b">NamespaceInfoTable$3</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/36)</TD><TD CLASS="h">0%   (0/9)</TD></TR><TR><TD CLASS="f"><A HREF="#1b">NamespaceInfoTable$3 (NamespaceInfoTable): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#1d">widgetSelected (SelectionEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/30)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#b">NamespaceInfoTable$4</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#b">NamespaceInfoTable$4 (NamespaceInfoTable): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#20">run (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#21">NamespaceInfoTable$NamespaceInfoTableLabelProvider</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/124)</TD><TD CLASS="h">0%   (0/39)</TD></TR><TR><TD CLASS="f"><A HREF="#21">NamespaceInfoTable$NamespaceInfoTableLabelProvider (NamespaceInfoTable): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#23">addListener (ILabelProviderListener): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#24">dispose (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#25">getColumnImage (Object, int): Image</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#26">getColumnText (Object, int): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/37)</TD><TD CLASS="h">0%   (0/15)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#27">getDefaultPrefix (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/64)</TD><TD CLASS="h">0%   (0/14)</TD></TR><TR><TD CLASS="f"><A HREF="#28">getElements (Object): Object []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#29">inputChanged (Viewer, Object, Object): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#2a">isDeleted (Object): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2b">isLabelProperty (Object, Object): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#2c">isLabelProperty (Object, String): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2d">removeListener (ILabelProviderListener): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR CLASS="z"><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.ui.internal.dialogs;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.util.List;</TD></TR><TR><TD CLASS="l">16</TD><TD>import java.util.Vector;</TD></TR><TR><TD CLASS="l">17</TD><TD> </TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.core.runtime.IPath;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.jface.viewers.CellEditor;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.jface.viewers.ColumnWeightData;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.jface.viewers.ILabelProviderListener;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.jface.viewers.ISelection;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.jface.viewers.ISelectionChangedListener;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.jface.viewers.IStructuredContentProvider;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.jface.viewers.IStructuredSelection;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.jface.viewers.ITableLabelProvider;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.jface.viewers.SelectionChangedEvent;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.jface.viewers.StructuredSelection;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.jface.viewers.TableLayout;</TD></TR><TR><TD CLASS="l">30</TD><TD>import org.eclipse.jface.viewers.TableViewer;</TD></TR><TR><TD CLASS="l">31</TD><TD>import org.eclipse.jface.viewers.TextCellEditor;</TD></TR><TR><TD CLASS="l">32</TD><TD>import org.eclipse.jface.viewers.Viewer;</TD></TR><TR><TD CLASS="l">33</TD><TD>import org.eclipse.jface.window.Window;</TD></TR><TR><TD CLASS="l">34</TD><TD>import org.eclipse.swt.SWT;</TD></TR><TR><TD CLASS="l">35</TD><TD>import org.eclipse.swt.events.MouseAdapter;</TD></TR><TR><TD CLASS="l">36</TD><TD>import org.eclipse.swt.events.MouseEvent;</TD></TR><TR><TD CLASS="l">37</TD><TD>import org.eclipse.swt.events.SelectionAdapter;</TD></TR><TR><TD CLASS="l">38</TD><TD>import org.eclipse.swt.events.SelectionEvent;</TD></TR><TR><TD CLASS="l">39</TD><TD>import org.eclipse.swt.events.SelectionListener;</TD></TR><TR><TD CLASS="l">40</TD><TD>import org.eclipse.swt.graphics.Image;</TD></TR><TR><TD CLASS="l">41</TD><TD>import org.eclipse.swt.graphics.Point;</TD></TR><TR><TD CLASS="l">42</TD><TD>import org.eclipse.swt.layout.GridData;</TD></TR><TR><TD CLASS="l">43</TD><TD>import org.eclipse.swt.layout.GridLayout;</TD></TR><TR><TD CLASS="l">44</TD><TD>import org.eclipse.swt.widgets.Button;</TD></TR><TR><TD CLASS="l">45</TD><TD>import org.eclipse.swt.widgets.Composite;</TD></TR><TR><TD CLASS="l">46</TD><TD>import org.eclipse.swt.widgets.Group;</TD></TR><TR><TD CLASS="l">47</TD><TD>import org.eclipse.swt.widgets.Shell;</TD></TR><TR><TD CLASS="l">48</TD><TD>import org.eclipse.swt.widgets.Table;</TD></TR><TR><TD CLASS="l">49</TD><TD>import org.eclipse.swt.widgets.TableColumn;</TD></TR><TR><TD CLASS="l">50</TD><TD>import org.eclipse.swt.widgets.TableItem;</TD></TR><TR><TD CLASS="l">51</TD><TD>import org.eclipse.wst.xml.core.internal.contentmodel.util.NamespaceInfo;</TD></TR><TR><TD CLASS="l">52</TD><TD>import org.eclipse.wst.xml.ui.internal.XMLUIMessages;</TD></TR><TR><TD CLASS="l">53</TD><TD>import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;</TD></TR><TR><TD CLASS="l">54</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>public class NamespaceInfoTable extends Composite {</TD></TR><TR><TD CLASS="l"><A NAME="21">56</A></TD><TD> </TD></TR><TR><TD CLASS="l">57</TD><TD>        /**</TD></TR><TR><TD CLASS="l">58</TD><TD>         * NamespaceInfoTableLabelProvider</TD></TR><TR><TD CLASS="l"><A NAME="23">59</A></TD><TD>         */</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>        protected class NamespaceInfoTableLabelProvider implements ITableLabelProvider, IStructuredContentProvider {</TD></TR><TR><TD CLASS="l">61</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="24">62</A></TD><TD>                public void addListener(ILabelProviderListener listener) {</TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>                }</TD></TR><TR><TD CLASS="l">64</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="25">65</A></TD><TD>                public void dispose() {</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                }</TD></TR><TR><TD CLASS="l">67</TD><TD> </TD></TR><TR><TD CLASS="l">68</TD><TD>                public Image getColumnImage(Object object, int columnIndex) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="26">69</A></TD><TD>                        return null;</TD></TR><TR><TD CLASS="l">70</TD><TD>                }</TD></TR><TR><TD CLASS="l">71</TD><TD> </TD></TR><TR><TD CLASS="l">72</TD><TD>                public String getColumnText(Object object, int column) {</TD></TR><TR CLASS="z"><TD CLASS="l">73</TD><TD>                        NamespaceInfo info = (NamespaceInfo) object;</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>                        String result = null;</TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>                        switch (column) {</TD></TR><TR><TD CLASS="l">76</TD><TD>                                case 0 : {</TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>                                        result = info.uri;</TD></TR><TR CLASS="z"><TD CLASS="l">78</TD><TD>                                        break;</TD></TR><TR><TD CLASS="l">79</TD><TD>                                }</TD></TR><TR><TD CLASS="l">80</TD><TD>                                case 1 : {</TD></TR><TR CLASS="z"><TD CLASS="l">81</TD><TD>                                        result = info.prefix;</TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>                                        break;</TD></TR><TR><TD CLASS="l">83</TD><TD>                                }</TD></TR><TR><TD CLASS="l">84</TD><TD>                                case 2 : {</TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>                                        result = info.locationHint;</TD></TR><TR><TD CLASS="l">86</TD><TD>                                        break;</TD></TR><TR><TD CLASS="l">87</TD><TD>                                }</TD></TR><TR><TD CLASS="l">88</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">89</TD><TD>                        result = result != null ? result : &#34;&#34;; //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">90</TD><TD>                        if (result.equals(&#34;&#34;)) { //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">91</TD><TD>                                switch (column) {</TD></TR><TR><TD CLASS="l">92</TD><TD>                                        case 0 : {</TD></TR><TR CLASS="z"><TD CLASS="l">93</TD><TD>                                                result = XMLUIMessages._UI_NO_NAMESPACE_NAME;</TD></TR><TR CLASS="z"><TD CLASS="l">94</TD><TD>                                                break;</TD></TR><TR><TD CLASS="l">95</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">96</TD><TD>                                        case 1 : {</TD></TR><TR CLASS="z"><TD CLASS="l">97</TD><TD>                                                result = XMLUIMessages._UI_NO_PREFIX;</TD></TR><TR><TD CLASS="l">98</TD><TD>                                                break;</TD></TR><TR><TD CLASS="l">99</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">100</TD><TD>                                }</TD></TR><TR><TD CLASS="l">101</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="27">102</A></TD><TD>                        return result;</TD></TR><TR><TD CLASS="l">103</TD><TD>                }</TD></TR><TR><TD CLASS="l">104</TD><TD> </TD></TR><TR><TD CLASS="l">105</TD><TD>                String getDefaultPrefix() {</TD></TR><TR CLASS="z"><TD CLASS="l">106</TD><TD>                        String defaultPrefix = &#34;p&#34;; //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">107</TD><TD>                        if (namespaceInfoList == null) {</TD></TR><TR CLASS="z"><TD CLASS="l">108</TD><TD>                                return defaultPrefix;</TD></TR><TR><TD CLASS="l">109</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">110</TD><TD>                        Vector v = new Vector();</TD></TR><TR CLASS="z"><TD CLASS="l">111</TD><TD>                        for (int i = 0; i &lt; namespaceInfoList.size(); i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">112</TD><TD>                                NamespaceInfo nsinfo = (NamespaceInfo) namespaceInfoList.get(i);</TD></TR><TR CLASS="z"><TD CLASS="l">113</TD><TD>                                if (nsinfo.prefix != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">114</TD><TD>                                        v.addElement(nsinfo.prefix);</TD></TR><TR><TD CLASS="l">115</TD><TD>                                }</TD></TR><TR><TD CLASS="l">116</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">117</TD><TD>                        if (v.contains(defaultPrefix)) {</TD></TR><TR CLASS="z"><TD CLASS="l">118</TD><TD>                                String s = defaultPrefix;</TD></TR><TR CLASS="z"><TD CLASS="l">119</TD><TD>                                for (int j = 0; v.contains(s); j++) {</TD></TR><TR CLASS="z"><TD CLASS="l">120</TD><TD>                                        s = defaultPrefix + Integer.toString(j);</TD></TR><TR><TD CLASS="l">121</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">122</TD><TD>                                return s;</TD></TR><TR><TD CLASS="l">123</TD><TD>                        }</TD></TR><TR><TD CLASS="l">124</TD><TD>                        else {</TD></TR><TR CLASS="z"><TD CLASS="l">125</TD><TD>                                return defaultPrefix;</TD></TR><TR><TD CLASS="l"><A NAME="28">126</A></TD><TD>                        }</TD></TR><TR><TD CLASS="l">127</TD><TD>                }</TD></TR><TR><TD CLASS="l">128</TD><TD> </TD></TR><TR><TD CLASS="l">129</TD><TD>                public Object[] getElements(Object inputElement) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="29">130</A></TD><TD>                        return namespaceInfoList.toArray();</TD></TR><TR><TD CLASS="l">131</TD><TD>                }</TD></TR><TR><TD CLASS="l">132</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="2a">133</A></TD><TD>                public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {</TD></TR><TR CLASS="z"><TD CLASS="l">134</TD><TD>                }</TD></TR><TR><TD CLASS="l">135</TD><TD> </TD></TR><TR><TD CLASS="l">136</TD><TD>                public boolean isDeleted(Object element) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2b">137</A></TD><TD>                        return false;</TD></TR><TR><TD CLASS="l">138</TD><TD>                }</TD></TR><TR><TD CLASS="l">139</TD><TD> </TD></TR><TR><TD CLASS="l">140</TD><TD>                public boolean isLabelProperty(Object object, Object property) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2c">141</A></TD><TD>                        return false;</TD></TR><TR><TD CLASS="l">142</TD><TD>                }</TD></TR><TR><TD CLASS="l">143</TD><TD> </TD></TR><TR><TD CLASS="l">144</TD><TD>                public boolean isLabelProperty(Object element, String property) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2d">145</A></TD><TD>                        return false;</TD></TR><TR><TD CLASS="l">146</TD><TD>                }</TD></TR><TR><TD CLASS="l">147</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="0">148</A></TD><TD>                public void removeListener(ILabelProviderListener listener) {</TD></TR><TR CLASS="z"><TD CLASS="l">149</TD><TD>                }</TD></TR><TR><TD CLASS="l">150</TD><TD>        }</TD></TR><TR><TD CLASS="l">151</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">152</TD><TD>        protected static final String LOCATION_HINT = XMLUIMessages._UI_LABEL_LOCATION_HINT;</TD></TR><TR CLASS="z"><TD CLASS="l">153</TD><TD>        protected static final String NAMESPACE_URI = XMLUIMessages._UI_LABEL_NAMESPACE_NAME;</TD></TR><TR CLASS="z"><TD CLASS="l">154</TD><TD>        protected static final String PREFIX = XMLUIMessages._UI_LABEL_PREFIX;</TD></TR><TR><TD CLASS="l">155</TD><TD>        protected Button deleteButton;</TD></TR><TR CLASS="z"><TD CLASS="l">156</TD><TD>        protected boolean dummyRowsRemoved = false;</TD></TR><TR><TD CLASS="l">157</TD><TD>        protected Button editButton;</TD></TR><TR CLASS="z"><TD CLASS="l">158</TD><TD>        protected List namespaceInfoList = new Vector();</TD></TR><TR><TD CLASS="l">159</TD><TD>        protected Button newButton;</TD></TR><TR><TD CLASS="l">160</TD><TD>        protected NamespaceInfoTableLabelProvider provider;</TD></TR><TR><TD CLASS="l">161</TD><TD>        protected IPath resourceLocation;</TD></TR><TR><TD CLASS="l">162</TD><TD>        protected TableViewer tableViewer;</TD></TR><TR><TD CLASS="l"><A NAME="2">163</A></TD><TD>        protected UpdateListener updateListener;</TD></TR><TR CLASS="z"><TD CLASS="l">164</TD><TD>        protected int visibleRows = -1;</TD></TR><TR><TD CLASS="l">165</TD><TD> </TD></TR><TR><TD CLASS="l">166</TD><TD>        public NamespaceInfoTable(Composite parent) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">167</A></TD><TD>                this(parent, -1, -1, -1);</TD></TR><TR CLASS="z"><TD CLASS="l">168</TD><TD>        }</TD></TR><TR><TD CLASS="l">169</TD><TD> </TD></TR><TR><TD CLASS="l">170</TD><TD>        public NamespaceInfoTable(Composite parent, int visibleRows) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">171</A></TD><TD>                this(parent, -1, -1, visibleRows);</TD></TR><TR CLASS="z"><TD CLASS="l">172</TD><TD>        }</TD></TR><TR><TD CLASS="l">173</TD><TD> </TD></TR><TR><TD CLASS="l">174</TD><TD>        public NamespaceInfoTable(Composite parent, int widthHint, int heightHint) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="5">175</A></TD><TD>                this(parent, widthHint, heightHint, -1);</TD></TR><TR CLASS="z"><TD CLASS="l">176</TD><TD>        }</TD></TR><TR><TD CLASS="l">177</TD><TD> </TD></TR><TR><TD CLASS="l">178</TD><TD>        public NamespaceInfoTable(Composite parent, int widthHint, int heightHint, int visibleRows) {</TD></TR><TR CLASS="z"><TD CLASS="l">179</TD><TD>                super(parent, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">180</TD><TD>                setLayout(createGridLayout());</TD></TR><TR CLASS="z"><TD CLASS="l">181</TD><TD>                setLayoutData(new GridData(GridData.FILL_BOTH));</TD></TR><TR CLASS="z"><TD CLASS="l">182</TD><TD>                Group namespaceInfoGroup = new Group(this, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">183</TD><TD>                namespaceInfoGroup.setText(XMLUIMessages._UI_LABEL_XML_SCHEMA_INFORMATION);</TD></TR><TR CLASS="z"><TD CLASS="l">184</TD><TD>                namespaceInfoGroup.setLayout(new GridLayout());</TD></TR><TR CLASS="z"><TD CLASS="l">185</TD><TD>                GridData gd = new GridData(GridData.FILL_BOTH);</TD></TR><TR CLASS="z"><TD CLASS="l">186</TD><TD>                if (widthHint != -1) {</TD></TR><TR CLASS="z"><TD CLASS="l">187</TD><TD>                        gd.widthHint = widthHint;</TD></TR><TR><TD CLASS="l">188</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">189</TD><TD>                if (heightHint != -1) {</TD></TR><TR CLASS="z"><TD CLASS="l">190</TD><TD>                        gd.heightHint = heightHint;</TD></TR><TR><TD CLASS="l">191</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">192</TD><TD>                namespaceInfoGroup.setLayoutData(gd);</TD></TR><TR><TD CLASS="l">193</TD><TD>                // WorkbenchHelp.setHelp(namespaceInfoGroup, new</TD></TR><TR><TD CLASS="l">194</TD><TD>                // ControlContextComputer(namespaceInfoGroup,</TD></TR><TR><TD CLASS="l">195</TD><TD>                // XMLBuilderContextIds.XMLC_NAMESPACE_GROUP));</TD></TR><TR CLASS="z"><TD CLASS="l">196</TD><TD>                String[] titleArray = {NAMESPACE_URI, PREFIX, LOCATION_HINT};</TD></TR><TR CLASS="z"><TD CLASS="l">197</TD><TD>                tableViewer = new TableViewer(namespaceInfoGroup, SWT.FULL_SELECTION);</TD></TR><TR CLASS="z"><TD CLASS="l">198</TD><TD>                provider = new NamespaceInfoTableLabelProvider();</TD></TR><TR CLASS="z"><TD CLASS="l">199</TD><TD>                tableViewer.setContentProvider(provider);</TD></TR><TR CLASS="z"><TD CLASS="l">200</TD><TD>                tableViewer.setLabelProvider(provider);</TD></TR><TR CLASS="z"><TD CLASS="l">201</TD><TD>                tableViewer.setColumnProperties(titleArray);</TD></TR><TR CLASS="z"><TD CLASS="l">202</TD><TD>                Table table = tableViewer.getTable();</TD></TR><TR CLASS="z"><TD CLASS="l">203</TD><TD>                table.setHeaderVisible(true);</TD></TR><TR CLASS="z"><TD CLASS="l">204</TD><TD>                table.setLayoutData(new GridData(GridData.FILL_BOTH));</TD></TR><TR CLASS="z"><TD CLASS="l">205</TD><TD>                int[] widthArray = {50, 20, 30};</TD></TR><TR CLASS="z"><TD CLASS="l">206</TD><TD>                TableLayout layout = new TableLayout();</TD></TR><TR CLASS="z"><TD CLASS="l">207</TD><TD>                for (int i = 0; i &lt; titleArray.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">208</TD><TD>                        TableColumn column = new TableColumn(table, i);</TD></TR><TR CLASS="z"><TD CLASS="l">209</TD><TD>                        column.setText(titleArray[i]);</TD></TR><TR CLASS="z"><TD CLASS="l">210</TD><TD>                        column.setAlignment(SWT.LEFT);</TD></TR><TR CLASS="z"><TD CLASS="l">211</TD><TD>                        layout.addColumnData(new ColumnWeightData(widthArray[i], true));</TD></TR><TR><TD CLASS="l">212</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">213</TD><TD>                this.visibleRows = visibleRows;</TD></TR><TR CLASS="z"><TD CLASS="l">214</TD><TD>                for (int i = 0; i &lt; visibleRows; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">215</TD><TD>                        TableItem item = new TableItem(table, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">216</TD><TD>                        item.setText(&#34;#######&#34;); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">217</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">218</TD><TD>                table.setLayout(layout);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="15">219</A></TD><TD>                CellEditor[] cellEditors = new CellEditor[titleArray.length];</TD></TR><TR CLASS="z"><TD CLASS="l">220</TD><TD>                cellEditors[1] = new TextCellEditor(table);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="17">221</A></TD><TD>                cellEditors[2] = new TextCellEditor(table);</TD></TR><TR CLASS="z"><TD CLASS="l">222</TD><TD>                tableViewer.setCellEditors(cellEditors);</TD></TR><TR CLASS="z"><TD CLASS="l">223</TD><TD>                MouseAdapter mouseAdapter = new MouseAdapter() {</TD></TR><TR><TD CLASS="l">224</TD><TD>                        public void mouseDoubleClick(MouseEvent e) {</TD></TR><TR CLASS="z"><TD CLASS="l">225</TD><TD>                                if (tableViewer.getTable().getItem(new Point(e.x, e.y)) != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">226</TD><TD>                                        performEdit();</TD></TR><TR><TD CLASS="l">227</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="18">228</A></TD><TD>                        }</TD></TR><TR><TD CLASS="l">229</TD><TD>                };</TD></TR><TR CLASS="z"><TD CLASS="l">230</TD><TD>                table.addMouseListener(mouseAdapter);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="1a">231</A></TD><TD>                createButtons(namespaceInfoGroup);</TD></TR><TR CLASS="z"><TD CLASS="l">232</TD><TD>                ISelectionChangedListener selectionChangedListener = new ISelectionChangedListener() {</TD></TR><TR><TD CLASS="l">233</TD><TD>                        public void selectionChanged(SelectionChangedEvent event) {</TD></TR><TR CLASS="z"><TD CLASS="l">234</TD><TD>                                updateButtonEnabledState();</TD></TR><TR CLASS="z"><TD CLASS="l">235</TD><TD>                        }</TD></TR><TR><TD CLASS="l">236</TD><TD>                };</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="6">237</A></TD><TD>                tableViewer.addSelectionChangedListener(selectionChangedListener);</TD></TR><TR CLASS="z"><TD CLASS="l">238</TD><TD>        }</TD></TR><TR><TD CLASS="l">239</TD><TD> </TD></TR><TR><TD CLASS="l">240</TD><TD>        protected void createButtons(Composite parent) {</TD></TR><TR CLASS="z"><TD CLASS="l">241</TD><TD>                Composite composite = new Composite(parent, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">242</TD><TD>                composite.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));</TD></TR><TR CLASS="z"><TD CLASS="l">243</TD><TD>                GridLayout gridLayout = new GridLayout();</TD></TR><TR CLASS="z"><TD CLASS="l">244</TD><TD>                gridLayout.numColumns = 2;</TD></TR><TR CLASS="z"><TD CLASS="l">245</TD><TD>                gridLayout.marginHeight = 0;</TD></TR><TR CLASS="z"><TD CLASS="l">246</TD><TD>                gridLayout.marginWidth = 0;</TD></TR><TR CLASS="z"><TD CLASS="l">247</TD><TD>                composite.setLayout(gridLayout);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="1b">248</A></TD><TD>                Button hiddenButton = new Button(composite, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">249</TD><TD>                hiddenButton.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="1d">250</A></TD><TD>                hiddenButton.setVisible(false);</TD></TR><TR CLASS="z"><TD CLASS="l">251</TD><TD>                hiddenButton.setEnabled(false);</TD></TR><TR CLASS="z"><TD CLASS="l">252</TD><TD>                SelectionListener selectionListener = new SelectionAdapter() {</TD></TR><TR><TD CLASS="l">253</TD><TD>                        public void widgetSelected(SelectionEvent e) {</TD></TR><TR CLASS="z"><TD CLASS="l">254</TD><TD>                                if (e.widget == newButton) {</TD></TR><TR CLASS="z"><TD CLASS="l">255</TD><TD>                                        performNew();</TD></TR><TR><TD CLASS="l">256</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">257</TD><TD>                                else if (e.widget == editButton) {</TD></TR><TR CLASS="z"><TD CLASS="l">258</TD><TD>                                        performEdit();</TD></TR><TR><TD CLASS="l">259</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">260</TD><TD>                                else if (e.widget == deleteButton) {</TD></TR><TR CLASS="z"><TD CLASS="l">261</TD><TD>                                        performDelete();</TD></TR><TR><TD CLASS="l">262</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">263</TD><TD>                        }</TD></TR><TR><TD CLASS="l">264</TD><TD>                };</TD></TR><TR><TD CLASS="l">265</TD><TD>                // create a composite to hold the three buttons</TD></TR><TR CLASS="z"><TD CLASS="l">266</TD><TD>                Composite buttonComposite = new Composite(composite, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">267</TD><TD>                buttonComposite.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));</TD></TR><TR CLASS="z"><TD CLASS="l">268</TD><TD>                GridLayout buttonGridLayout = new GridLayout();</TD></TR><TR CLASS="z"><TD CLASS="l">269</TD><TD>                buttonGridLayout.numColumns = 3;</TD></TR><TR CLASS="z"><TD CLASS="l">270</TD><TD>                buttonGridLayout.makeColumnsEqualWidth = true;</TD></TR><TR CLASS="z"><TD CLASS="l">271</TD><TD>                buttonComposite.setLayout(buttonGridLayout);</TD></TR><TR><TD CLASS="l">272</TD><TD>                // add the New button</TD></TR><TR><TD CLASS="l">273</TD><TD>                //</TD></TR><TR CLASS="z"><TD CLASS="l">274</TD><TD>                newButton = new Button(buttonComposite, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">275</TD><TD>                newButton.setText(XMLUIMessages._UI_BUTTON_NEW);</TD></TR><TR CLASS="z"><TD CLASS="l">276</TD><TD>                newButton.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));</TD></TR><TR CLASS="z"><TD CLASS="l">277</TD><TD>                newButton.addSelectionListener(selectionListener);</TD></TR><TR><TD CLASS="l">278</TD><TD>                // add the Edit button</TD></TR><TR><TD CLASS="l">279</TD><TD>                //</TD></TR><TR CLASS="z"><TD CLASS="l">280</TD><TD>                editButton = new Button(buttonComposite, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">281</TD><TD>                editButton.setText(XMLUIMessages._UI_BUTTON_EDIT);</TD></TR><TR CLASS="z"><TD CLASS="l">282</TD><TD>                editButton.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));</TD></TR><TR CLASS="z"><TD CLASS="l">283</TD><TD>                editButton.addSelectionListener(selectionListener);</TD></TR><TR><TD CLASS="l">284</TD><TD>                // add the Delete button</TD></TR><TR><TD CLASS="l">285</TD><TD>                //</TD></TR><TR CLASS="z"><TD CLASS="l">286</TD><TD>                deleteButton = new Button(buttonComposite, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">287</TD><TD>                deleteButton.setText(XMLUIMessages._UI_BUTTON_DELETE);</TD></TR><TR CLASS="z"><TD CLASS="l">288</TD><TD>                deleteButton.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="7">289</A></TD><TD>                deleteButton.addSelectionListener(selectionListener);</TD></TR><TR CLASS="z"><TD CLASS="l">290</TD><TD>        }</TD></TR><TR><TD CLASS="l">291</TD><TD> </TD></TR><TR><TD CLASS="l">292</TD><TD>        public GridLayout createGridLayout() {</TD></TR><TR CLASS="z"><TD CLASS="l">293</TD><TD>                GridLayout gridLayout = new GridLayout();</TD></TR><TR CLASS="z"><TD CLASS="l">294</TD><TD>                gridLayout.marginWidth = 0;</TD></TR><TR CLASS="z"><TD CLASS="l">295</TD><TD>                gridLayout.horizontalSpacing = 0;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="8">296</A></TD><TD>                return gridLayout;</TD></TR><TR><TD CLASS="l">297</TD><TD>        }</TD></TR><TR><TD CLASS="l">298</TD><TD> </TD></TR><TR><TD CLASS="l">299</TD><TD>        public List getNamespaceInfoList() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="9">300</A></TD><TD>                return namespaceInfoList;</TD></TR><TR><TD CLASS="l">301</TD><TD>        }</TD></TR><TR><TD CLASS="l">302</TD><TD> </TD></TR><TR><TD CLASS="l">303</TD><TD>        protected NamespaceInfo getTargetNamespaceInfo() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="a">304</A></TD><TD>                return ((namespaceInfoList != null) &amp;&amp; (namespaceInfoList.size() &gt; 0)) ? (NamespaceInfo) namespaceInfoList.get(0) : null;</TD></TR><TR><TD CLASS="l">305</TD><TD>        }</TD></TR><TR><TD CLASS="l">306</TD><TD> </TD></TR><TR><TD CLASS="l">307</TD><TD>        protected EditNamespaceInfoDialog invokeDialog(String title, NamespaceInfo info) {</TD></TR><TR CLASS="z"><TD CLASS="l">308</TD><TD>                Shell shell = XMLUIPlugin.getInstance().getWorkbench().getActiveWorkbenchWindow().getShell();</TD></TR><TR CLASS="z"><TD CLASS="l">309</TD><TD>                EditNamespaceInfoDialog dialog = new EditNamespaceInfoDialog(shell, info);</TD></TR><TR CLASS="z"><TD CLASS="l">310</TD><TD>                dialog.create();</TD></TR><TR CLASS="z"><TD CLASS="l">311</TD><TD>                dialog.getShell().setText(title);</TD></TR><TR CLASS="z"><TD CLASS="l">312</TD><TD>                dialog.setBlockOnOpen(true);</TD></TR><TR CLASS="z"><TD CLASS="l">313</TD><TD>                dialog.setResourceLocation(resourceLocation);</TD></TR><TR CLASS="z"><TD CLASS="l">314</TD><TD>                dialog.open();</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="b">315</A></TD><TD>                return dialog;</TD></TR><TR><TD CLASS="l">316</TD><TD>        }</TD></TR><TR><TD CLASS="l">317</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="20">318</A></TD><TD>        protected void performDelayedUpdate() {</TD></TR><TR CLASS="z"><TD CLASS="l">319</TD><TD>                Runnable delayedUpdate = new Runnable() {</TD></TR><TR><TD CLASS="l">320</TD><TD>                        public void run() {</TD></TR><TR CLASS="z"><TD CLASS="l">321</TD><TD>                                update();</TD></TR><TR CLASS="z"><TD CLASS="l">322</TD><TD>                        }</TD></TR><TR><TD CLASS="l">323</TD><TD>                };</TD></TR><TR CLASS="z"><TD CLASS="l">324</TD><TD>                getDisplay().asyncExec(delayedUpdate);</TD></TR><TR CLASS="z"><TD CLASS="l">325</TD><TD>                if (updateListener != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">326</TD><TD>                        updateListener.updateOccured(this, namespaceInfoList);</TD></TR><TR><TD CLASS="l"><A NAME="c">327</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">328</TD><TD>        }</TD></TR><TR><TD CLASS="l">329</TD><TD> </TD></TR><TR><TD CLASS="l">330</TD><TD>        public void performDelete() {</TD></TR><TR CLASS="z"><TD CLASS="l">331</TD><TD>                ISelection selection = tableViewer.getSelection();</TD></TR><TR CLASS="z"><TD CLASS="l">332</TD><TD>                Object selectedObject = (selection instanceof IStructuredSelection) ? ((IStructuredSelection) selection).getFirstElement() : null;</TD></TR><TR CLASS="z"><TD CLASS="l">333</TD><TD>                if (selectedObject != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">334</TD><TD>                        namespaceInfoList.remove(selectedObject);</TD></TR><TR CLASS="z"><TD CLASS="l">335</TD><TD>                        performDelayedUpdate();</TD></TR><TR><TD CLASS="l"><A NAME="d">336</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">337</TD><TD>        }</TD></TR><TR><TD CLASS="l">338</TD><TD> </TD></TR><TR><TD CLASS="l">339</TD><TD>        public void performEdit() {</TD></TR><TR CLASS="z"><TD CLASS="l">340</TD><TD>                ISelection selection = tableViewer.getSelection();</TD></TR><TR CLASS="z"><TD CLASS="l">341</TD><TD>                Object selectedObject = (selection instanceof IStructuredSelection) ? ((IStructuredSelection) selection).getFirstElement() : null;</TD></TR><TR CLASS="z"><TD CLASS="l">342</TD><TD>                if (selectedObject instanceof NamespaceInfo) {</TD></TR><TR CLASS="z"><TD CLASS="l">343</TD><TD>                        invokeDialog(XMLUIMessages._UI_LABEL_NEW_NAMESPACE_INFORMATION, (NamespaceInfo) selectedObject);</TD></TR><TR CLASS="z"><TD CLASS="l">344</TD><TD>                        performDelayedUpdate();</TD></TR><TR><TD CLASS="l"><A NAME="e">345</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">346</TD><TD>        }</TD></TR><TR><TD CLASS="l">347</TD><TD> </TD></TR><TR><TD CLASS="l">348</TD><TD>        public void performNew() {</TD></TR><TR CLASS="z"><TD CLASS="l">349</TD><TD>                NamespaceInfo info = new NamespaceInfo();</TD></TR><TR CLASS="z"><TD CLASS="l">350</TD><TD>                EditNamespaceInfoDialog dialog = invokeDialog(XMLUIMessages._UI_LABEL_NEW_NAMESPACE_INFORMATION, info);</TD></TR><TR CLASS="z"><TD CLASS="l">351</TD><TD>                if (dialog.getReturnCode() == Window.OK) {</TD></TR><TR CLASS="z"><TD CLASS="l">352</TD><TD>                        namespaceInfoList.add(info);</TD></TR><TR CLASS="z"><TD CLASS="l">353</TD><TD>                        performDelayedUpdate();</TD></TR><TR><TD CLASS="l"><A NAME="f">354</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">355</TD><TD>        }</TD></TR><TR><TD CLASS="l">356</TD><TD> </TD></TR><TR><TD CLASS="l">357</TD><TD>        public void setNamespaceInfoList(List namespaceInfoList) {</TD></TR><TR CLASS="z"><TD CLASS="l">358</TD><TD>                this.namespaceInfoList = namespaceInfoList;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="10">359</A></TD><TD>                update();</TD></TR><TR CLASS="z"><TD CLASS="l">360</TD><TD>        }</TD></TR><TR><TD CLASS="l">361</TD><TD> </TD></TR><TR><TD CLASS="l">362</TD><TD>        public void setResourceLocation(IPath resourceLocation) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="11">363</A></TD><TD>                this.resourceLocation = resourceLocation;</TD></TR><TR CLASS="z"><TD CLASS="l">364</TD><TD>        }</TD></TR><TR><TD CLASS="l">365</TD><TD> </TD></TR><TR><TD CLASS="l">366</TD><TD>        public void setUpdateListener(UpdateListener updateListener) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="12">367</A></TD><TD>                this.updateListener = updateListener;</TD></TR><TR CLASS="z"><TD CLASS="l">368</TD><TD>        }</TD></TR><TR><TD CLASS="l">369</TD><TD> </TD></TR><TR><TD CLASS="l">370</TD><TD>        public void update() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="13">371</A></TD><TD>                updateHelper(namespaceInfoList);</TD></TR><TR CLASS="z"><TD CLASS="l">372</TD><TD>        }</TD></TR><TR><TD CLASS="l">373</TD><TD> </TD></TR><TR><TD CLASS="l">374</TD><TD>        public void updateButtonEnabledState() {</TD></TR><TR CLASS="z"><TD CLASS="l">375</TD><TD>                ISelection selection = tableViewer.getSelection();</TD></TR><TR CLASS="z"><TD CLASS="l">376</TD><TD>                Object selectedObject = (selection instanceof IStructuredSelection) ? ((IStructuredSelection) selection).getFirstElement() : null;</TD></TR><TR CLASS="z"><TD CLASS="l">377</TD><TD>                NamespaceInfo info = (NamespaceInfo) selectedObject;</TD></TR><TR CLASS="z"><TD CLASS="l">378</TD><TD>                editButton.setEnabled(info != null);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="14">379</A></TD><TD>                deleteButton.setEnabled((info != null) &amp;&amp; (info.getProperty(&#34;unremovable&#34;) == null)); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">380</TD><TD>        }</TD></TR><TR><TD CLASS="l">381</TD><TD> </TD></TR><TR><TD CLASS="l">382</TD><TD>        public void updateHelper(List namespaceInfoList) {</TD></TR><TR CLASS="z"><TD CLASS="l">383</TD><TD>                if ((visibleRows != -1) &amp;&amp; !dummyRowsRemoved) {</TD></TR><TR CLASS="z"><TD CLASS="l">384</TD><TD>                        dummyRowsRemoved = true;</TD></TR><TR CLASS="z"><TD CLASS="l">385</TD><TD>                        tableViewer.getTable().removeAll();</TD></TR><TR><TD CLASS="l">386</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">387</TD><TD>                ISelection selection = tableViewer.getSelection();</TD></TR><TR CLASS="z"><TD CLASS="l">388</TD><TD>                tableViewer.setInput(namespaceInfoList);</TD></TR><TR CLASS="z"><TD CLASS="l">389</TD><TD>                if (selection.isEmpty()) {</TD></TR><TR CLASS="z"><TD CLASS="l">390</TD><TD>                        if (namespaceInfoList.size() &gt; 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">391</TD><TD>                                tableViewer.setSelection(new StructuredSelection(namespaceInfoList.get(0)));</TD></TR><TR><TD CLASS="l">392</TD><TD>                        }</TD></TR><TR><TD CLASS="l">393</TD><TD>                }</TD></TR><TR><TD CLASS="l">394</TD><TD>                else {</TD></TR><TR CLASS="z"><TD CLASS="l">395</TD><TD>                        tableViewer.setSelection(selection);</TD></TR><TR><TD CLASS="l">396</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">397</TD><TD>        }</TD></TR><TR><TD CLASS="l">398</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="36.html">org.eclipse.wst.xml.ui.internal.dialogs</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1bb.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1bb.html
deleted file mode 100644
index 215146c..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1bb.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="36.html">org.eclipse.wst.xml.ui.internal.dialogs</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">SelectFileOrXMLCatalogIdDialog.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>SelectFileOrXMLCatalogIdDialog.java</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/125)</TD><TD CLASS="h">0%   (0/31)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">SelectFileOrXMLCatalogIdDialog</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/115)</TD><TD CLASS="h">0%   (0/28)</TD></TR><TR><TD CLASS="f"><A HREF="#0">SelectFileOrXMLCatalogIdDialog (Shell, String []): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">SelectFileOrXMLCatalogIdDialog (Shell, String [], int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/16)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#3">buttonPressed (int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/16)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">createButtonsForButtonBar (Composite): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/20)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#5">createDialogArea (Composite): Control</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/36)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">getFile (): IFile</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#7">getId (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">updateButtonState (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#9">SelectFileOrXMLCatalogIdDialog$1</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#9">SelectFileOrXMLCatalogIdDialog$1 (SelectFileOrXMLCatalogIdDialog): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#b">completionStateChanged (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR CLASS="z"><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.ui.internal.dialogs;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.core.resources.IFile;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.jface.dialogs.Dialog;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.jface.dialogs.IDialogConstants;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.swt.SWT;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.swt.widgets.Button;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.swt.widgets.Composite;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.swt.widgets.Control;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.swt.widgets.Shell;</TD></TR><TR><TD CLASS="l">23</TD><TD> </TD></TR><TR><TD CLASS="l">24</TD><TD> </TD></TR><TR><TD CLASS="l">25</TD><TD>public class SelectFileOrXMLCatalogIdDialog extends Dialog {</TD></TR><TR><TD CLASS="l">26</TD><TD>        protected int catalogEntryType;</TD></TR><TR><TD CLASS="l">27</TD><TD>        protected String[] extensions;</TD></TR><TR><TD CLASS="l">28</TD><TD>        protected IFile file;</TD></TR><TR><TD CLASS="l">29</TD><TD>        protected String id;</TD></TR><TR><TD CLASS="l"><A NAME="0">30</A></TD><TD>        protected Button okButton;</TD></TR><TR><TD CLASS="l">31</TD><TD>        protected SelectFileOrXMLCatalogIdPanel panel;</TD></TR><TR><TD CLASS="l">32</TD><TD> </TD></TR><TR><TD CLASS="l">33</TD><TD>        public SelectFileOrXMLCatalogIdDialog(Shell parentShell, String[] extensions) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">34</A></TD><TD>                this(parentShell, extensions, 0);</TD></TR><TR CLASS="z"><TD CLASS="l">35</TD><TD>        }</TD></TR><TR><TD CLASS="l">36</TD><TD> </TD></TR><TR><TD CLASS="l">37</TD><TD>        public SelectFileOrXMLCatalogIdDialog(Shell parentShell, String[] extensions, int catalogEntryType) {</TD></TR><TR CLASS="z"><TD CLASS="l">38</TD><TD>                super(parentShell);</TD></TR><TR CLASS="z"><TD CLASS="l">39</TD><TD>                setShellStyle(getShellStyle() | SWT.RESIZE);</TD></TR><TR CLASS="z"><TD CLASS="l">40</TD><TD>                this.extensions = extensions;</TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>                this.catalogEntryType = catalogEntryType;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">42</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">43</TD><TD> </TD></TR><TR><TD CLASS="l">44</TD><TD> </TD></TR><TR><TD CLASS="l">45</TD><TD>        protected void buttonPressed(int buttonId) {</TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>                if (buttonId == IDialogConstants.OK_ID) {</TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>                        file = panel.getFile();</TD></TR><TR CLASS="z"><TD CLASS="l">48</TD><TD>                        id = panel.getXMLCatalogId();</TD></TR><TR><TD CLASS="l">49</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">50</A></TD><TD>                super.buttonPressed(buttonId);</TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>        }</TD></TR><TR><TD CLASS="l">52</TD><TD> </TD></TR><TR><TD CLASS="l">53</TD><TD>        protected void createButtonsForButtonBar(Composite parent) {</TD></TR><TR CLASS="z"><TD CLASS="l">54</TD><TD>                okButton = createButton(parent, IDialogConstants.OK_ID, IDialogConstants.OK_LABEL, true);</TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                okButton.setEnabled(false);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="5">56</A></TD><TD>                createButton(parent, IDialogConstants.CANCEL_ID, IDialogConstants.CANCEL_LABEL, false);</TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>        }</TD></TR><TR><TD CLASS="l">58</TD><TD> </TD></TR><TR><TD CLASS="l">59</TD><TD>        protected Control createDialogArea(Composite parent) {</TD></TR><TR CLASS="z"><TD CLASS="l">60</TD><TD>                Composite dialogArea = (Composite) super.createDialogArea(parent);</TD></TR><TR><TD CLASS="l">61</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="9">62</A></TD><TD>                panel = new SelectFileOrXMLCatalogIdPanel(dialogArea);</TD></TR><TR CLASS="z"><TD CLASS="l">63</TD><TD>                panel.setCatalogEntryType(catalogEntryType);</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                panel.setFilterExtensions(extensions);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="b">65</A></TD><TD>                panel.setVisibleHelper(true);</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                SelectFileOrXMLCatalogIdPanel.Listener listener = new SelectFileOrXMLCatalogIdPanel.Listener() {</TD></TR><TR><TD CLASS="l">67</TD><TD>                        public void completionStateChanged() {</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>                                updateButtonState();</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                        }</TD></TR><TR><TD CLASS="l">70</TD><TD>                };</TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>                panel.setListener(listener);</TD></TR><TR><TD CLASS="l">72</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="6">73</A></TD><TD>                return dialogArea;</TD></TR><TR><TD CLASS="l">74</TD><TD>        }</TD></TR><TR><TD CLASS="l">75</TD><TD> </TD></TR><TR><TD CLASS="l">76</TD><TD>        public IFile getFile() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="7">77</A></TD><TD>                return file;</TD></TR><TR><TD CLASS="l">78</TD><TD>        }</TD></TR><TR><TD CLASS="l">79</TD><TD> </TD></TR><TR><TD CLASS="l">80</TD><TD>        public String getId() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="8">81</A></TD><TD>                return id;</TD></TR><TR><TD CLASS="l">82</TD><TD>        }</TD></TR><TR><TD CLASS="l">83</TD><TD> </TD></TR><TR><TD CLASS="l">84</TD><TD>        protected void updateButtonState() {</TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>                okButton.setEnabled((panel.getFile() != null) || (panel.getXMLCatalogId() != null));</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>        }</TD></TR><TR><TD CLASS="l">87</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="36.html">org.eclipse.wst.xml.ui.internal.dialogs</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1bc.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1bc.html
deleted file mode 100644
index 06177ec..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1bc.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="36.html">org.eclipse.wst.xml.ui.internal.dialogs</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">SelectFileOrXMLCatalogIdPanel.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>SelectFileOrXMLCatalogIdPanel.java</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/18)</TD><TD CLASS="h">0%   (0/300)</TD><TD CLASS="h">0%   (0/73)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">SelectFileOrXMLCatalogIdPanel</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/12)</TD><TD CLASS="h">0%   (0/256)</TD><TD CLASS="h">0%   (0/60)</TD></TR><TR><TD CLASS="f"><A HREF="#0">SelectFileOrXMLCatalogIdPanel (Composite): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/143)</TD><TD CLASS="h">0%   (0/25)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">getFile (): IFile</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/14)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#3">getXMLCatalogEntry (): ICatalogEntry</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/14)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">getXMLCatalogId (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/14)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#5">getXMLCatalogURI (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/14)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">setCatalogEntryType (int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#7">setFilterExtensions (String []): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">setListener (SelectFileOrXMLCatalogIdPanel$Listener): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="f"><A HREF="#9">setVisibleHelper (boolean): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">updateCompletionStateChange (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#b">widgetDefaultSelected (SelectionEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#c">widgetSelected (SelectionEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/22)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#d">SelectFileOrXMLCatalogIdPanel$1</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#d">SelectFileOrXMLCatalogIdPanel$1 (SelectFileOrXMLCatalogIdPanel): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#f">selectionChanged (SelectionChangedEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#10">SelectFileOrXMLCatalogIdPanel$MySelectSingleFileView</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/34)</TD><TD CLASS="h">0%   (0/10)</TD></TR><TR><TD CLASS="f"><A HREF="#10">SelectFileOrXMLCatalogIdPanel$MySelectSingleFileView (SelectFileOrXMLCatalogI...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/23)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#12">getControl (): Control</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#13">setControlComplete (boolean): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#14">setVisibleHelper (boolean): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR CLASS="z"><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *           David Schneider, david.schneider@unisys.com - [142500] WTP properties pages fonts don't follow Eclipse preferences</TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.ui.internal.dialogs;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import org.eclipse.core.resources.IFile;</TD></TR><TR><TD CLASS="l">16</TD><TD>import org.eclipse.jface.dialogs.Dialog;</TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.jface.viewers.ISelectionChangedListener;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.jface.viewers.SelectionChangedEvent;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.swt.SWT;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.swt.events.SelectionEvent;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.swt.events.SelectionListener;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.swt.layout.GridData;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.swt.layout.GridLayout;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.swt.widgets.Button;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.swt.widgets.Composite;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.swt.widgets.Control;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.ui.part.PageBook;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.wst.common.ui.internal.viewers.SelectSingleFileView;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.wst.xml.core.internal.XMLCorePlugin;</TD></TR><TR><TD CLASS="l">30</TD><TD>import org.eclipse.wst.xml.core.internal.catalog.provisional.ICatalog;</TD></TR><TR><TD CLASS="l">31</TD><TD>import org.eclipse.wst.xml.core.internal.catalog.provisional.ICatalogEntry;</TD></TR><TR><TD CLASS="l">32</TD><TD>import org.eclipse.wst.xml.ui.internal.XMLUIMessages;</TD></TR><TR><TD CLASS="l">33</TD><TD> </TD></TR><TR><TD CLASS="l">34</TD><TD> </TD></TR><TR><TD CLASS="l">35</TD><TD>public class SelectFileOrXMLCatalogIdPanel extends Composite implements SelectionListener {</TD></TR><TR><TD CLASS="l">36</TD><TD> </TD></TR><TR><TD CLASS="l">37</TD><TD>        /**</TD></TR><TR><TD CLASS="l">38</TD><TD>         * TODO: Change the name of this interface; &#34;Listener&#34; is used by SWT.</TD></TR><TR><TD CLASS="l">39</TD><TD>         */</TD></TR><TR><TD CLASS="l">40</TD><TD>        public interface Listener {</TD></TR><TR><TD CLASS="l">41</TD><TD>                void completionStateChanged();</TD></TR><TR><TD CLASS="l">42</TD><TD>        }</TD></TR><TR><TD CLASS="l">43</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="10">44</A></TD><TD>        protected class MySelectSingleFileView extends SelectSingleFileView implements SelectSingleFileView.Listener {</TD></TR><TR><TD CLASS="l">45</TD><TD>                protected Control control;</TD></TR><TR><TD CLASS="l">46</TD><TD> </TD></TR><TR><TD CLASS="l">47</TD><TD>                public MySelectSingleFileView(Composite parent) {</TD></TR><TR CLASS="z"><TD CLASS="l">48</TD><TD>                        super(null, true);</TD></TR><TR><TD CLASS="l">49</TD><TD>                        // String[] ext = {&#34;.dtd&#34;};</TD></TR><TR><TD CLASS="l">50</TD><TD>                        // addFilterExtensions(ext);</TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>                        control = createControl(parent);</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                        control.setLayoutData(new GridData(GridData.FILL_BOTH));</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="12">53</A></TD><TD>                        MySelectSingleFileView.this.setListener(this);</TD></TR><TR CLASS="z"><TD CLASS="l">54</TD><TD>                }</TD></TR><TR><TD CLASS="l">55</TD><TD> </TD></TR><TR><TD CLASS="l">56</TD><TD>                public Control getControl() {</TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>                        return control;</TD></TR><TR><TD CLASS="l"><A NAME="13">58</A></TD><TD>                }</TD></TR><TR><TD CLASS="l">59</TD><TD> </TD></TR><TR><TD CLASS="l">60</TD><TD>                public void setControlComplete(boolean isComplete) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="14">61</A></TD><TD>                        updateCompletionStateChange();</TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>                }</TD></TR><TR><TD CLASS="l">63</TD><TD> </TD></TR><TR><TD CLASS="l">64</TD><TD>                public void setVisibleHelper(boolean isVisible) {</TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>                        super.setVisibleHelper(isVisible);</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                }</TD></TR><TR><TD CLASS="l">67</TD><TD>        }</TD></TR><TR><TD CLASS="l">68</TD><TD> </TD></TR><TR><TD CLASS="l">69</TD><TD>        protected Listener listener;</TD></TR><TR><TD CLASS="l">70</TD><TD>        protected PageBook pageBook;</TD></TR><TR><TD CLASS="l">71</TD><TD> </TD></TR><TR><TD CLASS="l">72</TD><TD>        protected Button[] radioButton;</TD></TR><TR><TD CLASS="l"><A NAME="0">73</A></TD><TD>        protected MySelectSingleFileView selectSingleFileView;</TD></TR><TR><TD CLASS="l">74</TD><TD>        protected SelectXMLCatalogIdPanel selectXMLCatalogIdPanel;</TD></TR><TR><TD CLASS="l">75</TD><TD> </TD></TR><TR><TD CLASS="l">76</TD><TD>        public SelectFileOrXMLCatalogIdPanel(Composite parent) {</TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>                super(parent, SWT.NONE);</TD></TR><TR><TD CLASS="l">78</TD><TD> </TD></TR><TR><TD CLASS="l">79</TD><TD>                // container group</TD></TR><TR CLASS="z"><TD CLASS="l">80</TD><TD>                setLayout(new GridLayout());</TD></TR><TR CLASS="z"><TD CLASS="l">81</TD><TD>                GridData gd = new GridData(GridData.FILL_BOTH);</TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>                gd.heightHint = 400;</TD></TR><TR CLASS="z"><TD CLASS="l">83</TD><TD>                gd.widthHint = 400;</TD></TR><TR CLASS="z"><TD CLASS="l">84</TD><TD>                setLayoutData(gd);</TD></TR><TR><TD CLASS="l">85</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                radioButton = new Button[2];</TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>                radioButton[0] = new Button(this, SWT.RADIO);</TD></TR><TR CLASS="z"><TD CLASS="l">88</TD><TD>                radioButton[0].setText(XMLUIMessages._UI_RADIO_BUTTON_SELECT_FROM_WORKSPACE);</TD></TR><TR CLASS="z"><TD CLASS="l">89</TD><TD>                radioButton[0].setLayoutData(new GridData(GridData.FILL_HORIZONTAL));</TD></TR><TR CLASS="z"><TD CLASS="l">90</TD><TD>                radioButton[0].setSelection(true);</TD></TR><TR CLASS="z"><TD CLASS="l">91</TD><TD>                radioButton[0].addSelectionListener(this);</TD></TR><TR><TD CLASS="l">92</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">93</TD><TD>                radioButton[1] = new Button(this, SWT.RADIO);</TD></TR><TR CLASS="z"><TD CLASS="l">94</TD><TD>                radioButton[1].setText(XMLUIMessages._UI_RADIO_BUTTON_SELECT_FROM_CATALOG);</TD></TR><TR CLASS="z"><TD CLASS="l">95</TD><TD>                radioButton[1].setLayoutData(new GridData(GridData.FILL_HORIZONTAL));</TD></TR><TR CLASS="z"><TD CLASS="l">96</TD><TD>                radioButton[1].addSelectionListener(this);</TD></TR><TR><TD CLASS="l">97</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">98</TD><TD>                pageBook = new PageBook(this, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">99</TD><TD>                pageBook.setLayoutData(new GridData(GridData.FILL_BOTH));</TD></TR><TR><TD CLASS="l">100</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="d">101</A></TD><TD>                selectSingleFileView = new MySelectSingleFileView(pageBook);</TD></TR><TR><TD CLASS="l">102</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">103</TD><TD>                ICatalog xmlCatalog = XMLCorePlugin.getDefault().getDefaultXMLCatalog();</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="f">104</A></TD><TD>                selectXMLCatalogIdPanel = new SelectXMLCatalogIdPanel(pageBook, xmlCatalog);</TD></TR><TR CLASS="z"><TD CLASS="l">105</TD><TD>                selectXMLCatalogIdPanel.getTableViewer().addSelectionChangedListener(new ISelectionChangedListener() {</TD></TR><TR><TD CLASS="l">106</TD><TD>                        public void selectionChanged(SelectionChangedEvent event) {</TD></TR><TR CLASS="z"><TD CLASS="l">107</TD><TD>                                updateCompletionStateChange();</TD></TR><TR CLASS="z"><TD CLASS="l">108</TD><TD>                        }</TD></TR><TR><TD CLASS="l">109</TD><TD>                });</TD></TR><TR CLASS="z"><TD CLASS="l">110</TD><TD>                Dialog.applyDialogFont(parent);</TD></TR><TR CLASS="z"><TD CLASS="l">111</TD><TD>                pageBook.showPage(selectSingleFileView.getControl());</TD></TR><TR><TD CLASS="l"><A NAME="2">112</A></TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">113</TD><TD>        }</TD></TR><TR><TD CLASS="l">114</TD><TD> </TD></TR><TR><TD CLASS="l">115</TD><TD>        public IFile getFile() {</TD></TR><TR CLASS="z"><TD CLASS="l">116</TD><TD>                IFile result = null;</TD></TR><TR CLASS="z"><TD CLASS="l">117</TD><TD>                if (radioButton[0].getSelection()) {</TD></TR><TR CLASS="z"><TD CLASS="l">118</TD><TD>                        result = selectSingleFileView.getFile();</TD></TR><TR><TD CLASS="l">119</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">120</A></TD><TD>                return result;</TD></TR><TR><TD CLASS="l">121</TD><TD>        }</TD></TR><TR><TD CLASS="l">122</TD><TD> </TD></TR><TR><TD CLASS="l">123</TD><TD>        public ICatalogEntry getXMLCatalogEntry() {</TD></TR><TR CLASS="z"><TD CLASS="l">124</TD><TD>                ICatalogEntry result = null;</TD></TR><TR CLASS="z"><TD CLASS="l">125</TD><TD>                if (radioButton[1].getSelection()) {</TD></TR><TR CLASS="z"><TD CLASS="l">126</TD><TD>                        result = selectXMLCatalogIdPanel.getXMLCatalogEntry();</TD></TR><TR><TD CLASS="l">127</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">128</A></TD><TD>                return result;</TD></TR><TR><TD CLASS="l">129</TD><TD>        }</TD></TR><TR><TD CLASS="l">130</TD><TD> </TD></TR><TR><TD CLASS="l">131</TD><TD>        public String getXMLCatalogId() {</TD></TR><TR CLASS="z"><TD CLASS="l">132</TD><TD>                String result = null;</TD></TR><TR CLASS="z"><TD CLASS="l">133</TD><TD>                if (radioButton[1].getSelection()) {</TD></TR><TR CLASS="z"><TD CLASS="l">134</TD><TD>                        result = selectXMLCatalogIdPanel.getId();</TD></TR><TR><TD CLASS="l">135</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="5">136</A></TD><TD>                return result;</TD></TR><TR><TD CLASS="l">137</TD><TD>        }</TD></TR><TR><TD CLASS="l">138</TD><TD> </TD></TR><TR><TD CLASS="l">139</TD><TD>        public String getXMLCatalogURI() {</TD></TR><TR CLASS="z"><TD CLASS="l">140</TD><TD>                String result = null;</TD></TR><TR CLASS="z"><TD CLASS="l">141</TD><TD>                if (radioButton[1].getSelection()) {</TD></TR><TR CLASS="z"><TD CLASS="l">142</TD><TD>                        result = selectXMLCatalogIdPanel.getURI();</TD></TR><TR><TD CLASS="l">143</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="6">144</A></TD><TD>                return result;</TD></TR><TR><TD CLASS="l">145</TD><TD>        }</TD></TR><TR><TD CLASS="l">146</TD><TD> </TD></TR><TR><TD CLASS="l">147</TD><TD>        public void setCatalogEntryType(int catalogEntryType) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="7">148</A></TD><TD>                selectXMLCatalogIdPanel.setCatalogEntryType(catalogEntryType);</TD></TR><TR CLASS="z"><TD CLASS="l">149</TD><TD>        }</TD></TR><TR><TD CLASS="l">150</TD><TD> </TD></TR><TR><TD CLASS="l">151</TD><TD>        public void setFilterExtensions(String[] filterExtensions) {</TD></TR><TR CLASS="z"><TD CLASS="l">152</TD><TD>                selectSingleFileView.resetFilters();</TD></TR><TR CLASS="z"><TD CLASS="l">153</TD><TD>                selectSingleFileView.addFilterExtensions(filterExtensions);</TD></TR><TR><TD CLASS="l">154</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="8">155</A></TD><TD>                selectXMLCatalogIdPanel.getTableViewer().setFilterExtensions(filterExtensions);</TD></TR><TR CLASS="z"><TD CLASS="l">156</TD><TD>        }</TD></TR><TR><TD CLASS="l">157</TD><TD> </TD></TR><TR><TD CLASS="l">158</TD><TD>        public void setListener(Listener listener) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="9">159</A></TD><TD>                this.listener = listener;</TD></TR><TR CLASS="z"><TD CLASS="l">160</TD><TD>        }</TD></TR><TR><TD CLASS="l">161</TD><TD> </TD></TR><TR><TD CLASS="l">162</TD><TD>        public void setVisibleHelper(boolean isVisible) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="a">163</A></TD><TD>                selectSingleFileView.setVisibleHelper(isVisible);</TD></TR><TR CLASS="z"><TD CLASS="l">164</TD><TD>        }</TD></TR><TR><TD CLASS="l">165</TD><TD> </TD></TR><TR><TD CLASS="l">166</TD><TD>        public void updateCompletionStateChange() {</TD></TR><TR CLASS="z"><TD CLASS="l">167</TD><TD>                if (listener != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">168</TD><TD>                        listener.completionStateChanged();</TD></TR><TR><TD CLASS="l"><A NAME="b">169</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">170</TD><TD>        }</TD></TR><TR><TD CLASS="l">171</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="c">172</A></TD><TD>        public void widgetDefaultSelected(SelectionEvent e) {</TD></TR><TR CLASS="z"><TD CLASS="l">173</TD><TD>        }</TD></TR><TR><TD CLASS="l">174</TD><TD> </TD></TR><TR><TD CLASS="l">175</TD><TD>        public void widgetSelected(SelectionEvent e) {</TD></TR><TR CLASS="z"><TD CLASS="l">176</TD><TD>                if (e.widget == radioButton[0]) {</TD></TR><TR CLASS="z"><TD CLASS="l">177</TD><TD>                        pageBook.showPage(selectSingleFileView.getControl());</TD></TR><TR><TD CLASS="l">178</TD><TD>                }</TD></TR><TR><TD CLASS="l">179</TD><TD>                else {</TD></TR><TR CLASS="z"><TD CLASS="l">180</TD><TD>                        pageBook.showPage(selectXMLCatalogIdPanel);</TD></TR><TR><TD CLASS="l">181</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">182</TD><TD>                updateCompletionStateChange();</TD></TR><TR CLASS="z"><TD CLASS="l">183</TD><TD>        }</TD></TR><TR><TD CLASS="l">184</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="36.html">org.eclipse.wst.xml.ui.internal.dialogs</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1bd.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1bd.html
deleted file mode 100644
index 516cccc..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1bd.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="36.html">org.eclipse.wst.xml.ui.internal.dialogs</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">SelectXMLCatalogIdDialog.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>SelectXMLCatalogIdDialog.java</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/168)</TD><TD CLASS="h">0%   (0/39)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">SelectXMLCatalogIdDialog</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/158)</TD><TD CLASS="h">0%   (0/36)</TD></TR><TR><TD CLASS="f"><A HREF="#0">SelectXMLCatalogIdDialog (Shell, String []): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/13)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">buttonPressed (int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/35)</TD><TD CLASS="h">0%   (0/9)</TD></TR><TR><TD CLASS="f"><A HREF="#3">computeDefaultSystemId (ICatalogEntry): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/31)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">createButtonsForButtonBar (Composite): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/20)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#5">createDialogArea (Composite): Control</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/38)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">getId (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#7">getSystemId (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">updateButtonState (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#9">SelectXMLCatalogIdDialog$1</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#9">SelectXMLCatalogIdDialog$1 (SelectXMLCatalogIdDialog): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#b">selectionChanged (SelectionChangedEvent): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR CLASS="z"><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD> </TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>package org.eclipse.wst.xml.ui.internal.dialogs;</TD></TR><TR><TD CLASS="l">16</TD><TD> </TD></TR><TR><TD CLASS="l">17</TD><TD>import org.eclipse.jface.dialogs.Dialog;</TD></TR><TR><TD CLASS="l">18</TD><TD>import org.eclipse.jface.dialogs.IDialogConstants;</TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.jface.viewers.ISelection;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.jface.viewers.ISelectionChangedListener;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.jface.viewers.IStructuredSelection;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.jface.viewers.SelectionChangedEvent;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.swt.SWT;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.swt.widgets.Button;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.swt.widgets.Composite;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.swt.widgets.Control;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.swt.widgets.Shell;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.ui.PlatformUI;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.wst.xml.core.internal.XMLCorePlugin;</TD></TR><TR><TD CLASS="l">30</TD><TD>import org.eclipse.wst.xml.core.internal.catalog.provisional.ICatalog;</TD></TR><TR><TD CLASS="l">31</TD><TD>import org.eclipse.wst.xml.core.internal.catalog.provisional.ICatalogEntry;</TD></TR><TR><TD CLASS="l">32</TD><TD>import org.eclipse.wst.xml.ui.internal.util.XMLCommonUIContextIds;</TD></TR><TR><TD CLASS="l">33</TD><TD> </TD></TR><TR><TD CLASS="l">34</TD><TD> </TD></TR><TR><TD CLASS="l">35</TD><TD> </TD></TR><TR><TD CLASS="l">36</TD><TD>public class SelectXMLCatalogIdDialog extends Dialog {</TD></TR><TR><TD CLASS="l">37</TD><TD>        protected String[] extensions;</TD></TR><TR><TD CLASS="l">38</TD><TD>        protected Button okButton;</TD></TR><TR><TD CLASS="l">39</TD><TD>        protected SelectXMLCatalogIdPanel panel;</TD></TR><TR><TD CLASS="l"><A NAME="0">40</A></TD><TD>        protected String publicId;</TD></TR><TR><TD CLASS="l">41</TD><TD>        protected String systemId;</TD></TR><TR><TD CLASS="l">42</TD><TD> </TD></TR><TR><TD CLASS="l">43</TD><TD>        public SelectXMLCatalogIdDialog(Shell parentShell, String[] extensions) {</TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>                super(parentShell);</TD></TR><TR CLASS="z"><TD CLASS="l">45</TD><TD>                setShellStyle(getShellStyle() | SWT.RESIZE);</TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>                this.extensions = extensions;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">47</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">48</TD><TD> </TD></TR><TR><TD CLASS="l">49</TD><TD> </TD></TR><TR><TD CLASS="l">50</TD><TD>        protected void buttonPressed(int buttonId) {</TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>                if (buttonId == IDialogConstants.OK_ID) {</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                        ISelection selection = panel.getTableViewer().getSelection();</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>                        Object selectedObject = (selection instanceof IStructuredSelection) ? ((IStructuredSelection) selection).getFirstElement() : null;</TD></TR><TR><TD CLASS="l">54</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                        if (selectedObject instanceof ICatalogEntry) {</TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>                                ICatalogEntry mappingInfo = (ICatalogEntry) selectedObject;</TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>                                publicId = mappingInfo.getKey();</TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>                                systemId = computeDefaultSystemId(mappingInfo);</TD></TR><TR><TD CLASS="l">59</TD><TD>                        }</TD></TR><TR><TD CLASS="l">60</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">61</A></TD><TD>                super.buttonPressed(buttonId);</TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>        }</TD></TR><TR><TD CLASS="l">63</TD><TD> </TD></TR><TR><TD CLASS="l">64</TD><TD>        protected String computeDefaultSystemId(ICatalogEntry mappingInfo) {</TD></TR><TR CLASS="z"><TD CLASS="l">65</TD><TD>                String result = mappingInfo.getAttributeValue(ICatalogEntry.ATTR_WEB_URL);</TD></TR><TR CLASS="z"><TD CLASS="l">66</TD><TD>                if ((result == null) &amp;&amp; (mappingInfo.getURI() != null)) {</TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>                        int index = mappingInfo.getURI().lastIndexOf(&#34;/&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>                        String lastSegment = index != -1 ? mappingInfo.getURI().substring(index + 1) : mappingInfo.getURI();</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                        result = lastSegment;</TD></TR><TR><TD CLASS="l">70</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">71</A></TD><TD>                return result;</TD></TR><TR><TD CLASS="l">72</TD><TD>        }</TD></TR><TR><TD CLASS="l">73</TD><TD> </TD></TR><TR><TD CLASS="l">74</TD><TD>        protected void createButtonsForButtonBar(Composite parent) {</TD></TR><TR CLASS="z"><TD CLASS="l">75</TD><TD>                okButton = createButton(parent, IDialogConstants.OK_ID, IDialogConstants.OK_LABEL, true);</TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>                okButton.setEnabled(false);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="5">77</A></TD><TD>                createButton(parent, IDialogConstants.CANCEL_ID, IDialogConstants.CANCEL_LABEL, false);</TD></TR><TR CLASS="z"><TD CLASS="l">78</TD><TD>        }</TD></TR><TR><TD CLASS="l">79</TD><TD> </TD></TR><TR><TD CLASS="l">80</TD><TD>        protected Control createDialogArea(Composite parent) {</TD></TR><TR CLASS="z"><TD CLASS="l">81</TD><TD>                Composite dialogArea = (Composite) super.createDialogArea(parent);</TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>                PlatformUI.getWorkbench().getHelpSystem().setHelp(dialogArea, XMLCommonUIContextIds.XCUI_CATALOG_DIALOG);</TD></TR><TR><TD CLASS="l"><A NAME="9">83</A></TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">84</TD><TD>                ICatalog xmlCatalog = XMLCorePlugin.getDefault().getDefaultXMLCatalog();</TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>                panel = new SelectXMLCatalogIdPanel(dialogArea, xmlCatalog);</TD></TR><TR><TD CLASS="l"><A NAME="b">86</A></TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>                ISelectionChangedListener listener = new ISelectionChangedListener() {</TD></TR><TR><TD CLASS="l">88</TD><TD>                        public void selectionChanged(SelectionChangedEvent event) {</TD></TR><TR CLASS="z"><TD CLASS="l">89</TD><TD>                                updateButtonState();</TD></TR><TR CLASS="z"><TD CLASS="l">90</TD><TD>                        }</TD></TR><TR><TD CLASS="l">91</TD><TD>                };</TD></TR><TR CLASS="z"><TD CLASS="l">92</TD><TD>                panel.getTableViewer().setFilterExtensions(extensions);</TD></TR><TR CLASS="z"><TD CLASS="l">93</TD><TD>                panel.getTableViewer().addSelectionChangedListener(listener);</TD></TR><TR CLASS="z"><TD CLASS="l">94</TD><TD>                return dialogArea;</TD></TR><TR><TD CLASS="l">95</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="6">96</A></TD><TD> </TD></TR><TR><TD CLASS="l">97</TD><TD> </TD></TR><TR><TD CLASS="l">98</TD><TD> </TD></TR><TR><TD CLASS="l">99</TD><TD>        public String getId() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="7">100</A></TD><TD>                return publicId;</TD></TR><TR><TD CLASS="l">101</TD><TD>        }</TD></TR><TR><TD CLASS="l">102</TD><TD> </TD></TR><TR><TD CLASS="l">103</TD><TD>        public String getSystemId() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="8">104</A></TD><TD>                return systemId;</TD></TR><TR><TD CLASS="l">105</TD><TD>        }</TD></TR><TR><TD CLASS="l">106</TD><TD> </TD></TR><TR><TD CLASS="l">107</TD><TD>        protected void updateButtonState() {</TD></TR><TR CLASS="z"><TD CLASS="l">108</TD><TD>                ISelection selection = panel.getTableViewer().getSelection();</TD></TR><TR CLASS="z"><TD CLASS="l">109</TD><TD>                okButton.setEnabled(!selection.isEmpty());</TD></TR><TR CLASS="z"><TD CLASS="l">110</TD><TD>        }</TD></TR><TR><TD CLASS="l">111</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="36.html">org.eclipse.wst.xml.ui.internal.dialogs</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1be.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1be.html
deleted file mode 100644
index b1dd9a1..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1be.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="36.html">org.eclipse.wst.xml.ui.internal.dialogs</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">SelectXMLCatalogIdPanel.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>SelectXMLCatalogIdPanel.java</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/254)</TD><TD CLASS="h">0%   (0/61)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">SelectXMLCatalogIdPanel</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/131)</TD><TD CLASS="h">0%   (0/34)</TD></TR><TR><TD CLASS="f"><A HREF="#0">SelectXMLCatalogIdPanel (Composite, ICatalog): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/58)</TD><TD CLASS="h">0%   (0/15)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">createTableViewer (Composite): XMLCatalogTableViewer</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/20)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#3">getId (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">getTableViewer (): XMLCatalogTableViewer</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#5">getURI (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">getXMLCatalogEntry (): ICatalogEntry</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/23)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#7">setCatalogEntryType (int): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#8">SelectXMLCatalogIdPanel$1</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/123)</TD><TD CLASS="h">0%   (0/28)</TD></TR><TR><TD CLASS="f"><A HREF="#8">SelectXMLCatalogIdPanel$1 (SelectXMLCatalogIdPanel, Composite, String []): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/8)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">addXMLCatalogEntries (List, ICatalogEntry []): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/32)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR><TD CLASS="f"><A HREF="#b">getXMLCatalogEntries (): Collection</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/83)</TD><TD CLASS="h">0%   (0/19)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR CLASS="z"><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.ui.internal.dialogs;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.util.Collection;</TD></TR><TR><TD CLASS="l">16</TD><TD>import java.util.List;</TD></TR><TR><TD CLASS="l">17</TD><TD>import java.util.Vector;</TD></TR><TR><TD CLASS="l">18</TD><TD> </TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.jface.viewers.ISelection;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.jface.viewers.IStructuredSelection;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.swt.SWT;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.swt.layout.GridData;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.swt.layout.GridLayout;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.swt.widgets.Composite;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.swt.widgets.Label;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.wst.xml.core.internal.XMLCorePlugin;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.wst.xml.core.internal.catalog.provisional.ICatalog;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.wst.xml.core.internal.catalog.provisional.ICatalogEntry;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.wst.xml.core.internal.catalog.provisional.INextCatalog;</TD></TR><TR><TD CLASS="l">30</TD><TD>import org.eclipse.wst.xml.ui.internal.XMLUIMessages;</TD></TR><TR><TD CLASS="l">31</TD><TD> </TD></TR><TR><TD CLASS="l">32</TD><TD> </TD></TR><TR><TD CLASS="l">33</TD><TD>public class SelectXMLCatalogIdPanel extends Composite {</TD></TR><TR><TD CLASS="l">34</TD><TD>        protected int catalogEntryType;</TD></TR><TR CLASS="z"><TD CLASS="l">35</TD><TD>        protected boolean doTableSizeHack = false;</TD></TR><TR><TD CLASS="l">36</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="0">37</A></TD><TD>        protected XMLCatalogTableViewer tableViewer;</TD></TR><TR><TD CLASS="l">38</TD><TD>        protected ICatalog fXmlCatalog;</TD></TR><TR><TD CLASS="l">39</TD><TD> </TD></TR><TR><TD CLASS="l">40</TD><TD>        public SelectXMLCatalogIdPanel(Composite parent, ICatalog xmlCatalog) {</TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>                super(parent, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">42</TD><TD>                this.fXmlCatalog = xmlCatalog;</TD></TR><TR><TD CLASS="l">43</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">44</TD><TD>                GridLayout gridLayout = new GridLayout();</TD></TR><TR CLASS="z"><TD CLASS="l">45</TD><TD>                this.setLayout(gridLayout);</TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>                GridData gd = new GridData(GridData.FILL_HORIZONTAL);</TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>                gd.heightHint = 200;</TD></TR><TR CLASS="z"><TD CLASS="l">48</TD><TD>                gd.widthHint = 700;</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>                this.setLayoutData(gd);</TD></TR><TR><TD CLASS="l">50</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">51</TD><TD>                Label label = new Label(this, SWT.NONE);</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                label.setText(XMLUIMessages._UI_LABEL_XML_CATALOG_COLON);</TD></TR><TR><TD CLASS="l">53</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">54</TD><TD>                tableViewer = createTableViewer(this);</TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                tableViewer.getControl().setLayoutData(new GridData(GridData.FILL_BOTH));</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">56</A></TD><TD>                tableViewer.setInput(&#34;dummy&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>        }</TD></TR><TR><TD CLASS="l">58</TD><TD> </TD></TR><TR><TD CLASS="l">59</TD><TD>        protected XMLCatalogTableViewer createTableViewer(Composite parent) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="8">60</A></TD><TD>                String headings[] = new String[2];</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                headings[0] = XMLUIMessages._UI_LABEL_KEY;</TD></TR><TR CLASS="z"><TD CLASS="l">62</TD><TD>                headings[1] = XMLUIMessages._UI_LABEL_URI;</TD></TR><TR><TD CLASS="l"><A NAME="a">63</A></TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                XMLCatalogTableViewer theTableViewer = new XMLCatalogTableViewer(parent, headings) {</TD></TR><TR><TD CLASS="l">65</TD><TD> </TD></TR><TR><TD CLASS="l">66</TD><TD>                        protected void addXMLCatalogEntries(List list, ICatalogEntry[] entries) {</TD></TR><TR CLASS="z"><TD CLASS="l">67</TD><TD>                                for (int i = 0; i &lt; entries.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>                                        ICatalogEntry entry = entries[i];</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                                        if (catalogEntryType == 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">70</TD><TD>                                                list.add(entry);</TD></TR><TR><TD CLASS="l">71</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>                                        else if (catalogEntryType == entry.getEntryType()) {</TD></TR><TR CLASS="z"><TD CLASS="l">73</TD><TD>                                                list.add(entry);</TD></TR><TR><TD CLASS="l">74</TD><TD>                                        }</TD></TR><TR><TD CLASS="l"><A NAME="b">75</A></TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>                        }</TD></TR><TR><TD CLASS="l">77</TD><TD> </TD></TR><TR><TD CLASS="l">78</TD><TD>                        public Collection getXMLCatalogEntries() {</TD></TR><TR CLASS="z"><TD CLASS="l">79</TD><TD>                                List result = null;</TD></TR><TR><TD CLASS="l">80</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">81</TD><TD>                                if ((fXmlCatalog == null) || doTableSizeHack) {</TD></TR><TR><TD CLASS="l">82</TD><TD>                                        // this lets us create a table with an initial height of</TD></TR><TR><TD CLASS="l">83</TD><TD>                                        // 10 rows</TD></TR><TR><TD CLASS="l">84</TD><TD>                                        // otherwise we get stuck with 0 row heigh table... that's</TD></TR><TR><TD CLASS="l">85</TD><TD>                                        // too small</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                                        doTableSizeHack = false;</TD></TR><TR CLASS="z"><TD CLASS="l">87</TD><TD>                                        result = new Vector();</TD></TR><TR CLASS="z"><TD CLASS="l">88</TD><TD>                                        for (int i = 0; i &lt; 6; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">89</TD><TD>                                                result.add(&#34;&#34;); //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">90</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">91</TD><TD>                                }</TD></TR><TR><TD CLASS="l">92</TD><TD>                                else {</TD></TR><TR CLASS="z"><TD CLASS="l">93</TD><TD>                                        result = new Vector();</TD></TR><TR CLASS="z"><TD CLASS="l">94</TD><TD>                                        INextCatalog[] nextCatalogs = fXmlCatalog.getNextCatalogs();</TD></TR><TR CLASS="z"><TD CLASS="l">95</TD><TD>                                        for (int i = 0; i &lt; nextCatalogs.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">96</TD><TD>                                                INextCatalog catalog = nextCatalogs[i];</TD></TR><TR CLASS="z"><TD CLASS="l">97</TD><TD>                                                ICatalog referencedCatalog = catalog.getReferencedCatalog();</TD></TR><TR CLASS="z"><TD CLASS="l">98</TD><TD>                                                if (referencedCatalog != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">99</TD><TD>                                                        if (XMLCorePlugin.SYSTEM_CATALOG_ID.equals(referencedCatalog.getId())) {</TD></TR><TR CLASS="z"><TD CLASS="l">100</TD><TD>                                                                ICatalog systemCatalog = referencedCatalog;</TD></TR><TR CLASS="z"><TD CLASS="l">101</TD><TD>                                                                addXMLCatalogEntries(result, systemCatalog.getCatalogEntries());</TD></TR><TR><TD CLASS="l">102</TD><TD> </TD></TR><TR><TD CLASS="l">103</TD><TD>                                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">104</TD><TD>                                                        else if (XMLCorePlugin.USER_CATALOG_ID.equals(referencedCatalog.getId())) {</TD></TR><TR CLASS="z"><TD CLASS="l">105</TD><TD>                                                                ICatalog userCatalog = referencedCatalog;</TD></TR><TR CLASS="z"><TD CLASS="l">106</TD><TD>                                                                addXMLCatalogEntries(result, userCatalog.getCatalogEntries());</TD></TR><TR><TD CLASS="l">107</TD><TD> </TD></TR><TR><TD CLASS="l">108</TD><TD>                                                        }</TD></TR><TR><TD CLASS="l">109</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">110</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">111</TD><TD>                                }</TD></TR><TR CLASS="z"><TD CLASS="l">112</TD><TD>                                return result;</TD></TR><TR><TD CLASS="l">113</TD><TD>                        }</TD></TR><TR><TD CLASS="l">114</TD><TD>                };</TD></TR><TR CLASS="z"><TD CLASS="l">115</TD><TD>                return theTableViewer;</TD></TR><TR><TD CLASS="l"><A NAME="3">116</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">117</TD><TD> </TD></TR><TR><TD CLASS="l">118</TD><TD> </TD></TR><TR><TD CLASS="l">119</TD><TD>        public String getId() {</TD></TR><TR CLASS="z"><TD CLASS="l">120</TD><TD>                ICatalogEntry entry = getXMLCatalogEntry();</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">121</A></TD><TD>                return entry != null ? entry.getKey() : null;</TD></TR><TR><TD CLASS="l">122</TD><TD>        }</TD></TR><TR><TD CLASS="l">123</TD><TD> </TD></TR><TR><TD CLASS="l">124</TD><TD>        public XMLCatalogTableViewer getTableViewer() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="5">125</A></TD><TD>                return tableViewer;</TD></TR><TR><TD CLASS="l">126</TD><TD>        }</TD></TR><TR><TD CLASS="l">127</TD><TD> </TD></TR><TR><TD CLASS="l">128</TD><TD>        public String getURI() {</TD></TR><TR CLASS="z"><TD CLASS="l">129</TD><TD>                ICatalogEntry entry = getXMLCatalogEntry();</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="6">130</A></TD><TD>                return entry != null ? entry.getURI() : null;</TD></TR><TR><TD CLASS="l">131</TD><TD>        }</TD></TR><TR><TD CLASS="l">132</TD><TD> </TD></TR><TR><TD CLASS="l">133</TD><TD>        public ICatalogEntry getXMLCatalogEntry() {</TD></TR><TR CLASS="z"><TD CLASS="l">134</TD><TD>                ICatalogEntry result = null;</TD></TR><TR CLASS="z"><TD CLASS="l">135</TD><TD>                ISelection selection = tableViewer.getSelection();</TD></TR><TR CLASS="z"><TD CLASS="l">136</TD><TD>                Object selectedObject = (selection instanceof IStructuredSelection) ? ((IStructuredSelection) selection).getFirstElement() : null;</TD></TR><TR CLASS="z"><TD CLASS="l">137</TD><TD>                if (selectedObject instanceof ICatalogEntry) {</TD></TR><TR CLASS="z"><TD CLASS="l">138</TD><TD>                        result = (ICatalogEntry) selectedObject;</TD></TR><TR><TD CLASS="l">139</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="7">140</A></TD><TD>                return result;</TD></TR><TR><TD CLASS="l">141</TD><TD>        }</TD></TR><TR><TD CLASS="l">142</TD><TD> </TD></TR><TR><TD CLASS="l">143</TD><TD>        public void setCatalogEntryType(int catalogEntryType) {</TD></TR><TR CLASS="z"><TD CLASS="l">144</TD><TD>                this.catalogEntryType = catalogEntryType;</TD></TR><TR CLASS="z"><TD CLASS="l">145</TD><TD>                tableViewer.refresh();</TD></TR><TR CLASS="z"><TD CLASS="l">146</TD><TD>        }</TD></TR><TR><TD CLASS="l">147</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="36.html">org.eclipse.wst.xml.ui.internal.dialogs</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1bf.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1bf.html
deleted file mode 100644
index aa30644..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1bf.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="36.html">org.eclipse.wst.xml.ui.internal.dialogs</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">XMLCatalogTableViewer.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>XMLCatalogTableViewer.java</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/20)</TD><TD CLASS="h">0%   (0/293)</TD><TD CLASS="h">0%   (0/82)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">XMLCatalogTableViewer</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/112)</TD><TD CLASS="h">0%   (0/30)</TD></TR><TR><TD CLASS="f"><A HREF="#0">&lt;static initializer&gt;</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/19)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">XMLCatalogTableViewer (Composite, String []): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/71)</TD><TD CLASS="h">0%   (0/17)</TD></TR><TR><TD CLASS="f"><A HREF="#3">getXMLCatalogEntries (): Collection</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">menuAboutToShow (IMenuManager): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#5">setFilterExtensions (String []): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#6">XMLCatalogTableViewer$1</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/29)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR><TD CLASS="f"><A HREF="#6">XMLCatalogTableViewer$1 (XMLCatalogTableViewer$CatalogEntryContentProvider): ...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">compare (Object, Object): int</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/23)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#4">XMLCatalogTableViewer$2</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#4">XMLCatalogTableViewer$2 (XMLCatalogTableViewer, String): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/7)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#b">run (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#c">XMLCatalogTableViewer$CatalogEntryContentProvider</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/25)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR><TD CLASS="f"><A HREF="#c">XMLCatalogTableViewer$CatalogEntryContentProvider (XMLCatalogTableViewer): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#e">dispose (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#f">getElements (Object): Object []</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#10">inputChanged (Viewer, Object, Object): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#11">isDeleted (Object): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#12">XMLCatalogTableViewer$CatalogEntryLabelProvider</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/75)</TD><TD CLASS="h">0%   (0/23)</TD></TR><TR><TD CLASS="f"><A HREF="#12">XMLCatalogTableViewer$CatalogEntryLabelProvider (XMLCatalogTableViewer): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#14">getColumnImage (Object, int): Image</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/44)</TD><TD CLASS="h">0%   (0/16)</TD></TR><TR><TD CLASS="f"><A HREF="#15">getColumnText (Object, int): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/25)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD><TD CLASS="bt"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#16">XMLCatalogTableViewer$XMLCatalogTableViewerFilter</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/41)</TD><TD CLASS="h">0%   (0/12)</TD></TR><TR><TD CLASS="f"><A HREF="#16">XMLCatalogTableViewer$XMLCatalogTableViewerFilter (XMLCatalogTableViewer, Str...</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/9)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#18">isFilterProperty (Object, Object): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/2)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#19">select (Viewer, Object, Object): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/30)</TD><TD CLASS="h">0%   (0/8)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR CLASS="z"><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD> </TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>package org.eclipse.wst.xml.ui.internal.dialogs;</TD></TR><TR><TD CLASS="l">16</TD><TD> </TD></TR><TR><TD CLASS="l">17</TD><TD>import com.ibm.icu.text.Collator;</TD></TR><TR><TD CLASS="l">18</TD><TD>import java.util.Arrays;</TD></TR><TR><TD CLASS="l">19</TD><TD>import java.util.Collection;</TD></TR><TR><TD CLASS="l">20</TD><TD>import java.util.Comparator;</TD></TR><TR><TD CLASS="l">21</TD><TD> </TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.jface.action.Action;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.jface.action.IMenuManager;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.jface.viewers.ColumnWeightData;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.jface.viewers.IStructuredContentProvider;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.jface.viewers.ITableLabelProvider;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.jface.viewers.LabelProvider;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.jface.viewers.TableLayout;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.jface.viewers.TableViewer;</TD></TR><TR><TD CLASS="l">30</TD><TD>import org.eclipse.jface.viewers.Viewer;</TD></TR><TR><TD CLASS="l">31</TD><TD>import org.eclipse.jface.viewers.ViewerFilter;</TD></TR><TR><TD CLASS="l">32</TD><TD>import org.eclipse.swt.SWT;</TD></TR><TR><TD CLASS="l">33</TD><TD>import org.eclipse.swt.graphics.Image;</TD></TR><TR><TD CLASS="l">34</TD><TD>import org.eclipse.swt.widgets.Composite;</TD></TR><TR><TD CLASS="l">35</TD><TD>import org.eclipse.swt.widgets.Table;</TD></TR><TR><TD CLASS="l">36</TD><TD>import org.eclipse.swt.widgets.TableColumn;</TD></TR><TR><TD CLASS="l">37</TD><TD>import org.eclipse.wst.common.uriresolver.internal.util.URIHelper;</TD></TR><TR><TD CLASS="l">38</TD><TD>import org.eclipse.wst.xml.core.internal.catalog.provisional.ICatalogEntry;</TD></TR><TR><TD CLASS="l">39</TD><TD>import org.eclipse.wst.xml.ui.internal.editor.XMLEditorPluginImageHelper;</TD></TR><TR><TD CLASS="l">40</TD><TD>import org.eclipse.wst.xml.ui.internal.editor.XMLEditorPluginImages;</TD></TR><TR><TD CLASS="l">41</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="c">42</A></TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">43</TD><TD>public class XMLCatalogTableViewer extends TableViewer {</TD></TR><TR><TD CLASS="l">44</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="e">45</A></TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>        public class CatalogEntryContentProvider implements IStructuredContentProvider {</TD></TR><TR><TD CLASS="l">47</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="f">48</A></TD><TD>                public void dispose() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="6">49</A></TD><TD>                }</TD></TR><TR><TD CLASS="l">50</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="8">51</A></TD><TD>                public Object[] getElements(Object element) {</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                        Object[] array = getXMLCatalogEntries().toArray();</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>                        Comparator comparator = new Comparator() {</TD></TR><TR><TD CLASS="l">54</TD><TD>                                public int compare(Object o1, Object o2) {</TD></TR><TR CLASS="z"><TD CLASS="l">55</TD><TD>                                        int result = 0;</TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>                                        if ((o1 instanceof ICatalogEntry) &amp;&amp; (o2 instanceof ICatalogEntry)) {</TD></TR><TR CLASS="z"><TD CLASS="l">57</TD><TD>                                                ICatalogEntry mappingInfo1 = (ICatalogEntry) o1;</TD></TR><TR CLASS="z"><TD CLASS="l">58</TD><TD>                                                ICatalogEntry mappingInfo2 = (ICatalogEntry) o2;</TD></TR><TR CLASS="z"><TD CLASS="l">59</TD><TD>                                                result = Collator.getInstance().compare(mappingInfo1.getKey(), mappingInfo2.getKey());</TD></TR><TR><TD CLASS="l">60</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>                                        return result;</TD></TR><TR><TD CLASS="l">62</TD><TD>                                }</TD></TR><TR><TD CLASS="l">63</TD><TD>                        };</TD></TR><TR CLASS="z"><TD CLASS="l">64</TD><TD>                        Arrays.sort(array, comparator);</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="10">65</A></TD><TD>                        return array;</TD></TR><TR><TD CLASS="l">66</TD><TD>                }</TD></TR><TR><TD CLASS="l">67</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="11">68</A></TD><TD>                public void inputChanged(Viewer viewer, Object old, Object newobj) {</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                }</TD></TR><TR><TD CLASS="l">70</TD><TD> </TD></TR><TR><TD CLASS="l">71</TD><TD>                public boolean isDeleted(Object object) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="12">72</A></TD><TD>                        return false;</TD></TR><TR><TD CLASS="l">73</TD><TD>                }</TD></TR><TR><TD CLASS="l">74</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="14">75</A></TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>        public class CatalogEntryLabelProvider extends LabelProvider implements ITableLabelProvider {</TD></TR><TR><TD CLASS="l">77</TD><TD> </TD></TR><TR><TD CLASS="l">78</TD><TD>                public Image getColumnImage(Object object, int columnIndex) {</TD></TR><TR CLASS="z"><TD CLASS="l">79</TD><TD>                        Image result = null;</TD></TR><TR CLASS="z"><TD CLASS="l">80</TD><TD>                        if (columnIndex == 0) {</TD></TR><TR CLASS="z"><TD CLASS="l">81</TD><TD>                                Image base = null;</TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>                                if (object instanceof ICatalogEntry) {</TD></TR><TR CLASS="z"><TD CLASS="l">83</TD><TD>                                        ICatalogEntry catalogEntry = (ICatalogEntry) object;</TD></TR><TR CLASS="z"><TD CLASS="l">84</TD><TD>                                        String uri = catalogEntry.getURI();</TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>                                        if (uri.endsWith(&#34;dtd&#34;)) { //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                                                base = dtdFileImage;</TD></TR><TR><TD CLASS="l">87</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">88</TD><TD>                                        else if (uri.endsWith(&#34;xsd&#34;)) { //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">89</TD><TD>                                                base = xsdFileImage;</TD></TR><TR><TD CLASS="l">90</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">91</TD><TD>                                        else {</TD></TR><TR CLASS="z"><TD CLASS="l">92</TD><TD>                                                base = unknownFileImage;</TD></TR><TR><TD CLASS="l">93</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">94</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">95</TD><TD>                                        if (base != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">96</TD><TD>                                                if (URIHelper.isReadableURI(uri, false)) {</TD></TR><TR CLASS="z"><TD CLASS="l">97</TD><TD>                                                        result = base;</TD></TR><TR><TD CLASS="l">98</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">99</TD><TD>                                                else {</TD></TR><TR><TD CLASS="l">100</TD><TD>                                                        // TODO... SSE port</TD></TR><TR CLASS="z"><TD CLASS="l">101</TD><TD>                                                        result = base;// imageFactory.createCompositeImage(base,</TD></TR><TR><TD CLASS="l">102</TD><TD>                                                        // errorImage,</TD></TR><TR><TD CLASS="l">103</TD><TD>                                                        // ImageFactory.BOTTOM_LEFT);</TD></TR><TR><TD CLASS="l">104</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">105</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">106</TD><TD>                                }</TD></TR><TR><TD CLASS="l">107</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="15">108</A></TD><TD>                        return result;</TD></TR><TR><TD CLASS="l">109</TD><TD>                }</TD></TR><TR><TD CLASS="l">110</TD><TD> </TD></TR><TR><TD CLASS="l">111</TD><TD>                public String getColumnText(Object object, int columnIndex) {</TD></TR><TR CLASS="z"><TD CLASS="l">112</TD><TD>                        String result = null;</TD></TR><TR CLASS="z"><TD CLASS="l">113</TD><TD>                        if (object instanceof ICatalogEntry) {</TD></TR><TR CLASS="z"><TD CLASS="l">114</TD><TD>                                ICatalogEntry catalogEntry = (ICatalogEntry) object;</TD></TR><TR CLASS="z"><TD CLASS="l">115</TD><TD>                                result = columnIndex == 0 ? catalogEntry.getKey() : catalogEntry.getURI();</TD></TR><TR CLASS="z"><TD CLASS="l">116</TD><TD>                                result = URIHelper.removePlatformResourceProtocol(result);</TD></TR><TR><TD CLASS="l">117</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">118</TD><TD>                        return result != null ? result : &#34;&#34;; //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">119</TD><TD>                }</TD></TR><TR><TD CLASS="l">120</TD><TD>        }</TD></TR><TR><TD CLASS="l">121</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="16">122</A></TD><TD> </TD></TR><TR><TD CLASS="l">123</TD><TD>        class XMLCatalogTableViewerFilter extends ViewerFilter {</TD></TR><TR><TD CLASS="l">124</TD><TD>                protected String[] extensions;</TD></TR><TR><TD CLASS="l">125</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">126</TD><TD>                public XMLCatalogTableViewerFilter(String[] extensions) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="18">127</A></TD><TD>                        this.extensions = extensions;</TD></TR><TR CLASS="z"><TD CLASS="l">128</TD><TD>                }</TD></TR><TR><TD CLASS="l">129</TD><TD> </TD></TR><TR><TD CLASS="l">130</TD><TD>                public boolean isFilterProperty(Object element, Object property) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="19">131</A></TD><TD>                        return false;</TD></TR><TR><TD CLASS="l">132</TD><TD>                }</TD></TR><TR><TD CLASS="l">133</TD><TD> </TD></TR><TR><TD CLASS="l">134</TD><TD>                public boolean select(Viewer viewer, Object parent, Object element) {</TD></TR><TR CLASS="z"><TD CLASS="l">135</TD><TD>                        boolean result = false;</TD></TR><TR CLASS="z"><TD CLASS="l">136</TD><TD>                        if (element instanceof ICatalogEntry) {</TD></TR><TR CLASS="z"><TD CLASS="l">137</TD><TD>                                ICatalogEntry catalogEntry = (ICatalogEntry) element;</TD></TR><TR CLASS="z"><TD CLASS="l">138</TD><TD>                                for (int i = 0; i &lt; extensions.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">139</TD><TD>                                        if (catalogEntry.getURI().endsWith(extensions[i])) {</TD></TR><TR CLASS="z"><TD CLASS="l">140</TD><TD>                                                result = true;</TD></TR><TR CLASS="z"><TD CLASS="l">141</TD><TD>                                                break;</TD></TR><TR><TD CLASS="l">142</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">143</TD><TD>                                }</TD></TR><TR><TD CLASS="l">144</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="0">145</A></TD><TD>                        return result;</TD></TR><TR><TD CLASS="l">146</TD><TD>                }</TD></TR><TR><TD CLASS="l">147</TD><TD>        }</TD></TR><TR><TD CLASS="l">148</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">149</TD><TD>        protected static Image dtdFileImage = XMLEditorPluginImageHelper.getInstance().getImage(XMLEditorPluginImages.IMG_OBJ_DTDFILE);</TD></TR><TR><TD CLASS="l">150</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">151</TD><TD>        protected static String ERROR_STATE_KEY = &#34;errorstatekey&#34;; //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">152</TD><TD>        protected static Image errorImage = XMLEditorPluginImageHelper.getInstance().getImage(XMLEditorPluginImages.IMG_OVR_ERROR);</TD></TR><TR><TD CLASS="l">153</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">154</TD><TD>        protected static Image unknownFileImage = XMLEditorPluginImageHelper.getInstance().getImage(XMLEditorPluginImages.IMG_OBJ_TXTEXT);</TD></TR><TR CLASS="z"><TD CLASS="l">155</TD><TD>        protected static Image xsdFileImage = XMLEditorPluginImageHelper.getInstance().getImage(XMLEditorPluginImages.IMG_OBJ_XSDFILE);</TD></TR><TR><TD CLASS="l"><A NAME="2">156</A></TD><TD> </TD></TR><TR><TD CLASS="l">157</TD><TD>        // protected ImageFactory imageFactory = new ImageFactory();</TD></TR><TR><TD CLASS="l">158</TD><TD> </TD></TR><TR><TD CLASS="l">159</TD><TD>        public XMLCatalogTableViewer(Composite parent, String[] columnProperties) {</TD></TR><TR CLASS="z"><TD CLASS="l">160</TD><TD>                super(parent, SWT.FULL_SELECTION);</TD></TR><TR><TD CLASS="l">161</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">162</TD><TD>                Table table = getTable();</TD></TR><TR CLASS="z"><TD CLASS="l">163</TD><TD>                table.setLinesVisible(true);</TD></TR><TR CLASS="z"><TD CLASS="l">164</TD><TD>                table.setHeaderVisible(true);</TD></TR><TR CLASS="z"><TD CLASS="l">165</TD><TD>                table.setLinesVisible(true);</TD></TR><TR><TD CLASS="l">166</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">167</TD><TD>                TableLayout layout = new TableLayout();</TD></TR><TR CLASS="z"><TD CLASS="l">168</TD><TD>                for (int i = 0; i &lt; columnProperties.length; i++) {</TD></TR><TR CLASS="z"><TD CLASS="l">169</TD><TD>                        TableColumn column = new TableColumn(table, i);</TD></TR><TR CLASS="z"><TD CLASS="l">170</TD><TD>                        column.setText(columnProperties[i]);</TD></TR><TR CLASS="z"><TD CLASS="l">171</TD><TD>                        column.setAlignment(SWT.LEFT);</TD></TR><TR CLASS="z"><TD CLASS="l">172</TD><TD>                        layout.addColumnData(new ColumnWeightData(50, true));</TD></TR><TR><TD CLASS="l">173</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">174</TD><TD>                table.setLayout(layout);</TD></TR><TR CLASS="z"><TD CLASS="l">175</TD><TD>                table.setLinesVisible(false);</TD></TR><TR><TD CLASS="l">176</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">177</TD><TD>                setColumnProperties(columnProperties);</TD></TR><TR><TD CLASS="l">178</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">179</TD><TD>                setContentProvider(new CatalogEntryContentProvider());</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="3">180</A></TD><TD>                setLabelProvider(new CatalogEntryLabelProvider());</TD></TR><TR CLASS="z"><TD CLASS="l">181</TD><TD>        }</TD></TR><TR><TD CLASS="l">182</TD><TD> </TD></TR><TR><TD CLASS="l">183</TD><TD>        public Collection getXMLCatalogEntries() {</TD></TR><TR CLASS="z"><TD CLASS="l">184</TD><TD>                return null;</TD></TR><TR><TD CLASS="l"><A NAME="4">185</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">186</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="b">187</A></TD><TD> </TD></TR><TR><TD CLASS="l">188</TD><TD>        public void menuAboutToShow(IMenuManager menuManager) {</TD></TR><TR CLASS="z"><TD CLASS="l">189</TD><TD>                Action action = new Action(&#34;hello&#34;) { //$NON-NLS-1$</TD></TR><TR><TD CLASS="l">190</TD><TD>                        public void run() {</TD></TR><TR CLASS="z"><TD CLASS="l">191</TD><TD>                                System.out.println(&#34;run!&#34;); //$NON-NLS-1$</TD></TR><TR CLASS="z"><TD CLASS="l">192</TD><TD>                        }</TD></TR><TR><TD CLASS="l">193</TD><TD>                };</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="5">194</A></TD><TD>                menuManager.add(action);</TD></TR><TR CLASS="z"><TD CLASS="l">195</TD><TD>        }</TD></TR><TR><TD CLASS="l">196</TD><TD> </TD></TR><TR><TD CLASS="l">197</TD><TD>        public void setFilterExtensions(String[] extensions) {</TD></TR><TR CLASS="z"><TD CLASS="l">198</TD><TD>                resetFilters();</TD></TR><TR CLASS="z"><TD CLASS="l">199</TD><TD>                addFilter(new XMLCatalogTableViewerFilter(extensions));</TD></TR><TR CLASS="z"><TD CLASS="l">200</TD><TD>        }</TD></TR><TR><TD CLASS="l">201</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="36.html">org.eclipse.wst.xml.ui.internal.dialogs</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1c.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1c.html
deleted file mode 100644
index 5229cc1..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1c.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR PACKAGE [<SPAN CLASS="in">org.eclipse.wst.sse.ui.internal.text</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>org.eclipse.wst.sse.ui.internal.text</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/259)</TD><TD CLASS="h">0%   (0/53)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY SOURCE FILE</H3><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR CLASS="o"><TD><A HREF="144.html">DocumentRegionEdgeMatcher.java</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/5)</TD><TD CLASS="h">0%   (0/259)</TD><TD CLASS="h">0%   (0/53)</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1c0.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1c0.html
deleted file mode 100644
index 4386d9d..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1c0.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="37.html">org.eclipse.wst.xml.ui.internal.dnd</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">DragNodeCommand.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>DragNodeCommand.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/14)</TD><TD CLASS="h">0%   (0/471)</TD><TD CLASS="h">0%   (0/126)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">DragNodeCommand</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/14)</TD><TD CLASS="h">0%   (0/471)</TD><TD CLASS="h">0%   (0/126)</TD></TR><TR><TD CLASS="f"><A HREF="#0">DragNodeCommand (Object, float, int, int, Collection, TreeViewer): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/16)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">beginModelChange (Node, boolean): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/28)</TD><TD CLASS="h">0%   (0/9)</TD></TR><TR><TD CLASS="f"><A HREF="#3">canExecute (): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">doModify (Node, Node, Node, boolean): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/157)</TD><TD CLASS="h">0%   (0/39)</TD></TR><TR><TD CLASS="f"><A HREF="#5">endModelChange (Node, boolean): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#6">execute (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/18)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR><TD CLASS="f"><A HREF="#7">executeHelper (boolean): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/87)</TD><TD CLASS="h">0%   (0/23)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#8">getFeedback (): int</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/21)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR><TD CLASS="f"><A HREF="#9">getParentForDropPosition (Node): Node</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/17)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#a">getParentOrOwner (Node): Node</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR><TD CLASS="f"><A HREF="#b">getRefChild (Node): Node</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/19)</TD><TD CLASS="h">0%   (0/7)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#c">getStructuredModel (Node): IStructuredModel</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/11)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#d">isAncestor (Node, Node): boolean</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/18)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#e">removeMemberDescendants (List): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/54)</TD><TD CLASS="h">0%   (0/11)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2007 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> * </TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD>package org.eclipse.wst.xml.ui.internal.dnd;</TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>import java.util.ArrayList;</TD></TR><TR><TD CLASS="l">16</TD><TD>import java.util.Collection;</TD></TR><TR><TD CLASS="l">17</TD><TD>import java.util.Hashtable;</TD></TR><TR><TD CLASS="l">18</TD><TD>import java.util.Iterator;</TD></TR><TR><TD CLASS="l">19</TD><TD>import java.util.List;</TD></TR><TR><TD CLASS="l">20</TD><TD>import java.util.Vector;</TD></TR><TR><TD CLASS="l">21</TD><TD> </TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.jface.viewers.StructuredSelection;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.jface.viewers.TreeViewer;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.swt.dnd.DND;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.wst.common.ui.internal.dnd.DefaultDragAndDropCommand;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;</TD></TR><TR><TD CLASS="l">28</TD><TD>import org.eclipse.wst.xml.ui.internal.Logger;</TD></TR><TR><TD CLASS="l">29</TD><TD>import org.eclipse.wst.xml.ui.internal.XMLUIMessages;</TD></TR><TR><TD CLASS="l">30</TD><TD>import org.w3c.dom.Attr;</TD></TR><TR><TD CLASS="l">31</TD><TD>import org.w3c.dom.DOMException;</TD></TR><TR><TD CLASS="l">32</TD><TD>import org.w3c.dom.Element;</TD></TR><TR><TD CLASS="l">33</TD><TD>import org.w3c.dom.Node;</TD></TR><TR><TD CLASS="l">34</TD><TD> </TD></TR><TR><TD CLASS="l">35</TD><TD>public class DragNodeCommand extends DefaultDragAndDropCommand {</TD></TR><TR><TD CLASS="l"><A NAME="0">36</A></TD><TD>        private List fSelections;</TD></TR><TR><TD CLASS="l">37</TD><TD>        private TreeViewer fTreeViewer;</TD></TR><TR><TD CLASS="l">38</TD><TD> </TD></TR><TR><TD CLASS="l">39</TD><TD>        public DragNodeCommand(Object target, float location, int operations, int operation, Collection sources, TreeViewer treeViewer) {</TD></TR><TR CLASS="z"><TD CLASS="l">40</TD><TD>                super(target, location, operations, operation, sources);</TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>                fTreeViewer = treeViewer;</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="2">42</A></TD><TD>                fSelections = new ArrayList();</TD></TR><TR CLASS="z"><TD CLASS="l">43</TD><TD>        }</TD></TR><TR><TD CLASS="l">44</TD><TD> </TD></TR><TR><TD CLASS="l">45</TD><TD>        private void beginModelChange(Node node, boolean batchUpdate) {</TD></TR><TR CLASS="z"><TD CLASS="l">46</TD><TD>                IStructuredModel structuredModel = getStructuredModel(node);</TD></TR><TR CLASS="z"><TD CLASS="l">47</TD><TD>                if (structuredModel != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">48</TD><TD>                        String undoDesc = new String();</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>                        if (getOperation() == DND.DROP_MOVE) {</TD></TR><TR CLASS="z"><TD CLASS="l">50</TD><TD>                                undoDesc = XMLUIMessages.DragNodeCommand_0;</TD></TR><TR><TD CLASS="l">51</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                        else if (getOperation() == DND.DROP_COPY) {</TD></TR><TR CLASS="z"><TD CLASS="l">53</TD><TD>                                undoDesc = XMLUIMessages.DragNodeCommand_1;</TD></TR><TR><TD CLASS="l">54</TD><TD>                        }</TD></TR><TR><TD CLASS="l">55</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">56</TD><TD>                        structuredModel.beginRecording(this, undoDesc);</TD></TR><TR><TD CLASS="l">57</TD><TD>                        if (batchUpdate) {</TD></TR><TR><TD CLASS="l">58</TD><TD>                                // structuredModel.aboutToChangeModel();</TD></TR><TR><TD CLASS="l">59</TD><TD>                        }</TD></TR><TR><TD CLASS="l"><A NAME="3">60</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">61</TD><TD>        }</TD></TR><TR><TD CLASS="l">62</TD><TD> </TD></TR><TR><TD CLASS="l">63</TD><TD>        public boolean canExecute() {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">64</A></TD><TD>                return executeHelper(true);</TD></TR><TR><TD CLASS="l">65</TD><TD>        }</TD></TR><TR><TD CLASS="l">66</TD><TD> </TD></TR><TR><TD CLASS="l">67</TD><TD>        private boolean doModify(Node source, Node parentNode, Node refChild, boolean testOnly) {</TD></TR><TR CLASS="z"><TD CLASS="l">68</TD><TD>                boolean result = false;</TD></TR><TR CLASS="z"><TD CLASS="l">69</TD><TD>                if (source.getNodeType() == Node.ATTRIBUTE_NODE) {</TD></TR><TR CLASS="z"><TD CLASS="l">70</TD><TD>                        Attr sourceAttribute = (Attr) source;</TD></TR><TR CLASS="z"><TD CLASS="l">71</TD><TD>                        Element sourceAttributeOwnerElement = sourceAttribute.getOwnerElement();</TD></TR><TR CLASS="z"><TD CLASS="l">72</TD><TD>                        if ((parentNode.getNodeType() == Node.ELEMENT_NODE) &amp;&amp; (sourceAttributeOwnerElement != parentNode)) {</TD></TR><TR CLASS="z"><TD CLASS="l">73</TD><TD>                                result = true;</TD></TR><TR CLASS="z"><TD CLASS="l">74</TD><TD>                                if (!testOnly) {</TD></TR><TR><TD CLASS="l">75</TD><TD>                                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">76</TD><TD>                                                if (getOperation() == DND.DROP_MOVE) {</TD></TR><TR CLASS="z"><TD CLASS="l">77</TD><TD>                                                        Element targetElement = (Element) parentNode;</TD></TR><TR CLASS="z"><TD CLASS="l">78</TD><TD>                                                        sourceAttributeOwnerElement.removeAttributeNode(sourceAttribute);</TD></TR><TR CLASS="z"><TD CLASS="l">79</TD><TD>                                                        targetElement.getAttributes().setNamedItem(sourceAttribute);</TD></TR><TR CLASS="z"><TD CLASS="l">80</TD><TD>                                                        fSelections.add(sourceAttribute);</TD></TR><TR><TD CLASS="l">81</TD><TD>                                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">82</TD><TD>                                                else if (getOperation() == DND.DROP_COPY) {</TD></TR><TR CLASS="z"><TD CLASS="l">83</TD><TD>                                                        Attr cloneAttribute = (Attr) sourceAttribute.cloneNode(false);</TD></TR><TR CLASS="z"><TD CLASS="l">84</TD><TD>                                                        Element targetElement = (Element) parentNode;</TD></TR><TR CLASS="z"><TD CLASS="l">85</TD><TD>                                                        targetElement.getAttributes().setNamedItem(cloneAttribute);</TD></TR><TR CLASS="z"><TD CLASS="l">86</TD><TD>                                                        fSelections.add(cloneAttribute);</TD></TR><TR><TD CLASS="l">87</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">88</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">89</TD><TD>                                        catch (Exception e) {</TD></TR><TR CLASS="z"><TD CLASS="l">90</TD><TD>                                                Logger.log(Logger.WARNING_DEBUG, e.getMessage(), e);</TD></TR><TR><TD CLASS="l">91</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">92</TD><TD>                                }</TD></TR><TR><TD CLASS="l">93</TD><TD>                        }</TD></TR><TR><TD CLASS="l">94</TD><TD>                }</TD></TR><TR><TD CLASS="l">95</TD><TD>                else {</TD></TR><TR CLASS="z"><TD CLASS="l">96</TD><TD>                        if (((parentNode.getNodeType() == Node.ELEMENT_NODE) || (parentNode.getNodeType() == Node.DOCUMENT_NODE)) &amp;&amp; !(refChild instanceof Attr)) {</TD></TR><TR CLASS="z"><TD CLASS="l">97</TD><TD>                                result = true;</TD></TR><TR><TD CLASS="l">98</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">99</TD><TD>                                if (!testOnly) {</TD></TR><TR><TD CLASS="l">100</TD><TD>                                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">101</TD><TD>                                                if (isAncestor(source, parentNode)) {</TD></TR><TR><TD CLASS="l">102</TD><TD>                                                        // System.out.println(&#34;can not perform this drag drop</TD></TR><TR><TD CLASS="l">103</TD><TD>                                                        // operation.... todo... pop up dialog&#34;);</TD></TR><TR><TD CLASS="l">104</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">105</TD><TD>                                                else {</TD></TR><TR><TD CLASS="l">106</TD><TD>                                                        // defect 221055 this test is required or else the</TD></TR><TR><TD CLASS="l">107</TD><TD>                                                        // node will</TD></TR><TR><TD CLASS="l">108</TD><TD>                                                        // be removed from the tree and the insert will fail</TD></TR><TR CLASS="z"><TD CLASS="l">109</TD><TD>                                                        if (source != refChild) {</TD></TR><TR CLASS="z"><TD CLASS="l">110</TD><TD>                                                                if (getOperation() == DND.DROP_MOVE) {</TD></TR><TR CLASS="z"><TD CLASS="l">111</TD><TD>                                                                        Node oldParent = source.getParentNode();</TD></TR><TR CLASS="z"><TD CLASS="l">112</TD><TD>                                                                        Node oldSibling = source.getNextSibling();</TD></TR><TR CLASS="z"><TD CLASS="l">113</TD><TD>                                                                        oldParent.removeChild(source);</TD></TR><TR><TD CLASS="l">114</TD><TD>                                                                        try {</TD></TR><TR CLASS="z"><TD CLASS="l">115</TD><TD>                                                                                parentNode.insertBefore(source, refChild);</TD></TR><TR CLASS="z"><TD CLASS="l">116</TD><TD>                                                                        } catch (DOMException e) {</TD></TR><TR><TD CLASS="l">117</TD><TD>                                                                                // bug151692 - if unable to move node to new location, reinsert back to old location</TD></TR><TR CLASS="z"><TD CLASS="l">118</TD><TD>                                                                                oldParent.insertBefore(source, oldSibling);</TD></TR><TR><TD CLASS="l">119</TD><TD>                                                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">120</TD><TD>                                                                        fSelections.add(source);</TD></TR><TR><TD CLASS="l">121</TD><TD>                                                                }</TD></TR><TR CLASS="z"><TD CLASS="l">122</TD><TD>                                                                else if (getOperation() == DND.DROP_COPY) {</TD></TR><TR CLASS="z"><TD CLASS="l">123</TD><TD>                                                                        Node nodeClone = source.cloneNode(true);</TD></TR><TR CLASS="z"><TD CLASS="l">124</TD><TD>                                                                        parentNode.insertBefore(nodeClone, refChild);</TD></TR><TR CLASS="z"><TD CLASS="l">125</TD><TD>                                                                        fSelections.add(nodeClone);</TD></TR><TR><TD CLASS="l">126</TD><TD>                                                                }</TD></TR><TR><TD CLASS="l">127</TD><TD>                                                        }</TD></TR><TR><TD CLASS="l">128</TD><TD>                                                }</TD></TR><TR><TD CLASS="l">129</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">130</TD><TD>                                        catch (Exception e) {</TD></TR><TR CLASS="z"><TD CLASS="l">131</TD><TD>                                                Logger.log(Logger.WARNING_DEBUG, e.getMessage(), e);</TD></TR><TR><TD CLASS="l">132</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">133</TD><TD>                                }</TD></TR><TR><TD CLASS="l">134</TD><TD>                        }</TD></TR><TR><TD CLASS="l">135</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="5">136</A></TD><TD>                return result;</TD></TR><TR><TD CLASS="l">137</TD><TD>        }</TD></TR><TR><TD CLASS="l">138</TD><TD> </TD></TR><TR><TD CLASS="l">139</TD><TD>        private void endModelChange(Node node, boolean batchUpdate) {</TD></TR><TR CLASS="z"><TD CLASS="l">140</TD><TD>                IStructuredModel structuredModel = getStructuredModel(node);</TD></TR><TR CLASS="z"><TD CLASS="l">141</TD><TD>                if (structuredModel != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">142</TD><TD>                        structuredModel.endRecording(this);</TD></TR><TR><TD CLASS="l">143</TD><TD>                        if (batchUpdate) {</TD></TR><TR><TD CLASS="l">144</TD><TD>                                // structuredModel.changedModel();</TD></TR><TR><TD CLASS="l">145</TD><TD>                        }</TD></TR><TR><TD CLASS="l"><A NAME="6">146</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">147</TD><TD>        }</TD></TR><TR><TD CLASS="l">148</TD><TD> </TD></TR><TR><TD CLASS="l">149</TD><TD>        public void execute() {</TD></TR><TR CLASS="z"><TD CLASS="l">150</TD><TD>                executeHelper(false);</TD></TR><TR><TD CLASS="l">151</TD><TD> </TD></TR><TR><TD CLASS="l">152</TD><TD>                // Make our selection if the treeViewer != null</TD></TR><TR CLASS="z"><TD CLASS="l">153</TD><TD>                if (fTreeViewer != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">154</TD><TD>                        StructuredSelection structuredSelection = new StructuredSelection(fSelections);</TD></TR><TR CLASS="z"><TD CLASS="l">155</TD><TD>                        fTreeViewer.setSelection(structuredSelection);</TD></TR><TR><TD CLASS="l"><A NAME="7">156</A></TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">157</TD><TD>        }</TD></TR><TR><TD CLASS="l">158</TD><TD> </TD></TR><TR><TD CLASS="l">159</TD><TD>        private boolean executeHelper(boolean testOnly) {</TD></TR><TR CLASS="z"><TD CLASS="l">160</TD><TD>                boolean result = true;</TD></TR><TR CLASS="z"><TD CLASS="l">161</TD><TD>                if (target instanceof Node) {</TD></TR><TR CLASS="z"><TD CLASS="l">162</TD><TD>                        Node targetNode = (Node) target;</TD></TR><TR CLASS="z"><TD CLASS="l">163</TD><TD>                        Node parentNode = getParentForDropPosition(targetNode);</TD></TR><TR CLASS="z"><TD CLASS="l">164</TD><TD>                        Node refChild = getRefChild(targetNode);</TD></TR><TR><TD CLASS="l">165</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">166</TD><TD>                        Vector sourcesList = new Vector();</TD></TR><TR CLASS="z"><TD CLASS="l">167</TD><TD>                        sourcesList.addAll(sources);</TD></TR><TR><TD CLASS="l">168</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">169</TD><TD>                        removeMemberDescendants(sourcesList);</TD></TR><TR CLASS="z"><TD CLASS="l">170</TD><TD>                        boolean performBatchUpdate = sourcesList.size() &gt; 5;</TD></TR><TR><TD CLASS="l">171</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">172</TD><TD>                        if (!testOnly) {</TD></TR><TR CLASS="z"><TD CLASS="l">173</TD><TD>                                beginModelChange(targetNode, performBatchUpdate);</TD></TR><TR><TD CLASS="l">174</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">175</TD><TD>                        for (Iterator i = sourcesList.iterator(); i.hasNext();) {</TD></TR><TR CLASS="z"><TD CLASS="l">176</TD><TD>                                Object source = i.next();</TD></TR><TR CLASS="z"><TD CLASS="l">177</TD><TD>                                if (source instanceof Node) {</TD></TR><TR CLASS="z"><TD CLASS="l">178</TD><TD>                                        if (!((refChild == null) &amp;&amp; (targetNode instanceof Attr))) {</TD></TR><TR CLASS="z"><TD CLASS="l">179</TD><TD>                                                result = doModify((Node) source, parentNode, refChild, testOnly);</TD></TR><TR><TD CLASS="l">180</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">181</TD><TD>                                        else {</TD></TR><TR CLASS="z"><TD CLASS="l">182</TD><TD>                                                result = false;</TD></TR><TR><TD CLASS="l">183</TD><TD>                                        }</TD></TR><TR CLASS="z"><TD CLASS="l">184</TD><TD>                                        if (!result) {</TD></TR><TR CLASS="z"><TD CLASS="l">185</TD><TD>                                                break;</TD></TR><TR><TD CLASS="l">186</TD><TD>                                        }</TD></TR><TR><TD CLASS="l">187</TD><TD>                                }</TD></TR><TR><TD CLASS="l">188</TD><TD>                        }</TD></TR><TR CLASS="z"><TD CLASS="l">189</TD><TD>                        if (!testOnly) {</TD></TR><TR CLASS="z"><TD CLASS="l">190</TD><TD>                                endModelChange(targetNode, performBatchUpdate);</TD></TR><TR><TD CLASS="l">191</TD><TD>                        }</TD></TR><TR><TD CLASS="l">192</TD><TD>                }</TD></TR><TR><TD CLASS="l">193</TD><TD>                else {</TD></TR><TR CLASS="z"><TD CLASS="l">194</TD><TD>                        result = false;</TD></TR><TR><TD CLASS="l">195</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">196</TD><TD>                return result;</TD></TR><TR><TD CLASS="l"><A NAME="8">197</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">198</TD><TD> </TD></TR><TR><TD CLASS="l">199</TD><TD> </TD></TR><TR><TD CLASS="l">200</TD><TD>        public int getFeedback() {</TD></TR><TR CLASS="z"><TD CLASS="l">201</TD><TD>                int result = DND.FEEDBACK_SELECT;</TD></TR><TR CLASS="z"><TD CLASS="l">202</TD><TD>                if (location &gt; 0.75) {</TD></TR><TR CLASS="z"><TD CLASS="l">203</TD><TD>                        result = DND.FEEDBACK_INSERT_AFTER;</TD></TR><TR><TD CLASS="l">204</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">205</TD><TD>                else if (location &lt; 0.25) {</TD></TR><TR CLASS="z"><TD CLASS="l">206</TD><TD>                        result = DND.FEEDBACK_INSERT_BEFORE;</TD></TR><TR><TD CLASS="l">207</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="9">208</A></TD><TD>                return result;</TD></TR><TR><TD CLASS="l">209</TD><TD>        }</TD></TR><TR><TD CLASS="l">210</TD><TD> </TD></TR><TR><TD CLASS="l">211</TD><TD>        private Node getParentForDropPosition(Node node) {</TD></TR><TR CLASS="z"><TD CLASS="l">212</TD><TD>                Node result = null;</TD></TR><TR><TD CLASS="l">213</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">214</TD><TD>                int feedback = getFeedback();</TD></TR><TR CLASS="z"><TD CLASS="l">215</TD><TD>                if (feedback == DND.FEEDBACK_SELECT) {</TD></TR><TR CLASS="z"><TD CLASS="l">216</TD><TD>                        result = node;</TD></TR><TR><TD CLASS="l">217</TD><TD>                }</TD></TR><TR><TD CLASS="l">218</TD><TD>                else {</TD></TR><TR CLASS="z"><TD CLASS="l">219</TD><TD>                        result = getParentOrOwner(node);</TD></TR><TR><TD CLASS="l">220</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">221</TD><TD>                return result;</TD></TR><TR><TD CLASS="l"><A NAME="a">222</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">223</TD><TD> </TD></TR><TR><TD CLASS="l">224</TD><TD> </TD></TR><TR><TD CLASS="l">225</TD><TD>        private Node getParentOrOwner(Node node) {</TD></TR><TR CLASS="z"><TD CLASS="l">226</TD><TD>                return (node.getNodeType() == Node.ATTRIBUTE_NODE) ? ((Attr) node).getOwnerElement() : node.getParentNode();</TD></TR><TR><TD CLASS="l"><A NAME="b">227</A></TD><TD>        }</TD></TR><TR><TD CLASS="l">228</TD><TD> </TD></TR><TR><TD CLASS="l">229</TD><TD> </TD></TR><TR><TD CLASS="l">230</TD><TD>        private Node getRefChild(Node node) {</TD></TR><TR CLASS="z"><TD CLASS="l">231</TD><TD>                Node result = null;</TD></TR><TR><TD CLASS="l">232</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">233</TD><TD>                int feedback = getFeedback();</TD></TR><TR><TD CLASS="l">234</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">235</TD><TD>                if (feedback == DND.FEEDBACK_INSERT_BEFORE) {</TD></TR><TR CLASS="z"><TD CLASS="l">236</TD><TD>                        result = node;</TD></TR><TR><TD CLASS="l">237</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">238</TD><TD>                else if (feedback == DND.FEEDBACK_INSERT_AFTER) {</TD></TR><TR CLASS="z"><TD CLASS="l">239</TD><TD>                        result = node.getNextSibling();</TD></TR><TR><TD CLASS="l">240</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="c">241</A></TD><TD>                return result;</TD></TR><TR><TD CLASS="l">242</TD><TD>        }</TD></TR><TR><TD CLASS="l">243</TD><TD> </TD></TR><TR><TD CLASS="l">244</TD><TD>        private IStructuredModel getStructuredModel(Node node) {</TD></TR><TR CLASS="z"><TD CLASS="l">245</TD><TD>                IStructuredModel result = null;</TD></TR><TR CLASS="z"><TD CLASS="l">246</TD><TD>                if (node instanceof IDOMNode) {</TD></TR><TR CLASS="z"><TD CLASS="l">247</TD><TD>                        result = ((IDOMNode) node).getModel();</TD></TR><TR><TD CLASS="l">248</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">249</TD><TD>                return result;</TD></TR><TR><TD CLASS="l">250</TD><TD>        }</TD></TR><TR><TD CLASS="l"><A NAME="d">251</A></TD><TD> </TD></TR><TR><TD CLASS="l">252</TD><TD>        // returns true if a is an ancestore of b</TD></TR><TR><TD CLASS="l">253</TD><TD>        //</TD></TR><TR><TD CLASS="l">254</TD><TD>        private boolean isAncestor(Node a, Node b) {</TD></TR><TR CLASS="z"><TD CLASS="l">255</TD><TD>                boolean result = false;</TD></TR><TR CLASS="z"><TD CLASS="l">256</TD><TD>                for (Node parent = b; parent != null; parent = parent.getParentNode()) {</TD></TR><TR CLASS="z"><TD CLASS="l">257</TD><TD>                        if (parent == a) {</TD></TR><TR CLASS="z"><TD CLASS="l">258</TD><TD>                                result = true;</TD></TR><TR CLASS="z"><TD CLASS="l">259</TD><TD>                                break;</TD></TR><TR><TD CLASS="l">260</TD><TD>                        }</TD></TR><TR><TD CLASS="l">261</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">262</TD><TD>                return result;</TD></TR><TR><TD CLASS="l">263</TD><TD>        }</TD></TR><TR><TD CLASS="l">264</TD><TD> </TD></TR><TR><TD CLASS="l">265</TD><TD> </TD></TR><TR><TD CLASS="l">266</TD><TD>        /**</TD></TR><TR><TD CLASS="l"><A NAME="e">267</A></TD><TD>         * This method removes members of the list that have ancestors that are</TD></TR><TR><TD CLASS="l">268</TD><TD>         * also members of the list.</TD></TR><TR><TD CLASS="l">269</TD><TD>         */</TD></TR><TR><TD CLASS="l">270</TD><TD>        private void removeMemberDescendants(List list) {</TD></TR><TR CLASS="z"><TD CLASS="l">271</TD><TD>                Hashtable table = new Hashtable();</TD></TR><TR CLASS="z"><TD CLASS="l">272</TD><TD>                for (Iterator i = list.iterator(); i.hasNext();) {</TD></TR><TR CLASS="z"><TD CLASS="l">273</TD><TD>                        Object node = i.next();</TD></TR><TR CLASS="z"><TD CLASS="l">274</TD><TD>                        table.put(node, node);</TD></TR><TR><TD CLASS="l">275</TD><TD>                }</TD></TR><TR><TD CLASS="l">276</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">277</TD><TD>                for (int i = list.size() - 1; i &gt;= 0; i--) {</TD></TR><TR CLASS="z"><TD CLASS="l">278</TD><TD>                        Node node = (Node) list.get(i);</TD></TR><TR CLASS="z"><TD CLASS="l">279</TD><TD>                        for (Node parent = getParentOrOwner(node); parent != null; parent = getParentOrOwner(parent)) {</TD></TR><TR CLASS="z"><TD CLASS="l">280</TD><TD>                                if (table.get(parent) != null) {</TD></TR><TR CLASS="z"><TD CLASS="l">281</TD><TD>                                        list.remove(i);</TD></TR><TR CLASS="z"><TD CLASS="l">282</TD><TD>                                        break;</TD></TR><TR><TD CLASS="l">283</TD><TD>                                }</TD></TR><TR><TD CLASS="l">284</TD><TD>                        }</TD></TR><TR><TD CLASS="l">285</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">286</TD><TD>        }</TD></TR><TR><TD CLASS="l">287</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="37.html">org.eclipse.wst.xml.ui.internal.dnd</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1c1.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1c1.html
deleted file mode 100644
index 2ad261f..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1c1.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="37.html">org.eclipse.wst.xml.ui.internal.dnd</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">XMLDragAndDropManager.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>XMLDragAndDropManager.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/57)</TD><TD CLASS="h">0%   (0/14)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">XMLDragAndDropManager</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/4)</TD><TD CLASS="h">0%   (0/57)</TD><TD CLASS="h">0%   (0/14)</TD></TR><TR><TD CLASS="f"><A HREF="#1">XMLDragAndDropManager (): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/2)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">XMLDragAndDropManager (TreeViewer): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/3)</TD></TR><TR><TD CLASS="f"><A HREF="#0">addDragAndDropSupport (TreeViewer): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/30)</TD><TD CLASS="h">0%   (0/5)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">createCommand (Object, float, int, int, Collection): DragAndDropCommand</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/18)</TD><TD CLASS="h">0%   (0/4)</TD></TR></TABLE><P></P><TABLE CLASS="s" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="l">1</TD><TD>/*******************************************************************************</TD></TR><TR><TD CLASS="l">2</TD><TD> * Copyright (c) 2001, 2006 IBM Corporation and others.</TD></TR><TR><TD CLASS="l">3</TD><TD> * All rights reserved. This program and the accompanying materials</TD></TR><TR><TD CLASS="l">4</TD><TD> * are made available under the terms of the Eclipse Public License v1.0</TD></TR><TR><TD CLASS="l">5</TD><TD> * which accompanies this distribution, and is available at</TD></TR><TR><TD CLASS="l">6</TD><TD> * http://www.eclipse.org/legal/epl-v10.html</TD></TR><TR><TD CLASS="l">7</TD><TD> *</TD></TR><TR><TD CLASS="l">8</TD><TD> * Contributors:</TD></TR><TR><TD CLASS="l">9</TD><TD> *     IBM Corporation - initial API and implementation</TD></TR><TR><TD CLASS="l">10</TD><TD> *     Jens Lukowski/Innoopract - initial renaming/restructuring</TD></TR><TR><TD CLASS="l">11</TD><TD> *     </TD></TR><TR><TD CLASS="l">12</TD><TD> *******************************************************************************/</TD></TR><TR><TD CLASS="l">13</TD><TD> </TD></TR><TR><TD CLASS="l">14</TD><TD> </TD></TR><TR><TD CLASS="l">15</TD><TD>package org.eclipse.wst.xml.ui.internal.dnd;</TD></TR><TR><TD CLASS="l">16</TD><TD> </TD></TR><TR><TD CLASS="l">17</TD><TD>import java.util.Collection;</TD></TR><TR><TD CLASS="l">18</TD><TD> </TD></TR><TR><TD CLASS="l">19</TD><TD>import org.eclipse.jface.viewers.TreeViewer;</TD></TR><TR><TD CLASS="l">20</TD><TD>import org.eclipse.swt.dnd.DND;</TD></TR><TR><TD CLASS="l">21</TD><TD>import org.eclipse.swt.dnd.Transfer;</TD></TR><TR><TD CLASS="l">22</TD><TD>import org.eclipse.wst.common.ui.internal.dnd.DragAndDropCommand;</TD></TR><TR><TD CLASS="l">23</TD><TD>import org.eclipse.wst.common.ui.internal.dnd.DragAndDropManager;</TD></TR><TR><TD CLASS="l">24</TD><TD>import org.eclipse.wst.common.ui.internal.dnd.ObjectTransfer;</TD></TR><TR><TD CLASS="l">25</TD><TD>import org.eclipse.wst.common.ui.internal.dnd.ViewerDragAdapter;</TD></TR><TR><TD CLASS="l">26</TD><TD>import org.eclipse.wst.common.ui.internal.dnd.ViewerDropAdapter;</TD></TR><TR><TD CLASS="l">27</TD><TD>import org.w3c.dom.Node;</TD></TR><TR><TD CLASS="l">28</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="0">29</A></TD><TD>public class XMLDragAndDropManager implements DragAndDropManager {</TD></TR><TR><TD CLASS="l">30</TD><TD>        private TreeViewer fViewer;</TD></TR><TR><TD CLASS="l">31</TD><TD> </TD></TR><TR><TD CLASS="l">32</TD><TD>        public static void addDragAndDropSupport(TreeViewer viewer) {</TD></TR><TR CLASS="z"><TD CLASS="l">33</TD><TD>                int dndOperations = DND.DROP_COPY | DND.DROP_MOVE | DND.DROP_LINK;</TD></TR><TR CLASS="z"><TD CLASS="l">34</TD><TD>                Transfer[] transfers = new Transfer[]{ObjectTransfer.getInstance()};</TD></TR><TR CLASS="z"><TD CLASS="l">35</TD><TD>                viewer.addDragSupport(dndOperations, transfers, new ViewerDragAdapter(viewer));</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="1">36</A></TD><TD>                viewer.addDropSupport(dndOperations, transfers, new ViewerDropAdapter(viewer, new XMLDragAndDropManager(viewer)));</TD></TR><TR CLASS="z"><TD CLASS="l">37</TD><TD>        }</TD></TR><TR><TD CLASS="l">38</TD><TD> </TD></TR><TR><TD CLASS="l"><A NAME="2">39</A></TD><TD>        public XMLDragAndDropManager() {</TD></TR><TR CLASS="z"><TD CLASS="l">40</TD><TD>                super();</TD></TR><TR CLASS="z"><TD CLASS="l">41</TD><TD>        }</TD></TR><TR><TD CLASS="l">42</TD><TD> </TD></TR><TR CLASS="z"><TD CLASS="l">43</TD><TD>        public XMLDragAndDropManager(TreeViewer viewer) {</TD></TR><TR CLASS="z"><TD CLASS="l"><A NAME="4">44</A></TD><TD>                fViewer = viewer;</TD></TR><TR CLASS="z"><TD CLASS="l">45</TD><TD>        }</TD></TR><TR><TD CLASS="l">46</TD><TD> </TD></TR><TR><TD CLASS="l">47</TD><TD>        public DragAndDropCommand createCommand(Object target, float location, int operations, int operation, Collection source) {</TD></TR><TR CLASS="z"><TD CLASS="l">48</TD><TD>                DragAndDropCommand result = null;</TD></TR><TR CLASS="z"><TD CLASS="l">49</TD><TD>                if (target instanceof Node) {</TD></TR><TR CLASS="z"><TD CLASS="l">50</TD><TD>                        result = new DragNodeCommand(target, location, operations, operation, source, fViewer);</TD></TR><TR><TD CLASS="l">51</TD><TD>                }</TD></TR><TR CLASS="z"><TD CLASS="l">52</TD><TD>                return result;</TD></TR><TR><TD CLASS="l">53</TD><TD>        }</TD></TR><TR><TD CLASS="l">54</TD><TD>}</TD></TR></TABLE><P></P><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="37.html">org.eclipse.wst.xml.ui.internal.dnd</A>]</TD></TR><TR><TD CLASS="tl"><A HREF="http://www.eclemma.org/support.html">EMMA 2.0.5312 EclEmma Fix 1</A> (C) Vladimir Roubtsov</TD></TR></TABLE></BODY></HTML> \ No newline at end of file
diff --git a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1c2.html b/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1c2.html
deleted file mode 100644
index 4312a80..0000000
--- a/tests/org.eclipse.wst.xsl.tests/coverageReport/_files/1c2.html
+++ /dev/null
@@ -1 +0,0 @@
-<HTML><HEAD><META CONTENT="text/html; charset=UTF-8" HTTP-EQUIV="Content-Type"/><TITLE>EMMA Coverage Report</TITLE><STYLE TYPE="text/css"> TABLE,TD,TH {border-style:solid; border-color:black;} TD,TH {background:white;margin:0;line-height:100%;padding-left:0.5em;padding-right:0.5em;} TD {border-width:0 1px 0 0;} TH {border-width:1px 1px 1px 0;} TR TD.h {color:red;} TABLE {border-spacing:0; border-collapse:collapse;border-width:0 0 1px 1px;} P,H1,H2,H3,TH {font-family:verdana,arial,sans-serif;font-size:10pt;} TD {font-family:courier,monospace;font-size:10pt;} TABLE.hdft {border-spacing:0;border-collapse:collapse;border-style:none;} TABLE.hdft TH,TABLE.hdft TD {border-style:none;line-height:normal;} TABLE.hdft TH.tl,TABLE.hdft TD.tl {background:#6699CC;color:white;} TABLE.hdft TD.nv {background:#6633DD;color:white;} .nv A:link {color:white;} .nv A:visited {color:white;} .nv A:active {color:yellow;} TABLE.hdft A:link {color:white;} TABLE.hdft A:visited {color:white;} TABLE.hdft A:active {color:yellow;} .in {color:#356085;} TABLE.s TD {padding-left:0.25em;padding-right:0.25em;} TABLE.s TD.l {padding-left:0.25em;padding-right:0.25em;text-align:right;background:#F0F0F0;} TABLE.s TR.z TD {background:#FF9999;} TABLE.s TR.p TD {background:#FFFF88;} TABLE.s TR.c TD {background:#CCFFCC;} A:link {color:#0000EE;text-decoration:none;} A:visited {color:#0000EE;text-decoration:none;} A:hover {color:#0000EE;text-decoration:underline;} TABLE.cn {border-width:0 0 1px 0;} TABLE.s {border-width:1px 0 1px 1px;} TD.h {color:red;border-width:0 1px 0 0;} TD.f {border-width:0 1px 0 1px;} TD.hf {color:red;border-width:0 1px 0 1px;} TH.f {border-width:1px 1px 1px 1px;} TR.cis TD {background:#F0F0F0;} TR.cis TD {border-width:1px 1px 1px 0;} TR.cis TD.h {color:red;border-width:1px 1px 1px 0;} TR.cis TD.f {border-width:1px 1px 1px 1px;} TR.cis TD.hf {color:red;border-width:1px 1px 1px 1px;} TD.b {border-style:none;background:transparent;line-height:50%;} TD.bt {border-width:1px 0 0 0;background:transparent;line-height:50%;} TR.o TD {background:#F0F0F0;}TABLE.it {border-style:none;}TABLE.it TD,TABLE.it TH {border-style:none;}</STYLE></HEAD><BODY><TABLE CLASS="hdft" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="tl"><A HREF="http://www.eclemma.org/">EMMA</A> Coverage Report (generated Fri Feb 20 18:44:54 GMT 2009)</TH></TR><TR><TD CLASS="nv">[<A HREF="../xslUnitTestCoverage.html">all classes</A>][<A HREF="38.html">org.eclipse.wst.xml.ui.internal.hyperlink</A>]</TD></TR></TABLE><H2>COVERAGE SUMMARY FOR SOURCE FILE [<SPAN CLASS="in">CatalogEntryHyperlink.java</SPAN>]</H2><TABLE CELLSPACING="0" WIDTH="100%"><TR><TH>name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD>CatalogEntryHyperlink.java</TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/110)</TD><TD CLASS="h">0%   (0/27)</TD></TR></TABLE><H3>COVERAGE BREAKDOWN BY CLASS AND METHOD</H3><TABLE CLASS="cn" CELLSPACING="0" WIDTH="100%"><TR><TH CLASS="f">name</TH><TH>class, %</TH><TH>method, %</TH><TH>block, %</TH><TH>line, %</TH></TR><TR><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD><TD CLASS="b"> </TD></TR><TR CLASS="cis"><TD CLASS="f">class <A HREF="#0">CatalogEntryHyperlink</A></TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/6)</TD><TD CLASS="h">0%   (0/110)</TD><TD CLASS="h">0%   (0/27)</TD></TR><TR><TD CLASS="f"><A HREF="#0">CatalogEntryHyperlink (IRegion, ICatalogEntry): void</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/15)</TD><TD CLASS="h">0%   (0/6)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#2">getHyperlink (): IHyperlink</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/60)</TD><TD CLASS="h">0%   (0/8)</TD></TR><TR><TD CLASS="f"><A HREF="#3">getHyperlinkRegion (): IRegion</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/3)</TD><TD CLASS="h">0%   (0/1)</TD></TR><TR CLASS="o"><TD CLASS="f"><A HREF="#4">getHyperlinkText (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/14)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR><TD CLASS="f"><A HREF="#5">getTypeLabel (): String</A></TD><TD> </TD><TD CLASS="h">0%   (0/1)</TD><TD CLASS="h">0%   (0/10)</TD><TD CLASS="h">0%   (0/4)</TD></TR><TR CLASS="o"><TD CLASS="f"><