This commit was manufactured by cvs2svn to create tag 'R3_5_2'.
Sprout from R3_5_maintenance 2010-02-09 20:18:24 UTC Thomas Watson <twatson> ' Bug 302309 - unsigned bundles in 3.5.2 stream'
Cherrypick from R3_5_maintenance 2009-08-11 14:58:55 UTC John Arthorne <johna> 'Bug 285909 Increment product version numbers for 3.5.1':
features/org.eclipse.equinox.compendium.sdk/feature.xml
Delete:
bundles/org.eclipse.equinox.cm.test/.classpath
bundles/org.eclipse.equinox.cm.test/.cvsignore
bundles/org.eclipse.equinox.cm.test/.project
bundles/org.eclipse.equinox.cm.test/.settings/org.eclipse.jdt.core.prefs
bundles/org.eclipse.equinox.cm.test/.settings/org.eclipse.jdt.ui.prefs
bundles/org.eclipse.equinox.cm.test/.settings/org.eclipse.pde.core.prefs
bundles/org.eclipse.equinox.cm.test/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.cm.test/build.properties
bundles/org.eclipse.equinox.cm.test/src/org/eclipse/equinox/cm/test/Activator.java
bundles/org.eclipse.equinox.cm.test/src/org/eclipse/equinox/cm/test/AllTests.java
bundles/org.eclipse.equinox.cm.test/src/org/eclipse/equinox/cm/test/ConfigurationAdminTest.java
bundles/org.eclipse.equinox.cm.test/src/org/eclipse/equinox/cm/test/ConfigurationDictionaryTest.java
bundles/org.eclipse.equinox.cm.test/src/org/eclipse/equinox/cm/test/ConfigurationEventAdapterTest.java
bundles/org.eclipse.equinox.cm.test/src/org/eclipse/equinox/cm/test/ConfigurationListenerTest.java
bundles/org.eclipse.equinox.cm.test/src/org/eclipse/equinox/cm/test/ConfigurationPluginTest.java
bundles/org.eclipse.equinox.cm.test/src/org/eclipse/equinox/cm/test/ManagedServiceFactoryTest.java
bundles/org.eclipse.equinox.cm.test/src/org/eclipse/equinox/cm/test/ManagedServiceTest.java
bundles/org.eclipse.equinox.compendium.tests/.classpath
bundles/org.eclipse.equinox.compendium.tests/.project
bundles/org.eclipse.equinox.compendium.tests/.settings/org.eclipse.core.resources.prefs
bundles/org.eclipse.equinox.compendium.tests/.settings/org.eclipse.jdt.core.prefs
bundles/org.eclipse.equinox.compendium.tests/.settings/org.eclipse.jdt.ui.prefs
bundles/org.eclipse.equinox.compendium.tests/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.compendium.tests/build.properties
bundles/org.eclipse.equinox.compendium.tests/plugin.properties
bundles/org.eclipse.equinox.compendium.tests/src/org/eclipse/equinox/compendium/tests/Activator.java
bundles/org.eclipse.equinox.compendium.tests/src/org/eclipse/equinox/compendium/tests/AllTests.java
bundles/org.eclipse.equinox.compendium.tests/src/org/eclipse/equinox/useradmin/tests/AllTests.java
bundles/org.eclipse.equinox.compendium.tests/src/org/eclipse/equinox/useradmin/tests/GroupTest.java
bundles/org.eclipse.equinox.compendium.tests/src/org/eclipse/equinox/useradmin/tests/UserAdminEventAdapterTest.java
bundles/org.eclipse.equinox.compendium.tests/src/org/eclipse/equinox/useradmin/tests/UserTest.java
bundles/org.eclipse.equinox.ds.tests/.classpath
bundles/org.eclipse.equinox.ds.tests/.project
bundles/org.eclipse.equinox.ds.tests/.settings/org.eclipse.jdt.core.prefs
bundles/org.eclipse.equinox.ds.tests/.settings/org.eclipse.jdt.ui.prefs
bundles/org.eclipse.equinox.ds.tests/.settings/org.eclipse.pde.core.prefs
bundles/org.eclipse.equinox.ds.tests/All DS Tests.launch
bundles/org.eclipse.equinox.ds.tests/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.ds.tests/build.properties
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1/org/eclipse/equinox/ds/tests/tb1/BindUnbindSuccessor.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1/org/eclipse/equinox/ds/tests/tb1/Immediate.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1/org/eclipse/equinox/ds/tests/tb1/impl/Activator.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1/org/eclipse/equinox/ds/tests/tb1/impl/AnotherComponent.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1/org/eclipse/equinox/ds/tests/tb1/impl/BaseComp.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1/org/eclipse/equinox/ds/tests/tb1/impl/BindUnbind.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1/org/eclipse/equinox/ds/tests/tb1/impl/Circular1.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1/org/eclipse/equinox/ds/tests/tb1/impl/Circular2.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1/org/eclipse/equinox/ds/tests/tb1/impl/components.xml
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1/org/eclipse/equinox/ds/tests/tb1/impl/sac.properties
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb10/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb10/org/eclipse/equinox/ds/tests/tb10/CountFactory.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb10/org/eclipse/equinox/ds/tests/tb10/CountHelperFactory.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb10/org/eclipse/equinox/ds/tests/tb10/components.xml
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb11/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb11/org/eclipse/equinox/ds/tests/tb11/ConfigurationPolicyComp.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb11/org/eclipse/equinox/ds/tests/tb11/ignore100.xml
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb11/org/eclipse/equinox/ds/tests/tb11/ignore110.xml
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb11/org/eclipse/equinox/ds/tests/tb11/notset100.xml
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb11/org/eclipse/equinox/ds/tests/tb11/notset110.xml
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb11/org/eclipse/equinox/ds/tests/tb11/optional100.xml
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb11/org/eclipse/equinox/ds/tests/tb11/optional110.xml
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb11/org/eclipse/equinox/ds/tests/tb11/require100.xml
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb11/org/eclipse/equinox/ds/tests/tb11/require110.xml
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb12/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb12/org/eclipse/equinox/ds/tests/tb12/Bc100.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb12/org/eclipse/equinox/ds/tests/tb12/Bc110.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb12/org/eclipse/equinox/ds/tests/tb12/CallRegistrator.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb12/org/eclipse/equinox/ds/tests/tb12/ContextExp.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb12/org/eclipse/equinox/ds/tests/tb12/NoArgs100.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb12/org/eclipse/equinox/ds/tests/tb12/NoArgs110.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb12/org/eclipse/equinox/ds/tests/tb12/components.xml
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb13/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb13/org/eclipse/equinox/ds/tests/tb13/BindUnbindRegistrator.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb13/org/eclipse/equinox/ds/tests/tb13/Enabler.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb13/org/eclipse/equinox/ds/tests/tb13/components.xml
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb14/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb14/org/eclipse/equinox/ds/tests/tb14/ContextExp.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb14/org/eclipse/equinox/ds/tests/tb14/Optional.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb14/org/eclipse/equinox/ds/tests/tb14/Optional2.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb14/org/eclipse/equinox/ds/tests/tb14/components.xml
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb15/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb15/org/eclipse/equinox/ds/tests/tb15/Component1.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb15/org/eclipse/equinox/ds/tests/tb15/Component2.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb15/org/eclipse/equinox/ds/tests/tb15/Component3.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb15/org/eclipse/equinox/ds/tests/tb15/components.xml
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb16/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb16/org/eclipse/equinox/ds/tests/tb16/TargetProperties.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb16/org/eclipse/equinox/ds/tests/tb16/components.xml
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb17/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb17/org/eclipse/equinox/ds/tests/tb17/Worker.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb17/org/eclipse/equinox/ds/tests/tb17/components.xml
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb18/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb18/org/eclipse/equinox/ds/tests/tb18/components.xml
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb19/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb19/org/eclipse/equinox/ds/tests/tb19/components.xml
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1a/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1a/org/eclipse/equinox/ds/tests/tb1a/Comp1.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1a/org/eclipse/equinox/ds/tests/tb1a/Immediate.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1a/org/eclipse/equinox/ds/tests/tb1a/components.xml
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb2/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb2/org/eclipse/equinox/ds/tests/tb2/impl/Blocker.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb2/org/eclipse/equinox/ds/tests/tb2/impl/blockingcomp.xml
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb20/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb20/org/eclipse/equinox/ds/tests/tb20/Comp.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb20/org/eclipse/equinox/ds/tests/tb20/components.xml
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb21/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb21/org/eclipse/equinox/ds/tests/tb21/ModifyRegistrator.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb21/org/eclipse/equinox/ds/tests/tb21/components.xml
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb21a/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb21a/org/eclipse/equinox/ds/tests/tb21a/ModifyRegistrator.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb21a/org/eclipse/equinox/ds/tests/tb21a/components.xml
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb22/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb22/org/eclipse/equinox/ds/tests/tb22/Comp.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb22/org/eclipse/equinox/ds/tests/tb22/components.xml
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb23/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb23/org/eclipse/equinox/ds/tests/tb23/BindRegistrator.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb23/org/eclipse/equinox/ds/tests/tb23/components.xml
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb3/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb3/org/eclipse/equinox/ds/tests/tb3/impl/BindBlocker.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb3/org/eclipse/equinox/ds/tests/tb3/impl/component.xml
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/AdvancedBounder.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/AnotherComponent.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/BoundReplacer.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/Component1.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/Component2.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/Component3.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/DynamicService.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/GiveMeContext.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/NamedService.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/ServiceProvider.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/components.xml
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/impl/DynamicFactory.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/impl/NamedFactory.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/impl/namedservice.properties
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/impl/namedservice.xml
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb5/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb5/org/eclipse/equinox/ds/tests/tb5/impl/SecurityTester.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb5/org/eclipse/equinox/ds/tests/tb5/impl/component.xml
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb6/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb6/org/eclipse/equinox/ds/tests/tb6/ReferencedComp.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb6/org/eclipse/equinox/ds/tests/tb6/StaticComp.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb6/org/eclipse/equinox/ds/tests/tb6/components.xml
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb7/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb7/org/eclipse/equinox/ds/tests/tb7/DynamicCircuit1.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb7/org/eclipse/equinox/ds/tests/tb7/DynamicCircuit2.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb7/org/eclipse/equinox/ds/tests/tb7/StaticCircuit1.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb7/org/eclipse/equinox/ds/tests/tb7/StaticCircuit2.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb7/org/eclipse/equinox/ds/tests/tb7/UnbreakableCircuit1.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb7/org/eclipse/equinox/ds/tests/tb7/UnbreakableCircuit2.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb7/org/eclipse/equinox/ds/tests/tb7/components.xml
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb8/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb8/org/eclipse/equinox/ds/tests/tb8/NamespaceTester.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb8/org/eclipse/equinox/ds/tests/tb8/components.xml
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb8/org/eclipse/equinox/ds/tests/tb8/root1.xml
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb8/org/eclipse/equinox/ds/tests/tb8/root2.xml
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb8/org/eclipse/equinox/ds/tests/tb8/root3.xml
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb8/org/eclipse/equinox/ds/tests/tb8/root4.xml
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb8/org/eclipse/equinox/ds/tests/tb8/root5.xml
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb9/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb9/org/eclipse/equinox/ds/tests/tb9/Wildcard1.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb9/org/eclipse/equinox/ds/tests/tb9/Wildcard2.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb9/org/eclipse/equinox/ds/tests/tb9/WildcardTester.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb9/org/eclipse/equinox/ds/tests/tb9/comp1.xml
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb9/org/eclipse/equinox/ds/tests/tb9/comp2.xml
bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/AllTests.java
bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/BundleInstaller.java
bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/DSTestsActivator.java
bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/tbc/BoundCountProvider.java
bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/tbc/BoundMainProvider.java
bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/tbc/BoundTester.java
bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/tbc/BundleContextProvider.java
bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/tbc/ComponentContextProvider.java
bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/tbc/ComponentManager.java
bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/tbc/DSEvent.java
bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/tbc/DSEventsProvider.java
bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/tbc/DSTest.java
bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/tbc/DynamicWorker.java
bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/tbc/NamespaceProvider.java
bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/tbc/PropertiesProvider.java
bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/tbc/StaticWorker.java
bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/tbc/TestHelper.java
bundles/org.eclipse.equinox.log.test/.classpath
bundles/org.eclipse.equinox.log.test/.cvsignore
bundles/org.eclipse.equinox.log.test/.project
bundles/org.eclipse.equinox.log.test/.settings/org.eclipse.jdt.core.prefs
bundles/org.eclipse.equinox.log.test/.settings/org.eclipse.jdt.launching.prefs
bundles/org.eclipse.equinox.log.test/.settings/org.eclipse.jdt.ui.prefs
bundles/org.eclipse.equinox.log.test/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.log.test/build.properties
bundles/org.eclipse.equinox.log.test/src/org/eclipse/equinox/log/test/Activator.java
bundles/org.eclipse.equinox.log.test/src/org/eclipse/equinox/log/test/AllExtendedLogServiceTests.java
bundles/org.eclipse.equinox.log.test/src/org/eclipse/equinox/log/test/AllLogServiceTests.java
bundles/org.eclipse.equinox.log.test/src/org/eclipse/equinox/log/test/AllTests.java
bundles/org.eclipse.equinox.log.test/src/org/eclipse/equinox/log/test/ExtendedLogReaderServiceTest.java
bundles/org.eclipse.equinox.log.test/src/org/eclipse/equinox/log/test/ExtendedLogServiceTest.java
bundles/org.eclipse.equinox.log.test/src/org/eclipse/equinox/log/test/LogReaderServiceTest.java
bundles/org.eclipse.equinox.log.test/src/org/eclipse/equinox/log/test/LogServiceTest.java
bundles/org.eclipse.equinox.log.test/src/org/eclipse/equinox/log/test/TestListener.java
bundles/org.eclipse.equinox.weaving.aspectj/.classpath
bundles/org.eclipse.equinox.weaving.aspectj/.cvsignore
bundles/org.eclipse.equinox.weaving.aspectj/.options
bundles/org.eclipse.equinox.weaving.aspectj/.project
bundles/org.eclipse.equinox.weaving.aspectj/.settings/org.eclipse.core.resources.prefs
bundles/org.eclipse.equinox.weaving.aspectj/.settings/org.eclipse.jdt.core.prefs
bundles/org.eclipse.equinox.weaving.aspectj/.settings/org.eclipse.jdt.ui.prefs
bundles/org.eclipse.equinox.weaving.aspectj/.settings/org.eclipse.pde.prefs
bundles/org.eclipse.equinox.weaving.aspectj/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.weaving.aspectj/META-INF/optional-p2.inf
bundles/org.eclipse.equinox.weaving.aspectj/build.properties
bundles/org.eclipse.equinox.weaving.aspectj/src/org/eclipse/equinox/weaving/aspectj/AspectAdmin.java
bundles/org.eclipse.equinox.weaving.aspectj/src/org/eclipse/equinox/weaving/aspectj/AspectConfiguration.java
bundles/org.eclipse.equinox.weaving.aspectj/src/org/eclipse/equinox/weaving/aspectj/AspectJWeavingActivator.java
bundles/org.eclipse.equinox.weaving.aspectj/src/org/eclipse/equinox/weaving/aspectj/AspectJWeavingService.java
bundles/org.eclipse.equinox.weaving.aspectj/src/org/eclipse/equinox/weaving/aspectj/AspectJWeavingServiceFactory.java
bundles/org.eclipse.equinox.weaving.aspectj/src/org/eclipse/equinox/weaving/aspectj/loadtime/AspectAdminImpl.java
bundles/org.eclipse.equinox.weaving.aspectj/src/org/eclipse/equinox/weaving/aspectj/loadtime/AspectResolver.java
bundles/org.eclipse.equinox.weaving.aspectj/src/org/eclipse/equinox/weaving/aspectj/loadtime/OSGiWeavingAdaptor.java
bundles/org.eclipse.equinox.weaving.aspectj/src/org/eclipse/equinox/weaving/aspectj/loadtime/OSGiWeavingContext.java
bundles/org.eclipse.equinox.weaving.caching.j9/.classpath
bundles/org.eclipse.equinox.weaving.caching.j9/.cvsignore
bundles/org.eclipse.equinox.weaving.caching.j9/.options
bundles/org.eclipse.equinox.weaving.caching.j9/.project
bundles/org.eclipse.equinox.weaving.caching.j9/.settings/org.eclipse.core.resources.prefs
bundles/org.eclipse.equinox.weaving.caching.j9/.settings/org.eclipse.jdt.core.prefs
bundles/org.eclipse.equinox.weaving.caching.j9/.settings/org.eclipse.jdt.ui.prefs
bundles/org.eclipse.equinox.weaving.caching.j9/.settings/org.eclipse.pde.prefs
bundles/org.eclipse.equinox.weaving.caching.j9/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.weaving.caching.j9/META-INF/p2.inf
bundles/org.eclipse.equinox.weaving.caching.j9/build.properties
bundles/org.eclipse.equinox.weaving.caching.j9/j9stubs.jar
bundles/org.eclipse.equinox.weaving.caching.j9/src/org/eclipse/equinox/weaving/internal/caching/j9/CachingService.java
bundles/org.eclipse.equinox.weaving.caching.j9/src/org/eclipse/equinox/weaving/internal/caching/j9/CachingServiceFactory.java
bundles/org.eclipse.equinox.weaving.caching.j9/src/org/eclipse/equinox/weaving/internal/caching/j9/CachingServicePlugin.java
bundles/org.eclipse.equinox.weaving.caching/.classpath
bundles/org.eclipse.equinox.weaving.caching/.cvsignore
bundles/org.eclipse.equinox.weaving.caching/.options
bundles/org.eclipse.equinox.weaving.caching/.project
bundles/org.eclipse.equinox.weaving.caching/.settings/org.eclipse.core.resources.prefs
bundles/org.eclipse.equinox.weaving.caching/.settings/org.eclipse.jdt.core.prefs
bundles/org.eclipse.equinox.weaving.caching/.settings/org.eclipse.jdt.ui.prefs
bundles/org.eclipse.equinox.weaving.caching/.settings/org.eclipse.pde.core.prefs
bundles/org.eclipse.equinox.weaving.caching/.settings/org.eclipse.pde.prefs
bundles/org.eclipse.equinox.weaving.caching/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.weaving.caching/META-INF/p2.inf
bundles/org.eclipse.equinox.weaving.caching/build.properties
bundles/org.eclipse.equinox.weaving.caching/src/org/eclipse/equinox/weaving/internal/caching/Activator.java
bundles/org.eclipse.equinox.weaving.caching/src/org/eclipse/equinox/weaving/internal/caching/BundleCachingService.java
bundles/org.eclipse.equinox.weaving.caching/src/org/eclipse/equinox/weaving/internal/caching/CacheItem.java
bundles/org.eclipse.equinox.weaving.caching/src/org/eclipse/equinox/weaving/internal/caching/CacheWriter.java
bundles/org.eclipse.equinox.weaving.caching/src/org/eclipse/equinox/weaving/internal/caching/CachingServiceFactory.java
bundles/org.eclipse.equinox.weaving.caching/src/org/eclipse/equinox/weaving/internal/caching/IBundleConstants.java
bundles/org.eclipse.equinox.weaving.caching/src/org/eclipse/equinox/weaving/internal/caching/Log.java
bundles/org.eclipse.equinox.weaving.caching/src/org/eclipse/equinox/weaving/internal/caching/UnchangedCachingService.java
bundles/org.eclipse.equinox.weaving.hook/.classpath
bundles/org.eclipse.equinox.weaving.hook/.cvsignore
bundles/org.eclipse.equinox.weaving.hook/.options
bundles/org.eclipse.equinox.weaving.hook/.project
bundles/org.eclipse.equinox.weaving.hook/.settings/org.eclipse.core.resources.prefs
bundles/org.eclipse.equinox.weaving.hook/.settings/org.eclipse.jdt.core.prefs
bundles/org.eclipse.equinox.weaving.hook/.settings/org.eclipse.jdt.ui.prefs
bundles/org.eclipse.equinox.weaving.hook/.settings/org.eclipse.pde.prefs
bundles/org.eclipse.equinox.weaving.hook/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.weaving.hook/build.properties
bundles/org.eclipse.equinox.weaving.hook/config.ini
bundles/org.eclipse.equinox.weaving.hook/hookconfigurators.properties
bundles/org.eclipse.equinox.weaving.hook/readme.txt
bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/service/weaving/CacheEntry.java
bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/service/weaving/ICachingService.java
bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/service/weaving/ICachingServiceFactory.java
bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/service/weaving/ISupplementerRegistry.java
bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/service/weaving/IWeavingService.java
bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/service/weaving/IWeavingServiceFactory.java
bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/service/weaving/Supplementer.java
bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/adaptors/Debug.java
bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/adaptors/IWeavingAdaptor.java
bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/adaptors/WeavingAdaptor.java
bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/adaptors/WeavingAdaptorFactory.java
bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/hooks/AbstractWeavingBundleFile.java
bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/hooks/AbstractWeavingHook.java
bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/hooks/BaseWeavingBundleFile.java
bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/hooks/BundleAdaptorProvider.java
bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/hooks/CachedClassBundleEntry.java
bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/hooks/CachedGeneratedClassBundleEntry.java
bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/hooks/IAdaptorProvider.java
bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/hooks/SupplementBundleListener.java
bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/hooks/SupplementerRegistry.java
bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/hooks/WeavingBundleEntry.java
bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/hooks/WeavingBundleFile.java
bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/hooks/WeavingHook.java
bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/hooks/WeavingLoaderDelegateHook.java
diff --git a/bundles/org.eclipse.equinox.cm.test/.classpath b/bundles/org.eclipse.equinox.cm.test/.classpath
deleted file mode 100644
index 751c8f2..0000000
--- a/bundles/org.eclipse.equinox.cm.test/.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"/>
- <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
- <classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/bundles/org.eclipse.equinox.cm.test/.cvsignore b/bundles/org.eclipse.equinox.cm.test/.cvsignore
deleted file mode 100644
index ba077a4..0000000
--- a/bundles/org.eclipse.equinox.cm.test/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-bin
diff --git a/bundles/org.eclipse.equinox.cm.test/.project b/bundles/org.eclipse.equinox.cm.test/.project
deleted file mode 100644
index 13e9a0e..0000000
--- a/bundles/org.eclipse.equinox.cm.test/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.equinox.cm.test</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/bundles/org.eclipse.equinox.cm.test/.settings/org.eclipse.jdt.core.prefs b/bundles/org.eclipse.equinox.cm.test/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index f31f250..0000000
--- a/bundles/org.eclipse.equinox.cm.test/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,331 +0,0 @@
-#Tue Aug 21 11:27:47 CDT 2007
-eclipse.preferences.version=1
-org.eclipse.jdt.core.builder.cleanOutputFolder=clean
-org.eclipse.jdt.core.builder.duplicateResourceTask=warning
-org.eclipse.jdt.core.builder.invalidClasspath=abort
-org.eclipse.jdt.core.builder.resourceCopyExclusionFilter=*.launch
-org.eclipse.jdt.core.circularClasspath=error
-org.eclipse.jdt.core.classpath.exclusionPatterns=enabled
-org.eclipse.jdt.core.classpath.multipleOutputLocations=enabled
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=disabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.2
-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=1.4
-org.eclipse.jdt.core.compiler.debug.lineNumber=generate
-org.eclipse.jdt.core.compiler.debug.localVariable=generate
-org.eclipse.jdt.core.compiler.debug.sourceFile=generate
-org.eclipse.jdt.core.compiler.doc.comment.support=enabled
-org.eclipse.jdt.core.compiler.maxProblemPerUnit=1000
-org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=warning
-org.eclipse.jdt.core.compiler.problem.autoboxing=ignore
-org.eclipse.jdt.core.compiler.problem.deprecation=warning
-org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
-org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=enabled
-org.eclipse.jdt.core.compiler.problem.discouragedReference=error
-org.eclipse.jdt.core.compiler.problem.emptyStatement=warning
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=warning
-org.eclipse.jdt.core.compiler.problem.fieldHiding=warning
-org.eclipse.jdt.core.compiler.problem.finalParameterBound=ignore
-org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning
-org.eclipse.jdt.core.compiler.problem.forbiddenReference=error
-org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
-org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
-org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=ignore
-org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=warning
-org.eclipse.jdt.core.compiler.problem.invalidJavadoc=error
-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsVisibility=private
-org.eclipse.jdt.core.compiler.problem.localVariableHiding=warning
-org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning
-org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=ignore
-org.eclipse.jdt.core.compiler.problem.missingJavadocComments=ignore
-org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsOverriding=enabled
-org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsVisibility=public
-org.eclipse.jdt.core.compiler.problem.missingJavadocTags=ignore
-org.eclipse.jdt.core.compiler.problem.missingJavadocTagsOverriding=enabled
-org.eclipse.jdt.core.compiler.problem.missingJavadocTagsVisibility=public
-org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=ignore
-org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
-org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
-org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
-org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=warning
-org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
-org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=warning
-org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
-org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
-org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
-org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=warning
-org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
-org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning
-org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning
-org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning
-org.eclipse.jdt.core.compiler.problem.unnecessaryElse=warning
-org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=warning
-org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
-org.eclipse.jdt.core.compiler.problem.unsafeTypeOperation=warning
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=enabled
-org.eclipse.jdt.core.compiler.problem.unusedImport=error
-org.eclipse.jdt.core.compiler.problem.unusedLocal=warning
-org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=enabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=enabled
-org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=error
-org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
-org.eclipse.jdt.core.compiler.source=1.3
-org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_assignment=0
-org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
-org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80
-org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0
-org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
-org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
-org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
-org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16
-org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
-org.eclipse.jdt.core.formatter.blank_lines_after_package=1
-org.eclipse.jdt.core.formatter.blank_lines_before_field=0
-org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0
-org.eclipse.jdt.core.formatter.blank_lines_before_imports=1
-org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1
-org.eclipse.jdt.core.formatter.blank_lines_before_method=1
-org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1
-org.eclipse.jdt.core.formatter.blank_lines_before_package=0
-org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1
-org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1
-org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=false
-org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=false
-org.eclipse.jdt.core.formatter.comment.format_block_comments=false
-org.eclipse.jdt.core.formatter.comment.format_header=false
-org.eclipse.jdt.core.formatter.comment.format_html=true
-org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=false
-org.eclipse.jdt.core.formatter.comment.format_line_comments=false
-org.eclipse.jdt.core.formatter.comment.format_source_code=true
-org.eclipse.jdt.core.formatter.comment.indent_parameter_description=false
-org.eclipse.jdt.core.formatter.comment.indent_root_tags=false
-org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert
-org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=do not insert
-org.eclipse.jdt.core.formatter.comment.line_length=80
-org.eclipse.jdt.core.formatter.compact_else_if=true
-org.eclipse.jdt.core.formatter.continuation_indentation=2
-org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
-org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true
-org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true
-org.eclipse.jdt.core.formatter.indent_empty_lines=false
-org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true
-org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
-org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
-org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=true
-org.eclipse.jdt.core.formatter.indentation.size=4
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert
-org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert
-org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert
-org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert
-org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert
-org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false
-org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false
-org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false
-org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false
-org.eclipse.jdt.core.formatter.lineSplit=800
-org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
-org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false
-org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
-org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1
-org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=false
-org.eclipse.jdt.core.formatter.tabulation.char=tab
-org.eclipse.jdt.core.formatter.tabulation.size=4
-org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
-org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true
-org.eclipse.jdt.core.incompatibleJDKLevel=ignore
-org.eclipse.jdt.core.incompleteClasspath=error
diff --git a/bundles/org.eclipse.equinox.cm.test/.settings/org.eclipse.jdt.ui.prefs b/bundles/org.eclipse.equinox.cm.test/.settings/org.eclipse.jdt.ui.prefs
deleted file mode 100644
index 21bd9f3..0000000
--- a/bundles/org.eclipse.equinox.cm.test/.settings/org.eclipse.jdt.ui.prefs
+++ /dev/null
@@ -1,57 +0,0 @@
-#Tue Aug 21 11:30:07 CDT 2007
-eclipse.preferences.version=1
-editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true
-formatter_profile=_core
-formatter_settings_version=11
-org.eclipse.jdt.ui.ignorelowercasenames=true
-org.eclipse.jdt.ui.importorder=;
-org.eclipse.jdt.ui.ondemandthreshold=3
-org.eclipse.jdt.ui.staticondemandthreshold=3
-sp_cleanup.add_default_serial_version_id=true
-sp_cleanup.add_generated_serial_version_id=false
-sp_cleanup.add_missing_annotations=true
-sp_cleanup.add_missing_deprecated_annotations=true
-sp_cleanup.add_missing_nls_tags=false
-sp_cleanup.add_missing_override_annotations=true
-sp_cleanup.add_serial_version_id=false
-sp_cleanup.always_use_blocks=true
-sp_cleanup.always_use_parentheses_in_expressions=false
-sp_cleanup.always_use_this_for_non_static_field_access=false
-sp_cleanup.always_use_this_for_non_static_method_access=false
-sp_cleanup.convert_to_enhanced_for_loop=false
-sp_cleanup.correct_indentation=false
-sp_cleanup.format_source_code=true
-sp_cleanup.make_local_variable_final=false
-sp_cleanup.make_parameters_final=false
-sp_cleanup.make_private_fields_final=true
-sp_cleanup.make_variable_declarations_final=true
-sp_cleanup.never_use_blocks=false
-sp_cleanup.never_use_parentheses_in_expressions=true
-sp_cleanup.on_save_use_additional_actions=false
-sp_cleanup.organize_imports=true
-sp_cleanup.qualify_static_field_accesses_with_declaring_class=false
-sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
-sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
-sp_cleanup.qualify_static_member_accesses_with_declaring_class=false
-sp_cleanup.qualify_static_method_accesses_with_declaring_class=false
-sp_cleanup.remove_private_constructors=true
-sp_cleanup.remove_trailing_whitespaces=false
-sp_cleanup.remove_trailing_whitespaces_all=true
-sp_cleanup.remove_trailing_whitespaces_ignore_empty=false
-sp_cleanup.remove_unnecessary_casts=true
-sp_cleanup.remove_unnecessary_nls_tags=false
-sp_cleanup.remove_unused_imports=false
-sp_cleanup.remove_unused_local_variables=false
-sp_cleanup.remove_unused_private_fields=true
-sp_cleanup.remove_unused_private_members=false
-sp_cleanup.remove_unused_private_methods=true
-sp_cleanup.remove_unused_private_types=true
-sp_cleanup.sort_members=false
-sp_cleanup.sort_members_all=false
-sp_cleanup.use_blocks=false
-sp_cleanup.use_blocks_only_for_return_and_throw=false
-sp_cleanup.use_parentheses_in_expressions=false
-sp_cleanup.use_this_for_non_static_field_access=false
-sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=true
-sp_cleanup.use_this_for_non_static_method_access=false
-sp_cleanup.use_this_for_non_static_method_access_only_if_necessary=true
diff --git a/bundles/org.eclipse.equinox.cm.test/.settings/org.eclipse.pde.core.prefs b/bundles/org.eclipse.equinox.cm.test/.settings/org.eclipse.pde.core.prefs
deleted file mode 100644
index 0828c77..0000000
--- a/bundles/org.eclipse.equinox.cm.test/.settings/org.eclipse.pde.core.prefs
+++ /dev/null
@@ -1,4 +0,0 @@
-#Sun Oct 21 19:02:46 EDT 2007
-eclipse.preferences.version=1
-pluginProject.extensions=false
-resolve.requirebundle=false
diff --git a/bundles/org.eclipse.equinox.cm.test/META-INF/MANIFEST.MF b/bundles/org.eclipse.equinox.cm.test/META-INF/MANIFEST.MF
deleted file mode 100644
index 35188f5..0000000
--- a/bundles/org.eclipse.equinox.cm.test/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,12 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: Test Plug-in
-Bundle-SymbolicName: org.eclipse.equinox.cm.test
-Bundle-Version: 1.0.0
-Bundle-Activator: org.eclipse.equinox.cm.test.Activator
-Import-Package: junit.framework;version="[3.8.0,4.0.0)",
- org.osgi.framework;version="1.3.0",
- org.osgi.service.cm;version="1.2.0",
- org.osgi.service.event;version="1.1.0",
- org.osgi.service.packageadmin;version="1.2.0"
-Eclipse-LazyStart: true
diff --git a/bundles/org.eclipse.equinox.cm.test/build.properties b/bundles/org.eclipse.equinox.cm.test/build.properties
deleted file mode 100644
index 34d2e4d..0000000
--- a/bundles/org.eclipse.equinox.cm.test/build.properties
+++ /dev/null
@@ -1,4 +0,0 @@
-source.. = src/
-output.. = bin/
-bin.includes = META-INF/,\
- .
diff --git a/bundles/org.eclipse.equinox.cm.test/src/org/eclipse/equinox/cm/test/Activator.java b/bundles/org.eclipse.equinox.cm.test/src/org/eclipse/equinox/cm/test/Activator.java
deleted file mode 100644
index 124ceff..0000000
--- a/bundles/org.eclipse.equinox.cm.test/src/org/eclipse/equinox/cm/test/Activator.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007 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
- *******************************************************************************/
-package org.eclipse.equinox.cm.test;
-
-import org.osgi.framework.*;
-import org.osgi.service.packageadmin.PackageAdmin;
-
-public class Activator implements BundleActivator {
-
- private static PackageAdmin packageAdmin;
- private static BundleContext bundleContext;
- private ServiceReference packageAdminRef;
-
- public void start(BundleContext context) throws Exception {
- packageAdminRef = context.getServiceReference(PackageAdmin.class.getName());
- setPackageAdmin((PackageAdmin) context.getService(packageAdminRef));
- setBundleContext(context);
- }
-
- public void stop(BundleContext context) throws Exception {
- setBundleContext(null);
- setPackageAdmin(null);
- context.ungetService(packageAdminRef);
- }
-
- private static synchronized void setBundleContext(BundleContext context) {
- bundleContext = context;
- }
-
- private static synchronized void setPackageAdmin(PackageAdmin service) {
- packageAdmin = service;
- }
-
- static synchronized BundleContext getBundleContext() {
- return bundleContext;
- }
-
- static synchronized Bundle getBundle(String symbolicName) {
- if (packageAdmin == null)
- return null;
-
- Bundle[] bundles = packageAdmin.getBundles(symbolicName, null);
- if (bundles == null)
- return null;
- //Return the first bundle that is not installed or uninstalled
- for (int i = 0; i < bundles.length; i++) {
- if ((bundles[i].getState() & (Bundle.INSTALLED | Bundle.UNINSTALLED)) == 0) {
- return bundles[i];
- }
- }
- return null;
- }
-}
diff --git a/bundles/org.eclipse.equinox.cm.test/src/org/eclipse/equinox/cm/test/AllTests.java b/bundles/org.eclipse.equinox.cm.test/src/org/eclipse/equinox/cm/test/AllTests.java
deleted file mode 100644
index 958b8a6..0000000
--- a/bundles/org.eclipse.equinox.cm.test/src/org/eclipse/equinox/cm/test/AllTests.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007 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
- *******************************************************************************/
-package org.eclipse.equinox.cm.test;
-
-import junit.framework.Test;
-import junit.framework.TestSuite;
-
-public class AllTests {
-
- public static Test suite() {
- TestSuite suite = new TestSuite("Test for org.eclipse.equinox.cm.test");
- suite.addTestSuite(ConfigurationAdminTest.class);
- suite.addTestSuite(ManagedServiceFactoryTest.class);
- suite.addTestSuite(ManagedServiceTest.class);
- suite.addTestSuite(ConfigurationDictionaryTest.class);
- suite.addTestSuite(ConfigurationPluginTest.class);
- suite.addTestSuite(ConfigurationListenerTest.class);
- suite.addTestSuite(ConfigurationEventAdapterTest.class);
- return suite;
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.cm.test/src/org/eclipse/equinox/cm/test/ConfigurationAdminTest.java b/bundles/org.eclipse.equinox.cm.test/src/org/eclipse/equinox/cm/test/ConfigurationAdminTest.java
deleted file mode 100644
index 1cdc30e..0000000
--- a/bundles/org.eclipse.equinox.cm.test/src/org/eclipse/equinox/cm/test/ConfigurationAdminTest.java
+++ /dev/null
@@ -1,247 +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:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.cm.test;
-
-import java.util.Properties;
-import junit.framework.TestCase;
-import org.osgi.framework.Constants;
-import org.osgi.framework.ServiceReference;
-import org.osgi.service.cm.Configuration;
-import org.osgi.service.cm.ConfigurationAdmin;
-
-public class ConfigurationAdminTest extends TestCase {
-
- private ConfigurationAdmin cm;
- private ServiceReference reference;
-
- public ConfigurationAdminTest(String name) {
- super(name);
- }
-
- protected void setUp() throws Exception {
- Activator.getBundle("org.eclipse.equinox.cm").start();
- reference = Activator.getBundleContext().getServiceReference(ConfigurationAdmin.class.getName());
- cm = (ConfigurationAdmin) Activator.getBundleContext().getService(reference);
- }
-
- protected void tearDown() throws Exception {
- Activator.getBundleContext().ungetService(reference);
- Activator.getBundle("org.eclipse.equinox.cm").stop();
- }
-
- public void testCreateConfig() throws Exception {
- Configuration config = cm.getConfiguration("test");
- assertEquals("test", config.getPid());
- }
-
- public void testCreateConfigNullPid() throws Exception {
- try {
- Configuration config = cm.getConfiguration(null);
- } catch (IllegalArgumentException e) {
- return;
- }
- fail();
- }
-
- public void testCreateConfigWithLocation() throws Exception {
- Configuration config = cm.getConfiguration("test", null);
- assertEquals("test", config.getPid());
- }
-
- public void testCreateConfigNullPidWithLocation() throws Exception {
- try {
- Configuration config = cm.getConfiguration(null, null);
- } catch (IllegalArgumentException e) {
- return;
- }
- fail();
- }
-
- public void testCreateConfigWithAndWithoutLocation() throws Exception {
- Configuration config = cm.getConfiguration("test", "x");
- config.update();
- try {
- Configuration config2 = cm.getConfiguration("test");
- assertEquals(config, config2);
- } finally {
- config.delete();
- }
- }
-
- public void testCreateConfigWithAndWithoutNullLocation() throws Exception {
- Configuration config = cm.getConfiguration("test", null);
- config.update();
- assertNull(config.getBundleLocation());
- try {
- Configuration config2 = cm.getConfiguration("test");
- assertEquals(config, config2);
- assertEquals(config2.getBundleLocation(), Activator.getBundleContext().getBundle().getLocation());
- } finally {
- config.delete();
- }
- }
-
- public void testCreateFactoryConfig() throws Exception {
- Configuration config = cm.createFactoryConfiguration("test");
- assertEquals("test", config.getFactoryPid());
- }
-
- public void testCreateFactoryConfigNullPid() throws Exception {
- try {
- Configuration config = cm.createFactoryConfiguration(null);
- } catch (IllegalArgumentException e) {
- return;
- }
- fail();
- }
-
- public void testCreateFactoryConfigWithLocation() throws Exception {
- Configuration config = cm.createFactoryConfiguration("test", null);
- assertEquals("test", config.getFactoryPid());
- }
-
- public void testCreateFactoryConfigNullPidWithLocation() throws Exception {
- try {
- Configuration config = cm.createFactoryConfiguration(null, null);
- } catch (IllegalArgumentException e) {
- return;
- }
- fail();
- }
-
- public void testCreateFactoryConfigWithAndWithoutLocation() throws Exception {
- Configuration config = cm.createFactoryConfiguration("test", "x");
- config.update();
- try {
- Configuration config2 = cm.getConfiguration(config.getPid());
- assertEquals(config, config2);
- } finally {
- config.delete();
- }
- }
-
- public void testCreateFactoryConfigWithAndWithoutNullLocation() throws Exception {
- Configuration config = cm.createFactoryConfiguration("test", null);
- config.update();
- assertNull(config.getBundleLocation());
- try {
- Configuration config2 = cm.getConfiguration(config.getPid());
- assertEquals(config, config2);
- assertEquals(config2.getBundleLocation(), Activator.getBundleContext().getBundle().getLocation());
- } finally {
- config.delete();
- }
- }
-
- public void testListConfiguration() throws Exception {
- Configuration config = cm.getConfiguration("test", null);
- config.update();
- try {
- Configuration[] configs = cm.listConfigurations("(" + Constants.SERVICE_PID + "=test)");
- assertTrue(configs != null && configs.length > 0);
- } finally {
- config.delete();
- }
- }
-
- public void testListConfigurationWithBoundLocation() throws Exception {
- Configuration config = cm.getConfiguration("test", null);
- config.update();
- try {
- String filterString = "(&(" + ConfigurationAdmin.SERVICE_BUNDLELOCATION + "=" + Activator.getBundleContext().getBundle().getLocation() + ")" + "(" + Constants.SERVICE_PID + "=test)" + ")";
- Configuration[] configs = cm.listConfigurations(filterString);
- assertNull(configs);
- // bind configuration to this bundle's location
- cm.getConfiguration("test");
- configs = cm.listConfigurations(filterString);
- assertTrue(configs != null && configs.length > 0);
- } finally {
- config.delete();
- }
- }
-
- public void testListFactoryConfiguration() throws Exception {
- Configuration config = cm.createFactoryConfiguration("test", null);
- config.update();
- try {
- Configuration[] configs = cm.listConfigurations("(" + ConfigurationAdmin.SERVICE_FACTORYPID + "=test)");
- assertTrue(configs != null && configs.length > 0);
- } finally {
- config.delete();
- }
- }
-
- public void testListFactoryConfigurationWithBoundLocation() throws Exception {
- Configuration config = cm.createFactoryConfiguration("test", null);
- config.update();
- try {
- String filterString = "(&(" + ConfigurationAdmin.SERVICE_BUNDLELOCATION + "=" + Activator.getBundleContext().getBundle().getLocation() + ")" + "(" + Constants.SERVICE_PID + "=" + config.getPid() + ")" + ")";
- Configuration[] configs = cm.listConfigurations(filterString);
- assertNull(configs);
- // bind configuration to this bundle's location
- cm.getConfiguration(config.getPid());
- configs = cm.listConfigurations(filterString);
- assertTrue(configs != null && configs.length > 0);
- } finally {
- config.delete();
- }
- }
-
- public void testListConfigurationNull() throws Exception {
- Configuration config = cm.createFactoryConfiguration("test", null);
- config.update();
- try {
- Configuration[] configs = cm.listConfigurations(null);
- assertTrue(configs != null && configs.length > 0);
- } finally {
- config.delete();
- }
- }
-
- public void testPersistentConfig() throws Exception {
- Configuration config = cm.getConfiguration("test");
- assertNull(config.getProperties());
- Properties props = new Properties();
- props.put("testkey", "testvalue");
- config.update(props);
- assertTrue(config.getPid().equals("test"));
- assertTrue(config.getProperties().get("testkey").equals("testvalue"));
- tearDown();
- setUp();
- config = cm.getConfiguration("test");
- assertTrue(config.getProperties().get("testkey").equals("testvalue"));
- config.delete();
- tearDown();
- setUp();
- config = cm.getConfiguration("test");
- assertNull(config.getProperties());
- }
-
- public void testPersistentFactoryConfig() throws Exception {
- Configuration config = cm.createFactoryConfiguration("test");
- assertNull(config.getProperties());
- Properties props = new Properties();
- props.put("testkey", "testvalue");
- config.update(props);
- assertTrue(config.getFactoryPid().equals("test"));
- assertTrue(config.getProperties().get("testkey").equals("testvalue"));
- String pid = config.getPid();
- tearDown();
- setUp();
- config = cm.getConfiguration(pid);
- assertTrue(config.getProperties().get("testkey").equals("testvalue"));
- config.delete();
- tearDown();
- setUp();
- config = cm.getConfiguration(pid);
- assertNull(config.getProperties());
- }
-}
diff --git a/bundles/org.eclipse.equinox.cm.test/src/org/eclipse/equinox/cm/test/ConfigurationDictionaryTest.java b/bundles/org.eclipse.equinox.cm.test/src/org/eclipse/equinox/cm/test/ConfigurationDictionaryTest.java
deleted file mode 100644
index 3be65b7..0000000
--- a/bundles/org.eclipse.equinox.cm.test/src/org/eclipse/equinox/cm/test/ConfigurationDictionaryTest.java
+++ /dev/null
@@ -1,284 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007 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
- *******************************************************************************/
-package org.eclipse.equinox.cm.test;
-
-import java.io.IOException;
-import java.lang.reflect.Array;
-import java.util.*;
-import junit.framework.TestCase;
-import org.osgi.framework.Constants;
-import org.osgi.framework.ServiceReference;
-import org.osgi.service.cm.Configuration;
-import org.osgi.service.cm.ConfigurationAdmin;
-
-public class ConfigurationDictionaryTest extends TestCase {
-
- private ConfigurationAdmin cm;
- private ServiceReference reference;
-
- public ConfigurationDictionaryTest(String name) {
- super(name);
- }
-
- protected void setUp() throws Exception {
- Activator.getBundle("org.eclipse.equinox.cm").start();
- reference = Activator.getBundleContext().getServiceReference(ConfigurationAdmin.class.getName());
- cm = (ConfigurationAdmin) Activator.getBundleContext().getService(reference);
- }
-
- protected void tearDown() throws Exception {
- Activator.getBundleContext().ungetService(reference);
- Activator.getBundle("org.eclipse.equinox.cm").stop();
- }
-
- public void testGoodConfigProperties() throws Exception {
- Configuration config = cm.getConfiguration("test");
- config.update();
- Dictionary dict = config.getProperties();
- try {
- dict.put("1", new String("x"));
- dict.put("2", new Integer(1));
- dict.put("3", new Long(1));
- dict.put("4", new Float(1));
- dict.put("5", new Double(1));
- dict.put("6", new Byte((byte) 1));
- dict.put("7", new Short((short) 1));
- dict.put("8", new Character('a'));
- dict.put("9", new Boolean(true));
- dict.put("10", new String[] {"x"});
- dict.put("11", new Integer[] {new Integer(1)});
- dict.put("12", new Long[] {new Long(1)});
- dict.put("13", new Float[] {new Float(1)});
- dict.put("14", new Double[] {new Double(1)});
- dict.put("15", new Byte[] {new Byte((byte) 1)});
- dict.put("16", new Short[] {new Short((short) 1)});
- dict.put("17", new Character[] {new Character('a')});
- dict.put("18", new Boolean[] {new Boolean(true)});
- dict.put("19", new int[] {1});
- dict.put("20", new long[] {1});
- dict.put("21", new float[] {1});
- dict.put("22", new double[] {1});
- dict.put("23", new byte[] {1});
- dict.put("24", new short[] {1});
- dict.put("25", new char[] {'a'});
- dict.put("26", new boolean[] {true});
- dict.put("27", new Vector());
- Vector v = new Vector();
- v.add(new String("x"));
- v.add(new Integer(1));
- v.add(new Long(1));
- v.add(new Float(1));
- v.add(new Double(1));
- v.add(new Byte((byte) 1));
- v.add(new Short((short) 1));
- v.add(new Character('a'));
- v.add(new Boolean(true));
- dict.put("28", v);
- Collection c = new ArrayList();
- c.add(new String("x"));
- c.add(new Integer(1));
- c.add(new Long(1));
- c.add(new Float(1));
- c.add(new Double(1));
- c.add(new Byte((byte) 1));
- c.add(new Short((short) 1));
- c.add(new Character('a'));
- c.add(new Boolean(true));
- dict.put("29", c);
- } catch (IllegalArgumentException e) {
- fail(e.getMessage());
- }
-
- config.update(dict);
- Dictionary dict2 = config.getProperties();
-
- assertTrue(dict.size() == dict2.size());
- Enumeration keys = dict.keys();
- while (keys.hasMoreElements()) {
- String key = (String) keys.nextElement();
- Object value1 = dict.get(key);
- Class class1 = value1.getClass();
- Object value2 = dict2.get(key);
- Class class2 = value2.getClass();
- if (value1.getClass().isArray()) {
- assertTrue(class1 == class2);
- assertTrue(class1.getComponentType() == class2.getComponentType());
- int arrayLength1 = Array.getLength(value1);
- int arrayLength2 = Array.getLength(value1);
- assertTrue(arrayLength1 == arrayLength2);
- if (value1 instanceof Object[])
- assertTrue(Arrays.asList((Object[]) value1).containsAll(Arrays.asList((Object[]) value2)));
- } else if (value1 instanceof Collection) {
- Collection c1 = (Collection) value1;
- Collection c2 = (Collection) value2;
- assertTrue(c1.size() == c2.size());
- assertTrue(c1.containsAll(c2));
- } else
- assertEquals(value1, value2);
- }
- config.delete();
- }
-
- public void testNullKey() throws Exception {
- Configuration config = cm.getConfiguration("test2");
- config.update();
- Dictionary dict = config.getProperties();
- try {
- dict.put(null, "x");
- } catch (NullPointerException e) {
- return;
- } finally {
- config.delete();
- }
- fail();
- }
-
- public void testNullValue() throws Exception {
- Configuration config = cm.getConfiguration("test2");
- config.update();
- Dictionary dict = config.getProperties();
- try {
- dict.put("x", null);
- } catch (NullPointerException e) {
- return;
- } finally {
- config.delete();
- }
- fail();
- }
-
- public void testObjectValue() throws Exception {
- Configuration config = cm.getConfiguration("test2");
- config.update();
- Dictionary dict = config.getProperties();
- try {
- dict.put("x", new Object());
- } catch (IllegalArgumentException e) {
- return;
- } finally {
- config.delete();
- }
- fail();
- }
-
- public void testObjectArray() throws Exception {
- Configuration config = cm.getConfiguration("test2");
- config.update();
- Dictionary dict = config.getProperties();
- try {
- dict.put("x", new Object[] {new Object()});
- } catch (IllegalArgumentException e) {
- return;
- } finally {
- config.delete();
- }
- fail();
- }
-
- public void testObjectVector() throws Exception {
- Configuration config = cm.getConfiguration("test2");
- config.update();
- Dictionary dict = config.getProperties();
- try {
- Vector v = new Vector();
- v.add(new Object());
- dict.put("x", v);
- } catch (IllegalArgumentException e) {
- return;
- } finally {
- config.delete();
- }
- fail();
- }
-
- public void testObjectCollection() throws Exception {
- Configuration config = cm.getConfiguration("test2");
- config.update();
- Dictionary dict = config.getProperties();
- try {
- Collection c = new ArrayList();
- c.add(new Object());
- dict.put("x", c);
- } catch (IllegalArgumentException e) {
- return;
- } finally {
- config.delete();
- }
- fail();
- }
-
- public void testPutGetCustomCollection() throws Exception {
- Configuration config = cm.getConfiguration("test2");
- config.update();
- Dictionary dict = config.getProperties();
- try {
- Collection c = new ArrayList() {};
- dict.put("x", c);
- config.update(dict);
- } catch (IOException e) {
- fail();
- } finally {
- config.delete();
- }
- }
-
- public void testGet() throws Exception {
- Configuration config = cm.getConfiguration("test2");
- config.update();
- Dictionary dict = config.getProperties();
- try {
- assertTrue(null != dict.get(Constants.SERVICE_PID));
- } finally {
- config.delete();
- }
- }
-
- public void testGetNull() throws Exception {
- Configuration config = cm.getConfiguration("test2");
- config.update();
- Dictionary dict = config.getProperties();
- try {
- dict.get(null);
- } catch (NullPointerException e) {
- return;
- } finally {
- config.delete();
- }
- fail();
- }
-
- public void testRemove() throws Exception {
- Configuration config = cm.getConfiguration("test2");
- config.update();
- Dictionary dict = config.getProperties();
- try {
- assertFalse(dict.isEmpty());
- assertTrue(null != dict.remove(Constants.SERVICE_PID));
- assertTrue(dict.isEmpty());
- } finally {
- config.delete();
- }
- }
-
- public void testRemoveNull() throws Exception {
- Configuration config = cm.getConfiguration("test2");
- config.update();
- Dictionary dict = config.getProperties();
- try {
- dict.remove(null);
- } catch (NullPointerException e) {
- return;
- } finally {
- config.delete();
- }
- fail();
- }
-}
diff --git a/bundles/org.eclipse.equinox.cm.test/src/org/eclipse/equinox/cm/test/ConfigurationEventAdapterTest.java b/bundles/org.eclipse.equinox.cm.test/src/org/eclipse/equinox/cm/test/ConfigurationEventAdapterTest.java
deleted file mode 100644
index d4d6e9c..0000000
--- a/bundles/org.eclipse.equinox.cm.test/src/org/eclipse/equinox/cm/test/ConfigurationEventAdapterTest.java
+++ /dev/null
@@ -1,124 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007 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
- *******************************************************************************/
-package org.eclipse.equinox.cm.test;
-
-import java.util.*;
-import junit.framework.TestCase;
-import org.osgi.framework.ServiceReference;
-import org.osgi.framework.ServiceRegistration;
-import org.osgi.service.cm.Configuration;
-import org.osgi.service.cm.ConfigurationAdmin;
-import org.osgi.service.event.*;
-
-public class ConfigurationEventAdapterTest extends TestCase {
-
- private ConfigurationAdmin cm;
- private ServiceReference cmReference;
-
- boolean locked = false;
- Object lock = new Object();
-
- public ConfigurationEventAdapterTest(String name) {
- super(name);
- }
-
- protected void setUp() throws Exception {
- Activator.getBundle("org.eclipse.equinox.event").start();
- Activator.getBundle("org.eclipse.equinox.cm").start();
- cmReference = Activator.getBundleContext().getServiceReference(ConfigurationAdmin.class.getName());
- cm = (ConfigurationAdmin) Activator.getBundleContext().getService(cmReference);
- }
-
- protected void tearDown() throws Exception {
- Activator.getBundleContext().ungetService(cmReference);
- Activator.getBundle("org.eclipse.equinox.cm").stop();
- Activator.getBundle("org.eclipse.equinox.event").stop();
- }
-
- public void testConfigurationEvent() throws Exception {
-
- Configuration config = cm.getConfiguration("test");
- Properties props = new Properties();
- props.put("testkey", "testvalue");
- config.update(props);
-
- EventHandler handler = new EventHandler() {
- public void handleEvent(Event event) {
- synchronized (lock) {
- locked = false;
- lock.notify();
- }
- }
-
- };
- String[] topics = new String[] {"org/osgi/service/cm/ConfigurationEvent/*"};
- Dictionary handlerProps = new Hashtable();
-
- handlerProps.put(EventConstants.EVENT_TOPIC, topics);
- ServiceRegistration reg = Activator.getBundleContext().registerService(EventHandler.class.getName(), handler, handlerProps);
-
- synchronized (lock) {
- config.update(props);
- locked = true;
- lock.wait(5000);
- assertFalse(locked);
- }
-
- synchronized (lock) {
- config.delete();
- locked = true;
- lock.wait(5000);
- assertFalse(locked);
- }
-
- reg.unregister();
- }
-
- public void testConfigurationFactoryEvent() throws Exception {
-
- Configuration config = cm.createFactoryConfiguration("test");
- Properties props = new Properties();
- props.put("testkey", "testvalue");
- config.update(props);
-
- EventHandler handler = new EventHandler() {
- public void handleEvent(Event event) {
- synchronized (lock) {
- locked = false;
- lock.notify();
- }
- }
-
- };
- String[] topics = new String[] {"org/osgi/service/cm/ConfigurationEvent/*"};
- Dictionary handlerProps = new Hashtable();
-
- handlerProps.put(EventConstants.EVENT_TOPIC, topics);
- ServiceRegistration reg = Activator.getBundleContext().registerService(EventHandler.class.getName(), handler, handlerProps);
-
- synchronized (lock) {
- config.update(props);
- locked = true;
- lock.wait(5000);
- assertFalse(locked);
- }
-
- synchronized (lock) {
- config.delete();
- locked = true;
- lock.wait(5000);
- assertFalse(locked);
- }
-
- reg.unregister();
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.cm.test/src/org/eclipse/equinox/cm/test/ConfigurationListenerTest.java b/bundles/org.eclipse.equinox.cm.test/src/org/eclipse/equinox/cm/test/ConfigurationListenerTest.java
deleted file mode 100644
index d4de3a7..0000000
--- a/bundles/org.eclipse.equinox.cm.test/src/org/eclipse/equinox/cm/test/ConfigurationListenerTest.java
+++ /dev/null
@@ -1,69 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007 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
- *******************************************************************************/
-package org.eclipse.equinox.cm.test;
-
-import java.util.Properties;
-import junit.framework.TestCase;
-import org.osgi.framework.ServiceReference;
-import org.osgi.framework.ServiceRegistration;
-import org.osgi.service.cm.*;
-
-public class ConfigurationListenerTest extends TestCase {
-
- private ConfigurationAdmin cm;
- private ServiceReference reference;
- boolean locked = false;
- Object lock = new Object();
-
- public ConfigurationListenerTest(String name) {
- super(name);
- }
-
- protected void setUp() throws Exception {
- Activator.getBundle("org.eclipse.equinox.cm").start();
- reference = Activator.getBundleContext().getServiceReference(ConfigurationAdmin.class.getName());
- cm = (ConfigurationAdmin) Activator.getBundleContext().getService(reference);
- }
-
- protected void tearDown() throws Exception {
- Activator.getBundleContext().ungetService(reference);
- Activator.getBundle("org.eclipse.equinox.cm").stop();
- }
-
- public void testListener() throws Exception {
-
- Configuration config = cm.getConfiguration("test");
- Properties props = new Properties();
- props.put("testkey", "testvalue");
- config.update(props);
-
- ConfigurationListener listener = new ConfigurationListener() {
- public void configurationEvent(ConfigurationEvent event) {
- synchronized (lock) {
- locked = false;
- lock.notify();
- }
- }
- };
- ServiceRegistration reg = Activator.getBundleContext().registerService(ConfigurationListener.class.getName(), listener, null);
-
- synchronized (lock) {
- config.update(props);
- locked = true;
- lock.wait(5000);
- assertFalse(locked);
- }
-
- reg.unregister();
- config.delete();
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.cm.test/src/org/eclipse/equinox/cm/test/ConfigurationPluginTest.java b/bundles/org.eclipse.equinox.cm.test/src/org/eclipse/equinox/cm/test/ConfigurationPluginTest.java
deleted file mode 100644
index 29c72ac..0000000
--- a/bundles/org.eclipse.equinox.cm.test/src/org/eclipse/equinox/cm/test/ConfigurationPluginTest.java
+++ /dev/null
@@ -1,228 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007 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
- *******************************************************************************/
-package org.eclipse.equinox.cm.test;
-
-import java.util.Dictionary;
-import java.util.Properties;
-import junit.framework.TestCase;
-import org.osgi.framework.*;
-import org.osgi.service.cm.*;
-
-public class ConfigurationPluginTest extends TestCase {
-
- private ConfigurationAdmin cm;
- private ServiceReference reference;
- boolean locked = false;
- Object lock = new Object();
- boolean success;
-
- public ConfigurationPluginTest(String name) {
- super(name);
- }
-
- protected void setUp() throws Exception {
- Activator.getBundle("org.eclipse.equinox.cm").start();
- reference = Activator.getBundleContext().getServiceReference(ConfigurationAdmin.class.getName());
- cm = (ConfigurationAdmin) Activator.getBundleContext().getService(reference);
- }
-
- protected void tearDown() throws Exception {
- Activator.getBundleContext().ungetService(reference);
- Activator.getBundle("org.eclipse.equinox.cm").stop();
- }
-
- public void testPlugin() throws Exception {
-
- Configuration config = cm.getConfiguration("test");
- Properties props = new Properties();
- props.put("testkey", "testvalue");
- config.update(props);
-
- ConfigurationPlugin plugin = new ConfigurationPlugin() {
-
- public void modifyConfiguration(ServiceReference reference, Dictionary properties) {
- properties.put("plugin", "plugin1");
- }
- };
- ServiceRegistration pluginReg = Activator.getBundleContext().registerService(ConfigurationPlugin.class.getName(), plugin, null);
-
- ManagedService ms = new ManagedService() {
- public void updated(Dictionary properties) throws ConfigurationException {
- synchronized (lock) {
- locked = false;
- lock.notify();
- success = "plugin1".equals(properties.get("plugin"));
- }
- }
- };
-
- Dictionary dict = new Properties();
- dict.put(Constants.SERVICE_PID, "test");
- ServiceRegistration reg = null;
- synchronized (lock) {
- success = false;
- reg = Activator.getBundleContext().registerService(ManagedService.class.getName(), ms, dict);
- locked = true;
- lock.wait(5000);
- if (locked)
- fail("should have updated");
- assertTrue(success);
- }
-
- reg.unregister();
- pluginReg.unregister();
- config.delete();
- }
-
- public void testPidSpecificPlugin() throws Exception {
-
- Configuration config = cm.getConfiguration("test");
- Properties props = new Properties();
- props.put("testkey", "testvalue");
- config.update(props);
-
- ConfigurationPlugin plugin = new ConfigurationPlugin() {
-
- public void modifyConfiguration(ServiceReference reference, Dictionary properties) {
- properties.put("plugin", "plugin1");
- }
- };
- Dictionary pluginDict = new Properties();
- pluginDict.put(ConfigurationPlugin.CM_TARGET, new String[] {"test"});
- ServiceRegistration pluginReg = Activator.getBundleContext().registerService(ConfigurationPlugin.class.getName(), plugin, pluginDict);
-
- ManagedService ms = new ManagedService() {
- public void updated(Dictionary properties) throws ConfigurationException {
- synchronized (lock) {
- locked = false;
- lock.notify();
- success = "plugin1".equals(properties.get("plugin"));
- }
- }
- };
-
- Dictionary dict = new Properties();
- dict.put(Constants.SERVICE_PID, "test");
- ServiceRegistration reg = null;
- synchronized (lock) {
- success = false;
- reg = Activator.getBundleContext().registerService(ManagedService.class.getName(), ms, dict);
- locked = true;
- lock.wait(5000);
- if (locked)
- fail("should have updated");
- assertTrue(success);
- }
-
- reg.unregister();
- pluginReg.unregister();
- config.delete();
- }
-
- public void testPidSpecificMissPlugin() throws Exception {
-
- Configuration config = cm.getConfiguration("test");
- Properties props = new Properties();
- props.put("testkey", "testvalue");
- config.update(props);
-
- ConfigurationPlugin plugin = new ConfigurationPlugin() {
-
- public void modifyConfiguration(ServiceReference reference, Dictionary properties) {
- properties.put("plugin", "plugin1");
- }
- };
- Dictionary pluginDict = new Properties();
- pluginDict.put(ConfigurationPlugin.CM_TARGET, new String[] {"testXXX"});
- ServiceRegistration pluginReg = Activator.getBundleContext().registerService(ConfigurationPlugin.class.getName(), plugin, pluginDict);
-
- ManagedService ms = new ManagedService() {
- public void updated(Dictionary properties) throws ConfigurationException {
- synchronized (lock) {
- locked = false;
- lock.notify();
- success = "plugin1".equals(properties.get("plugin"));
- }
- }
- };
-
- Dictionary dict = new Properties();
- dict.put(Constants.SERVICE_PID, "test");
- ServiceRegistration reg = null;
- synchronized (lock) {
- success = false;
- reg = Activator.getBundleContext().registerService(ManagedService.class.getName(), ms, dict);
- locked = true;
- lock.wait(5000);
- assertFalse(success);
- }
-
- reg.unregister();
- pluginReg.unregister();
- config.delete();
- }
-
- public void testRankedPlugin() throws Exception {
-
- Configuration config = cm.getConfiguration("test");
- Properties props = new Properties();
- props.put("testkey", "testvalue");
- config.update(props);
-
- ConfigurationPlugin plugin = new ConfigurationPlugin() {
-
- public void modifyConfiguration(ServiceReference reference, Dictionary properties) {
- properties.put("plugin", "plugin1");
- }
- };
- Dictionary pluginDict = new Properties();
- pluginDict.put(ConfigurationPlugin.CM_RANKING, new Integer(1));
- ServiceRegistration pluginReg1 = Activator.getBundleContext().registerService(ConfigurationPlugin.class.getName(), plugin, pluginDict);
-
- ConfigurationPlugin plugin2 = new ConfigurationPlugin() {
-
- public void modifyConfiguration(ServiceReference reference, Dictionary properties) {
- properties.put("plugin", "plugin2");
- }
- };
-
- ServiceRegistration pluginReg2 = Activator.getBundleContext().registerService(ConfigurationPlugin.class.getName(), plugin, null);
-
- ManagedService ms = new ManagedService() {
- public void updated(Dictionary properties) throws ConfigurationException {
- synchronized (lock) {
- locked = false;
- lock.notify();
- success = "plugin1".equals(properties.get("plugin"));
- }
- }
- };
-
- Dictionary dict = new Properties();
- dict.put(Constants.SERVICE_PID, "test");
- ServiceRegistration reg = null;
- synchronized (lock) {
- success = false;
- reg = Activator.getBundleContext().registerService(ManagedService.class.getName(), ms, dict);
- locked = true;
- lock.wait(5000);
- if (locked)
- fail("should have updated");
- assertTrue(success);
- }
-
- reg.unregister();
- pluginReg1.unregister();
- pluginReg2.unregister();
- config.delete();
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.cm.test/src/org/eclipse/equinox/cm/test/ManagedServiceFactoryTest.java b/bundles/org.eclipse.equinox.cm.test/src/org/eclipse/equinox/cm/test/ManagedServiceFactoryTest.java
deleted file mode 100644
index 707d9d1..0000000
--- a/bundles/org.eclipse.equinox.cm.test/src/org/eclipse/equinox/cm/test/ManagedServiceFactoryTest.java
+++ /dev/null
@@ -1,186 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007 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
- *******************************************************************************/
-package org.eclipse.equinox.cm.test;
-
-import java.util.Dictionary;
-import java.util.Properties;
-import junit.framework.TestCase;
-import org.osgi.framework.*;
-import org.osgi.service.cm.*;
-
-public class ManagedServiceFactoryTest extends TestCase {
-
- private ConfigurationAdmin cm;
- private ServiceReference reference;
- int updateCount = 0;
- boolean locked = false;
- Object lock = new Object();
-
- public ManagedServiceFactoryTest(String name) {
- super(name);
- }
-
- protected void setUp() throws Exception {
- Activator.getBundle("org.eclipse.equinox.cm").start();
- reference = Activator.getBundleContext().getServiceReference(ConfigurationAdmin.class.getName());
- cm = (ConfigurationAdmin) Activator.getBundleContext().getService(reference);
-
- }
-
- protected void tearDown() throws Exception {
- Activator.getBundleContext().ungetService(reference);
- Activator.getBundle("org.eclipse.equinox.cm").stop();
- }
-
- public void testSamePidManagedServiceFactory() throws Exception {
-
- Configuration config = cm.createFactoryConfiguration("test");
- Properties props = new Properties();
- props.put("testkey", "testvalue");
- config.update(props);
-
- updateCount = 0;
- ManagedServiceFactory msf = new ManagedServiceFactory() {
-
- public void deleted(String pid) {
- synchronized (lock) {
- locked = false;
- lock.notify();
- updateCount++;
- }
- }
-
- public String getName() {
- return null;
- }
-
- public void updated(String pid, Dictionary properties) throws ConfigurationException {
- synchronized (lock) {
- locked = false;
- lock.notify();
- updateCount++;
- }
- }
- };
-
- Dictionary dict = new Properties();
- dict.put(Constants.SERVICE_PID, "test");
- ServiceRegistration reg = null;
- synchronized (lock) {
- reg = Activator.getBundleContext().registerService(ManagedServiceFactory.class.getName(), msf, dict);
- locked = true;
- lock.wait(5000);
- if (locked)
- fail("should have updated");
- assertEquals(1, updateCount);
- }
-
- ServiceRegistration reg2 = null;
- synchronized (lock) {
- reg2 = Activator.getBundleContext().registerService(ManagedServiceFactory.class.getName(), msf, dict);
- locked = true;
- lock.wait(100);
- assertTrue(locked);
- assertEquals(1, updateCount);
- locked = false;
- }
- reg.unregister();
- reg2.unregister();
- config.delete();
- }
-
- public void testGeneralManagedServiceFactory() throws Exception {
- updateCount = 0;
- ManagedServiceFactory msf = new ManagedServiceFactory() {
-
- public void deleted(String pid) {
- synchronized (lock) {
- locked = false;
- lock.notify();
- updateCount++;
- }
- }
-
- public String getName() {
- return null;
- }
-
- public void updated(String pid, Dictionary properties) throws ConfigurationException {
- synchronized (lock) {
- locked = false;
- lock.notify();
- updateCount++;
- }
- }
- };
-
- Dictionary dict = new Properties();
- dict.put(Constants.SERVICE_PID, "test");
-
- ServiceRegistration reg = null;
- synchronized (lock) {
- reg = Activator.getBundleContext().registerService(ManagedServiceFactory.class.getName(), msf, dict);
- locked = true;
- lock.wait(100);
- assertTrue(locked);
- assertEquals(0, updateCount);
- locked = false;
- }
-
- Configuration config = cm.createFactoryConfiguration("test");
- assertNull(config.getProperties());
- Properties props = new Properties();
- props.put("testkey", "testvalue");
-
- synchronized (lock) {
- config.update(props);
- locked = true;
- lock.wait(5000);
- if (locked)
- fail("should have updated");
- assertEquals(1, updateCount);
- }
-
- dict.remove(Constants.SERVICE_PID);
- synchronized (lock) {
- reg.setProperties(dict);
- props.put("testkey", "testvalue2");
- config.update(props);
- locked = true;
- lock.wait(100);
- assertTrue(locked);
- assertEquals(1, updateCount);
- locked = false;
- }
-
- config.delete();
- config = cm.createFactoryConfiguration("test2");
- dict.put(Constants.SERVICE_PID, "test2");
- synchronized (lock) {
- reg.setProperties(dict);
- locked = true;
- lock.wait(5000);
- if (locked)
- fail("should have updated");
- assertEquals(2, updateCount);
- }
-
- synchronized (lock) {
- config.delete();
- locked = true;
- lock.wait(5000);
- if (locked)
- fail("should have updated");
- assertEquals(3, updateCount);
- }
- reg.unregister();
- }
-}
diff --git a/bundles/org.eclipse.equinox.cm.test/src/org/eclipse/equinox/cm/test/ManagedServiceTest.java b/bundles/org.eclipse.equinox.cm.test/src/org/eclipse/equinox/cm/test/ManagedServiceTest.java
deleted file mode 100644
index 28671dd..0000000
--- a/bundles/org.eclipse.equinox.cm.test/src/org/eclipse/equinox/cm/test/ManagedServiceTest.java
+++ /dev/null
@@ -1,163 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007 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
- *******************************************************************************/
-package org.eclipse.equinox.cm.test;
-
-import java.util.Dictionary;
-import java.util.Properties;
-import junit.framework.TestCase;
-import org.osgi.framework.*;
-import org.osgi.service.cm.*;
-
-public class ManagedServiceTest extends TestCase {
-
- private ConfigurationAdmin cm;
- private ServiceReference reference;
- int updateCount = 0;
- boolean locked = false;
- Object lock = new Object();
-
- public ManagedServiceTest(String name) {
- super(name);
- }
-
- protected void setUp() throws Exception {
- Activator.getBundle("org.eclipse.equinox.cm").start();
- reference = Activator.getBundleContext().getServiceReference(ConfigurationAdmin.class.getName());
- cm = (ConfigurationAdmin) Activator.getBundleContext().getService(reference);
- }
-
- protected void tearDown() throws Exception {
- Activator.getBundleContext().ungetService(reference);
- Activator.getBundle("org.eclipse.equinox.cm").stop();
- }
-
- public void testSamePidManagedService() throws Exception {
-
- Configuration config = cm.getConfiguration("test");
- Properties props = new Properties();
- props.put("testkey", "testvalue");
- config.update(props);
-
- updateCount = 0;
- ManagedService ms = new ManagedService() {
-
- public void updated(Dictionary properties) throws ConfigurationException {
- synchronized (lock) {
- locked = false;
- lock.notify();
- updateCount++;
- }
-
- }
- };
-
- Dictionary dict = new Properties();
- dict.put(Constants.SERVICE_PID, "test");
- ServiceRegistration reg = null;
- synchronized (lock) {
- reg = Activator.getBundleContext().registerService(ManagedService.class.getName(), ms, dict);
- locked = true;
- lock.wait(5000);
- if (locked)
- fail("should have updated");
- assertEquals(1, updateCount);
- }
-
- ServiceRegistration reg2 = null;
- synchronized (lock) {
- reg2 = Activator.getBundleContext().registerService(ManagedService.class.getName(), ms, dict);
- locked = true;
- lock.wait(100);
- assertTrue(locked);
- assertEquals(1, updateCount);
- locked = false;
- }
- reg.unregister();
- reg2.unregister();
- config.delete();
- }
-
- public void testGeneralManagedService() throws Exception {
- updateCount = 0;
- ManagedService ms = new ManagedService() {
-
- public void updated(Dictionary properties) throws ConfigurationException {
- synchronized (lock) {
- locked = false;
- lock.notify();
- updateCount++;
- }
-
- }
- };
-
- Dictionary dict = new Properties();
- dict.put(Constants.SERVICE_PID, "test");
-
- ServiceRegistration reg = null;
- synchronized (lock) {
- reg = Activator.getBundleContext().registerService(ManagedService.class.getName(), ms, dict);
- locked = true;
- lock.wait(5000);
- if (locked)
- fail("should have updated");
- assertEquals(1, updateCount);
- }
-
- Configuration config = cm.getConfiguration("test");
- assertNull(config.getProperties());
- Properties props = new Properties();
- props.put("testkey", "testvalue");
-
- synchronized (lock) {
- config.update(props);
- locked = true;
- lock.wait(5000);
- if (locked)
- fail("should have updated");
- assertEquals(2, updateCount);
- }
-
- dict.remove(Constants.SERVICE_PID);
- synchronized (lock) {
- reg.setProperties(dict);
- props.put("testkey", "testvalue2");
- config.update(props);
- locked = true;
- lock.wait(100);
- assertTrue(locked);
- assertEquals(2, updateCount);
- locked = false;
- }
-
- config.delete();
- config = cm.getConfiguration("test2");
- dict.put(Constants.SERVICE_PID, "test2");
- synchronized (lock) {
- reg.setProperties(dict);
- locked = true;
- lock.wait(5000);
- if (locked)
- fail("should have updated");
- assertEquals(3, updateCount);
- }
-
- synchronized (lock) {
- config.delete();
- locked = true;
- lock.wait(5000);
- if (locked)
- fail("should have updated");
- assertEquals(4, updateCount);
- }
- reg.unregister();
- }
-}
diff --git a/bundles/org.eclipse.equinox.compendium.tests/.classpath b/bundles/org.eclipse.equinox.compendium.tests/.classpath
deleted file mode 100644
index ce73933..0000000
--- a/bundles/org.eclipse.equinox.compendium.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/bundles/org.eclipse.equinox.compendium.tests/.project b/bundles/org.eclipse.equinox.compendium.tests/.project
deleted file mode 100644
index c6dcd35..0000000
--- a/bundles/org.eclipse.equinox.compendium.tests/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.equinox.compendium.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/bundles/org.eclipse.equinox.compendium.tests/.settings/org.eclipse.core.resources.prefs b/bundles/org.eclipse.equinox.compendium.tests/.settings/org.eclipse.core.resources.prefs
deleted file mode 100644
index 16532b2..0000000
--- a/bundles/org.eclipse.equinox.compendium.tests/.settings/org.eclipse.core.resources.prefs
+++ /dev/null
@@ -1,3 +0,0 @@
-#Tue May 25 15:00:03 EDT 2004
-encoding/<project>=ISO-8859-1
-eclipse.preferences.version=1
diff --git a/bundles/org.eclipse.equinox.compendium.tests/.settings/org.eclipse.jdt.core.prefs b/bundles/org.eclipse.equinox.compendium.tests/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index f31f250..0000000
--- a/bundles/org.eclipse.equinox.compendium.tests/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,331 +0,0 @@
-#Tue Aug 21 11:27:47 CDT 2007
-eclipse.preferences.version=1
-org.eclipse.jdt.core.builder.cleanOutputFolder=clean
-org.eclipse.jdt.core.builder.duplicateResourceTask=warning
-org.eclipse.jdt.core.builder.invalidClasspath=abort
-org.eclipse.jdt.core.builder.resourceCopyExclusionFilter=*.launch
-org.eclipse.jdt.core.circularClasspath=error
-org.eclipse.jdt.core.classpath.exclusionPatterns=enabled
-org.eclipse.jdt.core.classpath.multipleOutputLocations=enabled
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=disabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.2
-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=1.4
-org.eclipse.jdt.core.compiler.debug.lineNumber=generate
-org.eclipse.jdt.core.compiler.debug.localVariable=generate
-org.eclipse.jdt.core.compiler.debug.sourceFile=generate
-org.eclipse.jdt.core.compiler.doc.comment.support=enabled
-org.eclipse.jdt.core.compiler.maxProblemPerUnit=1000
-org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=warning
-org.eclipse.jdt.core.compiler.problem.autoboxing=ignore
-org.eclipse.jdt.core.compiler.problem.deprecation=warning
-org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
-org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=enabled
-org.eclipse.jdt.core.compiler.problem.discouragedReference=error
-org.eclipse.jdt.core.compiler.problem.emptyStatement=warning
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=warning
-org.eclipse.jdt.core.compiler.problem.fieldHiding=warning
-org.eclipse.jdt.core.compiler.problem.finalParameterBound=ignore
-org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning
-org.eclipse.jdt.core.compiler.problem.forbiddenReference=error
-org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
-org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
-org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=ignore
-org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=warning
-org.eclipse.jdt.core.compiler.problem.invalidJavadoc=error
-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsVisibility=private
-org.eclipse.jdt.core.compiler.problem.localVariableHiding=warning
-org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning
-org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=ignore
-org.eclipse.jdt.core.compiler.problem.missingJavadocComments=ignore
-org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsOverriding=enabled
-org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsVisibility=public
-org.eclipse.jdt.core.compiler.problem.missingJavadocTags=ignore
-org.eclipse.jdt.core.compiler.problem.missingJavadocTagsOverriding=enabled
-org.eclipse.jdt.core.compiler.problem.missingJavadocTagsVisibility=public
-org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=ignore
-org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
-org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
-org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
-org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=warning
-org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
-org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=warning
-org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
-org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
-org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
-org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=warning
-org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
-org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning
-org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning
-org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning
-org.eclipse.jdt.core.compiler.problem.unnecessaryElse=warning
-org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=warning
-org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
-org.eclipse.jdt.core.compiler.problem.unsafeTypeOperation=warning
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=enabled
-org.eclipse.jdt.core.compiler.problem.unusedImport=error
-org.eclipse.jdt.core.compiler.problem.unusedLocal=warning
-org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=enabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=enabled
-org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=error
-org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
-org.eclipse.jdt.core.compiler.source=1.3
-org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_assignment=0
-org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
-org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80
-org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0
-org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
-org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
-org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
-org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16
-org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
-org.eclipse.jdt.core.formatter.blank_lines_after_package=1
-org.eclipse.jdt.core.formatter.blank_lines_before_field=0
-org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0
-org.eclipse.jdt.core.formatter.blank_lines_before_imports=1
-org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1
-org.eclipse.jdt.core.formatter.blank_lines_before_method=1
-org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1
-org.eclipse.jdt.core.formatter.blank_lines_before_package=0
-org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1
-org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1
-org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=false
-org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=false
-org.eclipse.jdt.core.formatter.comment.format_block_comments=false
-org.eclipse.jdt.core.formatter.comment.format_header=false
-org.eclipse.jdt.core.formatter.comment.format_html=true
-org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=false
-org.eclipse.jdt.core.formatter.comment.format_line_comments=false
-org.eclipse.jdt.core.formatter.comment.format_source_code=true
-org.eclipse.jdt.core.formatter.comment.indent_parameter_description=false
-org.eclipse.jdt.core.formatter.comment.indent_root_tags=false
-org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert
-org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=do not insert
-org.eclipse.jdt.core.formatter.comment.line_length=80
-org.eclipse.jdt.core.formatter.compact_else_if=true
-org.eclipse.jdt.core.formatter.continuation_indentation=2
-org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
-org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true
-org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true
-org.eclipse.jdt.core.formatter.indent_empty_lines=false
-org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true
-org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
-org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
-org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=true
-org.eclipse.jdt.core.formatter.indentation.size=4
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert
-org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert
-org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert
-org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert
-org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert
-org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false
-org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false
-org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false
-org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false
-org.eclipse.jdt.core.formatter.lineSplit=800
-org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
-org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false
-org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
-org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1
-org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=false
-org.eclipse.jdt.core.formatter.tabulation.char=tab
-org.eclipse.jdt.core.formatter.tabulation.size=4
-org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
-org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true
-org.eclipse.jdt.core.incompatibleJDKLevel=ignore
-org.eclipse.jdt.core.incompleteClasspath=error
diff --git a/bundles/org.eclipse.equinox.compendium.tests/.settings/org.eclipse.jdt.ui.prefs b/bundles/org.eclipse.equinox.compendium.tests/.settings/org.eclipse.jdt.ui.prefs
deleted file mode 100644
index 1546d82..0000000
--- a/bundles/org.eclipse.equinox.compendium.tests/.settings/org.eclipse.jdt.ui.prefs
+++ /dev/null
@@ -1,58 +0,0 @@
-#Tue Aug 21 11:27:48 CDT 2007
-eclipse.preferences.version=1
-editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true
-formatter_profile=_core
-formatter_settings_version=11
-internal.default.compliance=user
-org.eclipse.jdt.ui.ignorelowercasenames=true
-org.eclipse.jdt.ui.importorder=;
-org.eclipse.jdt.ui.ondemandthreshold=3
-org.eclipse.jdt.ui.staticondemandthreshold=99
-sp_cleanup.add_default_serial_version_id=true
-sp_cleanup.add_generated_serial_version_id=false
-sp_cleanup.add_missing_annotations=true
-sp_cleanup.add_missing_deprecated_annotations=true
-sp_cleanup.add_missing_nls_tags=false
-sp_cleanup.add_missing_override_annotations=true
-sp_cleanup.add_serial_version_id=false
-sp_cleanup.always_use_blocks=true
-sp_cleanup.always_use_parentheses_in_expressions=false
-sp_cleanup.always_use_this_for_non_static_field_access=false
-sp_cleanup.always_use_this_for_non_static_method_access=false
-sp_cleanup.convert_to_enhanced_for_loop=false
-sp_cleanup.correct_indentation=false
-sp_cleanup.format_source_code=true
-sp_cleanup.make_local_variable_final=false
-sp_cleanup.make_parameters_final=false
-sp_cleanup.make_private_fields_final=true
-sp_cleanup.make_variable_declarations_final=true
-sp_cleanup.never_use_blocks=false
-sp_cleanup.never_use_parentheses_in_expressions=true
-sp_cleanup.on_save_use_additional_actions=false
-sp_cleanup.organize_imports=true
-sp_cleanup.qualify_static_field_accesses_with_declaring_class=false
-sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
-sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
-sp_cleanup.qualify_static_member_accesses_with_declaring_class=false
-sp_cleanup.qualify_static_method_accesses_with_declaring_class=false
-sp_cleanup.remove_private_constructors=true
-sp_cleanup.remove_trailing_whitespaces=false
-sp_cleanup.remove_trailing_whitespaces_all=true
-sp_cleanup.remove_trailing_whitespaces_ignore_empty=false
-sp_cleanup.remove_unnecessary_casts=true
-sp_cleanup.remove_unnecessary_nls_tags=false
-sp_cleanup.remove_unused_imports=false
-sp_cleanup.remove_unused_local_variables=false
-sp_cleanup.remove_unused_private_fields=true
-sp_cleanup.remove_unused_private_members=false
-sp_cleanup.remove_unused_private_methods=true
-sp_cleanup.remove_unused_private_types=true
-sp_cleanup.sort_members=false
-sp_cleanup.sort_members_all=false
-sp_cleanup.use_blocks=false
-sp_cleanup.use_blocks_only_for_return_and_throw=false
-sp_cleanup.use_parentheses_in_expressions=false
-sp_cleanup.use_this_for_non_static_field_access=false
-sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=true
-sp_cleanup.use_this_for_non_static_method_access=false
-sp_cleanup.use_this_for_non_static_method_access_only_if_necessary=true
diff --git a/bundles/org.eclipse.equinox.compendium.tests/META-INF/MANIFEST.MF b/bundles/org.eclipse.equinox.compendium.tests/META-INF/MANIFEST.MF
deleted file mode 100644
index 7ceff84..0000000
--- a/bundles/org.eclipse.equinox.compendium.tests/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,16 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %bundleName
-Bundle-SymbolicName: org.eclipse.equinox.compendium.tests
-Bundle-Version: 1.0.0
-Bundle-Activator: org.eclipse.equinox.compendium.tests.Activator
-Require-Bundle: org.eclipse.core.runtime
-Eclipse-LazyStart: true
-Import-Package: junit.framework;version="3.8.2",
- org.osgi.framework;version="1.3.0",
- org.osgi.service.useradmin;version="1.0",
- org.osgi.service.event;version="1.1.0",
- org.osgi.service.packageadmin;version="1.2.0"
-Bundle-RequiredExecutionEnvironment: J2SE-1.4
-Bundle-Localization: plugin
-Bundle-Vendor: %bundleVendor
diff --git a/bundles/org.eclipse.equinox.compendium.tests/build.properties b/bundles/org.eclipse.equinox.compendium.tests/build.properties
deleted file mode 100644
index aa1a008..0000000
--- a/bundles/org.eclipse.equinox.compendium.tests/build.properties
+++ /dev/null
@@ -1,5 +0,0 @@
-source.. = src/
-output.. = bin/
-bin.includes = META-INF/,\
- .,\
- plugin.properties
diff --git a/bundles/org.eclipse.equinox.compendium.tests/plugin.properties b/bundles/org.eclipse.equinox.compendium.tests/plugin.properties
deleted file mode 100644
index deddec6..0000000
--- a/bundles/org.eclipse.equinox.compendium.tests/plugin.properties
+++ /dev/null
@@ -1,13 +0,0 @@
-###############################################################################
-# Copyright (c) 2007 IBM Corporation.
-# 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
-###############################################################################
-bundleVendor = Eclipse.org
-bundleName = User Admin Service Tests
-bundleCopyright = Copyright (c) IBM Corp. 2007
diff --git a/bundles/org.eclipse.equinox.compendium.tests/src/org/eclipse/equinox/compendium/tests/Activator.java b/bundles/org.eclipse.equinox.compendium.tests/src/org/eclipse/equinox/compendium/tests/Activator.java
deleted file mode 100644
index 9d676ae..0000000
--- a/bundles/org.eclipse.equinox.compendium.tests/src/org/eclipse/equinox/compendium/tests/Activator.java
+++ /dev/null
@@ -1,83 +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
- *******************************************************************************/
-package org.eclipse.equinox.compendium.tests;
-
-import org.osgi.framework.*;
-import org.osgi.service.packageadmin.PackageAdmin;
-import org.osgi.util.tracker.ServiceTracker;
-
-/**
- * The activator class controls the plug-in life cycle
- */
-public class Activator implements BundleActivator {
- public static String BUNDLE_EVENT = "org.eclipse.equinox.event"; //$NON-NLS-1$
- public static String BUNDLE_USERADMIN = "org.eclipse.equinox.useradmin"; //$NON-NLS-1$
-
- private static Activator plugin;
- private static BundleContext context;
-
- private ServiceTracker packageAdminTracker;
-
- /*
- * (non-Javadoc)
- * @see org.eclipse.core.runtime.Plugins#start(org.osgi.framework.BundleContext)
- */
- public void start(BundleContext bc) throws Exception {
- plugin = this;
- packageAdminTracker = new ServiceTracker(bc, PackageAdmin.class.getName(), null);
- packageAdminTracker.open();
- Activator.context = bc;
- }
-
- /*
- * (non-Javadoc)
- * @see org.eclipse.core.runtime.Plugin#stop(org.osgi.framework.BundleContext)
- */
- public void stop(BundleContext bc) throws Exception {
- if (packageAdminTracker != null) {
- packageAdminTracker.close();
- packageAdminTracker = null;
- }
- plugin = null;
- }
-
- private static Activator getDefault() {
- return plugin;
- }
-
- public static synchronized BundleContext getBundleContext() {
- return context;
- }
-
- public static synchronized Bundle getBundle(String symbolicName) {
- PackageAdmin packageAdmin = Activator.getDefault().getPackageAdmin();
- if (packageAdmin == null)
- return null;
-
- Bundle[] bundles = packageAdmin.getBundles(symbolicName, null);
- if (bundles == null)
- return null;
- for (int i = 0; i < bundles.length; i++) {
- if ((bundles[i].getState() & (Bundle.INSTALLED | Bundle.UNINSTALLED)) == 0) {
- return bundles[i];
- }
- }
- return null;
- }
-
- private PackageAdmin getPackageAdmin() {
- if (packageAdminTracker == null) {
- return null;
- }
- return (PackageAdmin) packageAdminTracker.getService();
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.compendium.tests/src/org/eclipse/equinox/compendium/tests/AllTests.java b/bundles/org.eclipse.equinox.compendium.tests/src/org/eclipse/equinox/compendium/tests/AllTests.java
deleted file mode 100644
index dead8ca..0000000
--- a/bundles/org.eclipse.equinox.compendium.tests/src/org/eclipse/equinox/compendium/tests/AllTests.java
+++ /dev/null
@@ -1,24 +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
- *******************************************************************************/
-package org.eclipse.equinox.compendium.tests;
-
-import junit.framework.Test;
-import junit.framework.TestSuite;
-
-public class AllTests {
-
- public static Test suite() {
- TestSuite suite = new TestSuite("Tests for Equinox Compendium"); //$NON-NLS-1$
- suite.addTest(org.eclipse.equinox.useradmin.tests.AllTests.suite());
- return suite;
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.compendium.tests/src/org/eclipse/equinox/useradmin/tests/AllTests.java b/bundles/org.eclipse.equinox.compendium.tests/src/org/eclipse/equinox/useradmin/tests/AllTests.java
deleted file mode 100644
index ceddb5e..0000000
--- a/bundles/org.eclipse.equinox.compendium.tests/src/org/eclipse/equinox/useradmin/tests/AllTests.java
+++ /dev/null
@@ -1,26 +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
- *******************************************************************************/
-package org.eclipse.equinox.useradmin.tests;
-
-import junit.framework.Test;
-import junit.framework.TestSuite;
-
-public class AllTests {
-
- public static Test suite() {
- TestSuite suite = new TestSuite("Tests for Equinox UserAdmin"); //$NON-NLS-1$
- suite.addTestSuite(UserTest.class);
- suite.addTestSuite(GroupTest.class);
- suite.addTestSuite(UserAdminEventAdapterTest.class);
- return suite;
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.compendium.tests/src/org/eclipse/equinox/useradmin/tests/GroupTest.java b/bundles/org.eclipse.equinox.compendium.tests/src/org/eclipse/equinox/useradmin/tests/GroupTest.java
deleted file mode 100644
index e935060..0000000
--- a/bundles/org.eclipse.equinox.compendium.tests/src/org/eclipse/equinox/useradmin/tests/GroupTest.java
+++ /dev/null
@@ -1,70 +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
- *******************************************************************************/
-package org.eclipse.equinox.useradmin.tests;
-
-import junit.framework.TestCase;
-import org.eclipse.equinox.compendium.tests.Activator;
-import org.osgi.framework.ServiceReference;
-import org.osgi.service.useradmin.*;
-
-public class GroupTest extends TestCase {
-
- private UserAdmin userAdmin;
- private ServiceReference userAdminReference;
-
- boolean locked = false;
- Object lock = new Object();
-
- protected void setUp() throws Exception {
- Activator.getBundle(Activator.BUNDLE_USERADMIN).start();
- userAdminReference = Activator.getBundleContext().getServiceReference(UserAdmin.class.getName());
- userAdmin = (UserAdmin) Activator.getBundleContext().getService(userAdminReference);
- }
-
- protected void tearDown() throws Exception {
- Activator.getBundleContext().ungetService(userAdminReference);
- Activator.getBundle(Activator.BUNDLE_USERADMIN).stop();
- }
-
- public void testGroupCreateAndRemove() throws Exception {
- Group group = (Group) userAdmin.createRole("testGroupCreateAndRemove", Role.GROUP); //$NON-NLS-1$
- assertNotNull(group);
- assertEquals("testGroupCreateAndRemove", group.getName()); //$NON-NLS-1$
- assertTrue(group.getType() == Role.GROUP);
- assertTrue(userAdmin.removeRole("testGroupCreateAndRemove")); //$NON-NLS-1$
- assertNull(userAdmin.getRole("testGroupCreateAndRemove")); //$NON-NLS-1$
- }
-
- public void testGroupAddingAndRemovingMembers() throws Exception {
- Group group = (Group) userAdmin.createRole("testGroupAddingAndRemovingMembers", Role.GROUP); //$NON-NLS-1$
- assertNotNull(group);
- assertEquals("testGroupAddingAndRemovingMembers", group.getName()); //$NON-NLS-1$
- assertTrue(group.getType() == Role.GROUP);
- assertNull(group.getMembers());
-
- User user = (User) userAdmin.createRole("testRole1", Role.USER); //$NON-NLS-1$
- assertNotNull(user);
-
- group.addMember(user);
- assertEquals(group.getMembers().length, 1);
- assertNull(group.getRequiredMembers());
- group.removeMember(user);
- assertNull(group.getMembers());
- assertNull(group.getRequiredMembers());
- group.addRequiredMember(user);
- assertNull(group.getMembers());
- assertEquals(group.getRequiredMembers().length, 1);
-
- userAdmin.removeRole("testRole1"); //$NON-NLS-1$
- assertNull(userAdmin.getRole("testRole1")); //$NON-NLS-1$
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.compendium.tests/src/org/eclipse/equinox/useradmin/tests/UserAdminEventAdapterTest.java b/bundles/org.eclipse.equinox.compendium.tests/src/org/eclipse/equinox/useradmin/tests/UserAdminEventAdapterTest.java
deleted file mode 100644
index d88ef0f..0000000
--- a/bundles/org.eclipse.equinox.compendium.tests/src/org/eclipse/equinox/useradmin/tests/UserAdminEventAdapterTest.java
+++ /dev/null
@@ -1,78 +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
- *******************************************************************************/
-package org.eclipse.equinox.useradmin.tests;
-
-import java.util.Dictionary;
-import java.util.Hashtable;
-import junit.framework.TestCase;
-import org.eclipse.equinox.compendium.tests.Activator;
-import org.osgi.framework.ServiceReference;
-import org.osgi.framework.ServiceRegistration;
-import org.osgi.service.event.*;
-import org.osgi.service.useradmin.Role;
-import org.osgi.service.useradmin.UserAdmin;
-
-public class UserAdminEventAdapterTest extends TestCase {
-
- private UserAdmin userAdmin;
- private ServiceReference userAdminReference;
-
- boolean locked = false;
- Object lock = new Object();
-
- protected void setUp() throws Exception {
- Activator.getBundle(Activator.BUNDLE_EVENT).start();
- Activator.getBundle(Activator.BUNDLE_USERADMIN).start();
- userAdminReference = Activator.getBundleContext().getServiceReference(UserAdmin.class.getName());
- userAdmin = (UserAdmin) Activator.getBundleContext().getService(userAdminReference);
- }
-
- protected void tearDown() throws Exception {
- Activator.getBundleContext().ungetService(userAdminReference);
- Activator.getBundle(Activator.BUNDLE_USERADMIN).stop();
- Activator.getBundle(Activator.BUNDLE_EVENT).stop();
- }
-
- public void testUserAdminEvent() throws Exception {
-
- EventHandler handler = new EventHandler() {
- public void handleEvent(Event event) {
- synchronized (lock) {
- locked = false;
- lock.notify();
- }
- }
-
- };
- String[] topics = new String[] {"org/osgi/service/useradmin/UserAdmin/*"}; //$NON-NLS-1$
- Dictionary handlerProps = new Hashtable();
-
- handlerProps.put(EventConstants.EVENT_TOPIC, topics);
- ServiceRegistration reg = Activator.getBundleContext().registerService(EventHandler.class.getName(), handler, handlerProps);
-
- synchronized (lock) {
- userAdmin.createRole("testRole", Role.USER); //$NON-NLS-1$
- locked = true;
- lock.wait(5000);
- assertFalse(locked);
- }
-
- synchronized (lock) {
- userAdmin.removeRole("testRole"); //$NON-NLS-1$
- locked = true;
- lock.wait(5000);
- assertFalse(locked);
- }
-
- reg.unregister();
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.compendium.tests/src/org/eclipse/equinox/useradmin/tests/UserTest.java b/bundles/org.eclipse.equinox.compendium.tests/src/org/eclipse/equinox/useradmin/tests/UserTest.java
deleted file mode 100644
index f0f53f3..0000000
--- a/bundles/org.eclipse.equinox.compendium.tests/src/org/eclipse/equinox/useradmin/tests/UserTest.java
+++ /dev/null
@@ -1,134 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008, 2009 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
- *******************************************************************************/
-package org.eclipse.equinox.useradmin.tests;
-
-import java.util.Dictionary;
-import junit.framework.TestCase;
-import org.eclipse.equinox.compendium.tests.Activator;
-import org.osgi.framework.InvalidSyntaxException;
-import org.osgi.framework.ServiceReference;
-import org.osgi.service.useradmin.*;
-
-public class UserTest extends TestCase {
-
- private UserAdmin userAdmin;
- private ServiceReference userAdminReference;
-
- boolean locked = false;
- Object lock = new Object();
-
- protected void setUp() throws Exception {
- Activator.getBundle(Activator.BUNDLE_USERADMIN).start();
- userAdminReference = Activator.getBundleContext().getServiceReference(UserAdmin.class.getName());
- userAdmin = (UserAdmin) Activator.getBundleContext().getService(userAdminReference);
- }
-
- protected void tearDown() throws Exception {
- Activator.getBundleContext().ungetService(userAdminReference);
- Activator.getBundle(Activator.BUNDLE_USERADMIN).stop();
- }
-
- public void testCreate() throws Exception {
- User user = (User) userAdmin.createRole("testUserCreate1", Role.USER); //$NON-NLS-1$
- assertNotNull(user);
- assertEquals("testUserCreate1", user.getName()); //$NON-NLS-1$
- assertTrue(user.getType() == Role.USER);
- user.getProperties().put("test", "valu"); //$NON-NLS-1$ //$NON-NLS-2$
- }
-
- public void testGetUser() {
- User user = userAdmin.getUser("test", "valu"); //$NON-NLS-1$ //$NON-NLS-2$
- assertNotNull(user);
- assertEquals("testUserCreate1", user.getName()); //$NON-NLS-1$
- assertTrue(user.getType() == Role.USER);
- try {
- Role[] roles = userAdmin.getRoles("(test=valu)"); //$NON-NLS-1$
- assertNotNull(roles);
- assertEquals("number of roles", 1, roles.length); //$NON-NLS-1$
- } catch (InvalidSyntaxException e) {
- fail(e.getMessage());
- }
- userAdmin.removeRole(user.getName());
- }
-
- public void testRemovedUser() {
- assertNull(userAdmin.getRole("testUserCreate1")); //$NON-NLS-1$
- }
-
- public void testCreate02() throws Exception {
- User user = (User) userAdmin.createRole("testUserCreate2", Role.USER); //$NON-NLS-1$
- assertNotNull(user);
- assertEquals("testUserCreate2", user.getName()); //$NON-NLS-1$
- assertTrue(user.getType() == Role.USER);
- user.getProperties().put("test1", "valu"); //$NON-NLS-1$ //$NON-NLS-2$
- user.getProperties().put("test2", "xxxyyyzzz"); //$NON-NLS-1$ //$NON-NLS-2$
- user.getProperties().put("test3", new byte[] {1, 2, 3}); //$NON-NLS-1$
-
- user.getCredentials().put("test1", "valu"); //$NON-NLS-1$ //$NON-NLS-2$
- user.getCredentials().put("test2", "xxxyyyzzz"); //$NON-NLS-1$ //$NON-NLS-2$
- user.getCredentials().put("test3", new byte[] {1, 2, 3}); //$NON-NLS-1$
- }
-
- public void testGetUser02() {
- Role user = userAdmin.getRole("testUserCreate2"); //$NON-NLS-1$
- assertNotNull(user);
- assertEquals("testUserCreate2", user.getName()); //$NON-NLS-1$
- assertTrue(user.getType() == Role.USER);
-
- Object test1 = user.getProperties().get("test1"); //$NON-NLS-1$
- assertEquals("test1", "valu", test1); //$NON-NLS-1$ //$NON-NLS-2$
- Object test2 = user.getProperties().get("test2"); //$NON-NLS-1$
- assertEquals("test2", "xxxyyyzzz", test2); //$NON-NLS-1$ //$NON-NLS-2$
- Object test3 = user.getProperties().get("test3"); //$NON-NLS-1$
- assertTrue("test3 not byte[]", test3 instanceof byte[]); //$NON-NLS-1$
- byte[] bytes = (byte[]) test3;
- assertEquals("wrong size", 3, bytes.length); //$NON-NLS-1$
- assertEquals("1", 1, bytes[0]); //$NON-NLS-1$
- assertEquals("2", 2, bytes[1]); //$NON-NLS-1$
- assertEquals("3", 3, bytes[2]); //$NON-NLS-1$
-
- Dictionary creds = ((User) user).getCredentials();
- test1 = creds.get("test1"); //$NON-NLS-1$
- assertEquals("test1", "valu", test1); //$NON-NLS-1$ //$NON-NLS-2$
- test2 = creds.get("test2"); //$NON-NLS-1$
- assertEquals("test2", "xxxyyyzzz", test2); //$NON-NLS-1$ //$NON-NLS-2$
- test3 = creds.get("test3"); //$NON-NLS-1$
- assertTrue("test3 not byte[]", test3 instanceof byte[]); //$NON-NLS-1$
- bytes = (byte[]) test3;
- assertEquals("wrong size", 3, bytes.length); //$NON-NLS-1$
- assertEquals("1", 1, bytes[0]); //$NON-NLS-1$
- assertEquals("2", 2, bytes[1]); //$NON-NLS-1$
- assertEquals("3", 3, bytes[2]); //$NON-NLS-1$
-
- try {
- Role[] roles = userAdmin.getRoles("(test3=1)"); //$NON-NLS-1$
- assertNotNull(roles);
- assertEquals("number of roles", 1, roles.length); //$NON-NLS-1$
- } catch (InvalidSyntaxException e) {
- fail(e.getMessage());
- }
- userAdmin.removeRole(user.getName());
- }
-
- public void testRemovedUser02() {
- assertNull(userAdmin.getRole("testUserCreate2")); //$NON-NLS-1$
- }
-
- public void testUserCreateAndRemove() throws Exception {
- User user = (User) userAdmin.createRole("testUserCreateAndRemove", Role.USER); //$NON-NLS-1$
- assertNotNull(user);
- assertEquals("testUserCreateAndRemove", user.getName()); //$NON-NLS-1$
- assertTrue(user.getType() == Role.USER);
- assertTrue(userAdmin.removeRole("testUserCreateAndRemove")); //$NON-NLS-1$
- assertNull(userAdmin.getRole("testUserCreateAndRemove")); //$NON-NLS-1$
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/.classpath b/bundles/org.eclipse.equinox.ds.tests/.classpath
deleted file mode 100644
index 2a5daf6..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/.classpath
+++ /dev/null
@@ -1,32 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/CDC-1.1%Foundation-1.1"/>
- <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
- <classpathentry kind="src" path="src"/>
- <classpathentry kind="src" output="scr_test/tb1" path="bundles_src/tb1"/>
- <classpathentry kind="src" output="scr_test/tb1a" path="bundles_src/tb1a"/>
- <classpathentry kind="src" output="scr_test/tb2" path="bundles_src/tb2"/>
- <classpathentry kind="src" output="scr_test/tb3" path="bundles_src/tb3"/>
- <classpathentry kind="src" output="scr_test/tb4" path="bundles_src/tb4"/>
- <classpathentry kind="src" output="scr_test/tb5" path="bundles_src/tb5"/>
- <classpathentry kind="src" output="scr_test/tb6" path="bundles_src/tb6"/>
- <classpathentry kind="src" output="scr_test/tb7" path="bundles_src/tb7"/>
- <classpathentry kind="src" output="scr_test/tb8" path="bundles_src/tb8"/>
- <classpathentry kind="src" output="scr_test/tb9" path="bundles_src/tb9"/>
- <classpathentry kind="src" output="scr_test/tb10" path="bundles_src/tb10"/>
- <classpathentry kind="src" output="scr_test/tb11" path="bundles_src/tb11"/>
- <classpathentry kind="src" output="scr_test/tb12" path="bundles_src/tb12"/>
- <classpathentry kind="src" output="scr_test/tb13" path="bundles_src/tb13"/>
- <classpathentry kind="src" output="scr_test/tb14" path="bundles_src/tb14"/>
- <classpathentry kind="src" output="scr_test/tb15" path="bundles_src/tb15"/>
- <classpathentry kind="src" output="scr_test/tb16" path="bundles_src/tb16"/>
- <classpathentry kind="src" output="scr_test/tb17" path="bundles_src/tb17"/>
- <classpathentry kind="src" output="scr_test/tb18" path="bundles_src/tb18"/>
- <classpathentry kind="src" output="scr_test/tb19" path="bundles_src/tb19"/>
- <classpathentry kind="src" output="scr_test/tb20" path="bundles_src/tb20"/>
- <classpathentry kind="src" output="scr_test/tb21" path="bundles_src/tb21"/>
- <classpathentry kind="src" output="scr_test/tb21a" path="bundles_src/tb21a"/>
- <classpathentry kind="src" output="scr_test/tb22" path="bundles_src/tb22"/>
- <classpathentry kind="src" output="scr_test/tb23" path="bundles_src/tb23"/>
- <classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/bundles/org.eclipse.equinox.ds.tests/.project b/bundles/org.eclipse.equinox.ds.tests/.project
deleted file mode 100644
index 10e047e..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/.project
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.equinox.ds.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>
- <buildCommand>
- <name>org.eclipse.pde.ds.core.builder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.pde.PluginNature</nature>
- <nature>org.eclipse.jdt.core.javanature</nature>
- </natures>
-</projectDescription>
diff --git a/bundles/org.eclipse.equinox.ds.tests/.settings/org.eclipse.jdt.core.prefs b/bundles/org.eclipse.equinox.ds.tests/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index 32dfe69..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,23 +0,0 @@
-#Mon Dec 15 14:23:49 EET 2008
-eclipse.preferences.version=1
-org.eclipse.jdt.core.builder.cleanOutputFolder=clean
-org.eclipse.jdt.core.builder.duplicateResourceTask=warning
-org.eclipse.jdt.core.builder.invalidClasspath=abort
-org.eclipse.jdt.core.builder.recreateModifiedClassFileInOutputFolder=ignore
-org.eclipse.jdt.core.builder.resourceCopyExclusionFilter=*.launch
-org.eclipse.jdt.core.circularClasspath=error
-org.eclipse.jdt.core.classpath.exclusionPatterns=enabled
-org.eclipse.jdt.core.classpath.multipleOutputLocations=enabled
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.2
-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=1.4
-org.eclipse.jdt.core.compiler.debug.lineNumber=generate
-org.eclipse.jdt.core.compiler.debug.localVariable=generate
-org.eclipse.jdt.core.compiler.debug.sourceFile=generate
-org.eclipse.jdt.core.compiler.maxProblemPerUnit=100
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=warning
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=warning
-org.eclipse.jdt.core.compiler.source=1.3
-org.eclipse.jdt.core.incompatibleJDKLevel=ignore
-org.eclipse.jdt.core.incompleteClasspath=error
diff --git a/bundles/org.eclipse.equinox.ds.tests/.settings/org.eclipse.jdt.ui.prefs b/bundles/org.eclipse.equinox.ds.tests/.settings/org.eclipse.jdt.ui.prefs
deleted file mode 100644
index a970245..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/.settings/org.eclipse.jdt.ui.prefs
+++ /dev/null
@@ -1,3 +0,0 @@
-#Mon Dec 15 14:14:24 EET 2008
-eclipse.preferences.version=1
-org.eclipse.jdt.ui.text.custom_code_templates=<?xml version\="1.0" encoding\="UTF-8" standalone\="no"?><templates/>
diff --git a/bundles/org.eclipse.equinox.ds.tests/.settings/org.eclipse.pde.core.prefs b/bundles/org.eclipse.equinox.ds.tests/.settings/org.eclipse.pde.core.prefs
deleted file mode 100644
index f38a61e..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/.settings/org.eclipse.pde.core.prefs
+++ /dev/null
@@ -1,4 +0,0 @@
-#Tue Nov 11 12:04:55 EET 2008
-eclipse.preferences.version=1
-pluginProject.extensions=false
-resolve.requirebundle=false
diff --git a/bundles/org.eclipse.equinox.ds.tests/All DS Tests.launch b/bundles/org.eclipse.equinox.ds.tests/All DS Tests.launch
deleted file mode 100644
index 8a84fbc..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/All DS Tests.launch
+++ /dev/null
@@ -1,438 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<launchConfiguration type="org.eclipse.pde.ui.JunitLaunchConfig">
-<booleanAttribute key="append.args" value="true"/>
-<stringAttribute key="application" value="org.eclipse.pde.junit.runtime.coretestapplication"/>
-<booleanAttribute key="askclear" value="false"/>
-<booleanAttribute key="automaticAdd" value="true"/>
-<booleanAttribute key="automaticValidate" value="false"/>
-<stringAttribute key="bootstrap" value=""/>
-<stringAttribute key="checked" value="[NONE]"/>
-<booleanAttribute key="clearConfig" value="true"/>
-<booleanAttribute key="clearws" value="true"/>
-<booleanAttribute key="clearwslog" value="false"/>
-<stringAttribute key="configLocation" value="${workspace_loc}/.metadata/.plugins/org.eclipse.pde.core/pde-junit"/>
-<booleanAttribute key="default" value="true"/>
-<booleanAttribute key="includeOptional" value="true"/>
-<stringAttribute key="location" value="${workspace_loc}/../junit-workspace"/>
-<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
-<listEntry value="/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/AllTests.java"/>
-</listAttribute>
-<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
-<listEntry value="1"/>
-</listAttribute>
-<stringAttribute key="org.eclipse.jdt.junit.CONTAINER" value=""/>
-<booleanAttribute key="org.eclipse.jdt.junit.KEEPRUNNING_ATTR" value="false"/>
-<stringAttribute key="org.eclipse.jdt.junit.TESTNAME" value=""/>
-<stringAttribute key="org.eclipse.jdt.junit.TEST_KIND" value="org.eclipse.jdt.junit.loader.junit3"/>
-<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="org.eclipse.equinox.ds.tests.AllTests"/>
-<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="-os ${target.os} -ws ${target.ws} -arch ${target.arch} -nl ${target.nl} -console -consoleLog"/>
-<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="org.eclipse.equinox.ds.tests"/>
-<stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.pde.ui.workbenchClasspathProvider"/>
-<stringAttribute key="pde.version" value="3.3"/>
-<stringAttribute key="product" value="org.eclipse.sdk.ide"/>
-<booleanAttribute key="show_selected_only" value="false"/>
-<stringAttribute key="templateConfig" value="${target_home}\configuration\config.ini"/>
-<booleanAttribute key="tracing" value="false"/>
-<mapAttribute key="tracingOptions">
-<mapEntry key="org.eclipse.team.cvs.core/syncchangeevents" value="false"/>
-<mapEntry key="org.eclipse.wst.validation/extraValDetail" value=""/>
-<mapEntry key="org.eclipse.equinox.registry/debug" value="false"/>
-<mapEntry key="org.eclipse.wst.validation/timings/useDoubles" value="false"/>
-<mapEntry key="org.eclipse.core.resources/perf/listeners" value="500"/>
-<mapEntry key="org.eclipse.debug.ui/debug/contextlaunching" value="false"/>
-<mapEntry key="org.eclipse.birt.chart.engine/internal.factory" value="false"/>
-<mapEntry key="org.eclipse.birt.chart.engine/render" value="false"/>
-<mapEntry key="org.eclipse.core.resources/build/needbuild" value="false"/>
-<mapEntry key="org.eclipse.debug.ui/debug/viewers/viewer" value="false"/>
-<mapEntry key="org.eclipse.jem.util/debug/logtrace" value="false"/>
-<mapEntry key="org.eclipse.wst.validation/timings" value="false"/>
-<mapEntry key="org.eclipse.wst.common.environment/trace/data" value="true"/>
-<mapEntry key="org.eclipse.update.configurator/debug" value="false"/>
-<mapEntry key="org.eclipse.birt.chart.engine/log" value="false"/>
-<mapEntry key="org.eclipse.birt.chart.engine/device" value="false"/>
-<mapEntry key="org.eclipse.wst.common.environment/trace/ws_framework" value="true"/>
-<mapEntry key="org.eclipse.osgi/monitor/activation" value="false"/>
-<mapEntry key="org.eclipse.wst.sse.core/tasks/preferences" value="false"/>
-<mapEntry key="org.eclipse.jdt.ui/perf/content_assist/extensions" value="1000"/>
-<mapEntry key="org.eclipse.ui.ide/debug/gc" value="false"/>
-<mapEntry key="org.eclipse.core.resources/contenttype/cache" value="false"/>
-<mapEntry key="org.eclipse.wst.sse.core/structuredmodel/state" value="false"/>
-<mapEntry key="org.eclipse.wst.sse.core/tasks" value="false"/>
-<mapEntry key="org.eclipse.wst.validation/timings/tracefile" value=""/>
-<mapEntry key="org.eclipse.birt.chart.engine/event" value="false"/>
-<mapEntry key="org.eclipse.core.jobs/jobs/shutdown" value="false"/>
-<mapEntry key="org.eclipse.core.runtime/url/debug" value="false"/>
-<mapEntry key="org.eclipse.debug.ui/debug/viewers/updateSequence" value="false"/>
-<mapEntry key="org.eclipse.osgi/monitor/classes" value="false"/>
-<mapEntry key="org.eclipse.equinox.preferences/get" value="false"/>
-<mapEntry key="org.eclipse.jdt.apt.core/debug/generatedFileMaps" value="false"/>
-<mapEntry key="org.eclipse.wst.xml.core/debug/tracefilter" value=""/>
-<mapEntry key="org.eclipse.update.core/debug" value="true"/>
-<mapEntry key="org.eclipse.core.runtime/debug/context" value="false"/>
-<mapEntry key="org.eclipse.jdt.core/debug/cpresolution/failure" value="false"/>
-<mapEntry key="org.eclipse.core.jobs/jobs/locks" value="false"/>
-<mapEntry key="org.eclipse.ui/debug/swtdebug" value="false"/>
-<mapEntry key="com.mountainminds.eclemma.core/debug/instrumentation" value="true"/>
-<mapEntry key="org.eclipse.jdt.core/debug/javamodel" value="false"/>
-<mapEntry key="org.eclipse.osgi/resolver/uses" value="false"/>
-<mapEntry key="org.eclipse.wst.sse.ui/debug/reconcilerjob" value="false"/>
-<mapEntry key="org.eclipse.ui.intro.universal/trace/logInfo" value="true"/>
-<mapEntry key="org.eclipse.debug.core/debug/events" value="false"/>
-<mapEntry key="org.eclipse.ui.intro/trace/printHTML" value="false"/>
-<mapEntry key="org.eclipse.equinox.registry/debug/events" value="false"/>
-<mapEntry key="org.eclipse.jdt.core/debug/javadelta/verbose" value="false"/>
-<mapEntry key="org.eclipse.jdt.core/debug" value="true"/>
-<mapEntry key="org.eclipse.pde.core/validation" value="false"/>
-<mapEntry key="org.eclipse.core.expressions/tracePropertyResolving" value="false"/>
-<mapEntry key="org.eclipse.core.resources/restore" value="false"/>
-<mapEntry key="org.eclipse.ltk.core.refactoring/perf/participants/checkConditions" value="300"/>
-<mapEntry key="org.eclipse.ui/perf/perspective.listeners" value="200"/>
-<mapEntry key="org.eclipse.birt.chart.engine/datafeed" value="false"/>
-<mapEntry key="org.eclipse.birt.chart.engine/model.data.impl" value="false"/>
-<mapEntry key="org.eclipse.jdt.core/perf/containerinitializer" value="5000"/>
-<mapEntry key="org.eclipse.osgi/trace/filename" value="runtime.traces"/>
-<mapEntry key="org.eclipse.wst.sse.ui/propertyChangeUpdateActionContributionItem" value="false"/>
-<mapEntry key="org.eclipse.wst.sse.ui/transferbuilder/time" value="false"/>
-<mapEntry key="org.eclipse.equinox.ds/performance" value="false"/>
-<mapEntry key="org.eclipse.update.core/debug/web" value="false"/>
-<mapEntry key="org.eclipse.birt.chart.engine/model.type.impl" value="false"/>
-<mapEntry key="org.eclipse.osgi/debug" value="false"/>
-<mapEntry key="org.eclipse.birt.core/debug" value="false"/>
-<mapEntry key="org.eclipse.osgi/trace/activation" value="false"/>
-<mapEntry key="org.eclipse.equinox.security/debug/loginFramework" value="false"/>
-<mapEntry key="org.eclipse.ui/perf/perspective.switch" value="800"/>
-<mapEntry key="org.eclipse.wst.sse.core/tasks/job" value="false"/>
-<mapEntry key="org.eclipse.ui/perf/part.input" value="200"/>
-<mapEntry key="org.eclipse.jface.text/debug/AnnotationPainter" value="false"/>
-<mapEntry key="org.eclipse.wst.sse.ui/extendededitoractionbuilder/debugmenu" value="false"/>
-<mapEntry key="org.eclipse.tm.terminal/debug/log/info" value="false"/>
-<mapEntry key="org.eclipse.wst.sse.ui/debug/reconcilerSpelling/showProblems" value="false"/>
-<mapEntry key="org.eclipse.osgi/resolver/imports" value="false"/>
-<mapEntry key="org.eclipse.osgi/trace/filters" value="trace.properties"/>
-<mapEntry key="org.eclipse.osgi/eclipseadaptor/debug/platformadmin/resolver" value="false"/>
-<mapEntry key="org.eclipse.help.ui/debug/infopop" value="false"/>
-<mapEntry key="org.eclipse.wst.sse.ui/debug" value="true"/>
-<mapEntry key="org.eclipse.equinox.preferences/general" value="false"/>
-<mapEntry key="org.eclipse.team.cvs.core/debug" value="false"/>
-<mapEntry key="org.eclipse.team.cvs.core/threading" value="false"/>
-<mapEntry key="org.eclipse.jdt.apt.pluggable.core/debug" value="false"/>
-<mapEntry key="org.eclipse.birt.chart.engine/internal.computations" value="false"/>
-<mapEntry key="org.eclipse.birt.chart.engine/model.component.impl" value="false"/>
-<mapEntry key="org.eclipse.jdt.ui/perf/search/participants" value="300"/>
-<mapEntry key="org.eclipse.ui/perf/part.listeners" value="200"/>
-<mapEntry key="org.eclipse.osgi/resolver/debug" value="false"/>
-<mapEntry key="org.eclipse.update.core/debug/install" value="false"/>
-<mapEntry key="org.eclipse.equinox.security.ui/debug" value="false"/>
-<mapEntry key="org.eclipse.equinox.security/debug" value="false"/>
-<mapEntry key="org.eclipse.core.resources/debug" value="false"/>
-<mapEntry key="org.eclipse.help.ui/debug/embeddedBrowser/inprocess" value="false"/>
-<mapEntry key="org.eclipse.ui/perf/part.control" value="800"/>
-<mapEntry key="org.eclipse.osgi/profile/impl" value="org.eclipse.osgi.internal.profile.DefaultProfileLogger"/>
-<mapEntry key="org.eclipse.osgi/profile/benchmark" value="false"/>
-<mapEntry key="org.eclipse.jdt.core/debug/cpresolution/advanced" value="false"/>
-<mapEntry key="org.eclipse.wst.sse.core/tasks/time" value="false"/>
-<mapEntry key="org.eclipse.team.cvs.core/cvsprotocol" value="true"/>
-<mapEntry key="org.eclipse.jdt.core/debug/postaction" value="false"/>
-<mapEntry key="org.eclipse.osgi/debug/manifest" value="false"/>
-<mapEntry key="org.eclipse.jdt.core/perf/selection" value="300"/>
-<mapEntry key="org.eclipse.help/debug/context" value="false"/>
-<mapEntry key="org.eclipse.jdt.ui/perf/content_assist_sorters/extensions" value=""/>
-<mapEntry key="org.eclipse.jdt.core/debug/builder" value="false"/>
-<mapEntry key="org.eclipse.wst.sse.ui/actioncontributor/debugstatusfields" value="true"/>
-<mapEntry key="org.eclipse.osgi/resolver/requires" value="false"/>
-<mapEntry key="org.eclipse.wst.sse.core/format" value="false"/>
-<mapEntry key="org.eclipse.wst.sse.ui/extendedconfigurationbuilder" value="false"/>
-<mapEntry key="org.eclipse.birt.chart.engine/model.util" value="false"/>
-<mapEntry key="org.eclipse.team.cvs.ssh/debug" value="false"/>
-<mapEntry key="org.eclipse.wst.dtd.ui/projectionperf" value="false"/>
-<mapEntry key="org.eclipse.ui/trace/handlers.verbose" value="false"/>
-<mapEntry key="org.eclipse.osgi/debug/startlevel" value="false"/>
-<mapEntry key="org.eclipse.update.core/debug/installhandler" value="false"/>
-<mapEntry key="org.eclipse.wst.sse.core/tasks/detection" value="false"/>
-<mapEntry key="org.eclipse.birt.chart.engine/computation" value="false"/>
-<mapEntry key="org.eclipse.birt.chart.engine/model.type" value="false"/>
-<mapEntry key="org.eclipse.wst.common.environment/debug" value="true"/>
-<mapEntry key="org.eclipse.jdt.core/debug/javadelta" value="false"/>
-<mapEntry key="org.eclipse.core.resources/restore/tree" value="false"/>
-<mapEntry key="org.eclipse.core.resources/preferences" value="false"/>
-<mapEntry key="org.eclipse.ui.intro/flags/noBrowser" value="false"/>
-<mapEntry key="org.eclipse.core.resources/perf/save.participants" value="500"/>
-<mapEntry key="org.eclipse.core.resources/natures" value="false"/>
-<mapEntry key="org.eclipse.wst.sse.ui/filemodelprovider/modelstatelistener" value="false"/>
-<mapEntry key="org.eclipse.osgi/defaultprofile/buffersize" value="256"/>
-<mapEntry key="org.eclipse.osgi/resolver/cycles" value="false"/>
-<mapEntry key="org.eclipse.jdt.core/perf/variableinitializer" value="5000"/>
-<mapEntry key="org.eclipse.ui/trace/keyBindings.verbose" value="false"/>
-<mapEntry key="org.eclipse.debug.ui/debug/viewers/model" value="false"/>
-<mapEntry key="org.eclipse.birt.chart.engine/model.attribute.impl" value="false"/>
-<mapEntry key="org.eclipse.wst.sse.core/filebuffers/modelmanagement" value="false"/>
-<mapEntry key="org.eclipse.core.runtime/perf/success" value="false"/>
-<mapEntry key="org.eclipse.ui/trace/contexts.performance" value="false"/>
-<mapEntry key="org.eclipse.birt.chart.engine/trace" value="false"/>
-<mapEntry key="org.eclipse.core.runtime/compatibility/debug" value="false"/>
-<mapEntry key="org.eclipse.ui/debug/declaredImages" value="false"/>
-<mapEntry key="org.eclipse.pde.build/debug" value="false"/>
-<mapEntry key="org.eclipse.osgi/eclipseadaptor/debug/location" value="false"/>
-<mapEntry key="org.eclipse.jem.util/debug/logtracefile" value="false"/>
-<mapEntry key="org.eclipse.ui/trace/contexts.verbose" value="false"/>
-<mapEntry key="org.eclipse.wst.common.environment/trace/emitter" value="true"/>
-<mapEntry key="org.eclipse.tm.terminal/debug/log/buffer/size" value="false"/>
-<mapEntry key="org.eclipse.ui/debug/showAllJobs" value="false"/>
-<mapEntry key="org.eclipse.birt.chart.engine/model" value="false"/>
-<mapEntry key="org.eclipse.ui/listeners/IWorkbenchPage.IPartListener" value="false"/>
-<mapEntry key="org.eclipse.core.jobs/jobs" value="false"/>
-<mapEntry key="org.eclipse.ui/perf/perspective.create" value="800"/>
-<mapEntry key="org.eclipse.ui/trace/sources" value="false"/>
-<mapEntry key="org.eclipse.debug.core/debug/commands" value="false"/>
-<mapEntry key="org.eclipse.core.resources/strings" value="false"/>
-<mapEntry key="org.eclipse.ui/listeners/IWorkbenchPartReference" value="false"/>
-<mapEntry key="org.eclipse.ui.ide/debug/undomonitor" value="false"/>
-<mapEntry key="org.eclipse.wst.sse.ui/structuredPresentationReconciler/time" value="false"/>
-<mapEntry key="org.eclipse.core.resources/save/metainfo" value="false"/>
-<mapEntry key="org.eclipse.birt.chart.engine/log.impl" value="false"/>
-<mapEntry key="org.eclipse.ui/perf/part.activate" value="200"/>
-<mapEntry key="org.eclipse.ui.intro.universal/debug" value="true"/>
-<mapEntry key="org.eclipse.wst.sse.ui/contentOutline" value="false"/>
-<mapEntry key="org.eclipse.core.runtime/perf" value="false"/>
-<mapEntry key="org.eclipse.wst.xml.core/debug/cmdocumentmanager" value="false"/>
-<mapEntry key="org.eclipse.birt.chart.engine/model.impl" value="false"/>
-<mapEntry key="org.eclipse.core.resources/contenttype" value="false"/>
-<mapEntry key="org.eclipse.birt.chart.engine/aggregate" value="false"/>
-<mapEntry key="org.eclipse.mtj.core.hooks/debug" value="false"/>
-<mapEntry key="org.eclipse.ui/debug/contributions" value="false"/>
-<mapEntry key="org.eclipse.ui/debug/job.stale" value="false"/>
-<mapEntry key="org.eclipse.wst.common.environment/trace/info" value="true"/>
-<mapEntry key="org.eclipse.ui/perf/workbench.start" value="45000"/>
-<mapEntry key="org.eclipse.jdt.core/debug/completion" value="false"/>
-<mapEntry key="org.eclipse.osgi/eclipseadaptor/debug" value="false"/>
-<mapEntry key="org.eclipse.ui/listeners/IWorkbenchWindow.IPartListener" value="false"/>
-<mapEntry key="org.eclipse.wst.sse.core/debug" value="true"/>
-<mapEntry key="org.eclipse.jdt.core/debug/formatter" value="false"/>
-<mapEntry key="org.eclipse.jdt.core/debug/indexmanager" value="false"/>
-<mapEntry key="org.eclipse.wst.sse.ui/preferences-properties" value="false"/>
-<mapEntry key="org.eclipse.wst.sse.ui/storagemodelprovider/operations" value="false"/>
-<mapEntry key="org.eclipse.ui/listeners/IWorkbenchWindow.IPerspectiveListener" value="false"/>
-<mapEntry key="org.eclipse.osgi/debug/loader" value="false"/>
-<mapEntry key="org.eclipse.wtp.common/debug/logtrace" value="false"/>
-<mapEntry key="com.mountainminds.eclemma.core/debug/performance" value="true"/>
-<mapEntry key="org.eclipse.ui.workbench/debug" value="false"/>
-<mapEntry key="org.eclipse.wst.validation/v1" value="false"/>
-<mapEntry key="org.eclipse.debug.ui/debug/launchhistory" value="false"/>
-<mapEntry key="org.eclipse.osgi/defaultprofile/logsynchronously" value="false"/>
-<mapEntry key="org.eclipse.osgi/trace/classLoading" value="false"/>
-<mapEntry key="org.eclipse.jface.text/debug/FastPartitioner/PositionCache" value="false"/>
-<mapEntry key="org.eclipse.debug.ui/debug" value="false"/>
-<mapEntry key="org.eclipse.wst.xml.ui/projectionperf" value="false"/>
-<mapEntry key="org.eclipse.wst.sse.ui/extendededitoractionbuilder/readtime" value="false"/>
-<mapEntry key="org.eclipse.ui/trace/handlers.performance" value="false"/>
-<mapEntry key="org.eclipse.core.runtime/debug" value="false"/>
-<mapEntry key="org.eclipse.ui/trace/handlers.verbose.commandId" value=""/>
-<mapEntry key="org.eclipse.osgi/debug/filter" value="false"/>
-<mapEntry key="org.eclipse.jdt.apt.core/debug/compilationEnv" value="false"/>
-<mapEntry key="org.eclipse.wst.sse.core/structuredmodel/lifecycle" value="false"/>
-<mapEntry key="org.eclipse.birt.chart.engine/model.layout.util" value="false"/>
-<mapEntry key="org.eclipse.wst.sse.core/structuredmodel/modelmanager" value="false"/>
-<mapEntry key="org.eclipse.jdt.ui/debug/ASTProvider" value="false"/>
-<mapEntry key="org.eclipse.equinox.security.ui/debug/storage" value="false"/>
-<mapEntry key="org.eclipse.jdt.core/debug/builder/stats" value="false"/>
-<mapEntry key="org.eclipse.birt.chart.engine/style" value="false"/>
-<mapEntry key="org.eclipse.wst.sse.ui/filemodelprovider/operations" value="false"/>
-<mapEntry key="org.eclipse.wst.sse.core/tasks/registry" value="false"/>
-<mapEntry key="org.eclipse.wtp.common/debug/loglevel" value="WARNING"/>
-<mapEntry key="org.eclipse.birt.chart.engine/factory" value="false"/>
-<mapEntry key="org.eclipse.birt.chart.engine/internal" value="false"/>
-<mapEntry key="org.eclipse.help.webapp/debug/workingsets" value="false"/>
-<mapEntry key="org.eclipse.osgi/defaultprofile/logfilename" value=""/>
-<mapEntry key="org.eclipse.tm.terminal/debug/log/directory" value="/tmp/"/>
-<mapEntry key="org.eclipse.wst.sse.ui/propertySheet" value="false"/>
-<mapEntry key="org.eclipse.core.runtime/url/debug/connect" value="false"/>
-<mapEntry key="org.eclipse.jface.text/debug/ContentAssistSubjectAdapters" value="false"/>
-<mapEntry key="org.eclipse.core.resources/restore/markers" value="false"/>
-<mapEntry key="org.eclipse.wst.sse.core/structureddocument" value="false"/>
-<mapEntry key="org.eclipse.ui/trace/graphics" value="false"/>
-<mapEntry key="org.eclipse.jdt.core/debug/resolution" value="false"/>
-<mapEntry key="org.eclipse.team.cvs.ssh/ssh_protocol" value="false"/>
-<mapEntry key="org.eclipse.core.resources/perf/snapshot" value="1000"/>
-<mapEntry key="org.eclipse.equinox.ds/print_on_console" value="true"/>
-<mapEntry key="org.eclipse.help/debug/search" value="false"/>
-<mapEntry key="org.eclipse.core.resources/build/needbuildstack" value="false"/>
-<mapEntry key="org.eclipse.help/debug/toc" value="false"/>
-<mapEntry key="org.eclipse.ui/perf/part.init" value="800"/>
-<mapEntry key="org.eclipse.birt.chart.engine/util" value="false"/>
-<mapEntry key="org.eclipse.wst.sse.core/structuredmodel/locks" value="true"/>
-<mapEntry key="org.eclipse.ui.intro/trace/logPerformance" value="false"/>
-<mapEntry key="org.eclipse.birt.chart.engine/script" value="false"/>
-<mapEntry key="org.eclipse.wst.sse.core/dom/adapter/notification/time" value="false"/>
-<mapEntry key="org.eclipse.osgi/eclipseadaptor/converter/debug" value="false"/>
-<mapEntry key="org.eclipse.ui/perf/part.create" value="800"/>
-<mapEntry key="org.eclipse.wst.common.project.facet.core/activation" value="false"/>
-<mapEntry key="org.eclipse.wtp.common/debug/logtracefile" value="false"/>
-<mapEntry key="org.eclipse.osgi/eclipseadaptor/debug/platformadmin" value="false"/>
-<mapEntry key="org.eclipse.help.ui/debug/embeddedBrowser" value="false"/>
-<mapEntry key="org.eclipse.wst.sse.ui/debug/reconcilerValidators" value="false"/>
-<mapEntry key="org.eclipse.equinox.preferences/set" value="false"/>
-<mapEntry key="org.eclipse.wst.sse.core/tasks/overalltime" value="false"/>
-<mapEntry key="org.eclipse.team.core/streams" value="false"/>
-<mapEntry key="org.eclipse.tm.terminal/debug/use_old_implementation" value="false"/>
-<mapEntry key="org.eclipse.tm.terminal/debug/log" value="true"/>
-<mapEntry key="org.eclipse.core.resources/build/stacktrace" value="false"/>
-<mapEntry key="org.eclipse.ui/trace/keyBindings" value="false"/>
-<mapEntry key="org.eclipse.birt.chart.engine/model.layout" value="false"/>
-<mapEntry key="org.eclipse.jdt.ui/debug/TypeConstraints" value="false"/>
-<mapEntry key="org.eclipse.equinox.ds/debug" value="true"/>
-<mapEntry key="org.eclipse.wst.common.environment/trace/error" value="true"/>
-<mapEntry key="org.eclipse.core.jobs/jobs/beginend" value="false"/>
-<mapEntry key="org.eclipse.birt.chart.engine/model.component.util" value="false"/>
-<mapEntry key="org.eclipse.core.resources/build/interrupt" value="false"/>
-<mapEntry key="org.eclipse.ui/perf/showHeapStatus" value="true"/>
-<mapEntry key="org.eclipse.ui/perf/contentTypes" value="200"/>
-<mapEntry key="org.eclipse.ui/trace/commands" value="false"/>
-<mapEntry key="org.eclipse.core.resources/build/delta" value="false"/>
-<mapEntry key="org.eclipse.birt.chart.engine/model.data" value="false"/>
-<mapEntry key="org.eclipse.jdt.core/debug/search" value="false"/>
-<mapEntry key="org.eclipse.equinox.ds/instantiate_all" value="false"/>
-<mapEntry key="org.eclipse.wst.common.environment/trace/command" value="true"/>
-<mapEntry key="org.eclipse.wst.common.project.facet.core/actionSorting" value="false"/>
-<mapEntry key="org.eclipse.jdt.apt.core/debug" value="false"/>
-<mapEntry key="org.eclipse.jdt.core/perf/completion" value="300"/>
-<mapEntry key="org.eclipse.jdt.core/debug/compiler" value="false"/>
-<mapEntry key="org.eclipse.wst.sse.ui/structuredPresentationReconciler" value="false"/>
-<mapEntry key="org.eclipse.jdt.ui/debug" value="true"/>
-<mapEntry key="com.mountainminds.eclemma.core/debug/emmaVerbosityLevel" value="info"/>
-<mapEntry key="org.eclipse.wst.sse.core/dom/adapter/notification/time/criteria" value="10"/>
-<mapEntry key="org.eclipse.jdt.core/debug/javamodel/cache" value="false"/>
-<mapEntry key="org.eclipse.update.core/debug/configuration" value="false"/>
-<mapEntry key="org.eclipse.osgi/debug/messageBundles" value="false"/>
-<mapEntry key="com.mountainminds.eclemma.core/debug/launching" value="true"/>
-<mapEntry key="org.eclipse.wst.sse.ui/gotoNextAnnotation" value="false"/>
-<mapEntry key="org.eclipse.jdt.core.manipulation/debug" value="true"/>
-<mapEntry key="org.eclipse.ui/listeners/IWorkbenchWindow.IPartListener2" value="false"/>
-<mapEntry key="org.eclipse.ui/listeners/IWorkbenchPage.IPartListener2" value="false"/>
-<mapEntry key="org.eclipse.wst.validation/debug" value="true"/>
-<mapEntry key="org.eclipse.jdt.core/perf/reconcile" value="1000"/>
-<mapEntry key="org.eclipse.jdt.core/debug/hierarchy" value="false"/>
-<mapEntry key="org.eclipse.help.webapp/debug" value="true"/>
-<mapEntry key="org.eclipse.ui/debug/workingSets" value="false"/>
-<mapEntry key="org.eclipse.wst.sse.core/filebuffers/lifecycle" value="false"/>
-<mapEntry key="org.eclipse.core.resources/refresh" value="false"/>
-<mapEntry key="org.eclipse.team.core/backgroundevents" value="false"/>
-<mapEntry key="org.eclipse.ltk.core.refactoring/perf/participants/createChanges" value="300"/>
-<mapEntry key="org.eclipse.jdt.core/debug/cpresolution" value="false"/>
-<mapEntry key="org.eclipse.wst.sse.ui/debug/reconcilerSpelling" value="false"/>
-<mapEntry key="org.eclipse.update.core/debug/warning" value="false"/>
-<mapEntry key="org.eclipse.core.resources/save" value="false"/>
-<mapEntry key="org.eclipse.wst.sse.ui/filemodelprovider/lifecyclelistener" value="false"/>
-<mapEntry key="org.eclipse.wst.common.project.facet.core/delegate/calls" value="false"/>
-<mapEntry key="org.eclipse.update.core/debug/parsing" value="false"/>
-<mapEntry key="org.eclipse.jdt.ui/perf/explorer/makeActions" value="1000"/>
-<mapEntry key="org.eclipse.core.resources/restore/syncinfo" value="false"/>
-<mapEntry key="org.eclipse.debug.ui/debug/viewers/contentProvider" value="false"/>
-<mapEntry key="org.eclipse.ui/listeners/IWorkbenchWindow.IPageListener" value="false"/>
-<mapEntry key="org.eclipse.team.core/threading" value="false"/>
-<mapEntry key="org.eclipse.core.runtime/url/debug/cachelookup" value="false"/>
-<mapEntry key="org.eclipse.update.core/debug/reconciler" value="false"/>
-<mapEntry key="org.eclipse.osgi/debug/security" value="false"/>
-<mapEntry key="org.eclipse.birt.chart.engine/debug" value="false"/>
-<mapEntry key="org.eclipse.birt.chart.engine/model.prefs" value="false"/>
-<mapEntry key="org.eclipse.core.resources/save/syncinfo" value="false"/>
-<mapEntry key="org.eclipse.osgi/profile/startup" value="false"/>
-<mapEntry key="org.eclipse.osgi/debug/services" value="false"/>
-<mapEntry key="org.eclipse.wst.common.environment/trace/ws_ant" value="true"/>
-<mapEntry key="org.eclipse.birt.chart.engine/computation.withaxes" value="false"/>
-<mapEntry key="org.eclipse.core.resources/save/markers" value="false"/>
-<mapEntry key="org.eclipse.core.runtime/preferences/plugin" value="false"/>
-<mapEntry key="org.eclipse.birt.chart.engine/plugin" value="false"/>
-<mapEntry key="org.eclipse.osgi/monitor/resources" value="false"/>
-<mapEntry key="org.eclipse.wst.sse.ui/extendededitoractionbuilder/debugpopup" value="false"/>
-<mapEntry key="org.eclipse.core.jobs/jobs/timing" value="false"/>
-<mapEntry key="org.eclipse.jdt.core/debug/selection" value="false"/>
-<mapEntry key="org.eclipse.birt.chart.engine/exception" value="false"/>
-<mapEntry key="org.eclipse.jdt.ui/debug/ResultCollector" value="false"/>
-<mapEntry key="org.eclipse.tm.terminal/debug/log/error" value="true"/>
-<mapEntry key="org.eclipse.core.resources/restore/snapshots" value="false"/>
-<mapEntry key="org.eclipse.jdt.ui/perf/explorer/createPartControl" value="1300"/>
-<mapEntry key="org.eclipse.team.cvs.core/dirtycaching" value="false"/>
-<mapEntry key="org.eclipse.jdt.apt.core/debug/generatedFiles" value="false"/>
-<mapEntry key="org.eclipse.jdt.core/debug/zipaccess" value="false"/>
-<mapEntry key="org.eclipse.pde.core/cache" value="false"/>
-<mapEntry key="org.eclipse.wst.sse.ui/extendededitoractionbuilder" value="false"/>
-<mapEntry key="org.eclipse.core.runtime/url/debug/cachecopy" value="false"/>
-<mapEntry key="org.eclipse.debug.ui/debug/viewers/stateSaveRestore" value="false"/>
-<mapEntry key="org.eclipse.osgi/debug/bundleTime" value="false"/>
-<mapEntry key="org.eclipse.ui/trace/operations.verbose" value="false"/>
-<mapEntry key="org.eclipse.team.cvs.core/metafiles" value="false"/>
-<mapEntry key="org.eclipse.wst.sse.ui/extendededitoractionbuilder/debugtoolbar" value="false"/>
-<mapEntry key="org.eclipse.team.core/debug" value="false"/>
-<mapEntry key="org.eclipse.wst.xml.core/debug/cmdocumentcache" value="false"/>
-<mapEntry key="org.eclipse.ui/perf/workbench.restore" value="30000"/>
-<mapEntry key="org.eclipse.wst.sse.ui/storagemodelprovider/elementstatelistener" value="false"/>
-<mapEntry key="org.eclipse.wst.sse.ui/extendededitoractionbuilder/contributetime" value="false"/>
-<mapEntry key="org.eclipse.osgi/debug/events" value="false"/>
-<mapEntry key="org.eclipse.wst.common.environment/trace/warning" value="true"/>
-<mapEntry key="org.eclipse.wst.xml.core/debug" value="true"/>
-<mapEntry key="org.eclipse.core.jobs/jobs/errorondeadlock" value="false"/>
-<mapEntry key="org.eclipse.ui/debug/swtdebugglobal" value="false"/>
-<mapEntry key="org.eclipse.ui.ide/debug/internalerror/openDialog" value="false"/>
-<mapEntry key="org.eclipse.birt.chart.engine/computation.withoutaxes" value="false"/>
-<mapEntry key="org.eclipse.birt.chart.engine/model.component" value="false"/>
-<mapEntry key="org.eclipse.ui.intro.universal/trace/logPerformance" value="false"/>
-<mapEntry key="org.eclipse.ui.ide/debug/markers" value="false"/>
-<mapEntry key="org.eclipse.ui/perf/uijob" value="200"/>
-<mapEntry key="org.eclipse.jdt.core/debug/sourcemapper" value="false"/>
-<mapEntry key="org.eclipse.debug.ui/debug/viewers/deltas" value="false"/>
-<mapEntry key="org.eclipse.osgi/resolver/generics" value="false"/>
-<mapEntry key="org.eclipse.osgi/resolver/wiring" value="false"/>
-<mapEntry key="org.eclipse.jdt.core/perf/javadeltalistener" value="500"/>
-<mapEntry key="org.eclipse.osgi/profile/debug" value="false"/>
-<mapEntry key="com.mountainminds.eclemma.core/debug/analysis" value="true"/>
-<mapEntry key="org.eclipse.tm.terminal/debug/log/char" value="false"/>
-<mapEntry key="org.eclipse.ui/trace/contexts" value="false"/>
-<mapEntry key="org.eclipse.core.contenttype/debug" value="false"/>
-<mapEntry key="org.eclipse.ui/trace/multipageeditor" value="false"/>
-<mapEntry key="org.eclipse.core.resources/build/invoking" value="false"/>
-<mapEntry key="org.eclipse.birt.chart.engine/model.data.util" value="false"/>
-<mapEntry key="org.eclipse.jem.util/debug/loglevel" value="WARNING"/>
-<mapEntry key="org.eclipse.ui/trace/operations" value="false"/>
-<mapEntry key="org.eclipse.core.resources/perf/builders" value="10000"/>
-<mapEntry key="org.eclipse.update.core/debug/type" value="false"/>
-<mapEntry key="org.eclipse.ui/perf/page.listeners" value="200"/>
-<mapEntry key="org.eclipse.birt.chart.engine/model.attribute" value="false"/>
-<mapEntry key="org.eclipse.jdt.ui/perf/explorer/RefactorActionGroup" value="150"/>
-<mapEntry key="org.eclipse.core.resources/history" value="false"/>
-<mapEntry key="org.eclipse.team.core/refreshjob" value="false"/>
-<mapEntry key="org.eclipse.birt.chart.engine/engine.i18n" value="false"/>
-<mapEntry key="org.eclipse.ui.intro/debug" value="true"/>
-<mapEntry key="org.eclipse.jface.text/debug/AbstractInformationControlManager" value="false"/>
-<mapEntry key="org.eclipse.debug.core/debug" value="false"/>
-<mapEntry key="org.eclipse.help/debug" value="true"/>
-<mapEntry key="org.eclipse.jface.text.source/debug/RevisionRulerColumn" value="false"/>
-<mapEntry key="org.eclipse.ui/debug" value="false"/>
-<mapEntry key="org.eclipse.osgi/debug/packageadmin" value="false"/>
-<mapEntry key="org.eclipse.core.resources/build/failure" value="false"/>
-<mapEntry key="org.eclipse.ui/trace/handlers" value="false"/>
-<mapEntry key="org.eclipse.ui/listeners/IWorkbenchPage.IPropertyChangeListener" value="false"/>
-<mapEntry key="org.eclipse.ui.browser/debug" value="false"/>
-<mapEntry key="org.eclipse.wst.common.environment/trace/ws_dt_cmd_engine" value="true"/>
-<mapEntry key="org.eclipse.core.resources/save/tree" value="false"/>
-<mapEntry key="org.eclipse.wst.sse.ui/debug/tracefilter" value=""/>
-<mapEntry key="org.eclipse.help.ui/debug" value="true"/>
-<mapEntry key="org.eclipse.birt.chart.engine/model.type.util" value="false"/>
-<mapEntry key="org.eclipse.core.resources/restore/metainfo" value="false"/>
-<mapEntry key="org.eclipse.core.resources/save/mastertable" value="false"/>
-<mapEntry key="org.eclipse.pde.core/debug" value="true"/>
-<mapEntry key="org.eclipse.wst.sse.ui/extendedconfigurationbuilder/time" value="false"/>
-<mapEntry key="org.eclipse.jdt.core/debug/buffermanager" value="false"/>
-<mapEntry key="org.eclipse.birt.chart.engine/model.layout.impl" value="false"/>
-<mapEntry key="org.eclipse.ui.ide/debug" value="false"/>
-<mapEntry key="org.eclipse.tm.terminal/debug/log/VT100Backend" value="false"/>
-<mapEntry key="org.eclipse.ui.intro/trace/logInfo" value="true"/>
-<mapEntry key="org.eclipse.core.resources/restore/mastertable" value="false"/>
-<mapEntry key="org.eclipse.birt.chart.engine/internal.script" value="false"/>
-<mapEntry key="org.eclipse.ui/experimental/menus" value="false"/>
-<mapEntry key="org.eclipse.pde.core/classpath" value="false"/>
-<mapEntry key="org.eclipse.birt.chart.engine/model.attribute.util" value="false"/>
-</mapAttribute>
-<booleanAttribute key="useDefaultConfig" value="true"/>
-<booleanAttribute key="useDefaultConfigArea" value="false"/>
-<booleanAttribute key="useProduct" value="false"/>
-</launchConfiguration>
diff --git a/bundles/org.eclipse.equinox.ds.tests/META-INF/MANIFEST.MF b/bundles/org.eclipse.equinox.ds.tests/META-INF/MANIFEST.MF
deleted file mode 100644
index 1527566..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,18 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: Declarative Services Tests
-Bundle-Category: test
-Bundle-SymbolicName: org.eclipse.equinox.ds.tests
-Bundle-Version: 1.0.0
-Bundle-Activator: org.eclipse.equinox.ds.tests.DSTestsActivator
-Bundle-ActivationPolicy: lazy
-Import-Package: junit.framework;version="[3.8.2,4.0.0)",
- org.eclipse.osgi.service.urlconversion;version="1.0.0",
- org.osgi.framework;version="1.3.0",
- org.osgi.service.cm;version="1.2.0",
- org.osgi.service.component;version="1.0.0",
- org.osgi.service.log;version="1.3.0",
- org.osgi.service.packageadmin;version="1.2.0",
- org.osgi.service.permissionadmin;version="1.2.0",
- org.osgi.util.tracker;version="1.4.2"
-Export-Package: org.eclipse.equinox.ds.tests.tbc
diff --git a/bundles/org.eclipse.equinox.ds.tests/build.properties b/bundles/org.eclipse.equinox.ds.tests/build.properties
deleted file mode 100644
index 291eb8d..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/build.properties
+++ /dev/null
@@ -1,105 +0,0 @@
-source.. = src/
-bin.includes = META-INF/,\
- .,\
- osgi_config.xml,\
- scr_test/tb1.jar,\
- scr_test/tb1a.jar,\
- scr_test/tb2.jar,\
- scr_test/tb3.jar,\
- scr_test/tb4.jar,\
- scr_test/tb5.jar,\
- scr_test/tb6.jar,\
- scr_test/tb7.jar,\
- scr_test/tb8.jar,\
- scr_test/tb9.jar,\
- scr_test/tb10.jar,\
- scr_test/tb11.jar,\
- scr_test/tb12.jar,\
- scr_test/tb13.jar,\
- scr_test/tb14.jar,\
- scr_test/tb15.jar,\
- scr_test/tb16.jar,\
- scr_test/tb17.jar,\
- scr_test/tb18.jar,\
- scr_test/tb19.jar,\
- scr_test/tb20.jar,\
- scr_test/tb21.jar,\
- scr_test/tb21a.jar,\
- scr_test/tb22.jar,\
- scr_test/tb23.jar
-jars.compile.order = .,\
- scr_test/tb1.jar,\
- scr_test/tb1a.jar,\
- scr_test/tb2.jar,\
- scr_test/tb3.jar,\
- scr_test/tb4.jar,\
- scr_test/tb5.jar,\
- scr_test/tb6.jar,\
- scr_test/tb7.jar,\
- scr_test/tb8.jar,\
- scr_test/tb9.jar,\
- scr_test/tb10.jar,\
- scr_test/tb11.jar,\
- scr_test/tb12.jar,\
- scr_test/tb13.jar,\
- scr_test/tb14.jar,\
- scr_test/tb15.jar,\
- scr_test/tb16.jar,\
- scr_test/tb17.jar,\
- scr_test/tb18.jar,\
- scr_test/tb19.jar,\
- scr_test/tb20.jar,\
- scr_test/tb21.jar,\
- scr_test/tb21a.jar,\
- scr_test/tb22.jar,\
- scr_test/tb23.jar
-source.scr_test/tb1.jar = bundles_src/tb1/
-manifest.scr_test/tb1.jar = META-INF/MANIFEST.MF
-source.scr_test/tb1a.jar = bundles_src/tb1a/
-manifest.scr_test/tb1a.jar = META-INF/MANIFEST.MF
-source.scr_test/tb2.jar = bundles_src/tb2/
-manifest.scr_test/tb2.jar = META-INF/MANIFEST.MF
-source.scr_test/tb3.jar = bundles_src/tb3/
-manifest.scr_test/tb3.jar = META-INF/MANIFEST.MF
-source.scr_test/tb4.jar = bundles_src/tb4/
-manifest.scr_test/tb4.jar = META-INF/MANIFEST.MF
-source.scr_test/tb5.jar = bundles_src/tb5/
-manifest.scr_test/tb5.jar = META-INF/MANIFEST.MF
-source.scr_test/tb6.jar = bundles_src/tb6/
-manifest.scr_test/tb6.jar = META-INF/MANIFEST.MF
-source.scr_test/tb7.jar = bundles_src/tb7/
-manifest.scr_test/tb7.jar = META-INF/MANIFEST.MF
-source.scr_test/tb8.jar = bundles_src/tb8/
-manifest.scr_test/tb8.jar = META-INF/MANIFEST.MF
-source.scr_test/tb9.jar = bundles_src/tb9/
-manifest.scr_test/tb9.jar = META-INF/MANIFEST.MF
-source.scr_test/tb10.jar = bundles_src/tb10/
-manifest.scr_test/tb10.jar = META-INF/MANIFEST.MF
-source.scr_test/tb11.jar = bundles_src/tb11/
-manifest.scr_test/tb11.jar = META-INF/MANIFEST.MF
-source.scr_test/tb12.jar = bundles_src/tb12/
-manifest.scr_test/tb12.jar = META-INF/MANIFEST.MF
-source.scr_test/tb13.jar = bundles_src/tb13/
-manifest.scr_test/tb13.jar = META-INF/MANIFEST.MF
-source.scr_test/tb14.jar = bundles_src/tb14/
-manifest.scr_test/tb14.jar = META-INF/MANIFEST.MF
-source.scr_test/tb15.jar = bundles_src/tb15/
-manifest.scr_test/tb15.jar = META-INF/MANIFEST.MF
-source.scr_test/tb16.jar = bundles_src/tb16/
-manifest.scr_test/tb16.jar = META-INF/MANIFEST.MF
-source.scr_test/tb17.jar = bundles_src/tb17/
-manifest.scr_test/tb17.jar = META-INF/MANIFEST.MF
-source.scr_test/tb18.jar = bundles_src/tb18/
-manifest.scr_test/tb18.jar = META-INF/MANIFEST.MF
-source.scr_test/tb19.jar = bundles_src/tb19/
-manifest.scr_test/tb19.jar = META-INF/MANIFEST.MF
-source.scr_test/tb20.jar = bundles_src/tb20/
-manifest.scr_test/tb20.jar = META-INF/MANIFEST.MF
-source.scr_test/tb21.jar = bundles_src/tb21/
-manifest.scr_test/tb21.jar = META-INF/MANIFEST.MF
-source.scr_test/tb21a.jar = bundles_src/tb21a/
-manifest.scr_test/tb21a.jar = META-INF/MANIFEST.MF
-source.scr_test/tb22.jar = bundles_src/tb22/
-manifest.scr_test/tb22.jar = META-INF/MANIFEST.MF
-source.scr_test/tb23.jar = bundles_src/tb23/
-manifest.scr_test/tb23.jar = META-INF/MANIFEST.MF
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1/META-INF/MANIFEST.MF b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1/META-INF/MANIFEST.MF
deleted file mode 100644
index eba8069..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,9 +0,0 @@
-Manifest-Version: 1.0
-Bundle-Name: Declaritive services test
-Bundle-Description: Declaritive services TB1
-Bundle-Category: test
-Import-Package: org.eclipse.equinox.ds.tests.tbc,
- org.osgi.framework,
- org.osgi.service.component;version="1.0.0"
-Bundle-Activator: org.eclipse.equinox.ds.tests.tb1.impl.Activator
-Service-Component: org/eclipse/equinox/ds/tests/tb1/impl/components.xml
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1/org/eclipse/equinox/ds/tests/tb1/BindUnbindSuccessor.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1/org/eclipse/equinox/ds/tests/tb1/BindUnbindSuccessor.java
deleted file mode 100644
index 6a5783a..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1/org/eclipse/equinox/ds/tests/tb1/BindUnbindSuccessor.java
+++ /dev/null
@@ -1,43 +0,0 @@
-package org.eclipse.equinox.ds.tests.tb1;
-
-import java.util.Dictionary;
-
-import org.eclipse.equinox.ds.tests.tb1.impl.BindUnbind;
-import org.eclipse.equinox.ds.tests.tbc.ComponentContextProvider;
-import org.eclipse.equinox.ds.tests.tbc.ComponentManager;
-import org.osgi.service.component.ComponentContext;
-
-
-public class BindUnbindSuccessor extends BindUnbind implements ComponentManager, ComponentContextProvider {
-
- private ComponentContext ctxt;
-
- public void activate(ComponentContext ctxt) {
- this.ctxt = ctxt;
- }
-
- public void deactivate(ComponentContext ctxt) {
- this.ctxt = null;
- }
-
- public void doNothing() {
-
- }
-
- public ComponentContext getContext() {
- return ctxt;
- }
-
- public void enableComponent(String name, boolean flag) {
- if (flag) ctxt.enableComponent(name);
- else ctxt.disableComponent(name);
- }
-
- public Dictionary getProperties() {
- return ctxt.getProperties();
- }
-
- public ComponentContext getComponentContext() {
- return ctxt;
- }
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1/org/eclipse/equinox/ds/tests/tb1/Immediate.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1/org/eclipse/equinox/ds/tests/tb1/Immediate.java
deleted file mode 100644
index a4addde..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1/org/eclipse/equinox/ds/tests/tb1/Immediate.java
+++ /dev/null
@@ -1,16 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tb1;
-
-public class Immediate {
-
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1/org/eclipse/equinox/ds/tests/tb1/impl/Activator.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1/org/eclipse/equinox/ds/tests/tb1/impl/Activator.java
deleted file mode 100644
index 5d2c9c0..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1/org/eclipse/equinox/ds/tests/tb1/impl/Activator.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tb1.impl;
-
-import org.osgi.framework.BundleActivator;
-import org.osgi.framework.BundleContext;
-
-public class Activator implements BundleActivator {
-
- private BundleContext ctx;
- private static Activator instance;
-
- public Activator() {
- Activator.instance = this;
- }
-
- public void start(BundleContext context) throws Exception {
- this.ctx = context;
- }
-
- public void stop(BundleContext context) throws Exception {
- this.ctx = null;
- }
-
- public static BundleContext getContext() {
- return instance.ctx;
- }
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1/org/eclipse/equinox/ds/tests/tb1/impl/AnotherComponent.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1/org/eclipse/equinox/ds/tests/tb1/impl/AnotherComponent.java
deleted file mode 100644
index 6f4a0a4..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1/org/eclipse/equinox/ds/tests/tb1/impl/AnotherComponent.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tb1.impl;
-
-import java.util.Dictionary;
-
-import org.eclipse.equinox.ds.tests.tbc.BundleContextProvider;
-import org.osgi.framework.BundleContext;
-import org.osgi.service.component.ComponentContext;
-
-
-public class AnotherComponent implements BundleContextProvider {
-
- private ComponentContext ctxt;
- public void activate(ComponentContext ctxt) {
- this.ctxt = ctxt;
- }
- public void deactivate(ComponentContext ctxt) {
- this.ctxt = null;
- }
-
- public ComponentContext getContext() {
- return ctxt;
- }
- public BundleContext getBundleContext() {
- return Activator.getContext();
- }
- public Dictionary getProperties() {
- return null;
- }
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1/org/eclipse/equinox/ds/tests/tb1/impl/BaseComp.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1/org/eclipse/equinox/ds/tests/tb1/impl/BaseComp.java
deleted file mode 100644
index 2c387f8..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1/org/eclipse/equinox/ds/tests/tb1/impl/BaseComp.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tb1.impl;
-
-import java.util.Dictionary;
-
-import org.eclipse.equinox.ds.tests.tbc.ComponentContextProvider;
-import org.osgi.service.component.ComponentContext;
-
-
-public class BaseComp implements ComponentContextProvider {
-
- private ComponentContext ctxt;
-
-
- public void activate(ComponentContext ctxt) {
- this.ctxt = ctxt;
- }
-
- public ComponentContext getComponentContext() {
- return ctxt;
- }
-
- public Dictionary getProperties() {
- return null;
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1/org/eclipse/equinox/ds/tests/tb1/impl/BindUnbind.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1/org/eclipse/equinox/ds/tests/tb1/impl/BindUnbind.java
deleted file mode 100644
index d3a1808..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1/org/eclipse/equinox/ds/tests/tb1/impl/BindUnbind.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tb1.impl;
-
-import java.util.Dictionary;
-import java.util.Vector;
-
-import org.eclipse.equinox.ds.tests.tbc.BoundTester;
-import org.osgi.framework.ServiceReference;
-
-
-public class BindUnbind implements BoundTester {
-
- private Vector boundObjects = new Vector();
-
- public void bindSAComp(ServiceReference sr) {
- if (boundObjects.contains(sr)) {
- } else {
- boundObjects.addElement(sr);
- }
- }
-
- public void unbindSAComp(ServiceReference sr) {
- if (boundObjects.contains(sr)) {
- boundObjects.removeElement(sr);
- }
- }
-
- public Dictionary getProperties() {
- return null;
- }
-
- public int getBoundObjectsCount() {
- return boundObjects.size();
- }
-
- public ServiceReference getBoundServiceRef(int index) {
- return (ServiceReference) boundObjects.elementAt(index);
- }
-
- public Object getBoundService(int index) {
- return null;
- }
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1/org/eclipse/equinox/ds/tests/tb1/impl/Circular1.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1/org/eclipse/equinox/ds/tests/tb1/impl/Circular1.java
deleted file mode 100644
index bb25783..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1/org/eclipse/equinox/ds/tests/tb1/impl/Circular1.java
+++ /dev/null
@@ -1,21 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tb1.impl;
-
-public class Circular1 {
-
-
- public void bindComp2(Circular2 sr) {
- }
- public void unbindComp2(Circular2 sr) {
- }
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1/org/eclipse/equinox/ds/tests/tb1/impl/Circular2.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1/org/eclipse/equinox/ds/tests/tb1/impl/Circular2.java
deleted file mode 100644
index 219d6aa..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1/org/eclipse/equinox/ds/tests/tb1/impl/Circular2.java
+++ /dev/null
@@ -1,21 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tb1.impl;
-
-
-public class Circular2 {
-
- public void bindComp1(Circular1 sr) {
- }
- public void unbindComp1(Circular1 sr) {
- }
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1/org/eclipse/equinox/ds/tests/tb1/impl/components.xml b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1/org/eclipse/equinox/ds/tests/tb1/impl/components.xml
deleted file mode 100644
index e02bbd4..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1/org/eclipse/equinox/ds/tests/tb1/impl/components.xml
+++ /dev/null
@@ -1,56 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<root>
-
-<!-- this below should be ignored by the SCR parser -->
-<ignored>
- <component>
- <service servicefactory="true" />
- </component>
-</ignored>
-
-<scr:component name="org.eclipse.equinox.ds.tests.tb1.impl.AnotherComponent"
- enabled="true"
- immediate="true"
- xmlns:scr="http://www.osgi.org/xmlns/scr/v1.0.0">
- <properties entry="org/eclipse/equinox/ds/tests/tb1/impl/sac.properties"/>
- <property name="test.property.list" value="setFromDefinition"/>
- <property name="test.property.cont" value="setFromDefinition"/>
- <property name="test.property.name" value="setFromDefinition"/>
- <property name="component.name" value="setFromDefinition"/>
- <property name="component.id" value="-1" type="Long"/>
- <implementation class="org.eclipse.equinox.ds.tests.tb1.impl.AnotherComponent"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tb1.impl.AnotherComponent"/>
- </service>
-</scr:component>
-
-<scr:component name="org.eclipse.equinox.ds.tests.tb1.impl.BaseComp"
- enabled="true"
- xmlns:scr="http://www.osgi.org/xmlns/scr/v1.0.0">
- <implementation class="org.eclipse.equinox.ds.tests.tb1.impl.BaseComp"/>
- <property name="custom" value="customvalue"/>
- <service servicefactory="true">
- <provide interface="org.eclipse.equinox.ds.tests.tb1.impl.BaseComp"/>
- </service>
-</scr:component>
-
-<scr:component name="org.eclipse.equinox.ds.tests.tb1.BindUnbindSuccessor"
- enabled="true"
- xmlns:scr="http://www.osgi.org/xmlns/scr/v1.0.0">
- <implementation class="org.eclipse.equinox.ds.tests.tb1.BindUnbindSuccessor"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tb1.BindUnbindSuccessor"/>
- </service>
-
- <reference name="StandAloneComp"
- interface="org.eclipse.equinox.ds.tests.tb1.impl.AnotherComponent"
- target="(component.name=org.eclipse.equinox.ds.tests.tb1.impl.AnotherComponent)"
- bind="bindSAComp"
- unbind="unbindSAComp"
- cardinality="0..n"
- policy="dynamic"
- />
-
-</scr:component>
-
-</root>
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1/org/eclipse/equinox/ds/tests/tb1/impl/sac.properties b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1/org/eclipse/equinox/ds/tests/tb1/impl/sac.properties
deleted file mode 100644
index 064718f..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1/org/eclipse/equinox/ds/tests/tb1/impl/sac.properties
+++ /dev/null
@@ -1,6 +0,0 @@
-test.property.name=setFromFile
-test.property.value=setFromFile
-test.property.array=setFromFile
-# try to override component.name & component.id
-component.name="setFromFile"
-component.id=-1
\ No newline at end of file
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb10/META-INF/MANIFEST.MF b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb10/META-INF/MANIFEST.MF
deleted file mode 100644
index e256179..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb10/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,9 +0,0 @@
-Manifest-Version: 1.0
-Bundle-Name: Declaritive services test
-Bundle-Description: Declaritive services TB10
-Bundle-Category: test
-Import-Package: org.osgi.framework,
- org.osgi.service.component; version="1.0.0",
- org.eclipse.equinox.ds.tests.tbc
-Export-Package: org.eclipse.equinox.ds.tests.tb10
-Service-Component: org/eclipse/equinox/ds/tests/tb10/components.xml
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb10/org/eclipse/equinox/ds/tests/tb10/CountFactory.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb10/org/eclipse/equinox/ds/tests/tb10/CountFactory.java
deleted file mode 100644
index d61e346..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb10/org/eclipse/equinox/ds/tests/tb10/CountFactory.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tb10;
-
-import java.util.ArrayList;
-import java.util.Dictionary;
-import java.util.List;
-
-import org.eclipse.equinox.ds.tests.tbc.BoundCountProvider;
-import org.osgi.framework.ServiceReference;
-
-
-public class CountFactory implements BoundCountProvider {
-
- private List boundServices = new ArrayList();
-
- public int getBoundServiceCount(String service) {
- return boundServices.size();
- }
-
- public void bindService(ServiceReference ref) {
- boundServices.add(ref);
- }
-
- public void unbindService(ServiceReference ref) {
- boundServices.remove(ref);
- }
-
- public Dictionary getProperties() {
- return null;
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb10/org/eclipse/equinox/ds/tests/tb10/CountHelperFactory.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb10/org/eclipse/equinox/ds/tests/tb10/CountHelperFactory.java
deleted file mode 100644
index 791aace..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb10/org/eclipse/equinox/ds/tests/tb10/CountHelperFactory.java
+++ /dev/null
@@ -1,16 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tb10;
-
-public class CountHelperFactory {
-
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb10/org/eclipse/equinox/ds/tests/tb10/components.xml b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb10/org/eclipse/equinox/ds/tests/tb10/components.xml
deleted file mode 100644
index 7391e52..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb10/org/eclipse/equinox/ds/tests/tb10/components.xml
+++ /dev/null
@@ -1,49 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<components xmlns="http://www.osgi.org/xmlns/scr/v1.0.0">
-
- <component name="ServiceCountHelperFactory" factory="CountHelperFactory">
- <implementation class="org.eclipse.equinox.ds.tests.tb10.CountHelperFactory"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tb10.CountHelperFactory"/>
- </service>
- </component>
-
- <component name="ServiceCountFactory" factory="CountFactory">
- <implementation class="org.eclipse.equinox.ds.tests.tb10.CountFactory"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.BoundCountProvider"/>
- </service>
- <reference name="HELPERFACTORY"
- interface="org.eclipse.equinox.ds.tests.tb10.CountHelperFactory"
- cardinality="0..n"
- policy="dynamic"
- bind="bindService"
- unbind="unbindService"/>
- <reference name="SIMPLECOMPONENT"
- interface="org.eclipse.equinox.ds.tests.tb1.impl.BaseComp"
- cardinality="0..n"
- policy="dynamic"
- bind="bindService"
- unbind="unbindService"/>
- </component>
-
- <component name="StaticServiceCountFactory" factory="StaticServiceCountFactory">
- <implementation class="org.eclipse.equinox.ds.tests.tb10.CountFactory"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.BoundCountProvider"/>
- </service>
- <reference name="HELPERFACTORY"
- interface="org.eclipse.equinox.ds.tests.tb10.CountHelperFactory"
- cardinality="0..n"
- policy="static"
- bind="bindService"
- unbind="unbindService"/>
- <reference name="SIMPLECOMPONENT"
- interface="org.eclipse.equinox.ds.tests.tb1.impl.BaseComp"
- cardinality="0..n"
- policy="static"
- bind="bindService"
- unbind="unbindService"/>
- </component>
-
-</components>
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb11/META-INF/MANIFEST.MF b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb11/META-INF/MANIFEST.MF
deleted file mode 100644
index ca5c34d..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb11/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,15 +0,0 @@
-Manifest-Version: 1.0
-Bundle-Name: Declaritive services test
-Bundle-Description: Declaritive services TB11
-Bundle-Category: test
-Import-Package: org.eclipse.equinox.ds.tests.tbc,
- org.osgi.framework,
- org.osgi.service.component;version="1.0.0"
-Service-Component: org/eclipse/equinox/ds/tests/tb11/optional100.xml,
- org/eclipse/equinox/ds/tests/tb11/optional110.xml,
- org/eclipse/equinox/ds/tests/tb11/require100.xml,
- org/eclipse/equinox/ds/tests/tb11/require110.xml,
- org/eclipse/equinox/ds/tests/tb11/ignore100.xml,
- org/eclipse/equinox/ds/tests/tb11/ignore110.xml,
- org/eclipse/equinox/ds/tests/tb11/notset100.xml,
- org/eclipse/equinox/ds/tests/tb11/notset110.xml
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb11/org/eclipse/equinox/ds/tests/tb11/ConfigurationPolicyComp.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb11/org/eclipse/equinox/ds/tests/tb11/ConfigurationPolicyComp.java
deleted file mode 100644
index 9cfbb82..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb11/org/eclipse/equinox/ds/tests/tb11/ConfigurationPolicyComp.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tb11;
-
-import java.util.Dictionary;
-
-import org.eclipse.equinox.ds.tests.tbc.PropertiesProvider;
-import org.osgi.service.component.ComponentContext;
-
-
-public class ConfigurationPolicyComp implements PropertiesProvider {
- private ComponentContext ctxt;
-
- protected void activate(ComponentContext ctxt) {
- this.ctxt = ctxt;
- }
-
- protected void deactivate(ComponentContext ctxt) {
-
- }
-
- public Dictionary getProperties() {
- if (ctxt == null)
- return null;
-
- return ctxt.getProperties();
- }
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb11/org/eclipse/equinox/ds/tests/tb11/ignore100.xml b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb11/org/eclipse/equinox/ds/tests/tb11/ignore100.xml
deleted file mode 100644
index 93848ca..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb11/org/eclipse/equinox/ds/tests/tb11/ignore100.xml
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- This component has ignore confuguration policy, but old XML Schema -->
-
-<component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb11.ignoreNS100"
- configuration-policy="ignore"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb11.ConfigurationPolicyComp"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- </service>
-</component>
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb11/org/eclipse/equinox/ds/tests/tb11/ignore110.xml b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb11/org/eclipse/equinox/ds/tests/tb11/ignore110.xml
deleted file mode 100644
index ed63fc6..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb11/org/eclipse/equinox/ds/tests/tb11/ignore110.xml
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- This component has ignore confuguration policy, and new XML Schema -->
-
-<component
- xmlns="http://www.osgi.org/xmlns/scr/v1.1.0"
- name="org.eclipse.equinox.ds.tests.tb11.ignoreNS110"
- configuration-policy="ignore"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb11.ConfigurationPolicyComp"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- </service>
-</component>
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb11/org/eclipse/equinox/ds/tests/tb11/notset100.xml b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb11/org/eclipse/equinox/ds/tests/tb11/notset100.xml
deleted file mode 100644
index 802b5f8..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb11/org/eclipse/equinox/ds/tests/tb11/notset100.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- This component has not confuguration policy set and old XML Schema -->
-
-<component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb11.notsetNS100"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb11.ConfigurationPolicyComp"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- </service>
-</component>
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb11/org/eclipse/equinox/ds/tests/tb11/notset110.xml b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb11/org/eclipse/equinox/ds/tests/tb11/notset110.xml
deleted file mode 100644
index c2580c4..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb11/org/eclipse/equinox/ds/tests/tb11/notset110.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- This component has not confuguration policy set and new XML Schema -->
-
-<component
- xmlns="http://www.osgi.org/xmlns/scr/v1.1.0"
- name="org.eclipse.equinox.ds.tests.tb11.notsetNS110"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb11.ConfigurationPolicyComp"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- </service>
-</component>
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb11/org/eclipse/equinox/ds/tests/tb11/optional100.xml b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb11/org/eclipse/equinox/ds/tests/tb11/optional100.xml
deleted file mode 100644
index fa64be4..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb11/org/eclipse/equinox/ds/tests/tb11/optional100.xml
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- This component has optional confuguration policy, but old XML Schema -->
-
-<component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb11.optionalNS100"
- configuration-policy="optional"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb11.ConfigurationPolicyComp"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- </service>
-</component>
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb11/org/eclipse/equinox/ds/tests/tb11/optional110.xml b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb11/org/eclipse/equinox/ds/tests/tb11/optional110.xml
deleted file mode 100644
index 406ee21..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb11/org/eclipse/equinox/ds/tests/tb11/optional110.xml
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- This component has optional confuguration policy, and new XML Schema -->
-
-<component
- xmlns="http://www.osgi.org/xmlns/scr/v1.1.0"
- name="org.eclipse.equinox.ds.tests.tb11.optionalNS110"
- configuration-policy="optional"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb11.ConfigurationPolicyComp"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- </service>
-</component>
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb11/org/eclipse/equinox/ds/tests/tb11/require100.xml b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb11/org/eclipse/equinox/ds/tests/tb11/require100.xml
deleted file mode 100644
index c8ebcd0..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb11/org/eclipse/equinox/ds/tests/tb11/require100.xml
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- This component has require confuguration policy, but old XML Schema -->
-
-<component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb11.requireNS100"
- configuration-policy="require"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb11.ConfigurationPolicyComp"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- </service>
-</component>
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb11/org/eclipse/equinox/ds/tests/tb11/require110.xml b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb11/org/eclipse/equinox/ds/tests/tb11/require110.xml
deleted file mode 100644
index 836dfc5..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb11/org/eclipse/equinox/ds/tests/tb11/require110.xml
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- This component has require confuguration policy, and new XML Schema -->
-
-<component
- xmlns="http://www.osgi.org/xmlns/scr/v1.1.0"
- name="org.eclipse.equinox.ds.tests.tb11.requireNS110"
- configuration-policy="require"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb11.ConfigurationPolicyComp"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- </service>
-</component>
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb12/META-INF/MANIFEST.MF b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb12/META-INF/MANIFEST.MF
deleted file mode 100644
index 1caeb82..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb12/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,8 +0,0 @@
-Manifest-Version: 1.0
-Bundle-Name: Declaritive services test
-Bundle-Description: Declaritive services TB12
-Bundle-Category: test
-Import-Package: org.eclipse.equinox.ds.tests.tbc,
- org.osgi.framework,
- org.osgi.service.component;version="1.0.0"
-Service-Component: org/eclipse/equinox/ds/tests/tb12/components.xml
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb12/org/eclipse/equinox/ds/tests/tb12/Bc100.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb12/org/eclipse/equinox/ds/tests/tb12/Bc100.java
deleted file mode 100644
index e691a4d..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb12/org/eclipse/equinox/ds/tests/tb12/Bc100.java
+++ /dev/null
@@ -1,20 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tb12;
-
-public class Bc100 extends CallRegistrator {
-
- public String getName() {
- return "org.eclipse.equinox.ds.tests.tb12.Bc100";
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb12/org/eclipse/equinox/ds/tests/tb12/Bc110.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb12/org/eclipse/equinox/ds/tests/tb12/Bc110.java
deleted file mode 100644
index 5c351a4..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb12/org/eclipse/equinox/ds/tests/tb12/Bc110.java
+++ /dev/null
@@ -1,20 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tb12;
-
-public class Bc110 extends CallRegistrator {
-
- public String getName() {
- return "org.eclipse.equinox.ds.tests.tb12.Bc110";
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb12/org/eclipse/equinox/ds/tests/tb12/CallRegistrator.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb12/org/eclipse/equinox/ds/tests/tb12/CallRegistrator.java
deleted file mode 100644
index 8af8fcc..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb12/org/eclipse/equinox/ds/tests/tb12/CallRegistrator.java
+++ /dev/null
@@ -1,137 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tb12;
-
-import java.util.Dictionary;
-import java.util.Iterator;
-import java.util.Map;
-import java.util.Properties;
-
-import org.eclipse.equinox.ds.tests.tbc.ComponentContextProvider;
-import org.osgi.framework.BundleContext;
-import org.osgi.service.component.ComponentConstants;
-import org.osgi.service.component.ComponentContext;
-
-
-public class CallRegistrator implements ComponentContextProvider {
- private Dictionary properties;
- private ComponentContext ctxt;
- private static final int ACTIVATE_CC = 1 << 0;
- private static final int DEACTIVATE_CC = 1 << 1;
- private static final int ACT = 1 << 2;
- private static final int DEACT = 1 << 3;
- private static final int ACT_CC = 1 << 4;
- private static final int DEACT_CC = 1 << 5;
- private static final int ACT_BC = 1 << 6;
- private static final int DEACT_BC = 1 << 7;
- private static final int ACT_MAP = 1 << 8;
- private static final int DEACT_MAP = 1 << 9;
- private static final int ACT_CC_BC_MAP = 1 << 10;
- private static final int DEACT_CC_BC_MAP = 1 << 11;
- private static final int DEACT_INT = 1 << 12;
- private static final int DEACT_CC_BC_MAP_INT = 1 << 13;
-
- protected void activate(ComponentContext ctxt) {
- this.ctxt = ctxt;
- properties = ctxt.getProperties();
- setDataBits(ACTIVATE_CC);
- }
-
- protected void deactivate(ComponentContext ctxt) {
- setDataBits(DEACTIVATE_CC);
- }
-
- protected void act() {
- properties = new Properties();
- properties.put(ComponentConstants.COMPONENT_NAME, getName());
- setDataBits(ACT);
- }
-
- protected void deact() {
- setDataBits(DEACT);
- }
-
- protected void actCc(ComponentContext ctxt) {
- this.ctxt = ctxt;
- properties = ctxt.getProperties();
- setDataBits(ACT_CC);
- }
-
- protected void deactCc(ComponentContext ctxt) {
- setDataBits(DEACT_CC);
- }
-
- protected void actBc(BundleContext bc) {
- properties = new Properties();
- properties.put(ComponentConstants.COMPONENT_NAME, getName());
- setDataBits(ACT_BC);
- }
-
- protected void deactBc(BundleContext bc) {
- setDataBits(DEACT_BC);
- }
-
- protected void actMap(Map props) {
- properties = new Properties();
- Iterator it = props.keySet().iterator();
- while (it.hasNext()) {
- Object key = it.next();
- properties.put(key, props.get(key));
- }
- setDataBits(ACT_MAP);
- }
-
- protected void deactMap(Map props) {
- setDataBits(DEACT_MAP);
- }
-
- protected void actCcBcMap(ComponentContext ctxt, BundleContext bc, Map props) {
- this.ctxt = ctxt;
- properties = ctxt.getProperties();
- setDataBits(ACT_CC_BC_MAP);
- }
-
- protected void deactCcBcMap(ComponentContext ctxt, BundleContext bc, Map props) {
- setDataBits(DEACT_CC_BC_MAP);
- }
-
- protected void deactInt(int reason) {
- setDataBits(DEACT_INT | reason << 16);
- }
-
- protected void deactCcBcMapInt(ComponentContext ctxt, BundleContext bc,
- Map props, int reason) {
- setDataBits(DEACT_CC_BC_MAP_INT | reason << 16);
- }
-
- public Dictionary getProperties() {
- return properties;
- }
-
- private void setDataBits(int value) {
- if (properties == null) {
- return;
- }
- Object prop = properties.get("config.base.data");
- int data = (prop instanceof Integer) ? ((Integer) prop).intValue() : 0;
- properties.put("config.base.data", new Integer(data | value));
- }
-
- // Successors should override
- public String getName() {
- return "name.unknown";
- }
-
- public ComponentContext getComponentContext() {
- return ctxt;
- }
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb12/org/eclipse/equinox/ds/tests/tb12/ContextExp.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb12/org/eclipse/equinox/ds/tests/tb12/ContextExp.java
deleted file mode 100644
index ad7717c..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb12/org/eclipse/equinox/ds/tests/tb12/ContextExp.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tb12;
-
-import java.util.Dictionary;
-
-import org.eclipse.equinox.ds.tests.tbc.ComponentContextProvider;
-import org.osgi.service.component.ComponentContext;
-
-
-public class ContextExp implements ComponentContextProvider {
- private ComponentContext ctxt;
- Dictionary properties;
-
- protected void activate(ComponentContext ctxt) {
- this.ctxt = ctxt;
- properties = ctxt.getProperties();
- }
-
- protected void deactivate(ComponentContext ctxt) {
-
- }
-
- public ComponentContext getComponentContext() {
- return ctxt;
- }
-
- public Dictionary getProperties() {
- return properties;
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb12/org/eclipse/equinox/ds/tests/tb12/NoArgs100.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb12/org/eclipse/equinox/ds/tests/tb12/NoArgs100.java
deleted file mode 100644
index 165f8e2..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb12/org/eclipse/equinox/ds/tests/tb12/NoArgs100.java
+++ /dev/null
@@ -1,20 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tb12;
-
-public class NoArgs100 extends CallRegistrator {
-
- public String getName() {
- return "org.eclipse.equinox.ds.tests.tb12.NoArgs100";
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb12/org/eclipse/equinox/ds/tests/tb12/NoArgs110.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb12/org/eclipse/equinox/ds/tests/tb12/NoArgs110.java
deleted file mode 100644
index a1c05f2..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb12/org/eclipse/equinox/ds/tests/tb12/NoArgs110.java
+++ /dev/null
@@ -1,20 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tb12;
-
-public class NoArgs110 extends CallRegistrator {
-
- public String getName() {
- return "org.eclipse.equinox.ds.tests.tb12.NoArgs110";
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb12/org/eclipse/equinox/ds/tests/tb12/components.xml b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb12/org/eclipse/equinox/ds/tests/tb12/components.xml
deleted file mode 100644
index 683cc65..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb12/org/eclipse/equinox/ds/tests/tb12/components.xml
+++ /dev/null
@@ -1,213 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<components>
-
- <!-- This component has not set activate/deactivate methods and old XML Schema -->
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb12.notsetNS100"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb12.CallRegistrator"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- </service>
- </component>
-
- <!-- This component has not set activate/deactivate methods and new XML Schema -->
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.1.0"
- name="org.eclipse.equinox.ds.tests.tb12.notsetNS110"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb12.CallRegistrator"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- </service>
- </component>
-
- <!-- This component has set activate/deactivate methods and old XML Schema -->
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb12.NoArgs100"
- activate="act"
- deactivate="deact"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb12.NoArgs100"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- </service>
- </component>
-
- <!-- This component has set activate/deactivate methods and new XML Schema -->
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.1.0"
- name="org.eclipse.equinox.ds.tests.tb12.NoArgs110"
- activate="act"
- deactivate="deact"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb12.NoArgs110"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- </service>
- </component>
-
- <!-- This component has set activate/deactivate methods and old XML Schema -->
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb12.CcNS100"
- activate="actCc"
- deactivate="deactCc"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb12.CallRegistrator"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- </service>
- </component>
-
- <!-- This component has set activate/deactivate methods and new XML Schema -->
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.1.0"
- name="org.eclipse.equinox.ds.tests.tb12.CcNS110"
- activate="actCc"
- deactivate="deactCc"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb12.CallRegistrator"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- </service>
- </component>
-
- <!-- This component has set activate/deactivate methods and old XML Schema -->
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb12.Bc100"
- activate="actBc"
- deactivate="deactBc"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb12.Bc100"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- </service>
- </component>
-
- <!-- This component has set activate/deactivate methods and new XML Schema -->
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.1.0"
- name="org.eclipse.equinox.ds.tests.tb12.Bc110"
- activate="actBc"
- deactivate="deactBc"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb12.Bc110"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- </service>
- </component>
-
- <!-- This component has set activate/deactivate methods and old XML Schema -->
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb12.MapNS100"
- activate="actMap"
- deactivate="deactMap"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb12.CallRegistrator"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- </service>
- </component>
-
- <!-- This component has set activate/deactivate methods and new XML Schema -->
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.1.0"
- name="org.eclipse.equinox.ds.tests.tb12.MapNS110"
- activate="actMap"
- deactivate="deactMap"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb12.CallRegistrator"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- </service>
- </component>
-
- <!-- This component has set activate/deactivate methods and old XML Schema -->
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb12.CcBcMapNS100"
- activate="actCcBcMap"
- deactivate="deactCcBcMap"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb12.CallRegistrator"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- </service>
- </component>
-
- <!-- This component has set activate/deactivate methods and new XML Schema -->
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.1.0"
- name="org.eclipse.equinox.ds.tests.tb12.CcBcMapNS110"
- activate="actCcBcMap"
- deactivate="deactCcBcMap"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb12.CallRegistrator"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- </service>
- </component>
-
- <!-- This component has set activate/deactivate methods and new XML Schema -->
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.1.0"
- name="org.eclipse.equinox.ds.tests.tb12.IntNS110"
- activate="activate"
- deactivate="deactInt"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb12.CallRegistrator"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- </service>
- </component>
-
- <!-- This component has set activate/deactivate methods and new XML Schema -->
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.1.0"
- name="org.eclipse.equinox.ds.tests.tb12.CcBcMapIntNS110"
- activate="activate"
- deactivate="deactCcBcMapInt"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb12.CallRegistrator"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- </service>
- <reference
- name="org.eclipse.equinox.ds.tests.tb12.ContextExp"
- interface="org.eclipse.equinox.ds.tests.tb12.ContextExp"/>
- </component>
-
-
-
- <!-- This component provides ComponentContext -->
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb12.ContextExp"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb12.ContextExp"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tb12.ContextExp"/>
- </service>
- </component>
-
-</components>
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb13/META-INF/MANIFEST.MF b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb13/META-INF/MANIFEST.MF
deleted file mode 100644
index af53b89..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb13/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,8 +0,0 @@
-Manifest-Version: 1.0
-Bundle-Name: Declaritive services test
-Bundle-Description: Declaritive services TB13
-Bundle-Category: test
-Import-Package: org.eclipse.equinox.ds.tests.tbc,
- org.osgi.framework,
- org.osgi.service.component;version="1.0.0"
-Service-Component: org/eclipse/equinox/ds/tests/tb13/components.xml
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb13/org/eclipse/equinox/ds/tests/tb13/BindUnbindRegistrator.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb13/org/eclipse/equinox/ds/tests/tb13/BindUnbindRegistrator.java
deleted file mode 100644
index 35b425f..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb13/org/eclipse/equinox/ds/tests/tb13/BindUnbindRegistrator.java
+++ /dev/null
@@ -1,93 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tb13;
-
-import java.util.Dictionary;
-import java.util.Enumeration;
-import java.util.Map;
-import java.util.Properties;
-
-import org.eclipse.equinox.ds.tests.tbc.PropertiesProvider;
-import org.eclipse.equinox.ds.tests.tbc.ComponentManager;
-import org.osgi.framework.ServiceReference;
-import org.osgi.service.component.ComponentContext;
-
-
-public class BindUnbindRegistrator implements PropertiesProvider {
- private Dictionary properties = new Properties();
- private ComponentContext ctxt;
- private static final int BIND_SR = 1 << 0;
- private static final int UNBIND_SR = 1 << 1;
- private static final int BIND_CM = 1 << 2;
- private static final int UNBIND_CM = 1 << 3;
- private static final int BIND_CM_MAP = 1 << 4;
- private static final int UNBIND_CM_MAP = 1 << 5;
-
- protected void activate(ComponentContext ctxt) {
- this.ctxt = ctxt;
- Dictionary props = ctxt.getProperties();
- Enumeration en = props.keys();
- while (en.hasMoreElements()) {
- Object key = en.nextElement();
- properties.put(key, props.get(key));
- }
- }
-
- protected void deactivate(ComponentContext ctxt) {
-
- }
-
- protected void bindSr(ServiceReference sr) {
- setDataBits(BIND_SR);
- }
-
- protected void unbindSr(ServiceReference sr) {
- setDataBits(UNBIND_SR);
- }
-
- protected void unbindCmMap2(ComponentManager sr, Map props) {
- setDataBits(UNBIND_CM_MAP);
- }
-
- protected void bindCm(ComponentManager ce) {
- setDataBits(BIND_CM);
- }
-
- protected void unbindCm(ComponentManager ce) {
- setDataBits(UNBIND_CM);
- }
-
- protected void bindCmMap(ComponentManager ce, Map props) {
- setDataBits(BIND_CM_MAP);
- }
-
- protected void unbindCmMap(ComponentManager ce, Map props) {
- setDataBits(UNBIND_CM_MAP);
- }
-
- public Dictionary getProperties() {
- return properties;
- }
-
- private void setDataBits(int value) {
- if (properties == null) {
- return;
- }
- Object prop = properties.get("config.base.data");
- int data = (prop instanceof Integer) ? ((Integer) prop).intValue() : 0;
- properties.put("config.base.data", new Integer(data | value));
- }
-
- public ComponentContext getComponentContext() {
- return ctxt;
- }
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb13/org/eclipse/equinox/ds/tests/tb13/Enabler.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb13/org/eclipse/equinox/ds/tests/tb13/Enabler.java
deleted file mode 100644
index a2653eb..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb13/org/eclipse/equinox/ds/tests/tb13/Enabler.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tb13;
-
-import java.util.Dictionary;
-
-import org.eclipse.equinox.ds.tests.tbc.ComponentManager;
-import org.osgi.service.component.ComponentContext;
-
-
-public class Enabler implements ComponentManager {
- private ComponentContext ctxt;
-
- public void activate(ComponentContext ctxt) {
- this.ctxt = ctxt;
- }
-
- public void deactivate(ComponentContext ctxt) {
- this.ctxt = null;
- }
-
- public void enableComponent(String name, boolean flag) {
- if (flag) ctxt.enableComponent(name);
- else ctxt.disableComponent(name);
- }
-
- public Dictionary getProperties() {
- return ctxt.getProperties();
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb13/org/eclipse/equinox/ds/tests/tb13/components.xml b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb13/org/eclipse/equinox/ds/tests/tb13/components.xml
deleted file mode 100644
index e477a6b..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb13/org/eclipse/equinox/ds/tests/tb13/components.xml
+++ /dev/null
@@ -1,118 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<components>
-
- <!-- This component provides ComponentManager service which other components use -->
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb13.Enabler"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb13.Enabler"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.ComponentManager"/>
- </service>
- </component>
-
- <!-- bind/unbind with ServiceReference; old XML Schema -->
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb13.SrNS100"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb13.BindUnbindRegistrator"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- </service>
- <reference
- bind="bindSr"
- interface="org.eclipse.equinox.ds.tests.tbc.ComponentManager"
- name="componentenabler"
- unbind="unbindSr"/>
- </component>
-
- <!-- bind/unbind with ServiceReference; new XML Schema -->
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.1.0"
- name="org.eclipse.equinox.ds.tests.tb13.SrNS110"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb13.BindUnbindRegistrator"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- </service>
- <reference
- bind="bindSr"
- interface="org.eclipse.equinox.ds.tests.tbc.ComponentManager"
- name="componentenabler"
- unbind="unbindCmMap2"/>
- </component>
-
- <!-- bind/unbind with ComponentEnabler; old XML Schema -->
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb13.CeNS100"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb13.BindUnbindRegistrator"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- </service>
- <reference
- bind="bindCm"
- interface="org.eclipse.equinox.ds.tests.tbc.ComponentManager"
- name="componentenabler"
- unbind="unbindCm"/>
- </component>
-
- <!-- bind/unbind with ComponentEnabler; new XML Schema -->
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.1.0"
- name="org.eclipse.equinox.ds.tests.tb13.CeNS110"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb13.BindUnbindRegistrator"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- </service>
- <reference
- bind="bindCm"
- interface="org.eclipse.equinox.ds.tests.tbc.ComponentManager"
- name="componentenabler"
- unbind="unbindCm"/>
- </component>
-
- <!-- bind/unbind with ComponentEnabler, Map; old XML Schema -->
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb13.CeMapNS100"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb13.BindUnbindRegistrator"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- </service>
- <reference
- bind="bindCmMap"
- interface="org.eclipse.equinox.ds.tests.tbc.ComponentManager"
- name="componentenabler"
- unbind="unbindCmMap"/>
- </component>
-
- <!-- bind/unbind with ComponentEnabler, Map; new XML Schema -->
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.1.0"
- name="org.eclipse.equinox.ds.tests.tb13.CeMapNS110"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb13.BindUnbindRegistrator"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- </service>
- <reference
- bind="bindCmMap"
- interface="org.eclipse.equinox.ds.tests.tbc.ComponentManager"
- name="componentenabler"
- unbind="unbindCmMap"/>
- </component>
-
-</components>
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb14/META-INF/MANIFEST.MF b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb14/META-INF/MANIFEST.MF
deleted file mode 100644
index 9ba35c5..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb14/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,8 +0,0 @@
-Manifest-Version: 1.0
-Bundle-Name: Declaritive services test
-Bundle-Description: Declaritive services TB14
-Bundle-Category: test
-Import-Package: org.eclipse.equinox.ds.tests.tbc,
- org.osgi.framework,
- org.osgi.service.component;version="1.0.0"
-Service-Component: org/eclipse/equinox/ds/tests/tb14/components.xml
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb14/org/eclipse/equinox/ds/tests/tb14/ContextExp.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb14/org/eclipse/equinox/ds/tests/tb14/ContextExp.java
deleted file mode 100644
index 8860dac..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb14/org/eclipse/equinox/ds/tests/tb14/ContextExp.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tb14;
-
-import java.util.Dictionary;
-
-import org.eclipse.equinox.ds.tests.tbc.ComponentContextProvider;
-import org.osgi.service.component.ComponentContext;
-
-
-public class ContextExp implements ComponentContextProvider {
-
- public ComponentContext getComponentContext() {
- return null;
- }
-
- public Dictionary getProperties() {
- return null;
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb14/org/eclipse/equinox/ds/tests/tb14/Optional.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb14/org/eclipse/equinox/ds/tests/tb14/Optional.java
deleted file mode 100644
index 95ff3a5..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb14/org/eclipse/equinox/ds/tests/tb14/Optional.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tb14;
-
-import java.util.Dictionary;
-
-import org.eclipse.equinox.ds.tests.tbc.PropertiesProvider;
-import org.eclipse.equinox.ds.tests.tbc.ComponentContextProvider;
-import org.osgi.service.component.ComponentContext;
-
-
-public class Optional implements PropertiesProvider, ComponentContextProvider {
- private Dictionary properties;
- private ComponentContext ctxt;
-
- protected void activate(ComponentContext ctxt) {
- this.ctxt = ctxt;
- properties = ctxt.getProperties();
- }
-
- protected void deactivate(ComponentContext ctxt) {
-
- }
-
- public Dictionary getProperties() {
- return properties;
- }
-
- public ComponentContext getComponentContext() {
- return ctxt;
- }
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb14/org/eclipse/equinox/ds/tests/tb14/Optional2.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb14/org/eclipse/equinox/ds/tests/tb14/Optional2.java
deleted file mode 100644
index d325e0a..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb14/org/eclipse/equinox/ds/tests/tb14/Optional2.java
+++ /dev/null
@@ -1,16 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tb14;
-
-public class Optional2 extends Optional {
-
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb14/org/eclipse/equinox/ds/tests/tb14/components.xml b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb14/org/eclipse/equinox/ds/tests/tb14/components.xml
deleted file mode 100644
index 9f8dc93..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb14/org/eclipse/equinox/ds/tests/tb14/components.xml
+++ /dev/null
@@ -1,65 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<components>
-
- <!-- This component provides ComponentContextExposer service which other components use -->
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb14.ContextExp"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb14.ContextExp"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.ComponentContextProvider"/>
- </service>
- </component>
-
- <!-- Component name not set; old XML Schema -->
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb14.Optional"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- </service>
- </component>
-
- <!-- Component name not set; new XML Schema -->
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.1.0"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb14.Optional2"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- </service>
- </component>
-
- <!-- Reference name not set; old XML Schema -->
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb14.OptRef100"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb14.Optional"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- </service>
- <reference
- interface="org.eclipse.equinox.ds.tests.tbc.ComponentContextProvider"/>
- </component>
-
- <!-- Reference name not set; new XML Schema -->
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.1.0"
- name="org.eclipse.equinox.ds.tests.tb14.OptRef110"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb14.Optional"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- </service>
- <reference
- interface="org.eclipse.equinox.ds.tests.tbc.ComponentContextProvider"/>
- </component>
-</components>
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb15/META-INF/MANIFEST.MF b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb15/META-INF/MANIFEST.MF
deleted file mode 100644
index 4dee023..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb15/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,8 +0,0 @@
-Manifest-Version: 1.0
-Bundle-Name: Declaritive services test
-Bundle-Description: Declaritive services TB15
-Bundle-Category: test
-Import-Package: org.eclipse.equinox.ds.tests.tbc,
- org.osgi.framework,
- org.osgi.service.component;version="1.0.0"
-Service-Component: org/eclipse/equinox/ds/tests/tb15/components.xml
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb15/org/eclipse/equinox/ds/tests/tb15/Component1.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb15/org/eclipse/equinox/ds/tests/tb15/Component1.java
deleted file mode 100644
index 8c2e2cd..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb15/org/eclipse/equinox/ds/tests/tb15/Component1.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tb15;
-
-import java.util.Dictionary;
-
-import org.eclipse.equinox.ds.tests.tbc.PropertiesProvider;
-import org.eclipse.equinox.ds.tests.tbc.ComponentContextProvider;
-import org.osgi.service.component.ComponentContext;
-
-
-public class Component1 implements PropertiesProvider, ComponentContextProvider {
- protected static int deactCount = 0;
- private int deactPos = -1;
- private Dictionary properties;
- private ComponentContext ctxt;
-
- protected void activate(ComponentContext ctxt) {
- this.ctxt = ctxt;
- properties = ctxt.getProperties();
- }
-
- protected void deactivate(ComponentContext ctxt) {
- deactPos = deactCount++;
- properties.put("config.base.data", new Integer(deactPos));
- }
-
- public Dictionary getProperties() {
- return properties;
- }
-
- public int getDeactivationPos() {
- return deactPos;
- }
-
- public ComponentContext getComponentContext() {
- return ctxt;
- }
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb15/org/eclipse/equinox/ds/tests/tb15/Component2.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb15/org/eclipse/equinox/ds/tests/tb15/Component2.java
deleted file mode 100644
index 53fcb88..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb15/org/eclipse/equinox/ds/tests/tb15/Component2.java
+++ /dev/null
@@ -1,16 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tb15;
-
-public class Component2 extends Component1 {
-
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb15/org/eclipse/equinox/ds/tests/tb15/Component3.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb15/org/eclipse/equinox/ds/tests/tb15/Component3.java
deleted file mode 100644
index d5eb881..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb15/org/eclipse/equinox/ds/tests/tb15/Component3.java
+++ /dev/null
@@ -1,16 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tb15;
-
-public class Component3 extends Component1 {
-
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb15/org/eclipse/equinox/ds/tests/tb15/components.xml b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb15/org/eclipse/equinox/ds/tests/tb15/components.xml
deleted file mode 100644
index 25ac516..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb15/org/eclipse/equinox/ds/tests/tb15/components.xml
+++ /dev/null
@@ -1,48 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<components>
-
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb15.Component1"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb15.Component1"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- <provide interface="org.eclipse.equinox.ds.tests.tb15.Component1"/>
- </service>
- </component>
-
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb15.Component2"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb15.Component2"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- <provide interface="org.eclipse.equinox.ds.tests.tb15.Component2"/>
- </service>
- <reference
- interface="org.eclipse.equinox.ds.tests.tb15.Component1"
- name="c1"/>
- </component>
-
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb15.Component3"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb15.Component3"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- </service>
- <reference
- interface="org.eclipse.equinox.ds.tests.tb15.Component1"
- name="c1"/>
- <reference
- interface="org.eclipse.equinox.ds.tests.tb15.Component2"
- name="c2"/>
- </component>
-
-</components>
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb16/META-INF/MANIFEST.MF b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb16/META-INF/MANIFEST.MF
deleted file mode 100644
index deedbcf..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb16/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,8 +0,0 @@
-Manifest-Version: 1.0
-Bundle-Name: Declaritive services test
-Bundle-Description: Declaritive services TB16
-Bundle-Category: test
-Import-Package: org.eclipse.equinox.ds.tests.tbc,
- org.osgi.framework,
- org.osgi.service.component;version="1.0.0"
-Service-Component: org/eclipse/equinox/ds/tests/tb16/components.xml
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb16/org/eclipse/equinox/ds/tests/tb16/TargetProperties.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb16/org/eclipse/equinox/ds/tests/tb16/TargetProperties.java
deleted file mode 100644
index d629e27..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb16/org/eclipse/equinox/ds/tests/tb16/TargetProperties.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tb16;
-
-import java.util.Dictionary;
-import java.util.Properties;
-
-import org.eclipse.equinox.ds.tests.tbc.PropertiesProvider;
-import org.eclipse.equinox.ds.tests.tbc.ComponentContextProvider;
-import org.osgi.framework.ServiceRegistration;
-import org.osgi.service.component.ComponentContext;
-
-
-public class TargetProperties implements PropertiesProvider, ComponentContextProvider {
- private Dictionary properties;
- private ComponentContext ctxt;
- private ServiceRegistration sr;
-
- protected void activate(ComponentContext ctxt) {
- this.ctxt = ctxt;
- properties = ctxt.getProperties();
-
- Object prop = properties.get("serial.num");
- if (prop != null) {
- Properties serviceProps = new Properties();
- serviceProps.put("serial.num", prop);
- sr = ctxt.getBundleContext().registerService(getClass().getName(), this, serviceProps);
- }
- }
-
- protected void deactivate(ComponentContext ctxt) {
- if (sr != null) {
- sr.unregister();
- sr = null;
- }
- }
-
- public Dictionary getProperties() {
- return properties;
- }
-
- public ComponentContext getComponentContext() {
- return ctxt;
- }
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb16/org/eclipse/equinox/ds/tests/tb16/components.xml b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb16/org/eclipse/equinox/ds/tests/tb16/components.xml
deleted file mode 100644
index b4bda3a..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb16/org/eclipse/equinox/ds/tests/tb16/components.xml
+++ /dev/null
@@ -1,48 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<components>
-
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb16.Exposer"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb16.TargetProperties"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- <provide interface="org.eclipse.equinox.ds.tests.tb16.TargetProperties"/>
- </service>
- </component>
-
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb16.C1"
- immediate="true"
- enabled="false">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb16.TargetProperties"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- </service>
- <property
- name="serial.num"
- value="10"/>
- </component>
-
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb16.C2"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb16.TargetProperties"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- </service>
- <reference
- interface="org.eclipse.equinox.ds.tests.tb16.TargetProperties"
- name="ref"/>
- <property
- name="ref.target"
- value="(serial.num=10)"/>
- </component>
-
-</components>
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb17/META-INF/MANIFEST.MF b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb17/META-INF/MANIFEST.MF
deleted file mode 100644
index 851deb3..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb17/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,9 +0,0 @@
-Manifest-Version: 1.0
-Bundle-Name: Declaritive services test
-Bundle-Description: Declaritive services TB17
-Bundle-Category: test
-Import-Package: org.eclipse.equinox.ds.tests.tbc,
- org.osgi.framework,
- org.osgi.service.component;version="1.0.0"
-Export-Package: org.eclipse.equinox.ds.tests.tb17
-Service-Component: org/eclipse/equinox/ds/tests/tb17/components.xml
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb17/org/eclipse/equinox/ds/tests/tb17/Worker.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb17/org/eclipse/equinox/ds/tests/tb17/Worker.java
deleted file mode 100644
index 5c02d20..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb17/org/eclipse/equinox/ds/tests/tb17/Worker.java
+++ /dev/null
@@ -1,55 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tb17;
-
-import java.util.Dictionary;
-import java.util.Properties;
-
-import org.eclipse.equinox.ds.tests.tbc.PropertiesProvider;
-import org.eclipse.equinox.ds.tests.tbc.ComponentContextProvider;
-import org.osgi.framework.ServiceRegistration;
-import org.osgi.service.component.ComponentConstants;
-import org.osgi.service.component.ComponentContext;
-
-
-public class Worker implements PropertiesProvider, ComponentContextProvider {
- private Dictionary properties;
- private ComponentContext ctxt;
- private ServiceRegistration sr;
-
- protected void activate(ComponentContext ctxt) {
- this.ctxt = ctxt;
- properties = ctxt.getProperties();
-
- Object prop = properties.get(ComponentConstants.COMPONENT_NAME);
- if (prop != null) {
- Properties serviceProps = new Properties();
- serviceProps.put(ComponentConstants.COMPONENT_NAME, prop);
- sr = ctxt.getBundleContext().registerService(PropertiesProvider.class.getName(), this, serviceProps);
- }
- }
-
- protected void deactivate(ComponentContext ctxt) {
- if (sr != null) {
- sr.unregister();
- sr = null;
- }
- }
-
- public Dictionary getProperties() {
- return properties;
- }
-
- public ComponentContext getComponentContext() {
- return ctxt;
- }
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb17/org/eclipse/equinox/ds/tests/tb17/components.xml b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb17/org/eclipse/equinox/ds/tests/tb17/components.xml
deleted file mode 100644
index ef5442d..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb17/org/eclipse/equinox/ds/tests/tb17/components.xml
+++ /dev/null
@@ -1,120 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<components>
-
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb17.C1"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb17.Worker"/>
- </component>
-
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb17.C2"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb17.Worker"/>
- <reference
- interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"
- name="baseservice"
- target="(component.name=org.eclipse.equinox.ds.tests.tb18.C1)"/>
- </component>
-
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb17.C3"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb17.Worker"/>
- <reference
- interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"
- name="baseservice"
- target="(component.name=org.eclipse.equinox.ds.tests.tb18.C2)"/>
- </component>
-
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb17.C4"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb17.Worker"/>
- <reference
- interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"
- name="baseservice"
- target="(component.name=org.eclipse.equinox.ds.tests.tb18.C3)"/>
- </component>
-
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb17.C5"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb17.Worker"/>
- <reference
- interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"
- name="baseservice"
- target="(component.name=org.eclipse.equinox.ds.tests.tb18.C4)"/>
- </component>
-
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb17.C6"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb17.Worker"/>
- <reference
- interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"
- name="baseservice"
- target="(component.name=org.eclipse.equinox.ds.tests.tb18.C5)"/>
- </component>
-
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb17.C7"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb17.Worker"/>
- <reference
- interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"
- name="baseservice"
- target="(component.name=org.eclipse.equinox.ds.tests.tb18.C6)"/>
- </component>
-
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb17.C8"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb17.Worker"/>
- <reference
- interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"
- name="baseservice"
- target="(component.name=org.eclipse.equinox.ds.tests.tb18.C7)"/>
- </component>
-
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb17.C9"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb17.Worker"/>
- <reference
- interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"
- name="baseservice"
- target="(component.name=org.eclipse.equinox.ds.tests.tb18.C8)"/>
- </component>
-
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb17.C10"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb17.Worker"/>
- <reference
- interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"
- name="baseservice"
- target="(component.name=org.eclipse.equinox.ds.tests.tb18.C9)"/>
- </component>
-
-</components>
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb18/META-INF/MANIFEST.MF b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb18/META-INF/MANIFEST.MF
deleted file mode 100644
index 8611744..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb18/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,9 +0,0 @@
-Manifest-Version: 1.0
-Bundle-Name: Declaritive services test
-Bundle-Description: Declaritive services TB18
-Bundle-Category: test
-Import-Package: org.eclipse.equinox.ds.tests.tb17,
- org.eclipse.equinox.ds.tests.tbc,
- org.osgi.framework,
- org.osgi.service.component;version="1.0.0"
-Service-Component: org/eclipse/equinox/ds/tests/tb18/components.xml
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb18/org/eclipse/equinox/ds/tests/tb18/components.xml b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb18/org/eclipse/equinox/ds/tests/tb18/components.xml
deleted file mode 100644
index d7c9431..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb18/org/eclipse/equinox/ds/tests/tb18/components.xml
+++ /dev/null
@@ -1,160 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<components>
-
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb18.C1"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb17.Worker"/>
- <reference
- interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"
- name="baseservice"
- target="(component.name=org.eclipse.equinox.ds.tests.tb17.C1)"/>
- </component>
-
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb18.C2"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb17.Worker"/>
- <reference
- interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"
- name="baseservice1"
- target="(component.name=org.eclipse.equinox.ds.tests.tb19.C1)"/>
- <reference
- interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"
- name="baseservice2"
- target="(component.name=org.eclipse.equinox.ds.tests.tb17.C2)"/>
- </component>
-
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb18.C3"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb17.Worker"/>
- <reference
- interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"
- name="baseservice1"
- target="(component.name=org.eclipse.equinox.ds.tests.tb19.C2)"/>
- <reference
- interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"
- name="baseservice2"
- target="(component.name=org.eclipse.equinox.ds.tests.tb17.C3)"/>
- </component>
-
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb18.C4"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb17.Worker"/>
- <reference
- interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"
- name="baseservice1"
- target="(component.name=org.eclipse.equinox.ds.tests.tb19.C3)"/>
- <reference
- interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"
- name="baseservice2"
- target="(component.name=org.eclipse.equinox.ds.tests.tb17.C4)"/>
- </component>
-
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb18.C5"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb17.Worker"/>
- <reference
- interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"
- name="baseservice1"
- target="(component.name=org.eclipse.equinox.ds.tests.tb19.C4)"/>
- <reference
- interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"
- name="baseservice2"
- target="(component.name=org.eclipse.equinox.ds.tests.tb17.C5)"/>
- </component>
-
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb18.C6"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb17.Worker"/>
- <reference
- interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"
- name="baseservice1"
- target="(component.name=org.eclipse.equinox.ds.tests.tb19.C5)"/>
- <reference
- interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"
- name="baseservice2"
- target="(component.name=org.eclipse.equinox.ds.tests.tb17.C6)"/>
- </component>
-
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb18.C7"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb17.Worker"/>
- <reference
- interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"
- name="baseservice1"
- target="(component.name=org.eclipse.equinox.ds.tests.tb19.C6)"/>
- <reference
- interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"
- name="baseservice2"
- target="(component.name=org.eclipse.equinox.ds.tests.tb17.C7)"/>
- </component>
-
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb18.C8"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb17.Worker"/>
- <reference
- interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"
- name="baseservice1"
- target="(component.name=org.eclipse.equinox.ds.tests.tb19.C7)"/>
- <reference
- interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"
- name="baseservice2"
- target="(component.name=org.eclipse.equinox.ds.tests.tb17.C8)"/>
- </component>
-
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb18.C9"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb17.Worker"/>
- <reference
- interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"
- name="baseservice1"
- target="(component.name=org.eclipse.equinox.ds.tests.tb19.C8)"/>
- <reference
- interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"
- name="baseservice2"
- target="(component.name=org.eclipse.equinox.ds.tests.tb17.C9)"/>
- </component>
-
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb18.C10"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb17.Worker"/>
- <reference
- interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"
- name="baseservice1"
- target="(component.name=org.eclipse.equinox.ds.tests.tb19.C9)"/>
- <reference
- interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"
- name="baseservice2"
- target="(component.name=org.eclipse.equinox.ds.tests.tb17.C10)"/>
- </component>
-
-</components>
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb19/META-INF/MANIFEST.MF b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb19/META-INF/MANIFEST.MF
deleted file mode 100644
index 91417fb..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb19/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,9 +0,0 @@
-Manifest-Version: 1.0
-Bundle-Name: Declaritive services test
-Bundle-Description: Declaritive services TB19
-Bundle-Category: test
-Import-Package: org.eclipse.equinox.ds.tests.tb17,
- org.eclipse.equinox.ds.tests.tbc,
- org.osgi.framework,
- org.osgi.service.component;version="1.0.0"
-Service-Component: org/eclipse/equinox/ds/tests/tb19/components.xml
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb19/org/eclipse/equinox/ds/tests/tb19/components.xml b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb19/org/eclipse/equinox/ds/tests/tb19/components.xml
deleted file mode 100644
index 8599373..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb19/org/eclipse/equinox/ds/tests/tb19/components.xml
+++ /dev/null
@@ -1,124 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<components>
-
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb19.C1"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb17.Worker"/>
- <reference
- interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"
- name="baseservice"
- target="(component.name=org.eclipse.equinox.ds.tests.tb18.C1)"/>
- </component>
-
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb19.C2"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb17.Worker"/>
- <reference
- interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"
- name="baseservice"
- target="(component.name=org.eclipse.equinox.ds.tests.tb18.C2)"/>
- </component>
-
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb19.C3"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb17.Worker"/>
- <reference
- interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"
- name="baseservice"
- target="(component.name=org.eclipse.equinox.ds.tests.tb18.C3)"/>
- </component>
-
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb19.C4"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb17.Worker"/>
- <reference
- interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"
- name="baseservice"
- target="(component.name=org.eclipse.equinox.ds.tests.tb18.C4)"/>
- </component>
-
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb19.C5"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb17.Worker"/>
- <reference
- interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"
- name="baseservice"
- target="(component.name=org.eclipse.equinox.ds.tests.tb18.C5)"/>
- </component>
-
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb19.C6"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb17.Worker"/>
- <reference
- interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"
- name="baseservice"
- target="(component.name=org.eclipse.equinox.ds.tests.tb18.C6)"/>
- </component>
-
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb19.C7"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb17.Worker"/>
- <reference
- interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"
- name="baseservice"
- target="(component.name=org.eclipse.equinox.ds.tests.tb18.C7)"/>
- </component>
-
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb19.C8"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb17.Worker"/>
- <reference
- interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"
- name="baseservice"
- target="(component.name=org.eclipse.equinox.ds.tests.tb18.C8)"/>
- </component>
-
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb19.C9"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb17.Worker"/>
- <reference
- interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"
- name="baseservice"
- target="(component.name=org.eclipse.equinox.ds.tests.tb18.C9)"/>
- </component>
-
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb19.C10"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb17.Worker"/>
- <reference
- interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"
- name="baseservice"
- target="(component.name=org.eclipse.equinox.ds.tests.tb18.C10)"/>
- </component>
-
-</components>
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1a/META-INF/MANIFEST.MF b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1a/META-INF/MANIFEST.MF
deleted file mode 100644
index efc39fa..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1a/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,8 +0,0 @@
-Manifest-Version: 1.0
-Bundle-Name: Declaritive services test
-Bundle-Description: Declaritive services TB1a
-Bundle-Category: test
-Import-Package: org.eclipse.equinox.ds.tests.tbc,
- org.osgi.framework,
- org.osgi.service.component;version="1.0.0"
-Service-Component: org/eclipse/equinox/ds/tests/tb1a/components.xml
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1a/org/eclipse/equinox/ds/tests/tb1a/Comp1.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1a/org/eclipse/equinox/ds/tests/tb1a/Comp1.java
deleted file mode 100644
index 35346c6..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1a/org/eclipse/equinox/ds/tests/tb1a/Comp1.java
+++ /dev/null
@@ -1,5 +0,0 @@
-package org.eclipse.equinox.ds.tests.tb1a;
-
-public class Comp1 {
-
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1a/org/eclipse/equinox/ds/tests/tb1a/Immediate.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1a/org/eclipse/equinox/ds/tests/tb1a/Immediate.java
deleted file mode 100644
index 46a7dad..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1a/org/eclipse/equinox/ds/tests/tb1a/Immediate.java
+++ /dev/null
@@ -1,16 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tb1a;
-
-public class Immediate {
-
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1a/org/eclipse/equinox/ds/tests/tb1a/components.xml b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1a/org/eclipse/equinox/ds/tests/tb1a/components.xml
deleted file mode 100644
index ccfe075..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb1a/org/eclipse/equinox/ds/tests/tb1a/components.xml
+++ /dev/null
@@ -1,32 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<root>
-
-<!-- bad component - component factory cannot be immediate -->
-<scr:component name="org.eclipse.equinox.ds.tests.tb1a.Immediate"
- xmlns:scr="http://www.osgi.org/xmlns/scr/v1.0.0"
- immediate="true"
- factory="org.eclipse.equinox.ds.tests.tb1a.Immediate">
- <implementation class="org.eclipse.equinox.ds.tests.tb1a.Immediate" />
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tb1a.Immediate"/>
- </service>
-</scr:component>
-
-<!-- this below should be ignored by the SCR parser -->
-<ignored>
- <component>
- <service servicefactory="true" />
- </component>
-</ignored>
-
-<scr:component name="org.eclipse.equinox.ds.tests.tb1a.Comp1"
- enabled="true"
- xmlns:scr="http://www.osgi.org/xmlns/scr/v1.0.0">
- <implementation class="org.eclipse.equinox.ds.tests.tb1a.Comp1"/>
- <property name="custom" value="customvalue"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tb1a.Comp1"/>
- </service>
-</scr:component>
-
-</root>
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb2/META-INF/MANIFEST.MF b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb2/META-INF/MANIFEST.MF
deleted file mode 100644
index d3175c1..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb2/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,8 +0,0 @@
-Manifest-Version: 1.0
-Bundle-Name: Declaritive services test
-Bundle-Description: Declaritive services TB2
-Bundle-Category: test
-Import-Package: org.osgi.framework,
- org.osgi.service.component;version="1.0.0",
- org.eclipse.equinox.ds.tests.tbc
-Service-Component: org/eclipse/equinox/ds/tests/tb2/impl/blockingcomp.xml
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb2/org/eclipse/equinox/ds/tests/tb2/impl/Blocker.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb2/org/eclipse/equinox/ds/tests/tb2/impl/Blocker.java
deleted file mode 100644
index 90ee80e..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb2/org/eclipse/equinox/ds/tests/tb2/impl/Blocker.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tb2.impl;
-
-import java.util.Dictionary;
-
-import org.osgi.service.component.ComponentContext;
-
-public class Blocker {
-
- public void activate(ComponentContext ctxt) {
- Dictionary props = ctxt.getProperties();
- int timeout = 40000; // default value of 1 secs
- Object t = props.get("block.timeout");
- if (t != null) {
- if (t instanceof String) {
- timeout = Integer.parseInt((String) t);
- } else if (t instanceof Integer) {
- timeout = ((Integer)t).intValue();
- }
- }
- try {
- Thread.sleep(timeout);
- } catch (InterruptedException ignore) {
- }
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb2/org/eclipse/equinox/ds/tests/tb2/impl/blockingcomp.xml b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb2/org/eclipse/equinox/ds/tests/tb2/impl/blockingcomp.xml
deleted file mode 100644
index a91c35c..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb2/org/eclipse/equinox/ds/tests/tb2/impl/blockingcomp.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<root>
-
-<scr:component name="org.eclipse.equinox.ds.tests.tb2.impl.Blocker"
- xmlns:scr="http://www.osgi.org/xmlns/scr/v1.0.0">
- <implementation class="org.eclipse.equinox.ds.tests.tb2.impl.Blocker"/>
- <property name="block.timeout" value="60000"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tb2.impl.Blocker"/>
- </service>
-</scr:component>
-
-</root>
\ No newline at end of file
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb20/META-INF/MANIFEST.MF b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb20/META-INF/MANIFEST.MF
deleted file mode 100644
index 1ae1660..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb20/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,9 +0,0 @@
-Manifest-Version: 1.0
-Bundle-Name: Declaritive services test
-Bundle-Description: Declaritive services TB20
-Bundle-Category: test
-Bundle-ActivationPolicy: lazy
-Import-Package: org.eclipse.equinox.ds.tests.tbc,
- org.osgi.framework,
- org.osgi.service.component;version="1.0.0"
-Service-Component: org/eclipse/equinox/ds/tests/tb20/components.xml
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb20/org/eclipse/equinox/ds/tests/tb20/Comp.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb20/org/eclipse/equinox/ds/tests/tb20/Comp.java
deleted file mode 100644
index 23dcefd..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb20/org/eclipse/equinox/ds/tests/tb20/Comp.java
+++ /dev/null
@@ -1,25 +0,0 @@
-package org.eclipse.equinox.ds.tests.tb20;
-
-import java.util.Dictionary;
-
-import org.eclipse.equinox.ds.tests.tbc.PropertiesProvider;
-import org.osgi.service.component.ComponentContext;
-
-public class Comp implements PropertiesProvider {
- private ComponentContext ctxt;
-
- protected void activate(ComponentContext ctxt) {
- this.ctxt = ctxt;
- }
-
- protected void deactivate(ComponentContext ctxt) {
-
- }
-
- public Dictionary getProperties() {
- if (ctxt == null)
- return null;
-
- return ctxt.getProperties();
- }
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb20/org/eclipse/equinox/ds/tests/tb20/components.xml b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb20/org/eclipse/equinox/ds/tests/tb20/components.xml
deleted file mode 100644
index 9b7c119..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb20/org/eclipse/equinox/ds/tests/tb20/components.xml
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<components>
-
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb20.component"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb20.Comp"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- </service>
- </component>
-
-</components>
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb21/META-INF/MANIFEST.MF b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb21/META-INF/MANIFEST.MF
deleted file mode 100644
index 7d649f0..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb21/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,8 +0,0 @@
-Manifest-Version: 1.0
-Bundle-Name: Declaritive services test
-Bundle-Description: Declaritive services TB21
-Bundle-Category: test
-Import-Package: org.eclipse.equinox.ds.tests.tbc,
- org.osgi.framework,
- org.osgi.service.component;version="1.0.0"
-Service-Component: org/eclipse/equinox/ds/tests/tb21/components.xml
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb21/org/eclipse/equinox/ds/tests/tb21/ModifyRegistrator.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb21/org/eclipse/equinox/ds/tests/tb21/ModifyRegistrator.java
deleted file mode 100644
index a9e9027..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb21/org/eclipse/equinox/ds/tests/tb21/ModifyRegistrator.java
+++ /dev/null
@@ -1,76 +0,0 @@
-package org.eclipse.equinox.ds.tests.tb21;
-
-import java.util.Dictionary;
-import java.util.Map;
-
-import org.eclipse.equinox.ds.tests.tbc.ComponentContextProvider;
-import org.osgi.framework.BundleContext;
-import org.osgi.service.component.ComponentContext;
-
-public class ModifyRegistrator implements ComponentContextProvider {
- private Dictionary properties;
- private ComponentContext ctxt;
- private static final int MODIFIED = 1 << 0;
- private static final int MOD = 1 << 1;
- private static final int MOD_CC = 1 << 2;
- private static final int MOD_BC = 1 << 3;
- private static final int MOD_MAP = 1 << 4;
- private static final int MOD_CC_BC_MAP = 1 << 5;
- private static final int ACTIVATE = 1 << 6;
- private static final int DEACTIVATE = 1 << 7;
-
- protected void activate(ComponentContext ctxt) {
- this.ctxt = ctxt;
- properties = ctxt.getProperties();
- setDataBits(ACTIVATE);
- }
-
- protected void deactivate(ComponentContext ctxt) {
- setDataBits(DEACTIVATE);
- }
-
- protected void modified() {
- setDataBits(MODIFIED);
- }
-
- protected void mod() {
- setDataBits(MOD);
- }
-
- protected void modCc(ComponentContext ctxt) {
- setDataBits(MOD_CC);
- }
-
- protected void modBc(BundleContext bc) {
- setDataBits(MOD_BC);
- }
-
- protected void modMap(Map props) {
- setDataBits(MOD_MAP);
- }
-
- protected void modCcBcMap(ComponentContext ctxt, BundleContext bc, Map props) {
- setDataBits(MOD_CC_BC_MAP);
- }
-
- protected void throwException(ComponentContext ctxt) {
- throw new RuntimeException("Test method throwException(ComponentContext) is called!");
- }
-
- public Dictionary getProperties() {
- return properties;
- }
-
- private void setDataBits(int value) {
- if (properties == null) {
- return;
- }
- Object prop = properties.get("config.base.data");
- int data = (prop instanceof Integer) ? ((Integer) prop).intValue() : 0;
- properties.put("config.base.data", new Integer(data | value));
- }
-
- public ComponentContext getComponentContext() {
- return ctxt;
- }
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb21/org/eclipse/equinox/ds/tests/tb21/components.xml b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb21/org/eclipse/equinox/ds/tests/tb21/components.xml
deleted file mode 100644
index 61fd7b8..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb21/org/eclipse/equinox/ds/tests/tb21/components.xml
+++ /dev/null
@@ -1,116 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<components>
-
- <!-- This component provides service that is used in the latter components -->
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb21.provider"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb21.ModifyRegistrator"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- </service>
- </component>
-
- <!-- This component has not set modified method, NS 1.0.0 -->
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb21.notsetNS100"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb21.ModifyRegistrator"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- </service>
- <reference
- interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"
- name="ref"
- target="(component.name=org.eclipse.equinox.ds.tests.tb21.provider)"/>
- </component>
-
- <!-- modified="mod", NS 1.0.0 -->
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb21.NoArgs100"
- modified="mod"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb21.ModifyRegistrator"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- </service>
- <reference
- interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"
- name="ref"
- target="(component.name=org.eclipse.equinox.ds.tests.tb21.provider)"/>
- </component>
-
- <!-- modified="modCc", NS 1.0.0 -->
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb21.CcNS100"
- modified="modCc"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb21.ModifyRegistrator"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- </service>
- <reference
- interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"
- name="ref"
- target="(component.name=org.eclipse.equinox.ds.tests.tb21.provider)"/>
- </component>
-
- <!-- modified="modBc", NS 1.0.0 -->
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb21.BcNS100"
- modified="modBc"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb21.ModifyRegistrator"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- </service>
- <reference
- interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"
- name="ref"
- target="(component.name=org.eclipse.equinox.ds.tests.tb21.provider)"/>
- </component>
-
- <!-- modified="modMap", NS 1.0.0 -->
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb21.MapNS100"
- modified="modMap"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb21.ModifyRegistrator"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- </service>
- <reference
- interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"
- name="ref"
- target="(component.name=org.eclipse.equinox.ds.tests.tb21.provider)"/>
- </component>
-
- <!-- modified="modCcBcMap", NS 1.0.0 -->
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb21.CcBcMapNS100"
- modified="modCcBcMap"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb21.ModifyRegistrator"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- </service>
- <reference
- interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"
- name="ref"
- target="(component.name=org.eclipse.equinox.ds.tests.tb21.provider)"/>
- </component>
-</components>
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb21a/META-INF/MANIFEST.MF b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb21a/META-INF/MANIFEST.MF
deleted file mode 100644
index 46a8c1f..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb21a/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,8 +0,0 @@
-Manifest-Version: 1.0
-Bundle-Name: Declaritive services test
-Bundle-Description: Declaritive services TB21a
-Bundle-Category: test
-Import-Package: org.eclipse.equinox.ds.tests.tbc,
- org.osgi.framework,
- org.osgi.service.component;version="1.0.0"
-Service-Component: org/eclipse/equinox/ds/tests/tb21a/components.xml
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb21a/org/eclipse/equinox/ds/tests/tb21a/ModifyRegistrator.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb21a/org/eclipse/equinox/ds/tests/tb21a/ModifyRegistrator.java
deleted file mode 100644
index fcfe7ed..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb21a/org/eclipse/equinox/ds/tests/tb21a/ModifyRegistrator.java
+++ /dev/null
@@ -1,76 +0,0 @@
-package org.eclipse.equinox.ds.tests.tb21a;
-
-import java.util.Dictionary;
-import java.util.Map;
-
-import org.eclipse.equinox.ds.tests.tbc.ComponentContextProvider;
-import org.osgi.framework.BundleContext;
-import org.osgi.service.component.ComponentContext;
-
-public class ModifyRegistrator implements ComponentContextProvider {
- private Dictionary properties;
- private ComponentContext ctxt;
- private static final int MODIFIED = 1 << 0;
- private static final int MOD = 1 << 1;
- private static final int MOD_CC = 1 << 2;
- private static final int MOD_BC = 1 << 3;
- private static final int MOD_MAP = 1 << 4;
- private static final int MOD_CC_BC_MAP = 1 << 5;
- private static final int ACTIVATE = 1 << 6;
- private static final int DEACTIVATE = 1 << 7;
-
- protected void activate(ComponentContext ctxt) {
- this.ctxt = ctxt;
- properties = ctxt.getProperties();
- setDataBits(ACTIVATE);
- }
-
- protected void deactivate(ComponentContext ctxt) {
- setDataBits(DEACTIVATE);
- }
-
- protected void modified() {
- setDataBits(MODIFIED);
- }
-
- protected void mod() {
- setDataBits(MOD);
- }
-
- protected void modCc(ComponentContext ctxt) {
- setDataBits(MOD_CC);
- }
-
- protected void modBc(BundleContext bc) {
- setDataBits(MOD_BC);
- }
-
- protected void modMap(Map props) {
- setDataBits(MOD_MAP);
- }
-
- protected void modCcBcMap(ComponentContext ctxt, BundleContext bc, Map props) {
- setDataBits(MOD_CC_BC_MAP);
- }
-
- protected void throwException(ComponentContext ctxt) {
- throw new RuntimeException("Test method throwException(ComponentContext) is called!");
- }
-
- public Dictionary getProperties() {
- return properties;
- }
-
- private void setDataBits(int value) {
- if (properties == null) {
- return;
- }
- Object prop = properties.get("config.base.data");
- int data = (prop instanceof Integer) ? ((Integer) prop).intValue() : 0;
- properties.put("config.base.data", new Integer(data | value));
- }
-
- public ComponentContext getComponentContext() {
- return ctxt;
- }
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb21a/org/eclipse/equinox/ds/tests/tb21a/components.xml b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb21a/org/eclipse/equinox/ds/tests/tb21a/components.xml
deleted file mode 100644
index 85633b7..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb21a/org/eclipse/equinox/ds/tests/tb21a/components.xml
+++ /dev/null
@@ -1,150 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<components>
-
- <!-- This component provides service that is used in the latter components -->
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb21.provider"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb21a.ModifyRegistrator"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- </service>
- </component>
-
- <!-- This component has not set modified method, NS 1.1.0 -->
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.1.0"
- name="org.eclipse.equinox.ds.tests.tb21.notsetNS110"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb21a.ModifyRegistrator"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- </service>
- <reference
- interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"
- name="ref"
- target="(component.name=org.eclipse.equinox.ds.tests.tb21.provider)"/>
- </component>
-
- <!-- modified="mod", NS 1.1.0 -->
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.1.0"
- name="org.eclipse.equinox.ds.tests.tb21.NoArgs110"
- modified="mod"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb21a.ModifyRegistrator"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- </service>
- <reference
- interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"
- name="ref"
- target="(component.name=org.eclipse.equinox.ds.tests.tb21.provider)"/>
- </component>
-
- <!-- modified="modCc", NS 1.1.0 -->
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.1.0"
- name="org.eclipse.equinox.ds.tests.tb21.CcNS110"
- modified="modCc"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb21a.ModifyRegistrator"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- </service>
- <reference
- interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"
- name="ref"
- target="(component.name=org.eclipse.equinox.ds.tests.tb21.provider)"/>
- </component>
-
- <!-- modified="modBc", NS 1.1.0 -->
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.1.0"
- name="org.eclipse.equinox.ds.tests.tb21.BcNS110"
- modified="modBc"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb21a.ModifyRegistrator"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- </service>
- <reference
- interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"
- name="ref"
- target="(component.name=org.eclipse.equinox.ds.tests.tb21.provider)"/>
- </component>
-
- <!-- modified="modMap", NS 1.1.0 -->
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.1.0"
- name="org.eclipse.equinox.ds.tests.tb21.MapNS110"
- modified="modMap"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb21a.ModifyRegistrator"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- </service>
- <reference
- interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"
- name="ref"
- target="(component.name=org.eclipse.equinox.ds.tests.tb21.provider)"/>
- </component>
-
- <!-- modified="modCcBcMap", NS 1.1.0 -->
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.1.0"
- name="org.eclipse.equinox.ds.tests.tb21.CcBcMapNS110"
- modified="modCcBcMap"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb21a.ModifyRegistrator"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- </service>
- <reference
- interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"
- name="ref"
- target="(component.name=org.eclipse.equinox.ds.tests.tb21.provider)"/>
- </component>
-
- <!-- modified="noSuchMethod", NS 1.1.0 -->
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.1.0"
- name="org.eclipse.equinox.ds.tests.tb21.NotExistNS110"
- modified="noSuchMethod"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb21a.ModifyRegistrator"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- </service>
- <reference
- interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"
- name="ref"
- target="(component.name=org.eclipse.equinox.ds.tests.tb21.provider)"/>
- </component>
-
- <!-- modified="throwException", NS 1.1.0 -->
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.1.0"
- name="org.eclipse.equinox.ds.tests.tb21.ThrowExNS110"
- modified="throwException"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb21a.ModifyRegistrator"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- </service>
- <reference
- interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"
- name="ref"
- target="(component.name=org.eclipse.equinox.ds.tests.tb21.provider)"/>
- </component>
-</components>
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb22/META-INF/MANIFEST.MF b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb22/META-INF/MANIFEST.MF
deleted file mode 100644
index 362dff3..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb22/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,8 +0,0 @@
-Manifest-Version: 1.0
-Bundle-Name: Declaritive services test
-Bundle-Description: Declaritive services TB22
-Bundle-Category: test
-Import-Package: org.eclipse.equinox.ds.tests.tbc,
- org.osgi.framework,
- org.osgi.service.component;version="1.0.0"
-Service-Component: org/eclipse/equinox/ds/tests/tb22/components.xml
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb22/org/eclipse/equinox/ds/tests/tb22/Comp.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb22/org/eclipse/equinox/ds/tests/tb22/Comp.java
deleted file mode 100644
index 0bb6624..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb22/org/eclipse/equinox/ds/tests/tb22/Comp.java
+++ /dev/null
@@ -1,25 +0,0 @@
-package org.eclipse.equinox.ds.tests.tb22;
-
-import java.util.Dictionary;
-
-import org.eclipse.equinox.ds.tests.tbc.PropertiesProvider;
-import org.osgi.service.component.ComponentContext;
-
-public class Comp implements PropertiesProvider {
- private ComponentContext ctxt;
-
- protected void activate(ComponentContext ctxt) {
- this.ctxt = ctxt;
- }
-
- protected void deactivate(ComponentContext ctxt) {
-
- }
-
- public Dictionary getProperties() {
- if (ctxt == null)
- return null;
-
- return ctxt.getProperties();
- }
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb22/org/eclipse/equinox/ds/tests/tb22/components.xml b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb22/org/eclipse/equinox/ds/tests/tb22/components.xml
deleted file mode 100644
index 061ff78..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb22/org/eclipse/equinox/ds/tests/tb22/components.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<components>
-
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb22.component"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb22.Comp"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- </service>
- <property name=".prop1" value="1"/>
- <property name=".prop2" value="2"/>
- <property name=".prop3" value="3"/>
- </component>
-
-</components>
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb23/META-INF/MANIFEST.MF b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb23/META-INF/MANIFEST.MF
deleted file mode 100644
index a339357..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb23/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,8 +0,0 @@
-Manifest-Version: 1.0
-Bundle-Name: Declaritive services test
-Bundle-Description: Declaritive services TB23
-Bundle-Category: test
-Import-Package: org.eclipse.equinox.ds.tests.tbc,
- org.osgi.framework,
- org.osgi.service.component;version="1.0.0"
-Service-Component: org/eclipse/equinox/ds/tests/tb23/components.xml
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb23/org/eclipse/equinox/ds/tests/tb23/BindRegistrator.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb23/org/eclipse/equinox/ds/tests/tb23/BindRegistrator.java
deleted file mode 100644
index c8b77d5..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb23/org/eclipse/equinox/ds/tests/tb23/BindRegistrator.java
+++ /dev/null
@@ -1,56 +0,0 @@
-package org.eclipse.equinox.ds.tests.tb23;
-
-import java.util.Dictionary;
-
-import org.eclipse.equinox.ds.tests.tbc.ComponentContextProvider;
-import org.osgi.framework.ServiceReference;
-import org.osgi.service.component.ComponentContext;
-
-public class BindRegistrator implements ComponentContextProvider {
- private Dictionary properties;
- private ComponentContext ctxt;
- private static final int BIND = 1 << 0;
- private static final int UNBIND = 1 << 1;
- private static final int ACTIVATE = 1 << 2;
- private static final int DEACTIVATE = 1 << 3;
-
- protected void activate(ComponentContext ctxt) {
- this.ctxt = ctxt;
- properties = ctxt.getProperties();
- setDataBits(ACTIVATE);
- }
-
- protected void deactivate(ComponentContext ctxt) {
- setDataBits(DEACTIVATE);
- }
-
- protected void bind(ServiceReference sr) {
- setDataBits(BIND);
- throw new RuntimeException("Test method throwException(ComponentContext) is called!");
- }
-
- protected void bind_ex(ServiceReference sr) {
- throw new RuntimeException("Test method bind_ex(ServiceReference) is called!");
- }
-
- protected void unbind(ServiceReference sr) {
- setDataBits(UNBIND);
- }
-
- public Dictionary getProperties() {
- return properties;
- }
-
- private void setDataBits(int value) {
- if (properties == null) {
- return;
- }
- Object prop = properties.get("config.base.data");
- int data = (prop instanceof Integer) ? ((Integer) prop).intValue() : 0;
- properties.put("config.base.data", new Integer(data | value));
- }
-
- public ComponentContext getComponentContext() {
- return ctxt;
- }
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb23/org/eclipse/equinox/ds/tests/tb23/components.xml b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb23/org/eclipse/equinox/ds/tests/tb23/components.xml
deleted file mode 100644
index 6133d23..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb23/org/eclipse/equinox/ds/tests/tb23/components.xml
+++ /dev/null
@@ -1,49 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<components>
-
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb23.provider"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb23.BindRegistrator"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- </service>
- </component>
-
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb23.mandatory"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb23.BindRegistrator"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- </service>
- <reference
- interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"
- name="ref"
- cardinality="1..1"
- bind="bind_ex"
- unbind="unbind"/>
- </component>
-
- <component
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- name="org.eclipse.equinox.ds.tests.tb23.optional"
- immediate="true">
- <implementation
- class="org.eclipse.equinox.ds.tests.tb23.BindRegistrator"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"/>
- </service>
- <reference
- interface="org.eclipse.equinox.ds.tests.tbc.PropertiesProvider"
- name="ref"
- cardinality="0..1"
- bind="bind_ex"
- unbind="unbind"/>
- </component>
-
-</components>
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb3/META-INF/MANIFEST.MF b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb3/META-INF/MANIFEST.MF
deleted file mode 100644
index 97130eb..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb3/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,8 +0,0 @@
-Manifest-Version: 1.0
-Bundle-Name: Declaritive services test
-Bundle-Description: Declaritive services TB3
-Bundle-Category: test
-Import-Package: org.osgi.framework,
- org.osgi.service.component;version="1.0.0",
- org.eclipse.equinox.ds.tests.tbc
-Service-Component: org/eclipse/equinox/ds/tests/tb3/impl/component.xml
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb3/org/eclipse/equinox/ds/tests/tb3/impl/BindBlocker.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb3/org/eclipse/equinox/ds/tests/tb3/impl/BindBlocker.java
deleted file mode 100644
index 04e8519..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb3/org/eclipse/equinox/ds/tests/tb3/impl/BindBlocker.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tb3.impl;
-
-import org.osgi.framework.ServiceReference;
-
-public class BindBlocker {
-
- // the time the bind method will block
- private int timeout = 60000;
-
-
- public void setLogger(ServiceReference log) {
- try {
- Thread.sleep(timeout);
- } catch (InterruptedException ignore) {
- }
- }
-
- public void unsetLogger(ServiceReference log) {
- }
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb3/org/eclipse/equinox/ds/tests/tb3/impl/component.xml b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb3/org/eclipse/equinox/ds/tests/tb3/impl/component.xml
deleted file mode 100644
index da50b2c..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb3/org/eclipse/equinox/ds/tests/tb3/impl/component.xml
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<root>
-
-<scr:component name="org.eclipse.equinox.ds.tests.tb3.impl.BindBlocker"
- xmlns:scr="http://www.osgi.org/xmlns/scr/v1.0.0">
- <implementation class="org.eclipse.equinox.ds.tests.tb3.impl.BindBlocker"/>
- <property name="block.timeout" value="60000"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tb3.impl.BindBlocker"/>
- </service>
- <reference
- name="LOG"
- cardinality="1..1"
- interface="org.eclipse.equinox.ds.tests.tb1.impl.AnotherComponent"
- bind="setLogger"
- unbind="unsetLogger"
- />
-</scr:component>
-
-</root>
\ No newline at end of file
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/META-INF/MANIFEST.MF b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/META-INF/MANIFEST.MF
deleted file mode 100644
index 52096e3..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,11 +0,0 @@
-Manifest-Version: 1.0
-Bundle-Name: Declaritive services test
-Bundle-Description: Declaritive services TB4
-Bundle-Vendor: ProSyst
-Bundle-DocURL: http://www.prosyst.com
-Bundle-ContactAddress: d_nachev@prosyst.com
-Bundle-Category: test
-Import-Package: org.osgi.framework,
- org.osgi.service.component; version="1.0.0",
- org.eclipse.equinox.ds.tests.tbc
-Service-Component: org/eclipse/equinox/ds/tests/tb4/impl/namedservice.xml,org/eclipse/equinox/ds/tests/tb4/components.xml
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/AdvancedBounder.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/AdvancedBounder.java
deleted file mode 100644
index 37af359..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/AdvancedBounder.java
+++ /dev/null
@@ -1,71 +0,0 @@
-package org.eclipse.equinox.ds.tests.tb4;
-
-import java.util.Dictionary;
-import java.util.Hashtable;
-import java.util.Vector;
-
-import org.eclipse.equinox.ds.tests.tbc.BoundMainProvider;
-import org.eclipse.equinox.ds.tests.tbc.ComponentContextProvider;
-import org.eclipse.equinox.ds.tests.tbc.DSEvent;
-import org.eclipse.equinox.ds.tests.tbc.DSEventsProvider;
-import org.eclipse.equinox.ds.tests.tbc.DynamicWorker;
-import org.eclipse.equinox.ds.tests.tbc.StaticWorker;
-import org.osgi.service.component.ComponentContext;
-
-
-public class AdvancedBounder implements DSEventsProvider, BoundMainProvider, ComponentContextProvider {
-
-
- private Hashtable boundServices = new Hashtable();
- private Vector boundServiceEvents = new Vector();
- private ComponentContext ctxt;
-
- public void activate(ComponentContext ctxt) {
- this.ctxt = ctxt;
- }
-
- public void deactivate(ComponentContext ctxt) {
- this.ctxt = null;
- }
-
- public void bindDynamicService(DynamicWorker dynService) {
- boundServiceEvents.addElement(new DSEvent(DSEvent.ACT_BOUND, dynService));
- boundServices.put(BoundMainProvider.DYNAMIC_SERVICE, dynService);
- }
-
- public void unbindDynamicService(DynamicWorker dynService) {
- boundServiceEvents.addElement(new DSEvent(DSEvent.ACT_UNBOUND, dynService));
- }
-
- public void bindStaticService(StaticWorker staticService) {
- boundServiceEvents.addElement(new DSEvent(DSEvent.ACT_BOUND, staticService));
- boundServices.put(BoundMainProvider.STATIC_SERVICE, staticService);
- }
-
- public void unbindStaticService(StaticWorker staticService) {
- boundServiceEvents.addElement(new DSEvent(DSEvent.ACT_UNBOUND, staticService));
- }
-
- public Dictionary getProperties() {
- return null;
- }
-
- public DSEvent[] getEvents() {
- DSEvent[] events = new DSEvent[boundServiceEvents.size()];
- boundServiceEvents.copyInto(events);
- return events;
- }
-
- public Object getBoundService(String serviceName) {
- return boundServices.get(serviceName);
- }
-
- public void resetEvents() {
- boundServiceEvents.removeAllElements();
- }
-
- public ComponentContext getComponentContext() {
- return ctxt;
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/AnotherComponent.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/AnotherComponent.java
deleted file mode 100644
index cb243b3..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/AnotherComponent.java
+++ /dev/null
@@ -1,16 +0,0 @@
-package org.eclipse.equinox.ds.tests.tb4;
-
-import org.eclipse.equinox.ds.tests.tbc.TestHelper;
-import org.osgi.service.component.ComponentContext;
-
-
-public class AnotherComponent {
-
- public void activate(ComponentContext ctxt) {
- TestHelper.setActivatedStandAlone(true);
- }
-
- public void deactivate(ComponentContext ctxt) {
- TestHelper.setActivatedStandAlone(false);
- }
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/BoundReplacer.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/BoundReplacer.java
deleted file mode 100644
index c7992e9..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/BoundReplacer.java
+++ /dev/null
@@ -1,80 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tb4;
-
-import java.util.Dictionary;
-import java.util.Hashtable;
-import java.util.Vector;
-
-import org.eclipse.equinox.ds.tests.tbc.BoundMainProvider;
-import org.eclipse.equinox.ds.tests.tbc.ComponentContextProvider;
-import org.eclipse.equinox.ds.tests.tbc.DSEvent;
-import org.eclipse.equinox.ds.tests.tbc.DSEventsProvider;
-import org.osgi.service.component.ComponentContext;
-
-
-public class BoundReplacer implements DSEventsProvider, BoundMainProvider, ComponentContextProvider {
-
-
- private Hashtable boundServices = new Hashtable();
- private Vector boundServiceEvents = new Vector();
- private ComponentContext ctxt;
-
- public void activate(ComponentContext ctxt) {
- this.ctxt = ctxt;
- }
-
- public void deactivate(ComponentContext ctxt) {
- this.ctxt = null;
- }
-
- public void bindDynamicService(DynamicService dynService) {
- boundServiceEvents.addElement(new DSEvent(DSEvent.ACT_BOUND, dynService));
- boundServices.put(BoundMainProvider.DYNAMIC_SERVICE, dynService);
- }
-
- public void unbindDynamicService(DynamicService dynService) {
- boundServiceEvents.addElement(new DSEvent(DSEvent.ACT_UNBOUND, dynService));
- }
-
- public void bindNamedService(NamedService namedService) {
- boundServiceEvents.addElement(new DSEvent(DSEvent.ACT_BOUND, namedService));
- boundServices.put(BoundMainProvider.NAMED_SERVICE, namedService);
- }
-
- public void unbindNamedService(NamedService namedService) {
- boundServiceEvents.addElement(new DSEvent(DSEvent.ACT_UNBOUND, namedService));
- }
-
- public Dictionary getProperties() {
- return null;
- }
-
- public DSEvent[] getEvents() {
- DSEvent[] events = new DSEvent[boundServiceEvents.size()];
- boundServiceEvents.copyInto(events);
- return events;
- }
-
- public Object getBoundService(String serviceName) {
- return boundServices.get(serviceName);
- }
-
- public void resetEvents() {
- boundServiceEvents.removeAllElements();
- }
-
- public ComponentContext getComponentContext() {
- return ctxt;
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/Component1.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/Component1.java
deleted file mode 100644
index a80c8ac..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/Component1.java
+++ /dev/null
@@ -1,16 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tb4;
-
-public class Component1 {
-
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/Component2.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/Component2.java
deleted file mode 100644
index 5246e38..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/Component2.java
+++ /dev/null
@@ -1,16 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tb4;
-
-public class Component2 {
-
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/Component3.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/Component3.java
deleted file mode 100644
index 73ccfd8..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/Component3.java
+++ /dev/null
@@ -1,16 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tb4;
-
-public class Component3 {
-
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/DynamicService.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/DynamicService.java
deleted file mode 100644
index 807656b..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/DynamicService.java
+++ /dev/null
@@ -1,17 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.equinox.ds.tests.tb4;
-
-public interface DynamicService {
- public void doNothing();
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/GiveMeContext.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/GiveMeContext.java
deleted file mode 100644
index 4552458..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/GiveMeContext.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tb4;
-
-import java.util.Dictionary;
-
-import org.eclipse.equinox.ds.tests.tbc.ComponentContextProvider;
-import org.osgi.service.component.ComponentContext;
-
-
-public class GiveMeContext implements ComponentContextProvider {
-
- private ComponentContext ctxt;
-
- public void activate(ComponentContext ctxt) {
- this.ctxt = ctxt;
- }
- public void deactivate(ComponentContext ctxt) {
- this.ctxt = null;
- }
-
- public ComponentContext getComponentContext() {
- return ctxt;
- }
-
- public Dictionary getProperties() {
- return null;
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/NamedService.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/NamedService.java
deleted file mode 100644
index 4b8e201..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/NamedService.java
+++ /dev/null
@@ -1,17 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.equinox.ds.tests.tb4;
-
-public interface NamedService {
- public String getName();
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/ServiceProvider.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/ServiceProvider.java
deleted file mode 100644
index 0367fe6..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/ServiceProvider.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tb4;
-
-import org.eclipse.equinox.ds.tests.tbc.TestHelper;
-import org.osgi.service.component.ComponentContext;
-
-
-public class ServiceProvider {
-
-
- public void activate(ComponentContext ctxt) {
- TestHelper.setActivatedServiceProvider(true);
- }
-
- public void deactivate(ComponentContext ctxt) {
- TestHelper.setActivatedServiceProvider(false);
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/components.xml b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/components.xml
deleted file mode 100644
index fb11274..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/components.xml
+++ /dev/null
@@ -1,56 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<root>
-<scr:component name="org.eclipse.equinox.ds.tests.tb4.AnotherComponent"
- xmlns:scr="http://www.osgi.org/xmlns/scr/v1.0.0">
- <implementation class="org.eclipse.equinox.ds.tests.tb4.AnotherComponent"/>
-</scr:component>
-
-<scr:component name="org.eclipse.equinox.ds.tests.tb4.ServiceProvider"
- immediate="true"
- xmlns:scr="http://www.osgi.org/xmlns/scr/v1.0.0">
- <implementation class="org.eclipse.equinox.ds.tests.tb4.ServiceProvider"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tb4.ServiceProvider"/>
- </service>
-</scr:component>
-
-<scr:component name="org.eclipse.equinox.ds.tests.tb4.Component3"
- xmlns:scr="http://www.osgi.org/xmlns/scr/v1.0.0">
- <implementation class="org.eclipse.equinox.ds.tests.tb4.Component3"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tb4.Component3"/>
- </service>
-</scr:component>
-
-<scr:component name="org.eclipse.equinox.ds.tests.tb4.Component2"
- xmlns:scr="http://www.osgi.org/xmlns/scr/v1.0.0">
- <implementation class="org.eclipse.equinox.ds.tests.tb4.Component2"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tb4.Component2"/>
- </service>
- <reference
- name="TailComponent"
- interface="org.eclipse.equinox.ds.tests.tb4.Component3"
- />
-</scr:component>
-
-<scr:component name="org.eclipse.equinox.ds.tests.tb4.Component1"
- xmlns:scr="http://www.osgi.org/xmlns/scr/v1.0.0">
- <implementation class="org.eclipse.equinox.ds.tests.tb4.Component1"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tb4.Component1"/>
- </service>
- <reference
- name="MiddleComponent"
- interface="org.eclipse.equinox.ds.tests.tb4.Component2"
- />
-</scr:component>
-
-<scr:component name="org.eclipse.equinox.ds.tests.tb4.GiveMeContext"
- xmlns:scr="http://www.osgi.org/xmlns/scr/v1.0.0">
- <implementation class="org.eclipse.equinox.ds.tests.tb4.GiveMeContext"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.ComponentContextProvider"/>
- </service>
-</scr:component>
-</root>
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/impl/DynamicFactory.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/impl/DynamicFactory.java
deleted file mode 100644
index 9aa2579..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/impl/DynamicFactory.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tb4.impl;
-
-import java.util.Dictionary;
-
-import org.eclipse.equinox.ds.tests.tb4.DynamicService;
-import org.eclipse.equinox.ds.tests.tbc.ComponentContextProvider;
-import org.osgi.service.component.ComponentContext;
-
-public class DynamicFactory implements DynamicService, ComponentContextProvider {
- private ComponentContext ctxt;
-
- public void activate(ComponentContext componentContext) {
- this.ctxt = componentContext;
- }
-
- public void doNothing() {
- }
-
- public ComponentContext getComponentContext() {
- return ctxt;
- }
-
- public Dictionary getProperties() {
- return null;
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/impl/NamedFactory.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/impl/NamedFactory.java
deleted file mode 100644
index c894c2e..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/impl/NamedFactory.java
+++ /dev/null
@@ -1,51 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tb4.impl;
-
-import java.util.Dictionary;
-
-import org.eclipse.equinox.ds.tests.tb4.NamedService;
-import org.eclipse.equinox.ds.tests.tbc.ComponentContextProvider;
-import org.osgi.service.component.ComponentContext;
-
-public class NamedFactory implements NamedService, ComponentContextProvider {
- private String name = "name not init";
- private ComponentContext ctxt;
-
- public void activate(ComponentContext componentContext) {
- this.ctxt = componentContext;
- name = (String) componentContext.getProperties().get("name");
- if( name == null ) {
- this.name = "name not set";
- }
- }
-
- // it is absolutely legal to have activate without having deactivate!
- //public void deactivate(ComponentContext cc) {}
-
- public String getName() {
- return name;
- }
-
- public String toString() {
- return name;
- }
-
- public ComponentContext getComponentContext() {
- return ctxt;
- }
-
- public Dictionary getProperties() {
- return ctxt.getProperties();
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/impl/namedservice.properties b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/impl/namedservice.properties
deleted file mode 100644
index 57f6f46..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/impl/namedservice.properties
+++ /dev/null
@@ -1 +0,0 @@
-override.property.2=setFromFile
\ No newline at end of file
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/impl/namedservice.xml b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/impl/namedservice.xml
deleted file mode 100644
index 950f4e1..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb4/org/eclipse/equinox/ds/tests/tb4/impl/namedservice.xml
+++ /dev/null
@@ -1,76 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<root>
-
-<scr:component name="org.eclipse.equinox.ds.tests.tb4.NamedService"
- xmlns:scr="http://www.osgi.org/xmlns/scr/v1.0.0"
- factory="org.eclipse.equinox.ds.tests.tb4.NamedService">
- <implementation class="org.eclipse.equinox.ds.tests.tb4.impl.NamedFactory" />
- <property name="override.property.1" value="setFromXML"/>
- <properties entry="org/eclipse/equinox/ds/tests/tb4/impl/namedservice.properties"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tb4.NamedService"/>
- </service>
-</scr:component>
-
-<scr:component name="org.eclipse.equinox.ds.tests.tb4.DynamicService"
- xmlns:scr="http://www.osgi.org/xmlns/scr/v1.0.0"
- factory="org.eclipse.equinox.ds.tests.tb4.DynamicService">
- <implementation class="org.eclipse.equinox.ds.tests.tb4.impl.DynamicFactory" />
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tb4.DynamicService"/>
- </service>
-</scr:component>
-
-
-<scr:component name="org.eclipse.equinox.ds.tests.tb4.BoundReplacer"
- xmlns:scr="http://www.osgi.org/xmlns/scr/v1.0.0">
- <implementation class="org.eclipse.equinox.ds.tests.tb4.BoundReplacer"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tb4.BoundReplacer"/>
- </service>
- <reference
- name="DynamicReference"
- interface="org.eclipse.equinox.ds.tests.tb4.DynamicService"
- target="(component.name=org.eclipse.equinox.ds.tests.tb4.DynamicService)"
- cardinality="1..1"
- bind="bindDynamicService"
- unbind="unbindDynamicService"
- policy="dynamic"
- />
- <reference
- name="StaticReference"
- interface="org.eclipse.equinox.ds.tests.tb4.NamedService"
- target="(component.name=org.eclipse.equinox.ds.tests.tb4.NamedService)"
- cardinality="1..1"
- bind="bindNamedService"
- unbind="unbindNamedService"
- policy="static"
- />
-</scr:component>
-
-<scr:component name="org.eclipse.equinox.ds.tests.tb4.AdvancedBounder"
- xmlns:scr="http://www.osgi.org/xmlns/scr/v1.0.0">
- <implementation class="org.eclipse.equinox.ds.tests.tb4.AdvancedBounder"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tb4.AdvancedBounder"/>
- </service>
- <reference
- name="DynamicReference"
- interface="org.eclipse.equinox.ds.tests.tbc.DynamicWorker"
- target="(mandatory.property=true)"
- cardinality="1..1"
- bind="bindDynamicService"
- unbind="unbindDynamicService"
- policy="dynamic"
- />
- <reference
- name="StaticReference"
- interface="org.eclipse.equinox.ds.tests.tbc.StaticWorker"
- target="(mandatory.property=true)"
- cardinality="1..1"
- bind="bindStaticService"
- unbind="unbindStaticService"
- policy="static"
- />
-</scr:component>
-</root>
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb5/META-INF/MANIFEST.MF b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb5/META-INF/MANIFEST.MF
deleted file mode 100644
index 602889e..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb5/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,5 +0,0 @@
-Manifest-Version: 1.0
-Bundle-Name: Declaritive services test
-Bundle-Description: Declaritive services TB5
-Bundle-Category: test
-Service-Component: org/eclipse/equinox/ds/tests/tb5/impl/component.xml
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb5/org/eclipse/equinox/ds/tests/tb5/impl/SecurityTester.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb5/org/eclipse/equinox/ds/tests/tb5/impl/SecurityTester.java
deleted file mode 100644
index c320fe1..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb5/org/eclipse/equinox/ds/tests/tb5/impl/SecurityTester.java
+++ /dev/null
@@ -1,16 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tb5.impl;
-
-public class SecurityTester {
-
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb5/org/eclipse/equinox/ds/tests/tb5/impl/component.xml b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb5/org/eclipse/equinox/ds/tests/tb5/impl/component.xml
deleted file mode 100644
index 666f96d..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb5/org/eclipse/equinox/ds/tests/tb5/impl/component.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<scr:component name="SecurityTestComponent"
- xmlns:scr="http://www.osgi.org/xmlns/scr/v1.0.0">
- <implementation class="org.eclipse.equinox.ds.tests.tb5.impl.SecurityTester"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tb5.impl.SecurityTester"/>
- </service>
- <reference
- name="LOG"
- cardinality="1..1"
- interface="org.eclipse.equinox.ds.tests.tb1.impl.AnotherComponent"
- />
-</scr:component>
\ No newline at end of file
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb6/META-INF/MANIFEST.MF b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb6/META-INF/MANIFEST.MF
deleted file mode 100644
index 4b9daa7..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb6/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,8 +0,0 @@
-Manifest-Version: 1.0
-Bundle-Name: Declaritive services test
-Bundle-Description: Declaritive services TB6
-Bundle-Category: test
-Import-Package: org.eclipse.equinox.ds.tests.tbc,
- org.osgi.framework,
- org.osgi.service.component;version="1.0.0"
-Service-Component: org/eclipse/equinox/ds/tests/tb6/components.xml
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb6/org/eclipse/equinox/ds/tests/tb6/ReferencedComp.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb6/org/eclipse/equinox/ds/tests/tb6/ReferencedComp.java
deleted file mode 100644
index 9aa722d..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb6/org/eclipse/equinox/ds/tests/tb6/ReferencedComp.java
+++ /dev/null
@@ -1,16 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tb6;
-
-public class ReferencedComp {
-
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb6/org/eclipse/equinox/ds/tests/tb6/StaticComp.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb6/org/eclipse/equinox/ds/tests/tb6/StaticComp.java
deleted file mode 100644
index 33c9ef3..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb6/org/eclipse/equinox/ds/tests/tb6/StaticComp.java
+++ /dev/null
@@ -1,101 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tb6;
-
-import java.util.Dictionary;
-import java.util.Vector;
-
-import org.eclipse.equinox.ds.tests.tbc.ComponentContextProvider;
-import org.eclipse.equinox.ds.tests.tbc.DSEvent;
-import org.eclipse.equinox.ds.tests.tbc.DSEventsProvider;
-import org.eclipse.equinox.ds.tests.tbc.BoundTester;
-import org.osgi.framework.ServiceReference;
-
-import org.osgi.service.component.ComponentContext;
-
-public class StaticComp implements DSEventsProvider, BoundTester, ComponentContextProvider {
-
- private ComponentContext ctxt;
- private Vector componentEvents = new Vector();
- private ReferencedComp rc;
-
- public void activate(ComponentContext ctxt) {
- this.ctxt = ctxt;
- componentEvents.addElement(new DSEvent(DSEvent.ACT_ACTIVATE, null));
- }
-
- public void deactivate(ComponentContext ctxt) {
- this.ctxt = null;
- componentEvents.addElement(new DSEvent(DSEvent.ACT_DEACTIVATE, null));
- }
-
- public void bind(ReferencedComp rc) {
- this.rc = rc;
- componentEvents.addElement(new DSEvent(DSEvent.ACT_BOUND, rc));
- }
-
- public void unbind(ReferencedComp rc) {
- if (this.rc == rc) {
- this.rc = null;
- componentEvents.addElement(new DSEvent(DSEvent.ACT_UNBOUND, rc));
- }
- }
-
- public DSEvent[] getEvents() {
- DSEvent[] events = new DSEvent[componentEvents.size()];
- componentEvents.copyInto(events);
- return events;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.equinox.ds.tests.tbc.DSEventsProvider#resetComponentEvents()
- */
- public void resetEvents() {
- componentEvents.removeAllElements();
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.equinox.ds.tests.tbc.PropertiesProvider#getProperties()
- */
- public Dictionary getProperties() {
- return null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.equinox.ds.tests.tbc.BoundTester#getBoundObject(int)
- */
- public ServiceReference getBoundServiceRef(int index) {
- return null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.equinox.ds.tests.tbc.BoundTester#getBoundObjectsCount()
- */
- public int getBoundObjectsCount() {
- return (this.rc != null ? 1 : 0);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.equinox.ds.tests.tbc.BoundTester#getBoundService(int)
- */
- public Object getBoundService(int index) {
- return this.rc;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.equinox.ds.tests.tbc.ComponentContextProvider#getComponentContext()
- */
- public ComponentContext getComponentContext() {
- return ctxt;
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb6/org/eclipse/equinox/ds/tests/tb6/components.xml b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb6/org/eclipse/equinox/ds/tests/tb6/components.xml
deleted file mode 100644
index 1234729..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb6/org/eclipse/equinox/ds/tests/tb6/components.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<root>
-
-<scr:component name="org.eclipse.equinox.ds.tests.tb6.ReferencedComp"
- enabled="false"
- xmlns:scr="http://www.osgi.org/xmlns/scr/v1.0.0">
- <implementation class="org.eclipse.equinox.ds.tests.tb6.ReferencedComp"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tb6.ReferencedComp"/>
- </service>
-</scr:component>
-
-<scr:component name="org.eclipse.equinox.ds.tests.tb6.StaticComp"
- xmlns:scr="http://www.osgi.org/xmlns/scr/v1.0.0">
- <implementation class="org.eclipse.equinox.ds.tests.tb6.StaticComp"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tb6.StaticComp"/>
- </service>
- <reference
- name="referencedComponent"
- interface="org.eclipse.equinox.ds.tests.tb6.ReferencedComp"
- target="(component.name=org.eclipse.equinox.ds.tests.tb6.ReferencedComp)"
- cardinality="0..1"
- policy="static"
- bind="bind"
- unbind="unbind"
- />
-</scr:component>
-
-</root>
-
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb7/META-INF/MANIFEST.MF b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb7/META-INF/MANIFEST.MF
deleted file mode 100644
index e6e9a2b..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb7/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,8 +0,0 @@
-Manifest-Version: 1.0
-Bundle-Name: Declaritive services test
-Bundle-Description: Declaritive services TB7
-Bundle-Category: test
-Import-Package: org.eclipse.equinox.ds.tests.tbc,
- org.osgi.framework,
- org.osgi.service.component;version="1.0.0"
-Service-Component: org/eclipse/equinox/ds/tests/tb7/components.xml
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb7/org/eclipse/equinox/ds/tests/tb7/DynamicCircuit1.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb7/org/eclipse/equinox/ds/tests/tb7/DynamicCircuit1.java
deleted file mode 100644
index 077c3fe..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb7/org/eclipse/equinox/ds/tests/tb7/DynamicCircuit1.java
+++ /dev/null
@@ -1,16 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tb7;
-
-public class DynamicCircuit1 {
-
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb7/org/eclipse/equinox/ds/tests/tb7/DynamicCircuit2.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb7/org/eclipse/equinox/ds/tests/tb7/DynamicCircuit2.java
deleted file mode 100644
index 91feeed..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb7/org/eclipse/equinox/ds/tests/tb7/DynamicCircuit2.java
+++ /dev/null
@@ -1,59 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tb7;
-
-import java.util.Dictionary;
-
-import org.eclipse.equinox.ds.tests.tbc.BoundTester;
-import org.osgi.framework.ServiceReference;
-import org.osgi.service.component.ComponentContext;
-
-public class DynamicCircuit2 implements BoundTester {
-
- private ServiceReference mateRef;
- private ComponentContext ctxt;
-
- public void activate(ComponentContext ctxt) {
- this.ctxt = ctxt;
- }
-
- public void deactivate(ComponentContext ctxt) {
- this.ctxt = null;
- }
-
- public int getBoundObjectsCount() {
- return (mateRef != null ? 1 : 0);
- }
-
- public Object getBoundService(int index) {
- return ctxt.locateService("referencedComponent", mateRef);
- }
-
- public ServiceReference getBoundServiceRef(int index) {
- return mateRef;
- }
-
- public Dictionary getProperties() {
- return null;
- }
-
- public void bind(ServiceReference mateRef) {
- this.mateRef = mateRef;
- }
-
- public void unbind(ServiceReference mateRef) {
- if (this.mateRef == mateRef) {
- this.mateRef = null;
- }
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb7/org/eclipse/equinox/ds/tests/tb7/StaticCircuit1.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb7/org/eclipse/equinox/ds/tests/tb7/StaticCircuit1.java
deleted file mode 100644
index fb11abe..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb7/org/eclipse/equinox/ds/tests/tb7/StaticCircuit1.java
+++ /dev/null
@@ -1,16 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tb7;
-
-public class StaticCircuit1 {
-
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb7/org/eclipse/equinox/ds/tests/tb7/StaticCircuit2.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb7/org/eclipse/equinox/ds/tests/tb7/StaticCircuit2.java
deleted file mode 100644
index 0cfe297..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb7/org/eclipse/equinox/ds/tests/tb7/StaticCircuit2.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tb7;
-
-import java.util.Dictionary;
-
-import org.eclipse.equinox.ds.tests.tbc.BoundTester;
-import org.osgi.framework.ServiceReference;
-
-public class StaticCircuit2 implements BoundTester {
-
- private StaticCircuit1 mate;
- public int getBoundObjectsCount() {
- return (mate != null ? 1 : 0);
- }
-
- public Object getBoundService(int index) {
- return mate;
- }
-
- public ServiceReference getBoundServiceRef(int index) {
- return null;
- }
-
- public Dictionary getProperties() {
- return null;
- }
-
- public void bind(StaticCircuit1 mate) {
- this.mate = mate;
- }
-
- public void unbind(StaticCircuit1 mate) {
- if (this.mate == mate) {
- this.mate = null;
- }
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb7/org/eclipse/equinox/ds/tests/tb7/UnbreakableCircuit1.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb7/org/eclipse/equinox/ds/tests/tb7/UnbreakableCircuit1.java
deleted file mode 100644
index 7dd7951..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb7/org/eclipse/equinox/ds/tests/tb7/UnbreakableCircuit1.java
+++ /dev/null
@@ -1,16 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tb7;
-
-public class UnbreakableCircuit1 {
-
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb7/org/eclipse/equinox/ds/tests/tb7/UnbreakableCircuit2.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb7/org/eclipse/equinox/ds/tests/tb7/UnbreakableCircuit2.java
deleted file mode 100644
index 3a41e5c..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb7/org/eclipse/equinox/ds/tests/tb7/UnbreakableCircuit2.java
+++ /dev/null
@@ -1,16 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tb7;
-
-public class UnbreakableCircuit2 {
-
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb7/org/eclipse/equinox/ds/tests/tb7/components.xml b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb7/org/eclipse/equinox/ds/tests/tb7/components.xml
deleted file mode 100644
index af6252f..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb7/org/eclipse/equinox/ds/tests/tb7/components.xml
+++ /dev/null
@@ -1,86 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<root>
- <!-- 1) unbreakable circularity - all components has mandatory references -->
- <scr:component name="org.eclipse.equinox.ds.tests.tb7.UnbreakableCircuit1"
- xmlns:scr="http://www.osgi.org/xmlns/scr/v1.0.0">
- <implementation class="org.eclipse.equinox.ds.tests.tb7.UnbreakableCircuit1"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tb7.UnbreakableCircuit1"/>
- </service>
- <reference
- name="referencedComponent"
- interface="org.eclipse.equinox.ds.tests.tb7.UnbreakableCircuit2"
- />
- </scr:component>
-
- <scr:component name="org.eclipse.equinox.ds.tests.tb7.UnbreakableCircuit2"
- xmlns:scr="http://www.osgi.org/xmlns/scr/v1.0.0">
- <implementation class="org.eclipse.equinox.ds.tests.tb7.UnbreakableCircuit2"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tb7.UnbreakableCircuit2"/>
- </service>
- <reference
- name="referencedComponent"
- interface="org.eclipse.equinox.ds.tests.tb7.UnbreakableCircuit1"
- />
- </scr:component>
-
- <!-- 2) breakable circularity with dynamic policy -->
- <scr:component name="org.eclipse.equinox.ds.tests.tb7.DynamicCircuit1"
- xmlns:scr="http://www.osgi.org/xmlns/scr/v1.0.0">
- <implementation class="org.eclipse.equinox.ds.tests.tb7.DynamicCircuit1"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tb7.DynamicCircuit1"/>
- </service>
- <reference
- name="referencedComponent"
- interface="org.eclipse.equinox.ds.tests.tb7.DynamicCircuit2"
- />
- </scr:component>
-
- <scr:component name="org.eclipse.equinox.ds.tests.tb7.DynamicCircuit2"
- xmlns:scr="http://www.osgi.org/xmlns/scr/v1.0.0">
- <implementation class="org.eclipse.equinox.ds.tests.tb7.DynamicCircuit2"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tb7.DynamicCircuit2"/>
- </service>
- <reference
- name="referencedComponent"
- interface="org.eclipse.equinox.ds.tests.tb7.DynamicCircuit1"
- cardinality="0..1"
- policy="dynamic"
- bind="bind"
- unbind="unbind"
- />
- </scr:component>
-
- <!-- 3) Breakable circularity with static policy -->
- <scr:component name="org.eclipse.equinox.ds.tests.tb7.StaticCircuit1"
- xmlns:scr="http://www.osgi.org/xmlns/scr/v1.0.0">
- <implementation class="org.eclipse.equinox.ds.tests.tb7.StaticCircuit1"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tb7.StaticCircuit1"/>
- </service>
- <reference
- name="referencedComponent"
- interface="org.eclipse.equinox.ds.tests.tb7.StaticCircuit2"
- />
- </scr:component>
-
- <scr:component name="org.eclipse.equinox.ds.tests.tb7.StaticCircuit2"
- xmlns:scr="http://www.osgi.org/xmlns/scr/v1.0.0">
- <implementation class="org.eclipse.equinox.ds.tests.tb7.StaticCircuit2"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tb7.StaticCircuit2"/>
- </service>
- <reference
- name="referencedComponent"
- interface="org.eclipse.equinox.ds.tests.tb7.StaticCircuit1"
- cardinality="0..1"
- bind="bind"
- unbind="unbind"
- />
- </scr:component>
-
-</root>
-
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb8/META-INF/MANIFEST.MF b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb8/META-INF/MANIFEST.MF
deleted file mode 100644
index 1d947a2..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb8/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,13 +0,0 @@
-Manifest-Version: 1.0
-Bundle-Name: Declaritive services test
-Bundle-Description: Declaritive services TB8
-Bundle-Category: test
-Import-Package: org.eclipse.equinox.ds.tests.tbc,
- org.osgi.framework,
- org.osgi.service.component;version="1.0.0"
-Service-Component: org/eclipse/equinox/ds/tests/tb8/root1.xml,
- org/eclipse/equinox/ds/tests/tb8/root2.xml,
- org/eclipse/equinox/ds/tests/tb8/root3.xml,
- org/eclipse/equinox/ds/tests/tb8/root4.xml,
- org/eclipse/equinox/ds/tests/tb8/root5.xml,
- org/eclipse/equinox/ds/tests/tb8/components.xml
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb8/org/eclipse/equinox/ds/tests/tb8/NamespaceTester.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb8/org/eclipse/equinox/ds/tests/tb8/NamespaceTester.java
deleted file mode 100644
index 9a785fd..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb8/org/eclipse/equinox/ds/tests/tb8/NamespaceTester.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tb8;
-
-import org.eclipse.equinox.ds.tests.tbc.NamespaceProvider;
-import org.osgi.service.component.ComponentContext;
-
-public class NamespaceTester implements NamespaceProvider {
- private int nsid = -1;
- private final static String NSID_PROP = "component.nsid";
-
- protected void activate(ComponentContext ctxt) {
- Object prop = ctxt.getProperties().get(NSID_PROP);
- if (!(prop instanceof Integer)) {
- return;
- }
- nsid = ((Integer)prop).intValue();
- }
-
- protected void deactivate(ComponentContext ctxt) {
-
- }
-
- public int getComponentNSID() {
- return nsid;
- }
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb8/org/eclipse/equinox/ds/tests/tb8/components.xml b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb8/org/eclipse/equinox/ds/tests/tb8/components.xml
deleted file mode 100644
index e1ebd0c..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb8/org/eclipse/equinox/ds/tests/tb8/components.xml
+++ /dev/null
@@ -1,273 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- Any non root DS component should be in namespace "http://www.osgi.org/xmlns/scr/v1.0.0" -->
-
-<components>
-
- <!-- This ds component description is not valid
- (the component is in the default NS, but the default NS is not set) -->
-
- <component name="org.eclipse.equinox.ds.tests.tb8.nonroot1"
- immediate="true">
- <implementation class="org.eclipse.equinox.ds.tests.tb8.NamespaceTester"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.NamespaceProvider"/>
- </service>
- <property name="component.nsid" type="Integer" value="111"/>
- </component>
-
-
- <!-- This ds component description is valid
- (the component is in the default NS and it is set properly) -->
-
- <component name="org.eclipse.equinox.ds.tests.tb8.nonroot2"
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- immediate="true">
- <implementation class="org.eclipse.equinox.ds.tests.tb8.NamespaceTester"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.NamespaceProvider"/>
- </service>
- <property name="component.nsid" type="Integer" value="112"/>
- </component>
-
-
- <!-- This ds component description is not valid
- (the component is in the default NS, but the default NS is set wrongly) -->
-
- <component name="org.eclipse.equinox.ds.tests.tb8.nonroot3"
- xmlns="http://www.osgi.org/wrong"
- immediate="true">
- <implementation class="org.eclipse.equinox.ds.tests.tb8.NamespaceTester"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.NamespaceProvider"/>
- </service>
- <property name="component.nsid" type="Integer" value="113"/>
- </component>
-
-
- <!-- This ds component description is valid
- (the component is in the "scr" NS and it is set properly) -->
-
- <scr:component name="org.eclipse.equinox.ds.tests.tb8.nonroot4"
- xmlns:scr="http://www.osgi.org/xmlns/scr/v1.0.0"
- immediate="true">
- <implementation class="org.eclipse.equinox.ds.tests.tb8.NamespaceTester"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.NamespaceProvider"/>
- </service>
- <property name="component.nsid" type="Integer" value="114"/>
- </scr:component>
-
-
- <!-- This ds component description is not valid
- (the component is in the "scr" NS, but it is set wrongly) -->
-
- <scr:component name="org.eclipse.equinox.ds.tests.tb8.nonroot5"
- xmlns:scr="http://www.osgi.org/wrong"
- immediate="true">
- <implementation class="org.eclipse.equinox.ds.tests.tb8.NamespaceTester"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.NamespaceProvider"/>
- </service>
- <property name="component.nsid" type="Integer" value="115"/>
- </scr:component>
-
-
-
- <componentsInner xmlns="http://www.osgi.org/xmlns/scr/v1.0.0">
-
- <!-- This ds component description is valid
- (the component is in the default NS and it is set properly in parent) -->
-
- <component name="org.eclipse.equinox.ds.tests.tb8.nonroot6"
- immediate="true">
- <implementation class="org.eclipse.equinox.ds.tests.tb8.NamespaceTester"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.NamespaceProvider"/>
- </service>
- <property name="component.nsid" type="Integer" value="116"/>
- </component>
-
-
- <!-- This ds component description is not valid
- (the component is in the "scr" NS, but it is not set
- (although the default NS is set properly in parent)) -->
-
- <scr:component name="org.eclipse.equinox.ds.tests.tb8.nonroot7"
- immediate="true">
- <implementation class="org.eclipse.equinox.ds.tests.tb8.NamespaceTester"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.NamespaceProvider"/>
- </service>
- <property name="component.nsid" type="Integer" value="117"/>
- </scr:component>
-
- </componentsInner>
-
-
-
- <componentsInner xmlns="http://www.osgi.org/wrong">
-
- <!-- This ds component description is not valid
- (the component is in the default NS, but the default NS
- is set wrongly (in parent)) -->
-
- <component name="org.eclipse.equinox.ds.tests.tb8.nonroot8"
- immediate="true">
- <implementation class="org.eclipse.equinox.ds.tests.tb8.NamespaceTester"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.NamespaceProvider"/>
- </service>
- <property name="component.nsid" type="Integer" value="118"/>
- </component>
-
-
- <!-- This ds component description is not valid
- (the component is in the "scr" NS, but it is not set
- (not in the component nor the parent)) -->
-
- <scr:component name="org.eclipse.equinox.ds.tests.tb8.nonroot9"
- immediate="true">
- <implementation class="org.eclipse.equinox.ds.tests.tb8.NamespaceTester"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.NamespaceProvider"/>
- </service>
- <property name="component.nsid" type="Integer" value="119"/>
- </scr:component>
-
- </componentsInner>
-
-
-
- <componentsInner xmlns:scr="http://www.osgi.org/xmlns/scr/v1.0.0">
-
- <!-- This ds component description is not valid
- (the component is in the default NS, but the default NS is not set
- (although the "scr" NS is set properly in parent)) -->
-
- <component name="org.eclipse.equinox.ds.tests.tb8.nonroot10"
- immediate="true">
- <implementation class="org.eclipse.equinox.ds.tests.tb8.NamespaceTester"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.NamespaceProvider"/>
- </service>
- <property name="component.nsid" type="Integer" value="120"/>
- </component>
-
-
- <!-- This ds component description is valid
- (the component is in the "scr" NS and it is set properly in parent) -->
-
- <scr:component name="org.eclipse.equinox.ds.tests.tb8.nonroot11"
- immediate="true">
- <implementation class="org.eclipse.equinox.ds.tests.tb8.NamespaceTester"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.NamespaceProvider"/>
- </service>
- <property name="component.nsid" type="Integer" value="121"/>
- </scr:component>
-
- </componentsInner>
-
-
-
- <componentsInner xmlns:scr="http://www.osgi.org/wrong">
-
- <!-- This ds component description is not valid
- (the component is in the default NS, but the default NS is not set) -->
-
- <component name="org.eclipse.equinox.ds.tests.tb8.nonroot12"
- immediate="true">
- <implementation class="org.eclipse.equinox.ds.tests.tb8.NamespaceTester"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.NamespaceProvider"/>
- </service>
- <property name="component.nsid" type="Integer" value="122"/>
- </component>
-
-
- <!-- This ds component description is not valid
- (the component is in the "scr" NS, but it is set wrongly (in parent)) -->
-
- <scr:component name="org.eclipse.equinox.ds.tests.tb8.nonroot13"
- immediate="true">
- <implementation class="org.eclipse.equinox.ds.tests.tb8.NamespaceTester"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.NamespaceProvider"/>
- </service>
- <property name="component.nsid" type="Integer" value="123"/>
- </scr:component>
-
- </componentsInner>
-
-
-
- <componentsInner xmlns="http://www.osgi.org/wrong">
-
- <!-- This ds component description is valid
- (the component is in the default NS, and the properly defined
- default NS in component overrides wrongly defined NS in parent) -->
-
- <component name="org.eclipse.equinox.ds.tests.tb8.nonroot14"
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- immediate="true">
- <implementation class="org.eclipse.equinox.ds.tests.tb8.NamespaceTester"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.NamespaceProvider"/>
- </service>
- <property name="component.nsid" type="Integer" value="124"/>
- </component>
-
-
- <!-- This ds component description is valid
- (the component is in the "scr" NS, and it is set properly in component
- (the default NS is set wrongly in parent, but we use "scr" NS)) -->
-
- <scr:component name="org.eclipse.equinox.ds.tests.tb8.nonroot15"
- xmlns:scr="http://www.osgi.org/xmlns/scr/v1.0.0"
- immediate="true">
- <implementation class="org.eclipse.equinox.ds.tests.tb8.NamespaceTester"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.NamespaceProvider"/>
- </service>
- <property name="component.nsid" type="Integer" value="125"/>
- </scr:component>
-
- </componentsInner>
-
-
-
- <componentsInner xmlns:scr="http://www.osgi.org/wrong">
-
- <!-- This ds component description is valid
- (the component is in the default NS, and it is set properly in component
- (the "scr" NS is set wrongly in parent, but we use default NS) -->
-
- <component name="org.eclipse.equinox.ds.tests.tb8.nonroot16"
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- immediate="true">
- <implementation class="org.eclipse.equinox.ds.tests.tb8.NamespaceTester"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.NamespaceProvider"/>
- </service>
- <property name="component.nsid" type="Integer" value="126"/>
- </component>
-
-
- <!-- This ds component description is valid
- (the component is in the "scr" NS, and the properly defined
- "scr" NS in component overrides wrongly defined NS in parent) -->
-
- <scr:component name="org.eclipse.equinox.ds.tests.tb8.nonroot17"
- xmlns:scr="http://www.osgi.org/xmlns/scr/v1.0.0"
- immediate="true">
- <implementation class="org.eclipse.equinox.ds.tests.tb8.NamespaceTester"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.NamespaceProvider"/>
- </service>
- <property name="component.nsid" type="Integer" value="127"/>
- </scr:component>
-
- </componentsInner>
-
-</components>
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb8/org/eclipse/equinox/ds/tests/tb8/root1.xml b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb8/org/eclipse/equinox/ds/tests/tb8/root1.xml
deleted file mode 100644
index 70540bc..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb8/org/eclipse/equinox/ds/tests/tb8/root1.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- This ds component description is valid -->
-
-<component name="org.eclipse.equinox.ds.tests.tb8.root1"
- immediate="true">
- <implementation class="org.eclipse.equinox.ds.tests.tb8.NamespaceTester"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.NamespaceProvider"/>
- </service>
- <property name="component.nsid" type="Integer" value="101"/>
-</component>
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb8/org/eclipse/equinox/ds/tests/tb8/root2.xml b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb8/org/eclipse/equinox/ds/tests/tb8/root2.xml
deleted file mode 100644
index 6ca9a78..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb8/org/eclipse/equinox/ds/tests/tb8/root2.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- This ds component description is valid -->
-
-<component name="org.eclipse.equinox.ds.tests.tb8.root2"
- xmlns="http://www.osgi.org/xmlns/scr/v1.0.0"
- immediate="true">
- <implementation class="org.eclipse.equinox.ds.tests.tb8.NamespaceTester"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.NamespaceProvider"/>
- </service>
- <property name="component.nsid" type="Integer" value="102"/>
-</component>
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb8/org/eclipse/equinox/ds/tests/tb8/root3.xml b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb8/org/eclipse/equinox/ds/tests/tb8/root3.xml
deleted file mode 100644
index 82531fd..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb8/org/eclipse/equinox/ds/tests/tb8/root3.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- This ds component description is not valid -->
-
-<component name="org.eclipse.equinox.ds.tests.tb8.root3"
- xmlns="http://www.osgi.org/wrong"
- immediate="true">
- <implementation class="org.eclipse.equinox.ds.tests.tb8.NamespaceTester"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.NamespaceProvider"/>
- </service>
- <property name="component.nsid" type="Integer" value="103"/>
-</component>
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb8/org/eclipse/equinox/ds/tests/tb8/root4.xml b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb8/org/eclipse/equinox/ds/tests/tb8/root4.xml
deleted file mode 100644
index b069e41..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb8/org/eclipse/equinox/ds/tests/tb8/root4.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- This ds component description is valid -->
-
-<scr:component name="org.eclipse.equinox.ds.tests.tb8.root4"
- xmlns:scr="http://www.osgi.org/xmlns/scr/v1.0.0"
- immediate="true">
- <implementation class="org.eclipse.equinox.ds.tests.tb8.NamespaceTester"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.NamespaceProvider"/>
- </service>
- <property name="component.nsid" type="Integer" value="104"/>
-</scr:component>
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb8/org/eclipse/equinox/ds/tests/tb8/root5.xml b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb8/org/eclipse/equinox/ds/tests/tb8/root5.xml
deleted file mode 100644
index baa04a0..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb8/org/eclipse/equinox/ds/tests/tb8/root5.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- This ds component description is not valid -->
-
-<scr:component name="org.eclipse.equinox.ds.tests.tb8.root5"
- xmlns:scr="http://www.osgi.org/wrong"
- immediate="true">
- <implementation class="org.eclipse.equinox.ds.tests.tb8.NamespaceTester"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tbc.NamespaceProvider"/>
- </service>
- <property name="component.nsid" type="Integer" value="105"/>
-</scr:component>
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb9/META-INF/MANIFEST.MF b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb9/META-INF/MANIFEST.MF
deleted file mode 100644
index 4875032..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb9/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,8 +0,0 @@
-Manifest-Version: 1.0
-Bundle-Name: Declaritive services test
-Bundle-Description: Declaritive services TB9
-Bundle-Category: test
-Import-Package: org.osgi.framework,
- org.osgi.service.component;version="1.0.0"
-Export-Package: org.eclipse.equinox.ds.tests.tb9
-Service-Component: org/eclipse/equinox/ds/tests/tb9/*.xml
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb9/org/eclipse/equinox/ds/tests/tb9/Wildcard1.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb9/org/eclipse/equinox/ds/tests/tb9/Wildcard1.java
deleted file mode 100644
index 8784a6e..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb9/org/eclipse/equinox/ds/tests/tb9/Wildcard1.java
+++ /dev/null
@@ -1,16 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tb9;
-
-public interface Wildcard1 {
-
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb9/org/eclipse/equinox/ds/tests/tb9/Wildcard2.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb9/org/eclipse/equinox/ds/tests/tb9/Wildcard2.java
deleted file mode 100644
index 557a780..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb9/org/eclipse/equinox/ds/tests/tb9/Wildcard2.java
+++ /dev/null
@@ -1,16 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tb9;
-
-public interface Wildcard2 {
-
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb9/org/eclipse/equinox/ds/tests/tb9/WildcardTester.java b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb9/org/eclipse/equinox/ds/tests/tb9/WildcardTester.java
deleted file mode 100644
index e1fba23..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb9/org/eclipse/equinox/ds/tests/tb9/WildcardTester.java
+++ /dev/null
@@ -1,16 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tb9;
-
-public class WildcardTester implements Wildcard1, Wildcard2 {
-
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb9/org/eclipse/equinox/ds/tests/tb9/comp1.xml b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb9/org/eclipse/equinox/ds/tests/tb9/comp1.xml
deleted file mode 100644
index c868beb..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb9/org/eclipse/equinox/ds/tests/tb9/comp1.xml
+++ /dev/null
@@ -1,10 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<scr:component name="org.eclipse.equinox.ds.tests.tb9.WildcardComponent1"
- immediate="true"
- xmlns:scr="http://www.osgi.org/xmlns/scr/v1.0.0">
- <implementation class="org.eclipse.equinox.ds.tests.tb9.WildcardTester"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tb9.Wildcard1"/>
- </service>
-</scr:component>
diff --git a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb9/org/eclipse/equinox/ds/tests/tb9/comp2.xml b/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb9/org/eclipse/equinox/ds/tests/tb9/comp2.xml
deleted file mode 100644
index bf48aa0..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/bundles_src/tb9/org/eclipse/equinox/ds/tests/tb9/comp2.xml
+++ /dev/null
@@ -1,10 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<scr:component name="org.eclipse.equinox.ds.tests.tb9.WildcardComponent2"
- immediate="true"
- xmlns:scr="http://www.osgi.org/xmlns/scr/v1.0.0">
- <implementation class="org.eclipse.equinox.ds.tests.tb9.WildcardTester"/>
- <service>
- <provide interface="org.eclipse.equinox.ds.tests.tb9.Wildcard2"/>
- </service>
-</scr:component>
diff --git a/bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/AllTests.java b/bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/AllTests.java
deleted file mode 100644
index 7e83bef..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/AllTests.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests;
-
-import org.eclipse.equinox.ds.tests.tbc.DSTest;
-
-import junit.framework.Test;
-import junit.framework.TestSuite;
-
-public class AllTests {
-
- public static Test suite() {
- TestSuite suite = new TestSuite("Declarative Services Tests");
- //$JUnit-BEGIN$
- suite.addTestSuite(DSTest.class);
- //$JUnit-END$
- return suite;
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/BundleInstaller.java b/bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/BundleInstaller.java
deleted file mode 100644
index c155361..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/BundleInstaller.java
+++ /dev/null
@@ -1,156 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006, 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
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests;
-
-import java.io.IOException;
-import java.net.URL;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.Map;
-
-import org.eclipse.osgi.service.urlconversion.URLConverter;
-import org.osgi.framework.Bundle;
-import org.osgi.framework.BundleContext;
-import org.osgi.framework.BundleException;
-import org.osgi.framework.InvalidSyntaxException;
-import org.osgi.util.tracker.ServiceTracker;
-
-public class BundleInstaller {
- private BundleContext context;
- private String rootLocation;
- private HashMap bundles = new HashMap();
- private ServiceTracker converter;
-
- public BundleInstaller(String bundlesRoot, BundleContext context) throws InvalidSyntaxException {
- this.context = context;
- rootLocation = bundlesRoot;
- converter = new ServiceTracker(context, context.createFilter("(&(objectClass=" + URLConverter.class.getName() + ")(protocol=bundleentry))"), null);
- converter.open();
- }
-
- synchronized public Bundle installBundle(String name) throws BundleException {
- return installBundle(name, true);
- }
-
- synchronized public Bundle installBundle(String name, boolean track) throws BundleException {
- if (bundles == null && track)
- return null;
- String location = getBundleLocation(name);
- Bundle bundle = context.installBundle(location);
- if (track)
- bundles.put(name, bundle);
- return bundle;
- }
-
- public String getBundleLocation(String name) throws BundleException {
- String bundleFileName = rootLocation + "/" + name;
- URL bundleURL = context.getBundle().getEntry(bundleFileName);
- if (bundleURL == null)
- bundleURL = context.getBundle().getEntry(bundleFileName + ".jar");
- if (bundleURL == null)
- throw new BundleException("Could not find bundle to install at: " + name);
- try {
- bundleURL = ((URLConverter) converter.getService()).resolve(bundleURL);
- } catch (IOException e) {
- throw new BundleException("Converter error", e);
- }
- String location = bundleURL.toExternalForm();
- if ("file".equals(bundleURL.getProtocol()))
- location = "reference:" + location;
- return location;
- }
-
- synchronized public Bundle updateBundle(String fromName, String toName) throws BundleException {
- if (bundles == null)
- return null;
- Bundle fromBundle = (Bundle) bundles.get(fromName);
- if (fromBundle == null)
- throw new BundleException("The bundle to update does not exist!! " + fromName);
- String bundleFileName = rootLocation + "/" + toName;
- URL bundleURL = context.getBundle().getEntry(bundleFileName);
- if (bundleURL == null)
- bundleURL = context.getBundle().getEntry(bundleFileName + ".jar");
- try {
- bundleURL = ((URLConverter) converter.getService()).resolve(bundleURL);
- } catch (IOException e) {
- throw new BundleException("Converter error", e);
- }
- String location = bundleURL.toExternalForm();
- if ("file".equals(bundleURL.getProtocol()))
- location = "reference:" + location;
- try {
- fromBundle.update(new URL(location).openStream());
- } catch (Exception e) {
- throw new BundleException("Errors when updating bundle " + fromBundle, e);
- }
- bundles.remove(fromName);
- bundles.put(toName, fromBundle);
- return fromBundle;
- }
-
- synchronized public Bundle uninstallBundle(String name) throws BundleException {
- if (bundles == null)
- return null;
- Bundle bundle = (Bundle) bundles.remove(name);
- if (bundle == null)
- return null;
- bundle.uninstall();
- return bundle;
- }
-
- synchronized public void uninstallBundle(Bundle b) throws BundleException {
- if (bundles == null)
- return;
- if (bundles.containsValue(b)) {
- for (Iterator it = bundles.entrySet().iterator(); it.hasNext();) {
- Map.Entry entry = (Map.Entry) it.next();
- if (entry.getValue().equals(b)) {
- bundles.remove(entry.getKey());
- break;
- }
- }
- }
- b.uninstall();
- }
-
- synchronized public Bundle[] uninstallAllBundles() throws BundleException {
- if (bundles == null)
- return null;
- ArrayList result = new ArrayList(bundles.size());
- for (Iterator iter = bundles.values().iterator(); iter.hasNext();) {
- Bundle bundle = (Bundle) iter.next();
- try {
- bundle.uninstall();
- } catch (IllegalStateException e) {
- // ignore; bundle probably already uninstalled
- }
- result.add(bundle);
- }
- bundles.clear();
- return (Bundle[]) result.toArray(new Bundle[result.size()]);
- }
-
- synchronized public Bundle getBundle(String name) {
- if (bundles == null)
- return null;
- return (Bundle) bundles.get(name);
- }
-
- synchronized public Bundle[] shutdown() throws BundleException {
- if (bundles == null)
- return null;
- Bundle[] result = uninstallAllBundles();
- converter.close();
- bundles = null;
- return result;
- }
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/DSTestsActivator.java b/bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/DSTestsActivator.java
deleted file mode 100644
index 23714ad..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/DSTestsActivator.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests;
-
-import org.osgi.framework.Bundle;
-import org.osgi.framework.BundleActivator;
-import org.osgi.framework.BundleContext;
-import org.osgi.framework.BundleException;
-
-public class DSTestsActivator implements BundleActivator {
-
- private static DSTestsActivator instance;
- private BundleContext context;
-
- public DSTestsActivator() {
- instance = this;
- }
- public void start(BundleContext context) throws Exception {
- this.context = context;
- }
-
- public void stop(BundleContext context) throws Exception {
- this.context = null;
- }
-
- public static BundleContext getContext() {
- return instance != null ? instance.context : null;
- }
-
- public static void activateSCR() {
- activateBundle("org.eclipse.equinox.ds");
- activateBundle("org.eclipse.equinox.cm");
- activateBundle("org.eclipse.equinox.log");
- activateBundle("org.eclipse.equinox.util");
- }
-
- private static void activateBundle(String symbolicName) {
- if (instance != null) {
- Bundle[] bundles = instance.context.getBundles();
- for (int i = 0; i < bundles.length; i++) {
- if (symbolicName.equals(bundles[i].getSymbolicName())) {
- if (bundles[i].getState() != Bundle.ACTIVE)
- try {
- bundles[i].start(Bundle.START_TRANSIENT);
- } catch (BundleException e) {
- e.printStackTrace();
- }
- }
- }
- }
- }
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/tbc/BoundCountProvider.java b/bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/tbc/BoundCountProvider.java
deleted file mode 100644
index cc634ff..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/tbc/BoundCountProvider.java
+++ /dev/null
@@ -1,18 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tbc;
-
-public interface BoundCountProvider extends PropertiesProvider {
-
- public int getBoundServiceCount(String service);
-
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/tbc/BoundMainProvider.java b/bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/tbc/BoundMainProvider.java
deleted file mode 100644
index 8e62ce9..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/tbc/BoundMainProvider.java
+++ /dev/null
@@ -1,20 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tbc;
-
-public interface BoundMainProvider extends PropertiesProvider {
-
- public static final String DYNAMIC_SERVICE = "DynamicWorker";
- public static final String NAMED_SERVICE = "NamedService";
- public static final String STATIC_SERVICE = "StaticWorker";
- public Object getBoundService(String serviceName);
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/tbc/BoundTester.java b/bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/tbc/BoundTester.java
deleted file mode 100644
index 7498163..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/tbc/BoundTester.java
+++ /dev/null
@@ -1,22 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tbc;
-
-import org.osgi.framework.ServiceReference;
-
-public interface BoundTester extends PropertiesProvider {
-
- public int getBoundObjectsCount();
- public ServiceReference getBoundServiceRef(int index);
- public Object getBoundService(int index);
-
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/tbc/BundleContextProvider.java b/bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/tbc/BundleContextProvider.java
deleted file mode 100644
index 9aa7ff0..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/tbc/BundleContextProvider.java
+++ /dev/null
@@ -1,20 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tbc;
-
-import org.osgi.framework.BundleContext;
-
-public interface BundleContextProvider extends PropertiesProvider {
-
- public BundleContext getBundleContext();
-
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/tbc/ComponentContextProvider.java b/bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/tbc/ComponentContextProvider.java
deleted file mode 100644
index 9d0534c..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/tbc/ComponentContextProvider.java
+++ /dev/null
@@ -1,20 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tbc;
-
-import org.osgi.service.component.ComponentContext;
-
-public interface ComponentContextProvider extends PropertiesProvider {
-
- public ComponentContext getComponentContext();
-
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/tbc/ComponentManager.java b/bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/tbc/ComponentManager.java
deleted file mode 100644
index 8d69dc6..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/tbc/ComponentManager.java
+++ /dev/null
@@ -1,17 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tbc;
-
-public interface ComponentManager extends PropertiesProvider {
-
- public void enableComponent(String name, boolean flag);
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/tbc/DSEvent.java b/bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/tbc/DSEvent.java
deleted file mode 100644
index 5ea1913..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/tbc/DSEvent.java
+++ /dev/null
@@ -1,95 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tbc;
-
-public class DSEvent implements Comparable {
-
- public static final int ACT_BOUND = 1;
- public static final int ACT_UNBOUND = 2;
- public static final int ACT_ACTIVATE = 3;
- public static final int ACT_DEACTIVATE = 4;
-
- private static long lastTime = System.currentTimeMillis();
- private static final Object lock = new Object();
-
- private long time;
- private int action;
- private Object object;
-
- public DSEvent(int action, Object object) {
- synchronized (lock) { // to prevent from creating BoundServiceEvents in one and the same millisecond
- this.action = action;
- this.object = object;
- while(lastTime == System.currentTimeMillis());
- this.time = lastTime = System.currentTimeMillis();
- }
- }
-
- public int getAction() {
- return action;
- }
-
- public Object getObject() {
- return object;
- }
-
- public long getTime() {
- return time;
- }
-
- /**
- * Returns whether this event is before the passed one
- * @param event
- * @return
- */
- public boolean before(DSEvent event) {
- if (event.time > this.time) {
- return true;
- } else {
- return false;
- }
- }
-
- /* (non-Javadoc)
- * @see java.lang.Comparable#compareTo(java.lang.Object)
- */
- public int compareTo(Object var0) {
- DSEvent event = (DSEvent) var0;
- if (event.time > this.time) {
- return -1;
- } else if (event.time < this.time) {
- return 1;
- } else {
- return 0;
- }
- }
-
- protected String getActionAsString() {
- switch(getAction()) {
- case ACT_BOUND: return "ACT_BOUND";
- case ACT_UNBOUND: return "ACT_UNBOUND";
- case ACT_ACTIVATE: return "ACT_ACTIVATE";
- case ACT_DEACTIVATE: return "ACT_DEACTIVATE";
- default: return "UNKNOWN (" + getAction() + ")";
- }
- }
-
- public String toString() {
- StringBuffer buf = new StringBuffer("DSEvent[");
- buf.append("time=" + this.time + ";action=");
- buf.append(getActionAsString());
- buf.append(";object=" + (this.object != null ? this.object.toString() : "null"));
- buf.append("]");
- return buf.toString();
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/tbc/DSEventsProvider.java b/bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/tbc/DSEventsProvider.java
deleted file mode 100644
index b9c86a3..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/tbc/DSEventsProvider.java
+++ /dev/null
@@ -1,17 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tbc;
-
-public interface DSEventsProvider extends PropertiesProvider {
- public DSEvent[] getEvents();
- public void resetEvents();
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/tbc/DSTest.java b/bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/tbc/DSTest.java
deleted file mode 100644
index e32d757..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/tbc/DSTest.java
+++ /dev/null
@@ -1,2542 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tbc;
-
-import java.io.IOException;
-import java.util.Dictionary;
-import java.util.Enumeration;
-import java.util.Hashtable;
-
-import junit.framework.TestCase;
-
-import org.eclipse.equinox.ds.tests.BundleInstaller;
-import org.eclipse.equinox.ds.tests.DSTestsActivator;
-import org.osgi.framework.Bundle;
-import org.osgi.framework.BundleContext;
-import org.osgi.framework.BundleException;
-import org.osgi.framework.Constants;
-import org.osgi.framework.Filter;
-import org.osgi.framework.InvalidSyntaxException;
-import org.osgi.framework.PackagePermission;
-import org.osgi.framework.ServicePermission;
-import org.osgi.framework.ServiceReference;
-import org.osgi.framework.ServiceRegistration;
-import org.osgi.service.cm.Configuration;
-import org.osgi.service.cm.ConfigurationAdmin;
-import org.osgi.service.component.ComponentConstants;
-import org.osgi.service.component.ComponentContext;
-import org.osgi.service.component.ComponentFactory;
-import org.osgi.service.component.ComponentInstance;
-import org.osgi.service.permissionadmin.PermissionAdmin;
-import org.osgi.service.permissionadmin.PermissionInfo;
-import org.osgi.util.tracker.ServiceTracker;
-
-public class DSTest extends TestCase {
-
- private static final String NAMED_CLASS = "org.eclipse.equinox.ds.tests.tb4.NamedService";
-
- private static final String EXTENDED_CLASS = "org.eclipse.equinox.ds.tests.tb1.BindUnbindSuccessor";
-
- private static final String SAC_CLASS = "org.eclipse.equinox.ds.tests.tb1.impl.AnotherComponent";
-
- private static final String SC_CLASS = "org.eclipse.equinox.ds.tests.tb1.impl.BaseComp";
-
- private static final String DYN_SERVICE_CLASS = "org.eclipse.equinox.ds.tests.tb4.DynamicService";
-
- private static final String BSRC_CLASS = "org.eclipse.equinox.ds.tests.tb4.BoundReplacer";
-
- private static final String MBSRC_CLASS = "org.eclipse.equinox.ds.tests.tb4.AdvancedBounder";
-
- private static final String SECURITY_CLASS = "org.eclipse.equinox.ds.tests.tb5.impl.SecurityTester";
-
- private static final String BLOCK_ACTIVE_CLASS = "org.eclipse.equinox.ds.tests.tb2.impl.Blocker";
-
- private static final String BLOCK_BIND_CLASS = "org.eclipse.equinox.ds.tests.tb3.impl.BindBlocker";
-
- private static final String STATIC_CLASS = "org.eclipse.equinox.ds.tests.tb6.StaticComp";
-
- private static final String REFERENCED_CLASS = "org.eclipse.equinox.ds.tests.tb6.ReferencedComp";
-
- private static final String NS_CLASS = "org.eclipse.equinox.ds.tests.tbc.NamespaceProvider";
-
- private static final String COMP_OPTIONAL_100 = "org.eclipse.equinox.ds.tests.tb11.optionalNS100";
-
- private static final String COMP_OPTIONAL_110 = "org.eclipse.equinox.ds.tests.tb11.optionalNS110";
-
- private static final String COMP_REQUIRE_100 = "org.eclipse.equinox.ds.tests.tb11.requireNS100";
-
- private static final String COMP_REQUIRE_110 = "org.eclipse.equinox.ds.tests.tb11.requireNS110";
-
- private static final String COMP_IGNORE_100 = "org.eclipse.equinox.ds.tests.tb11.ignoreNS100";
-
- private static final String COMP_IGNORE_110 = "org.eclipse.equinox.ds.tests.tb11.ignoreNS110";
-
- private static final String COMP_NOTSET_100 = "org.eclipse.equinox.ds.tests.tb11.notsetNS100";
-
- private static final String COMP_NOTSET_110 = "org.eclipse.equinox.ds.tests.tb11.notsetNS110";
-
- private static final String MOD_NOTSET_NS100 = "org.eclipse.equinox.ds.tests.tb21.notsetNS100";
-
- private static final String MOD_NOTSET_NS110 = "org.eclipse.equinox.ds.tests.tb21.notsetNS110";
-
- private static final String MOD_NOARGS_NS100 = "org.eclipse.equinox.ds.tests.tb21.NoArgs100";
-
- private static final String MOD_NOARGS_NS110 = "org.eclipse.equinox.ds.tests.tb21.NoArgs110";
-
- private static final String MOD_CC_NS100 = "org.eclipse.equinox.ds.tests.tb21.CcNS100";
-
- private static final String MOD_CC_NS110 = "org.eclipse.equinox.ds.tests.tb21.CcNS110";
-
- private static final String MOD_BC_NS100 = "org.eclipse.equinox.ds.tests.tb21.BcNS100";
-
- private static final String MOD_BC_NS110 = "org.eclipse.equinox.ds.tests.tb21.BcNS110";
-
- private static final String MOD_MAP_NS100 = "org.eclipse.equinox.ds.tests.tb21.MapNS100";
-
- private static final String MOD_MAP_NS110 = "org.eclipse.equinox.ds.tests.tb21.MapNS110";
-
- private static final String MOD_CC_BC_MAP_NS100 = "org.eclipse.equinox.ds.tests.tb21.CcBcMapNS100";
-
- private static final String MOD_CC_BC_MAP_NS110 = "org.eclipse.equinox.ds.tests.tb21.CcBcMapNS110";
-
- private static final String MOD_NOT_EXIST_NS110 = "org.eclipse.equinox.ds.tests.tb21.NotExistNS110";
-
- private static final String MOD_THROW_EX_NS110 = "org.eclipse.equinox.ds.tests.tb21.ThrowExNS110";
-
- private static int timeout = 1000;
-
- private Bundle tb1;
-
- private ServiceTracker trackerNamedService;
-
- private ServiceTracker trackerNamedServiceFactory;
-
- private ServiceTracker trackerCM;
-
- private ServiceTracker trackerExtendedClass;
-
- private ServiceTracker trackerSAC;
-
- private ServiceTracker trackerSC;
-
- private ServiceTracker trackerDynService;
-
- private ServiceTracker trackerDynServiceFactory;
-
- private ServiceTracker trackerBSRC;
-
- private ServiceTracker trackerMBSRC;
-
- private ServiceTracker trackerSecurity;
-
- private ServiceTracker trackerBAS;
-
- private ServiceTracker trackerBBS;
-
- private ServiceTracker trackerStatic;
-
- private ServiceTracker trackerReferenced;
-
- private ServiceTracker trackerNS;
-
- private ServiceTracker trackerBoundServiceCounterFactory;
-
- private ServiceTracker trackerBoundServiceCounterHelperFactory;
-
- private ServiceTracker trackerStaticServiceCounterFactory;
-
- private ServiceTracker trackerBaseService;
-
- private Hashtable registeredServices = new Hashtable();
-
- private int scr_restart_timeout = 33000;
-
- private boolean synchronousBuild = false;
-
- private BundleInstaller installer;
-
- public void setUp() throws Exception {
- DSTestsActivator.activateSCR();
-
- timeout = getSystemProperty("scr.test.timeout", timeout);
- scr_restart_timeout = getSystemProperty("scr.restart.timeout", scr_restart_timeout);
-
- String synchronousBuildProp = System.getProperty("equinox.ds.synchronous_build");
- synchronousBuild = (synchronousBuildProp == null) || !synchronousBuildProp.equalsIgnoreCase("false");
-
- clearConfigurations();
- // init trackers
- BundleContext bc = getContext();
-
- installer = new BundleInstaller("/scr_test/", bc);
-
- // install test bundles
- tb1 = installBundle("tb1");
-
- // start them
- tb1.start();
- waitBundleStart();
-
- trackerNamedService = new ServiceTracker(bc, NAMED_CLASS, null);
- Filter filter = bc.createFilter("(&(" + ComponentConstants.COMPONENT_FACTORY + '=' + NAMED_CLASS + ")("
- + Constants.OBJECTCLASS + '=' + ComponentFactory.class.getName() + "))");
- trackerNamedServiceFactory = new ServiceTracker(bc, filter, null);
- trackerCM = new ServiceTracker(bc, ConfigurationAdmin.class.getName(), null);
- trackerExtendedClass = new ServiceTracker(bc, EXTENDED_CLASS, null);
- trackerSAC = new ServiceTracker(bc, SAC_CLASS, null);
- trackerSC = new ServiceTracker(bc, SC_CLASS, null);
- trackerDynService = new ServiceTracker(bc, DYN_SERVICE_CLASS, null);
- filter = bc.createFilter("(&(" + ComponentConstants.COMPONENT_FACTORY + '=' + DYN_SERVICE_CLASS + ")("
- + Constants.OBJECTCLASS + '=' + ComponentFactory.class.getName() + "))");
- trackerDynServiceFactory = new ServiceTracker(bc, filter, null);
- trackerBSRC = new ServiceTracker(bc, BSRC_CLASS, null);
- trackerMBSRC = new ServiceTracker(bc, MBSRC_CLASS, null);
- trackerSecurity = new ServiceTracker(bc, SECURITY_CLASS, null);
- trackerBAS = new ServiceTracker(bc, BLOCK_ACTIVE_CLASS, null);
- trackerBBS = new ServiceTracker(bc, BLOCK_BIND_CLASS, null);
- trackerStatic = new ServiceTracker(bc, STATIC_CLASS, null);
- trackerReferenced = new ServiceTracker(bc, REFERENCED_CLASS, null);
- trackerNS = new ServiceTracker(bc, NS_CLASS, null);
- filter = bc.createFilter("(&(" + ComponentConstants.COMPONENT_FACTORY + '=' + "CountFactory" + ")("
- + Constants.OBJECTCLASS + '=' + ComponentFactory.class.getName() + "))");
- trackerBoundServiceCounterFactory = new ServiceTracker(bc, filter, null);
- filter = bc.createFilter("(&(" + ComponentConstants.COMPONENT_FACTORY + '=' + "CountHelperFactory" + ")("
- + Constants.OBJECTCLASS + '=' + ComponentFactory.class.getName() + "))");
- trackerBoundServiceCounterHelperFactory = new ServiceTracker(bc, filter, null);
- filter = bc.createFilter("(&(" + ComponentConstants.COMPONENT_FACTORY + '=' + "StaticServiceCountFactory" + ")("
- + Constants.OBJECTCLASS + '=' + ComponentFactory.class.getName() + "))");
- trackerStaticServiceCounterFactory = new ServiceTracker(bc, filter, null);
- trackerBaseService = new ServiceTracker(bc, PropertiesProvider.class.getName(), null);
-
- // start listening
- trackerNamedService.open();
- trackerNamedServiceFactory.open();
- trackerCM.open();
- trackerExtendedClass.open();
- trackerSAC.open();
- trackerSC.open();
- trackerDynService.open();
- trackerDynServiceFactory.open();
- trackerBSRC.open();
- trackerMBSRC.open();
- trackerSecurity.open();
- trackerBAS.open();
- trackerBBS.open();
- trackerStatic.open();
- trackerReferenced.open();
- trackerNS.open();
- trackerBoundServiceCounterFactory.open();
- trackerBoundServiceCounterHelperFactory.open();
- trackerStaticServiceCounterFactory.open();
- trackerBaseService.open();
- }
-
- /**
- * This methods takes care of the configurations related to this test
- *
- * @throws IOException
- * @throws InvalidSyntaxException
- * @throws InterruptedException
- */
- private void clearConfigurations() throws IOException, InvalidSyntaxException {
- ServiceReference cmSR = getContext().getServiceReference(ConfigurationAdmin.class.getName());
- if (cmSR == null)
- return;
- ConfigurationAdmin cm = (ConfigurationAdmin) getContext().getService(cmSR);
- // clean configurations from previous tests
- // clean factory configs for named service
- clearConfiguration(cm, "(service.factoryPid=" + NAMED_CLASS + ")");
- // clean configs for named service
- clearConfiguration(cm, "(service.pid=" + NAMED_CLASS + ")");
- // clean configs for stand alone component
- clearConfiguration(cm, "(service.pid=" + SAC_CLASS + ")");
- // clean configs for optionalNS100
- clearConfiguration(cm, "(service.pid=" + COMP_OPTIONAL_100 + ")");
- clearConfiguration(cm, "(service.factoryPid=" + COMP_OPTIONAL_100 + ")");
- // clean configs for optionalNS110
- clearConfiguration(cm, "(service.pid=" + COMP_OPTIONAL_110 + ")");
- clearConfiguration(cm, "(service.factoryPid=" + COMP_OPTIONAL_110 + ")");
- // clean configs for requireNS100
- clearConfiguration(cm, "(service.pid=" + COMP_REQUIRE_100 + ")");
- clearConfiguration(cm, "(service.factoryPid=" + COMP_REQUIRE_100 + ")");
- // clean configs for requireNS110
- clearConfiguration(cm, "(service.pid=" + COMP_REQUIRE_110 + ")");
- clearConfiguration(cm, "(service.factoryPid=" + COMP_REQUIRE_110 + ")");
- // clean configs for ignoreNS100
- clearConfiguration(cm, "(service.pid=" + COMP_IGNORE_100 + ")");
- clearConfiguration(cm, "(service.factoryPid=" + COMP_IGNORE_100 + ")");
- // clean configs for ignoreNS110
- clearConfiguration(cm, "(service.pid=" + COMP_IGNORE_110 + ")");
- clearConfiguration(cm, "(service.factoryPid=" + COMP_IGNORE_110 + ")");
- // clean configs for notsetNS100
- clearConfiguration(cm, "(service.pid=" + COMP_NOTSET_100 + ")");
- clearConfiguration(cm, "(service.factoryPid=" + COMP_NOTSET_100 + ")");
- // clean configs for notsetNS110
- clearConfiguration(cm, "(service.pid=" + COMP_NOTSET_110 + ")");
- clearConfiguration(cm, "(service.factoryPid=" + COMP_NOTSET_110 + ")");
-
- clearConfiguration(cm, "(service.pid=" + MOD_NOTSET_NS100 + ")");
- clearConfiguration(cm, "(service.pid=" + MOD_NOTSET_NS110 + ")");
- clearConfiguration(cm, "(service.pid=" + MOD_NOARGS_NS100 + ")");
- clearConfiguration(cm, "(service.pid=" + MOD_NOARGS_NS110 + ")");
- clearConfiguration(cm, "(service.pid=" + MOD_CC_NS100 + ")");
- clearConfiguration(cm, "(service.pid=" + MOD_CC_NS110 + ")");
- clearConfiguration(cm, "(service.pid=" + MOD_BC_NS100 + ")");
- clearConfiguration(cm, "(service.pid=" + MOD_BC_NS110 + ")");
- clearConfiguration(cm, "(service.pid=" + MOD_MAP_NS100 + ")");
- clearConfiguration(cm, "(service.pid=" + MOD_MAP_NS110 + ")");
- clearConfiguration(cm, "(service.pid=" + MOD_CC_BC_MAP_NS100 + ")");
- clearConfiguration(cm, "(service.pid=" + MOD_CC_BC_MAP_NS110 + ")");
- clearConfiguration(cm, "(service.pid=" + MOD_NOT_EXIST_NS110 + ")");
- clearConfiguration(cm, "(service.pid=" + MOD_THROW_EX_NS110 + ")");
-
- getContext().ungetService(cmSR);
- try {
- Thread.sleep(timeout * 2);
- } catch (InterruptedException e) {
- }
- }
-
- private void clearConfiguration(ConfigurationAdmin cm, String filter) throws IOException, InvalidSyntaxException {
- Configuration[] configs = cm.listConfigurations(filter);
- for (int i = 0; configs != null && i < configs.length; i++) {
- Configuration configuration = configs[i];
- configuration.delete();
- }
- }
-
- /**
- * @param propertyKey
- */
- private int getSystemProperty(String propertyKey, int defaultValue) {
- String propertyString = System.getProperty(propertyKey);
- int sleepTime = defaultValue;
- if (propertyString != null) {
- try {
- sleepTime = Integer.parseInt(propertyString);
- } catch (Exception e) {
- e.printStackTrace();
- System.out.println("Error while parsing sleep value! The default one will be used : " + defaultValue);
- }
- if (sleepTime < 100) {
- log("The sleep value is too low : " + sleepTime + " ! The default one will be used : " + defaultValue);
- return defaultValue;
- }
- return sleepTime;
- }
- return defaultValue;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.equinox.ds.tests.tbc.DSTest.#tearDown()
- */
- public void tearDown() throws Exception {
- unregisterAllServices();
-
- trackerNamedService.close();
- trackerNamedServiceFactory.close();
- trackerExtendedClass.close();
- trackerSAC.close();
- trackerSC.close();
- trackerDynService.close();
- trackerDynServiceFactory.close();
- trackerBSRC.close();
- trackerMBSRC.close();
- trackerSecurity.close();
- trackerBAS.close();
- trackerBBS.close();
- trackerStatic.close();
- trackerReferenced.close();
- trackerNS.close();
- trackerBoundServiceCounterFactory.close();
- trackerBoundServiceCounterHelperFactory.close();
- trackerBaseService.close();
-
- if (installer != null) {
- BundleInstaller bi = installer;
- installer = null;
- bi.shutdown();
- }
-
- clearConfigurations();
- }
-
- public void testBindUnbind() throws Exception {
-
- assertEquals("TestBundle1 must be running.", Bundle.ACTIVE, tb1.getState());
-
- Bundle tb1a = installBundle("tb1a");
- tb1a.start();
- waitBundleStart();
- ServiceReference sr1 = getContext().getServiceReference("org.eclipse.equinox.ds.tests.tb1a.Comp1");
- assertNotNull("Incorrect components should be ignored and the component Comp1 should be available", sr1);
- getContext().ungetService(sr1);
- uninstallBundle(tb1a);
-
- Object s = trackerExtendedClass.getService();
- assertNotNull("The BindUnbindSuccessor component should be available", s);
-
- assertTrue("The bind method on BindUnbindSuccessor component should be called to save the service reference",
- ((BoundTester) s).getBoundObjectsCount() > 0);
-
- // disable the referenced component to trigger unbind event
- ComponentManager enabler = (ComponentManager) s;
- enabler.enableComponent(SAC_CLASS, false);
- Thread.sleep(timeout);
-
- assertNull("The SAC component should be disabled (unavailable)", trackerSAC.getServiceReference());
-
- assertTrue("The unbind method on BindUnbindSuccessor component should be called to reset the service reference",
- ((BoundTester) s).getBoundObjectsCount() < 1);
-
- // enable the referenced component
- enabler = (ComponentManager) trackerExtendedClass.getService();
- enabler.enableComponent(SAC_CLASS, true);
- Thread.sleep(timeout);
- assertNotNull("The SAC component should be available", trackerSAC.getServiceReference());
- }
-
- public void testUniqueComponentContext() throws Exception {
- Bundle bundle = installBundle("tb4");
- bundle.start();
- waitBundleStart();
-
- Hashtable props;
- ComponentFactory factory = (ComponentFactory) trackerNamedServiceFactory.getService();
- assertNotNull("The NamedService component factory should be available", factory);
-
- // create the first service
- props = new Hashtable();
- props.put("name", "hello");
-
- ComponentInstance ci1 = factory.newInstance(props);
- ComponentInstance ci2 = factory.newInstance(props);
-
- ComponentContextProvider cce1 = (ComponentContextProvider) ci1.getInstance();
- ComponentContextProvider cce2 = (ComponentContextProvider) ci2.getInstance();
-
- assertNotSame("The two instances created must be different", cce1, cce2);
-
- ComponentContext cc1 = cce1.getComponentContext();
- ComponentContext cc2 = cce2.getComponentContext();
-
- assertNotSame("The two component contexts must be not the same", cc1, cc2);
-
- uninstallBundle(bundle);
- }
-
- public void testComponentContextMethods() throws Exception {
-
- Object extendedClass = trackerExtendedClass.getService();
- // check that the BindUnbindSuccessor component is available
- assertNotNull("BindUnbindSuccessor component should be available", extendedClass);
-
- ComponentContext ctxt = ((ComponentContextProvider) extendedClass).getComponentContext();
- assertNotNull("The BindUnbindSuccessor component should be activated properly", ctxt);
-
- assertNotNull("The AnotherComponent should be available before we disable it", trackerSAC.getServiceReferences());
- assertTrue("The AnotherComponent should be available before we disable it",
- trackerSAC.getServiceReferences().length > 0);
- assertNotNull("The Worker should be available before we disable it", trackerSC.getServiceReferences());
- assertTrue("The Worker should be available before we disable it", trackerSC.getServiceReferences().length > 0);
-
- // *** test disableComponent() method
- boolean exceptionThrown = false;
- try {
- ((ComponentManager) extendedClass).enableComponent("InvalidParameter", true); // test
- // for
- // disabling
- // unexistent
- } catch (IllegalArgumentException iae) {
- // expected exception
- exceptionThrown = true;
- } catch (Exception e) {
- // unexpected exception
- fail("Unexpected exception " + e.getMessage());
- }
- if (!exceptionThrown) {
- fail("Expected IllegalArgumentException but not thrown");
- }
-
- ((ComponentManager) extendedClass).enableComponent(SAC_CLASS, false);
- Thread.sleep(timeout * 2); // let the SCR to unregister the service
- assertNull("The service must not be available after we had disabled the component (AnotherComponent)", trackerSAC
- .getServiceReferences());
-
- ((ComponentManager) extendedClass).enableComponent(SC_CLASS, false);
- Thread.sleep(timeout * 2); // let the SCR to unregister the service
- assertNull("The service must not be available after we had disabled the component (Worker)", trackerSC
- .getServiceReferences());
-
- // *** test enableComponent() method
- ((ComponentManager) extendedClass).enableComponent(SAC_CLASS, true);
- Thread.sleep(timeout * 2); // let the SCR to register the service
- assertNotNull("The service must be available after we had enabled the component", trackerSAC.getServiceReferences());
- assertTrue("The service must be available after we had enabled the component",
- trackerSAC.getServiceReferences().length > 0);
-
- ((ComponentManager) extendedClass).enableComponent(null, true);
- Thread.sleep(timeout * 2);
- assertNotNull("The enableComponent() with passed null parameter, must enable the remaining disabled components",
- trackerSC.getServiceReferences());
- assertTrue("The enableComponent() with passed null parameter, must enable the remaining disabled components",
- trackerSC.getServiceReferences().length > 0);
-
- // *** test getBundleContext()
- BundleContextProvider sacBCE = (BundleContextProvider) trackerSAC.getService();
- assertNotNull("AnotherComponent should be available", sacBCE);
- assertSame("The two bundle context (this from the activator and from the ComponentContext object must be the same",
- sacBCE.getBundleContext(), ((ComponentContextProvider) extendedClass).getComponentContext().getBundleContext());
-
- // *** test getComponentInstance()
- Bundle bundle = installBundle("tb4");
- assertNotNull("Installing tb4.jar should succeed", bundle);
- bundle.start();
- waitBundleStart();
-
- Hashtable props;
- ComponentFactory factory = (ComponentFactory) trackerNamedServiceFactory.getService();
- assertNotNull("NamedService component factory should be available", factory);
-
- props = new Hashtable();
- props.put("name", "hello");
-
- ComponentInstance ci = factory.newInstance(props);
- assertNotNull("newInstance() should not return null", ci);
- ComponentContextProvider cce = (ComponentContextProvider) ci.getInstance();
- assertNotNull("getInstance() should not return null if we haven't disposed the component", cce);
- assertNotNull("the component instance should be initialized correctly", cce.getComponentContext());
- ComponentInstance ctxtInstance = cce.getComponentContext().getComponentInstance();
- assertSame(
- "The ComponentInstance object retrieved from the factory and from the ComponentContext must be the same", ci,
- ctxtInstance);
- // dispose the instance
- ci.dispose();
- assertNull("getInstance() should return null when disposed", ci.getInstance());
-
- // *** test getUsingBundle()
- ComponentContextProvider simpleComponentCCE = (ComponentContextProvider) trackerSC.getService();
- assertNotNull("Worker should be available", simpleComponentCCE);
- assertNotNull("Worker's context should be not null", simpleComponentCCE.getComponentContext());
- assertNotNull("At least this bundle (TBC) must be using the Worker service", simpleComponentCCE
- .getComponentContext().getUsingBundle());
-
- // *** test getProperties()
- Dictionary p = simpleComponentCCE.getComponentContext().getProperties();
- assertNotNull("Worker properties must be not null", p);
- assertEquals("The properties must contain the custom property defined in the component description", p
- .get("custom"), "customvalue");
- assertEquals("The properties must contain the component.name property", p.get(ComponentConstants.COMPONENT_NAME),
- SC_CLASS);
- assertNotNull("The properties must contain the component.id property", p.get(ComponentConstants.COMPONENT_ID));
- assertEquals("The component.id property must be of type java.lang.Long", p.get(ComponentConstants.COMPONENT_ID)
- .getClass().getName(), Long.class.getName());
-
- // *** test getServiceReference()
- ServiceReference ctxtServiceReference = ctxt.getServiceReference();
- ServiceReference bcServiceReference = trackerExtendedClass.getServiceReference();
- assertEquals("The two ServiceReference should be equal", ctxtServiceReference, bcServiceReference);
-
- // *** test locateService(String)
- Object locateSac = ctxt.locateService("StandAloneComp");
- assertNotNull("The locateService() method should return non-null object", locateSac);
- assertEquals("The object must implement " + SAC_CLASS, locateSac.getClass().getName(), SAC_CLASS);
-
- // test illegal call
- assertNull("Trying to get invalid reference should return null", ctxt.locateService("InvalidReference"));
-
- ((ComponentManager) extendedClass).enableComponent(SAC_CLASS, false); // disable
- // component
- // to
- // test
- // that
- // the
- // locateService()
- // don't
- // return
- // disabled
- // components
- Thread.sleep(timeout);
-
- assertEquals("Check that the component is correctly disabled", 0, countAvailableServices(trackerSAC));
-
- locateSac = ctxt.locateService("StandAloneComp");
- assertNull("The reference shouldn't be available with optional cardinality and disabled component", locateSac);
-
- ((ComponentManager) extendedClass).enableComponent(SAC_CLASS, true);
- Thread.sleep(timeout * 2);
- assertTrue("Check that the component is correctly enabled", countAvailableServices(trackerSAC) > 0);
-
- // *** test locateServices(String)
- Object[] boundObjects = ctxt.locateServices("StandAloneComp");
- int boundCount = ((BoundTester) extendedClass).getBoundObjectsCount();
- assertNotNull("The returned array of bound services should not be null", boundObjects);
- assertEquals("The returned array of bound services should have the length equal to the internal count", boundCount,
- boundObjects.length);
- for (int i = 0; i < boundObjects.length; i++) {
- assertNotNull("There shouldn't be null element in the bound objects array (" + i + ")", boundObjects[i]);
- }
-
- assertNull("The locateServices() method should return null on invalid reference name", ctxt
- .locateServices("InvalidReference"));
-
- // *** test locateService(String, ServiceReference)
- assertTrue("There must be at least one bound element", ((BoundTester) extendedClass).getBoundObjectsCount() > 0);
-
- ServiceReference sr1 = ((BoundTester) extendedClass).getBoundServiceRef(0);
- assertNotNull("The ServiceReference bound to the BindUnbindSuccessor components should not be null", sr1);
- Object fromSR1 = ctxt.getBundleContext().getService(sr1);
- Object fromCtxt = ctxt.locateService("StandAloneComp", sr1);
- try {
- assertNotNull("The service object from BundleContext must not be null", fromSR1);
- assertNotNull("The service object from locateService() must not be null", fromCtxt);
- assertSame(
- "The two objects retrieved from BundleContext and from locateService(String, ServiceReference) method must be the same",
- fromSR1, fromCtxt);
- } finally {
- ctxt.getBundleContext().ungetService(sr1);
- }
-
- assertNull("locateService() must return null when passed ServiceReference is null", ctxt.locateService(
- "StandAloneComp", null));
-
- assertNull("locateService() must return null when passed ServiceReference isn't bound to the component", ctxt
- .locateService("StandAloneComp", trackerExtendedClass.getServiceReference()));
-
- assertNull(
- "locateService() must return null when the referenceName isn't correct even if the service reference is correct",
- ctxt.locateService("InvalidReference", sr1));
-
- uninstallBundle(bundle);
- }
-
- public void testPropertiesHandling() throws Exception {
- ConfigurationAdmin cm = (ConfigurationAdmin) trackerCM.getService();
- ServiceReference ref;
-
- // update the properties
- Hashtable props = new Hashtable(10);
- props.put("test.property.value", "setFromCM");
- props.put("test.property.list", "setFromCM");
- props.put("component.name", "setFromCM");
- props.put("component.id", new Long(-1));
- // the line below will create the configuration if it doesn't exists!
- // see CM api for details
- assertNotNull("The ConfigurationAdmin should be available", cm);
- Configuration config = cm.getConfiguration(SAC_CLASS);
- assertNotNull("The Configuration object should be created if don't exist", config);
- config.update(props);
-
- // let SCR & CM to complete it's job
- Thread.sleep(timeout * 3);
-
- ref = trackerSAC.getServiceReference();
- // check the correctness of the properties
- assertNotNull("The AnotherComponent's reference should be available", ref);
- assertEquals("Properties not overriden from later ones should not be lost", "setFromFile", ref
- .getProperty("test.property.array"));
- assertEquals("Properties set through the CM should take precedence before those set from file", "setFromCM", ref
- .getProperty("test.property.value"));
- assertEquals("Properties overriden from later ones in definition should take precedence", "setFromDefinition", ref
- .getProperty("test.property.name"));
- assertEquals("Properties set through the CM should take precedence before those set from definition", "setFromCM",
- ref.getProperty("test.property.list"));
- assertEquals("Properties not overriden from later ones should not be lost", "setFromDefinition", ref
- .getProperty("test.property.cont"));
- assertEquals("Must not allow overriding the component.name property", SAC_CLASS, ref.getProperty("component.name"));
- assertNotNull("component.id property should be present", ref.getProperty(ComponentConstants.COMPONENT_ID));
- assertTrue("Must not allow overriding the component.id property", ((Long) ref.getProperty("component.id"))
- .longValue() > 0);
-
- Bundle bundle = installBundle("tb4");
- bundle.start();
- waitBundleStart();
-
- Configuration c = cm.getConfiguration(NAMED_CLASS);
- assertNotNull("The Configuration should be created properly", c);
- Hashtable cmProps = new Hashtable();
- cmProps.put("override.property.3", "setFromCM");
- c.update(cmProps);
-
- // let the config update reach the SCR
- Thread.sleep(timeout * 3);
-
- ComponentFactory factory = (ComponentFactory) trackerNamedServiceFactory.getService();
- assertNotNull("The NamedService ComponentFactory should be available", factory);
-
- Hashtable newProps = new Hashtable();
- newProps.put("override.property.1", "setFromMethod");
- newProps.put("override.property.2", "setFromMethod");
- newProps.put("override.property.3", "setFromMethod");
- newProps.put(ComponentConstants.COMPONENT_NAME, "setFromMethod");
- newProps.put(ComponentConstants.COMPONENT_ID, new Long(-1));
- newProps.put("name", "test");
-
- ComponentInstance ci = factory.newInstance(newProps);
- assertNotNull("newInstance() method shouldn't return null", ci);
-
- ServiceReference[] refs = trackerNamedService.getServiceReferences();
- boolean serviceFound = false;
- for (int i = 0; refs != null && i < refs.length; i++) {
- ServiceReference current = refs[i];
- if ("test".equals(current.getProperty("name"))) {
- serviceFound = true;
- assertEquals("Properties set through newInstance method must override those from definition", "setFromMethod",
- current.getProperty("override.property.1"));
- assertEquals("Properties set through newInstance method must override those from file", "setFromMethod",
- current.getProperty("override.property.2"));
- assertEquals("Properties set through newInstance method must override those from ConfigurationAdmin",
- "setFromMethod", current.getProperty("override.property.3"));
- assertEquals("Must not override " + ComponentConstants.COMPONENT_NAME, current
- .getProperty(ComponentConstants.COMPONENT_NAME), NAMED_CLASS);
- assertTrue("Must not override " + ComponentConstants.COMPONENT_ID, ((Long) current
- .getProperty(ComponentConstants.COMPONENT_ID)).longValue() > 0);
- }
- }
- assertTrue("Must have found service", serviceFound);
-
- ci.dispose();
- c.delete();
- bundle.stop();
-
- // test the conflict between factory and factoryPID
- c = cm.createFactoryConfiguration(NAMED_CLASS);
- assertNotNull("CM should not return null Configuration from createFactoryConfiguration()", c);
- c.update(cmProps);
- Thread.sleep(timeout);
-
- bundle.start();
- waitBundleStart();
-
- assertNull("The named service shouldn't be available when there is factory configuration for it",
- trackerNamedServiceFactory.getService());
-
- c.delete();
- Thread.sleep(timeout * 3);
-
- // create factory configs for Worker
- Configuration scConfig1 = cm.createFactoryConfiguration(SC_CLASS);
- Hashtable scProps1 = new Hashtable();
- scProps1.put("name", "instance1");
- scConfig1.update(scProps1);
-
- Configuration scConfig2 = cm.createFactoryConfiguration(SC_CLASS);
- Hashtable scProps2 = new Hashtable();
- scProps2.put("name", "instance2");
- scConfig2.update(scProps2);
-
- Thread.sleep(timeout * 3);
-
- try {// test factory configuration for normal component
- assertEquals("The Worker should have two instances", 2, countAvailableServices(trackerSC));
- } finally {
- scConfig1.delete();
- scConfig2.delete();
- }
- Thread.sleep(timeout * 3);
-
- assertEquals("The Worker should have one instance", 1, countAvailableServices(trackerSC));
- ServiceReference scRef = trackerSC.getServiceReference();
- assertNull("The Worker only instance shouldn't have \"name\" property", scRef.getProperty("name"));
-
- uninstallBundle(bundle);
- }
-
- public void testBoundServiceReplacement() throws Exception {
- int beforeCount, afterCount;
- Hashtable mandatoryProperty = new Hashtable();
- mandatoryProperty.put("mandatory.property", "true");
-
- Bundle tb4 = installBundle("tb4");
- tb4.start();
- waitBundleStart();
- assertEquals("tb4.jar should be ACTIVE", Bundle.ACTIVE, tb4.getState());
-
- ComponentFactory namedFactory = (ComponentFactory) trackerNamedServiceFactory.getService();
- assertNotNull("NamedService component factory should be available", namedFactory);
- ComponentFactory dynFactory = (ComponentFactory) trackerDynServiceFactory.getService();
- assertNotNull("DynamicWorker component factory should be available", dynFactory);
-
- // create the mandatory elements
- ComponentInstance namedServiceInstance = namedFactory.newInstance((Dictionary) mandatoryProperty.clone());
- assertNotNull("NamedService component instance should not be null", namedServiceInstance);
- Object namedService = namedServiceInstance.getInstance();
- assertNotNull("NamedService should be created properly", namedService);
- ComponentInstance dynServiceInstance = dynFactory.newInstance((Dictionary) mandatoryProperty.clone());
- assertNotNull("DynamicWorker component instance should not be null", dynServiceInstance);
- Object dynService = dynServiceInstance.getInstance();
- assertNotNull("DynamicWorker should be created properly", dynService);
- Thread.sleep(timeout * 2);
-
- Object bsrc = trackerBSRC.getService();
- assertNotNull("BoundReplacer should be available", bsrc);
- assertSame("NamedService bound should be our first instance", ((BoundMainProvider) bsrc)
- .getBoundService(BoundMainProvider.NAMED_SERVICE), namedService);
- assertSame("DynamicWorker bound should be our first instance", ((BoundMainProvider) bsrc)
- .getBoundService(BoundMainProvider.DYNAMIC_SERVICE), dynService);
-
- // provide second dynamic service
- ComponentInstance dynServiceInstance2 = dynFactory.newInstance((Dictionary) mandatoryProperty.clone());
- assertNotNull("Second DynamicWorker component instance should not be null", dynServiceInstance2);
- Object dynService2 = dynServiceInstance2.getInstance();
- assertNotNull("Second DynamicWorker instance should be available", dynService2);
-
- // reset the events
- ((DSEventsProvider) bsrc).resetEvents();
- // destroy the first instance of dynamic service
- dynServiceInstance.dispose();
-
- // check that service is replaced
- assertNotSame("The bound dynamic service shouldn't be our first instance", ((BoundMainProvider) bsrc)
- .getBoundService(BoundMainProvider.DYNAMIC_SERVICE), dynService);
- assertSame("The bound dynamic service should be our second instance", ((BoundMainProvider) bsrc)
- .getBoundService(BoundMainProvider.DYNAMIC_SERVICE), dynService2);
-
- // check the correct order of replacing
- DSEvent[] replacedBoundDynamicServicesEvents = ((DSEventsProvider) bsrc).getEvents();
- assertEquals("There should two events after we have disposed the bound service", 2,
- replacedBoundDynamicServicesEvents.length);
- assertEquals("The first event should be bind event", DSEvent.ACT_BOUND, replacedBoundDynamicServicesEvents[0]
- .getAction());
- assertSame("The first event should have associated object the second instance", dynService2,
- replacedBoundDynamicServicesEvents[0].getObject());
-
- assertEquals("The second event should be unbind event", DSEvent.ACT_UNBOUND, replacedBoundDynamicServicesEvents[1]
- .getAction());
- assertSame("The second event should have associated object the first instance", dynService,
- replacedBoundDynamicServicesEvents[1].getObject());
-
- // destroy and the second service
- dynServiceInstance2.dispose();
-
- // check that the inspected service is deactivated
- assertNull("The BoundReplacer should not be available as the destroyed service hasn't replacement", trackerBSRC
- .getService());
-
- // restore the BSRC
- assertNotNull("The DynamicWorker component instance should be created properly", dynFactory
- .newInstance((Dictionary) mandatoryProperty.clone()));
- Thread.sleep(timeout);
-
- Object bsrcObject = trackerBSRC.getService();
- assertNotNull("The BoundReplacer should be available again", bsrcObject);
- ComponentContext bsrcCtxt1 = ((ComponentContextProvider) bsrcObject).getComponentContext();
- assertNotNull("The BoundReplacer should be activated and ComponentContext available", bsrcCtxt1);
-
- // prepare second static service instance
- ComponentInstance namedServiceInstance2 = namedFactory.newInstance((Dictionary) mandatoryProperty.clone());
- assertNotNull("Second NamedService instance should be created properly", namedServiceInstance2);
- Object namedService2 = namedServiceInstance2.getInstance();
- assertNotNull("Second NamedService instance should be created properly", namedService2);
-
- // destroy the first instance
- beforeCount = countAvailableServices(trackerNamedService);
- namedServiceInstance.dispose();
- afterCount = countAvailableServices(trackerNamedService);
- assertEquals("The NamedService instance should be removed from the registry", beforeCount - 1, afterCount);
-
- // check that the BSRC has been reactivated
- Object bsrcObject2 = trackerBSRC.getService(); // the BSRC object can be
- // recreated
- assertNotNull("The BoundReplacer should not be null", bsrcObject2);
- ComponentContext bsrcCtxt2 = ((ComponentContextProvider) bsrcObject2).getComponentContext();
- assertNotNull("The second ComponentContext should not be null", bsrcCtxt2);
- assertNotSame("The second ComponentContext should be different than the first one", bsrcCtxt1, bsrcCtxt2);
-
- // destroy the second instance
- namedServiceInstance2.dispose();
-
- assertNull("The BSRC should be disabled", trackerBSRC.getService());
-
- uninstallBundle(tb4);
- }
-
- /**
- * Returns the number of available services for the passed tracker
- *
- * @param tracker
- * @return
- */
- private int countAvailableServices(ServiceTracker tracker) {
- if (tracker == null)
- return -1;
- ServiceReference[] refs = tracker.getServiceReferences();
- return refs != null ? refs.length : 0;
- }
-
- public void testBoundServiceReplacementOnModification() throws Exception {
- BundleContext bc = getContext();
- Hashtable initialProps = new Hashtable();
- Hashtable modifiedProps = new Hashtable();
- initialProps.put("mandatory.property", "true");
- modifiedProps.put("mandatory.property", "false");
-
- ServiceRegistration dynRegistration1 = registerService(DynamicWorker.class.getName(), new DynamicWorker(),
- (Dictionary) initialProps.clone());
-
- ServiceRegistration staticRegistration1 = registerService(StaticWorker.class.getName(), new StaticWorker(),
- (Dictionary) initialProps.clone());
-
- Bundle tb4 = installBundle("tb4");
- tb4.start();
- waitBundleStart();
- assertEquals("tb4.jar should be ACTIVE", Bundle.ACTIVE, tb4.getState());
-
- // assure the MBSRC is available
- assertTrue("The AdvancedBounder must be available", countAvailableServices(trackerMBSRC) > 0);
- Object bsrc = trackerMBSRC.getService();
- assertNotNull("MBSRC isntance should be not null", bsrc);
-
- // register the second instances
- ServiceRegistration dynRegistration2 = registerService(DynamicWorker.class.getName(), new DynamicWorker(),
- (Dictionary) initialProps.clone());
-
- // reset the bound services events
- ((DSEventsProvider) bsrc).resetEvents();
- // change the first instance of dynamic service
- dynRegistration1.setProperties(modifiedProps);
- Thread.sleep(timeout);
-
- Object instance1 = bc.getService(dynRegistration1.getReference());
- Object instance2 = bc.getService(dynRegistration2.getReference());
- try {
-
- // check that service is replaced
- assertNotSame("The bound dynamic service shouldn't be our first instance", ((BoundMainProvider) bsrc)
- .getBoundService(BoundMainProvider.DYNAMIC_SERVICE), instance1);
- assertSame("The bound dynamic service should be our second instance", ((BoundMainProvider) bsrc)
- .getBoundService(BoundMainProvider.DYNAMIC_SERVICE), instance2);
-
- // check the correct order of replacing
- DSEvent[] replacedBoundDynamicServicesEvents = ((DSEventsProvider) bsrc).getEvents();
- assertEquals("There should two events after we have disposed the bound service", 2,
- replacedBoundDynamicServicesEvents.length);
-
- assertEquals("The first event should be bind event", DSEvent.ACT_BOUND, replacedBoundDynamicServicesEvents[0]
- .getAction());
- assertSame("The first event should have associated object the second instance", instance2,
- replacedBoundDynamicServicesEvents[0].getObject());
-
- assertEquals("The second event should be unbind event", DSEvent.ACT_UNBOUND,
- replacedBoundDynamicServicesEvents[1].getAction());
- assertSame("The second event should have associated object the first instance", instance1,
- replacedBoundDynamicServicesEvents[1].getObject());
-
- } finally {
- bc.ungetService(dynRegistration1.getReference());
- bc.ungetService(dynRegistration2.getReference());
- }
- instance1 = instance2 = null;
-
- ComponentContext bsrcCtxt1 = ((ComponentContextProvider) bsrc).getComponentContext();
- assertNotNull("ComponentContext object should be available", bsrcCtxt1);
-
- ServiceRegistration staticRegistration2 = registerService(StaticWorker.class.getName(), new StaticWorker(),
- (Dictionary) initialProps.clone());
- // change the first instance
- staticRegistration1.setProperties((Dictionary) modifiedProps.clone());
- Thread.sleep(timeout);
-
- Object bsrcObject2 = trackerMBSRC.getService(); // the BSRC object can be
- // recreated
- assertNotNull("The BoundReplacer should not be null", bsrcObject2);
- ComponentContext bsrcCtxt2 = ((ComponentContextProvider) bsrcObject2).getComponentContext();
- assertNotNull("The second ComponentContext should not be null", bsrcCtxt2);
- assertNotSame("The second ComponentContext should be different than the first one", bsrcCtxt1, bsrcCtxt2);
-
- uninstallBundle(tb4);
-
- unregisterService(dynRegistration1);
- unregisterService(dynRegistration2);
- unregisterService(staticRegistration1);
- unregisterService(staticRegistration2);
- }
-
- public void testSecurity() throws Exception {
- // the method below sets the permissions of a bundle before installing it
- // to simplify the test case
- if (System.getSecurityManager() == null) {
- // the security is off
- return;
- }
- BundleContext bc = getContext();
- ServiceReference padmRef = bc.getServiceReference(PermissionAdmin.class.getName());
- assertNotNull("Permission Admin service not available.", padmRef);
-
- PermissionAdmin padm = (PermissionAdmin) bc.getService(padmRef);
- assertNotNull("Permission Admin service should be available", padm);
-
- assertEquals("TestBundle1 must be running.", Bundle.ACTIVE, tb1.getState());
-
- PermissionInfo registerServiceInfo = new PermissionInfo(ServicePermission.class.getName(),
- "org.eclipse.equinox.ds.tests.tb5.impl.SecurityTester", ServicePermission.REGISTER);
- PermissionInfo getServiceInfo = new PermissionInfo(ServicePermission.class.getName(),
- "org.eclipse.equinox.ds.tests.tb1.impl.AnotherComponent", ServicePermission.GET);
-
- PermissionInfo importPackage = new PermissionInfo(PackagePermission.class.getName(),
- "org.eclipse.equinox.ds.tests.tb1.impl", PackagePermission.IMPORT);
-
- // install the bundle to get the location
- Bundle tb5 = installBundle("tb5");
- tb5.start();
- waitBundleStart();
- final String bundleLocation = tb5.getLocation();
-
- uninstallBundle(tb5);
-
- // do the test
-
- // set all permission needed for correct operation
- padm.setPermissions(bundleLocation, new PermissionInfo[] { registerServiceInfo, getServiceInfo, importPackage });
-
- // install
- tb5 = installBundle("tb5");
- tb5.start();
- waitBundleStart();
- assertEquals("The bundle location should be the same as the first one registered", bundleLocation, tb5
- .getLocation());
-
- // check that the component is available
- assertTrue("The SecurityTester should be present because all needed permissions are set",
- countAvailableServices(trackerSecurity) > 0);
-
- // uninstall
- uninstallBundle(tb5);
-
- // remove the register permission - the service shouldn't be available
- padm.setPermissions(bundleLocation, new PermissionInfo[] { importPackage, getServiceInfo });
-
- // install
- tb5 = installBundle("tb5");
- tb5.start();
- waitBundleStart();
- assertEquals("The bundle location should be the same as the first one registered", bundleLocation, tb5
- .getLocation());
-
- // check that the service is unavailable
- assertEquals("The SecurityTester shouldn't be present due to missing ServicePermission.REGISTER", 0,
- countAvailableServices(trackerSecurity));
-
- // uninstall
- uninstallBundle(tb5);
-
- // remove the get permission and bring back the register permission
- padm.setPermissions(bundleLocation, new PermissionInfo[] { importPackage, registerServiceInfo });
-
- // install
- tb5 = installBundle("tb5");
- tb5.start();
- waitBundleStart();
- assertEquals("The bundle location should be the same as the first one registered", bundleLocation, tb5
- .getLocation());
-
- // check that the component is unavailable
- assertEquals("The SecurityTester shouldn't be present due to missing ServicePermission.GET", 0,
- countAvailableServices(trackerSecurity));
-
- // uninstall
- uninstallBundle(tb5);
-
- // reset the permissions
- padm.setPermissions(bundleLocation, null);
- // release the PermissionAdmin service
- bc.ungetService(padmRef);
- padm = null;
- }
-
- public void testImmediateComponents() throws Exception {
- Bundle tb4 = installBundle("tb4");
- tb4.start();
- waitBundleStart();
-
- // check that the ServiceProvider is registered
- assertNotNull("The ServiceProvider should be registered as service", getContext().getServiceReference(
- "org.eclipse.equinox.ds.tests.tb4.ServiceProvider"));
- // check that the ServiceProvider is activated
- assertTrue("The ServiceProvider should be activated", TestHelper.isActivatedServiceProvider());
-
- // check that the Stand Alone Component is activated
- assertTrue("The AnotherComponent should be activated", TestHelper.isActivatedStandAlone());
-
- uninstallBundle(tb4);
- }
-
- public void testRowReference() throws Exception {
- final String TAIL_CLASS = "org.eclipse.equinox.ds.tests.tb4.Component3";
- final String MIDDLE_CLASS = "org.eclipse.equinox.ds.tests.tb4.Component2";
- final String HEAD_CLASS = "org.eclipse.equinox.ds.tests.tb4.Component1";
-
- Bundle tb4 = installBundle("tb4");
- tb4.start();
- waitBundleStart();
-
- // check that all the components are present
- assertTrue("The Component3 should be available", checkAvailability(TAIL_CLASS));
- assertTrue("The Component2 should be available", checkAvailability(MIDDLE_CLASS));
- assertTrue("The Component1 should be available", checkAvailability(HEAD_CLASS));
-
- BundleContext bc = getContext();
- // get ComponentContext
- ServiceReference cceRef = bc.getServiceReference("org.eclipse.equinox.ds.tests.tbc.ComponentContextProvider");
- assertNotNull("The GiveMeContext should be available", cceRef);
- assertEquals("The GiveMeContext should be the implementation present in tb4.jar",
- "org.eclipse.equinox.ds.tests.tb4.GiveMeContext", cceRef.getProperty("component.name"));
-
- ComponentContextProvider cce = (ComponentContextProvider) bc.getService(cceRef);
- assertNotNull("The service object should be retrieved correctly", cce);
- ComponentContext ctxt = cce.getComponentContext();
- assertNotNull("The ComponentContext object should not be null", ctxt);
-
- // disable the tail component
- ctxt.disableComponent(TAIL_CLASS);
- Thread.sleep(timeout);
-
- // check that no component is available
- assertTrue("The Component3 shouldn't be available", !checkAvailability(TAIL_CLASS));
- assertTrue("The Component2 shouldn't be available", !checkAvailability(MIDDLE_CLASS));
- assertTrue("The Component1 shouldn't be available", !checkAvailability(HEAD_CLASS));
-
- // enable the tail component
- ctxt.enableComponent(TAIL_CLASS);
- Thread.sleep(timeout);
-
- // check that the components are back online
- assertTrue("The Component3 should be available", checkAvailability(TAIL_CLASS));
- assertTrue("The Component2 should be available", checkAvailability(MIDDLE_CLASS));
- assertTrue("The Component1 should be available", checkAvailability(HEAD_CLASS));
-
- // release the GiveMeContext
- bc.ungetService(cceRef);
-
- // remove the bundle
- uninstallBundle(tb4);
- }
-
- private boolean checkAvailability(String service) {
- BundleContext bc = getContext();
- ServiceReference ref = bc.getServiceReference(service);
- return ref != null;
- }
-
- private boolean checkFactoryAvailability(String factory) throws InvalidSyntaxException {
- BundleContext bc = getContext();
- ServiceReference[] refs = bc.getServiceReferences(ComponentFactory.class.getName(), "("
- + ComponentConstants.COMPONENT_FACTORY + "=" + factory + ")");
- return refs != null && refs.length > 0;
- }
-
- public void testBlockingComponents() throws Exception {
- final Bundle tb2 = installBundle("tb2");
- final Bundle tb3 = installBundle("tb3");
- final Bundle tb4 = installBundle("tb4");
-
- new Thread() {
- public void run() {
- try {
- tb2.start(); // start the blocking service
- } catch (BundleException e) {
- }
- }
- }.start();
- sleep0(scr_restart_timeout + timeout * 2);
-
- new Thread() {
- public void run() {
- try {
- tb4.start(); // start the other
- } catch (BundleException e) {
- }
- }
- }.start();
-
- sleep0(timeout * 3); // sleep until the services are activated
-
- // check that the first service is missing, and the second is available
- assertEquals("The blocking service should not be available", 0, countAvailableServices(trackerBAS));
- assertTrue("The service in the bundle should be available",
- checkAvailability("org.eclipse.equinox.ds.tests.tbc.ComponentContextProvider"));
-
- tb2.stop();
- tb4.stop();
-
- // check that AnotherComponent is available
- assertTrue("The AnotherComponent should be available",
- checkAvailability("org.eclipse.equinox.ds.tests.tb1.impl.AnotherComponent"));
-
- // start the other blocking bundle
- new Thread() {
- public void run() {
- try {
- tb3.start();
- } catch (BundleException e) {
- }
- }
- }.start();
-
- sleep0(scr_restart_timeout + timeout * 2);
-
- // start the non-blocking bundle
- new Thread() {
- public void run() {
- try {
- tb4.start(); // start the other
- } catch (BundleException e) {
- }
- }
- }.start();
-
- sleep0(timeout * 3); // sleep until the services are activated
-
- assertEquals("The blocking service should not be available", 0, countAvailableServices(trackerBBS));
- assertTrue("The service in the bundle should be available",
- checkAvailability("org.eclipse.equinox.ds.tests.tbc.ComponentContextProvider"));
-
- uninstallBundle(tb2);
- uninstallBundle(tb3);
- uninstallBundle(tb4);
- }
-
- public void testStaticPolicyBinding() throws Exception {
- Bundle tb6 = installBundle("tb6");
- tb6.start();
- waitBundleStart();
-
- // check initial conditions
- assertTrue("The StaticComp should be available", checkAvailability(STATIC_CLASS));
- assertTrue("The ReferencedComp shouldn't be available (disabled)", !checkAvailability(REFERENCED_CLASS));
-
- // reset the events list
- Object initialStatic = trackerStatic.getService();
- assertNotNull(STATIC_CLASS + " component should be non-null", initialStatic);
- ComponentContext initialCtxt = ((ComponentContextProvider) initialStatic).getComponentContext();
- ((DSEventsProvider) initialStatic).resetEvents();
- assertEquals("There shouldn't be bound service to StaticComp", 0, ((BoundTester) initialStatic)
- .getBoundObjectsCount());
-
- // enable the ReferencedComp
- initialCtxt.enableComponent(REFERENCED_CLASS);
- Thread.sleep(timeout * 2);
-
- // check the availability after enablement
- assertTrue("The StaticComp should be available", checkAvailability(STATIC_CLASS));
- assertTrue("The ReferencedComp should be available", checkAvailability(REFERENCED_CLASS));
-
- // check that the SCR created new instance
- Object enabledStatic = trackerStatic.getService();
- assertNotNull(STATIC_CLASS + " component should be non-null", enabledStatic);
- ComponentContext enabledCtxt = ((ComponentContextProvider) enabledStatic).getComponentContext();
- assertNotSame("The StaticComp must have been restarted", initialCtxt, enabledCtxt);
- assertEquals("There should be one bound service to StaticComp", 1, ((BoundTester) enabledStatic)
- .getBoundObjectsCount());
-
- // check the events
- DSEvent[] initialEvents = ((DSEventsProvider) initialStatic).getEvents();
- assertEquals("The events in the first instance of StaticComp should only one", 1, initialEvents.length);
- assertEquals("The event should deactivate one", DSEvent.ACT_DEACTIVATE, initialEvents[0].getAction());
-
- DSEvent[] enabledEvents = ((DSEventsProvider) enabledStatic).getEvents();
- assertEquals("The events for the second instance of StaticComp should be two", 2, enabledEvents.length);
- assertEquals("The first event should bind event", DSEvent.ACT_BOUND, enabledEvents[0].getAction());
- assertEquals("The second event should be activate event", DSEvent.ACT_ACTIVATE, enabledEvents[1].getAction());
-
- // reset the events
- ((DSEventsProvider) enabledStatic).resetEvents();
-
- // disable the component
- enabledCtxt.disableComponent(REFERENCED_CLASS);
- Thread.sleep(timeout * 2);
-
- // check the availability
- assertTrue("The StaticComp should be available", checkAvailability(STATIC_CLASS));
- assertTrue("The ReferencedComp shouldn't be available", !checkAvailability(REFERENCED_CLASS));
-
- // check that the SCR created new instance
- Object disabledStatic = trackerStatic.getService();
- assertNotNull(STATIC_CLASS + " component should be non-null", disabledStatic);
- ComponentContext disabledCtxt = ((ComponentContextProvider) disabledStatic).getComponentContext();
- assertNotSame("The StaticComp must have been restarted", enabledCtxt, disabledCtxt);
- assertEquals("There should be one bound service to StaticComp", 0, ((BoundTester) disabledStatic)
- .getBoundObjectsCount());
-
- enabledEvents = ((DSEventsProvider) enabledStatic).getEvents();
- DSEvent[] disabledEvents = ((DSEventsProvider) disabledStatic).getEvents();
-
- assertEquals("The second instance of StaticComp should have two events after disabling ReferencedComp", 2,
- enabledEvents.length);
- assertEquals("The first event should be deactivate", DSEvent.ACT_DEACTIVATE, enabledEvents[0].getAction());
- assertEquals("The second event should be unbind", DSEvent.ACT_UNBOUND, enabledEvents[1].getAction());
-
- assertEquals("There should only one event for the second instance of StaticComp", 1, disabledEvents.length);
- assertEquals("The event should be activate", DSEvent.ACT_ACTIVATE, disabledEvents[0].getAction());
-
- uninstallBundle(tb6);
- }
-
- public void testCircularityHandling() throws Exception {
- Bundle tb7 = installBundle("tb7");
- tb7.start();
- waitBundleStart();
-
- final String UNBREAKABLE = "org.eclipse.equinox.ds.tests.tb7.UnbreakableCircuit";
- final String DYN_BREAKABLE = "org.eclipse.equinox.ds.tests.tb7.DynamicCircuit";
- final String STATIC_BREAKABLE = "org.eclipse.equinox.ds.tests.tb7.StaticCircuit";
-
- // check that the unbreakable circuit isn't available
- assertTrue("The first service from the unbreakable circularity shouldn't be available",
- !checkAvailability(UNBREAKABLE + "1"));
- assertTrue("The second service from the unbreakable circularity shouldn't be available",
- !checkAvailability(UNBREAKABLE + "2"));
-
- // check that the breakable circuit with dynamic optional reference is
- // available
- assertTrue("The first service from the breakable circularity with dynamic optional reference should be available",
- checkAvailability(DYN_BREAKABLE + "1"));
- assertTrue("The second service from the breakable circularity with dynamic optional reference should be available",
- checkAvailability(DYN_BREAKABLE + "2"));
-
- // check that the breakable circuit with dynamic optional reference has
- // bound correctly
- ServiceReference dynBreak2Ref = getContext().getServiceReference(DYN_BREAKABLE + "2");
- Object dynBreak2 = getContext().getService(dynBreak2Ref);
- try {
- assertEquals("The DynamicCircuit2 component should have one bound object", 1, ((BoundTester) dynBreak2)
- .getBoundObjectsCount());
- assertNotNull("The DynamicCircuit2 component should have one non-null bound object", ((BoundTester) dynBreak2)
- .getBoundService(0));
- } finally {
- getContext().ungetService(dynBreak2Ref);
- }
- // check that the breakable circuit with static optional reference isn't
- // available
- assertTrue("The first service from the breakable circularity with static optional reference should be available",
- checkAvailability(STATIC_BREAKABLE + "1"));
- assertTrue("The second service from the breakable circularity with static optional reference should be available",
- checkAvailability(STATIC_BREAKABLE + "2"));
-
- // check that the optional reference isn't satisfied
- ServiceReference staticBreak2Ref = getContext().getServiceReference(STATIC_BREAKABLE + "2");
- Object staticBreak2 = getContext().getService(staticBreak2Ref);
- try {
- assertEquals("The StaticCircuit2 component shouldn't have bound objects", 0, ((BoundTester) staticBreak2)
- .getBoundObjectsCount());
- } finally {
- getContext().ungetService(staticBreak2Ref);
- }
-
- // check that the worker hasn't been blocked
- Bundle tb5 = installBundle("tb5");
- tb5.start();
- waitBundleStart();
-
- // check that the AnotherComponent service is available
- assertTrue("The AnotherComponent should be available",
- checkAvailability("org.eclipse.equinox.ds.tests.tb1.impl.AnotherComponent"));
- assertTrue("The service in TB5 should be available which means that the working thread of the SCR isn't blocked",
- checkAvailability("org.eclipse.equinox.ds.tests.tb5.impl.SecurityTester"));
-
- uninstallBundle(tb5);
- uninstallBundle(tb7);
- }
-
- // tests namespace handling in xml component description parser
- public void testNamespaceHandling() throws Exception {
- Bundle tb8 = installBundle("tb8");
- tb8.start();
- waitBundleStart();
-
- // check the root component handling
- assertTrue("The root1 component should be available", isNSComponentAvailable(101));
- assertTrue("The root2 component should be available", isNSComponentAvailable(102));
- assertTrue("The root3 component should not be available", !isNSComponentAvailable(103));
- assertTrue("The root4 component should be available", isNSComponentAvailable(104));
- assertTrue("The root5 component should not be available", !isNSComponentAvailable(105));
- // check the non root component handling
- assertTrue("The nonroot1 component should not be available", !isNSComponentAvailable(111));
- assertTrue("The nonroot2 component should be available", isNSComponentAvailable(112));
- assertTrue("The nonroot3 component should not be available", !isNSComponentAvailable(113));
- assertTrue("The nonroot4 component should be available", isNSComponentAvailable(114));
- assertTrue("The nonroot5 component should not be available", !isNSComponentAvailable(115));
- assertTrue("The nonroot6 component should be available", isNSComponentAvailable(116));
- assertTrue("The nonroot7 component should not be available", !isNSComponentAvailable(117));
- assertTrue("The nonroot8 component should not be available", !isNSComponentAvailable(118));
- assertTrue("The nonroot9 component should not be available", !isNSComponentAvailable(119));
- assertTrue("The nonroot10 component should not be available", !isNSComponentAvailable(120));
- assertTrue("The nonroot11 component should be available", isNSComponentAvailable(121));
- assertTrue("The nonroot12 component should not be available", !isNSComponentAvailable(122));
- assertTrue("The nonroot13 component should not be available", !isNSComponentAvailable(123));
- assertTrue("The nonroot14 component should be available", isNSComponentAvailable(124));
- assertTrue("The nonroot15 component should be available", isNSComponentAvailable(125));
- assertTrue("The nonroot16 component should be available", isNSComponentAvailable(126));
- assertTrue("The nonroot17 component should be available", isNSComponentAvailable(127));
-
- uninstallBundle(tb8);
- }
-
- private boolean isNSComponentAvailable(int nsid) {
- Object[] services = trackerNS.getServices();
- if (services == null) {
- return false;
- }
- for (int i = 0; i < services.length; i++) {
- if (services[i] instanceof NamespaceProvider) {
- NamespaceProvider s = (NamespaceProvider) services[i];
- if (s.getComponentNSID() == nsid) {
- return true;
- }
- }
- }
-
- return false;
- }
-
- // tests wildcard handling in mf (e.g. Service-Component: OSGI-INF/*.xml)
- public void testWildcardHandling() throws Exception {
- Bundle tb9 = installBundle("tb9");
- tb9.start();
- waitBundleStart();
-
- final String WILD = "org.eclipse.equinox.ds.tests.tb9.Wildcard";
-
- // check that the both components are available
- assertTrue("The first Wildcard component should be available", checkAvailability(WILD + "1"));
- assertTrue("The second Wildcard component should be available", checkAvailability(WILD + "2"));
-
- uninstallBundle(tb9);
- }
-
- public void testDynamicComponentFactoryServiceBinding() throws Exception {
- Bundle tb10 = installBundle("tb10");
- assertNotNull("Failed to install test bundle tb10.jar", tb10);
- tb10.start();
- waitBundleStart();
-
- // assert that the required components are available
- assertTrue("The referenced simple component should be available", checkAvailability(SC_CLASS));
- assertTrue("The referenced factory component should be available", checkFactoryAvailability("CountHelperFactory"));
- assertTrue("The dependent dynamic factory component should be available", checkFactoryAvailability("CountFactory"));
-
- // retrieve the helper factory
- ComponentFactory helperFactory = (ComponentFactory) trackerBoundServiceCounterHelperFactory.getService();
- assertNotNull("The helper factory must be retrievable", helperFactory);
-
- // retrieve the observed factory
- ComponentFactory observedFactory = (ComponentFactory) trackerBoundServiceCounterFactory.getService();
- assertNotNull("The observed factory must be retrievable", observedFactory);
-
- // instantiate observed components
- ComponentInstance observedInstance1 = observedFactory.newInstance(null);
- assertNotNull("Cannot instantiate component from observed factory [1]", observedInstance1);
- ComponentInstance observedInstance2 = observedFactory.newInstance(null);
- assertNotNull("Cannot instantiate component from observed factory [2]", observedInstance2);
-
- BoundCountProvider observedComponent1 = (BoundCountProvider) observedInstance1.getInstance();
- BoundCountProvider observedComponent2 = (BoundCountProvider) observedInstance2.getInstance();
- assertNotNull("The observed component must be non-null [1]", observedComponent1);
- assertNotNull("The observed component must be non-null [2]", observedComponent2);
-
- // check the bound services before instantiating helper factory components -
- // both components must have 1 service bound
- assertEquals("The bound service count must be 1 - only the simple component is available [1]", 1,
- observedComponent1.getBoundServiceCount(null));
- assertEquals("The bound service count must be 1 - only the simple component is available [2]", 1,
- observedComponent2.getBoundServiceCount(null));
-
- // instantiate three helper components and check the service count again
- for (int i = 0; i < 3; i++) {
- helperFactory.newInstance(null); // don't keep track of the created
- // instances, they will be disposed when
- // the bundle is stopped and uninstalled
- }
-
- // check the bound services count again - both components must have 4
- // services bound -> 1 simple component and 3 helper factory
- assertEquals("The bound service count must be 4 - 1 simple component, 3 helper factory components [1]", 4,
- observedComponent1.getBoundServiceCount(null));
- assertEquals("The bound service count must be 4 - 1 simple component, 3 helper factory components [2]", 4,
- observedComponent2.getBoundServiceCount(null));
-
- uninstallBundle(tb10);
- }
-
- public void testStaticComponentFactoryServiceBinding() throws Exception {
- Bundle tb10 = installBundle("tb10");
- assertNotNull("Failed to install test bundle tb10.jar", tb10);
- tb10.start();
- waitBundleStart();
-
- // assert that the required components are available
- assertTrue("The referenced simple component should be available", checkAvailability(SC_CLASS));
- assertTrue("The referenced factory component should be available", checkFactoryAvailability("CountHelperFactory"));
- assertTrue("The dependent static factory component should be available",
- checkFactoryAvailability("StaticServiceCountFactory"));
-
- // retrieve the helper and observer factories
- ComponentFactory helperFactory = (ComponentFactory) trackerBoundServiceCounterHelperFactory.getService();
- ComponentFactory observedFactory = (ComponentFactory) trackerStaticServiceCounterFactory.getService();
- assertNotNull("The helper factory must be retrievable", helperFactory);
- assertNotNull("The observed factory must be retrievable", observedFactory);
-
- // instantiate observed components
- ComponentInstance observedInstance1 = observedFactory.newInstance(null);
- ComponentInstance observedInstance2 = observedFactory.newInstance(null);
- assertNotNull("Cannot instantiate component from observed factory [1]", observedInstance1);
- assertNotNull("Cannot instantiate component from observed factory [2]", observedInstance2);
-
- BoundCountProvider observedComponent1 = (BoundCountProvider) observedInstance1.getInstance();
- BoundCountProvider observedComponent2 = (BoundCountProvider) observedInstance2.getInstance();
- assertNotNull("The observed component must be non-null [1]", observedComponent1);
- assertNotNull("The observed component must be non-null [2]", observedComponent2);
-
- // check the bound services before instantiating helper factory components -
- // both components must have 1 service bound
- assertEquals("The bound service count must be 1 - only the simple component is available [1]", 1,
- observedComponent1.getBoundServiceCount(null));
- assertEquals("The bound service count must be 1 - only the simple component is available [2]", 1,
- observedComponent2.getBoundServiceCount(null));
-
- // instantiate three helper components and check the service count again
- for (int i = 0; i < 3; i++) {
- helperFactory.newInstance(null); // don't keep track of the created
- // instances, they will be disposed when
- // the bundle is stopped and uninstalled
- }
-
- // check whether the factory is the same, it shouldn't be disposed
- assertSame(observedFactory, trackerStaticServiceCounterFactory.getService());
- observedFactory = (ComponentFactory) trackerStaticServiceCounterFactory.getService();
-
- // check that the components are reinstantiated
- observedInstance1 = observedFactory.newInstance(null);
- observedInstance2 = observedFactory.newInstance(null);
- assertNotNull("Cannot instantiate new observed component instance [1]", observedInstance1);
- assertNotNull("Cannot instantiate new observed component instance [2]", observedInstance2);
-
- // get the new instances
- observedComponent1 = (BoundCountProvider) observedInstance1.getInstance();
- observedComponent2 = (BoundCountProvider) observedInstance2.getInstance();
- assertNotNull("The observed component instance must be non-null [1]", observedComponent1);
- assertNotNull("The observed component instance must be non-null [2]", observedComponent2);
-
- // check the bound services count again - both components must have 4
- // services bound -> 1 simple component and 3 helper factory
- assertEquals("The bound service count must be 4 - 1 simple component, 3 helper factory components [1]", 4,
- observedComponent1.getBoundServiceCount(null));
- assertEquals("The bound service count must be 4 - 1 simple component, 3 helper factory components [2]", 4,
- observedComponent2.getBoundServiceCount(null));
-
- uninstallBundle(tb10);
- }
-
- public void testConfigurationPolicy() throws Exception {
- ConfigurationAdmin cm = (ConfigurationAdmin) trackerCM.getService();
- assertNotNull("The ConfigurationAdmin should be available", cm);
-
- Bundle tb11 = installBundle("tb11");
- tb11.start();
- waitBundleStart();
-
- Hashtable props = new Hashtable(10);
- props.put("config.base.data", new Integer(1));
-
- // component notsetNS100 - property not set by Configuration Admin; XML NS
- // 1.0.0
- assertEquals("Configuration data should not be available for notsetNS100", 0, getBaseConfigData(COMP_NOTSET_100));
- // component notsetNS100 - property set by Configuration Admin; XML NS 1.0.0
- Configuration config = cm.getConfiguration(COMP_NOTSET_100);
- config.update(props);
- Thread.sleep(timeout * 3);
- assertEquals("Configuration data should be available for notsetNS100 and equal to 1", 1,
- getBaseConfigData(COMP_NOTSET_100));
-
- // component notsetNS110 - property not set by Configuration Admin; XML NS
- // 1.1.0
- assertEquals("Configuration data should not be available for notsetNS110", 0, getBaseConfigData(COMP_NOTSET_110));
- // component notsetNS110 - property set by Configuration Admin; XML NS 1.1.0
- config = cm.getConfiguration(COMP_NOTSET_110);
- config.update(props);
- Thread.sleep(timeout * 3);
- assertEquals("Configuration data should be available for notsetNS110 and equal to 1", 1,
- getBaseConfigData(COMP_NOTSET_110));
-
- // component optionalNS100 - property not set by Configuration Admin; XML NS
- // 1.0.0 - INVALID COMPONENT
- assertEquals("Component optionalNS100 should not be activated", -1, getBaseConfigData(COMP_OPTIONAL_100));
- // component optionalNS100 - property set by Configuration Admin; XML NS
- // 1.0.0 - INVALID COMPONENT
- config = cm.getConfiguration(COMP_OPTIONAL_100);
- config.update(props);
- Thread.sleep(timeout * 3);
- assertEquals("Component optionalNS100 should not be activated", -1, getBaseConfigData(COMP_OPTIONAL_100));
-
- // component optionalNS110 - property not set by Configuration Admin; XML NS
- // 1.1.0
- assertEquals("Configuration data should not be available for optionalNS110", 0,
- getBaseConfigData(COMP_OPTIONAL_110));
- // component optionalNS110 - property set by Configuration Admin; XML NS
- // 1.1.0
- config = cm.getConfiguration(COMP_OPTIONAL_110);
- config.update(props);
- Thread.sleep(timeout * 3);
- assertEquals("Configuration data should be available for optionalNS110 and equal to 1", 1,
- getBaseConfigData(COMP_OPTIONAL_110));
-
- // component requireNS100 - property not set by Configuration Admin; XML NS
- // 1.0.0 - INVALID COMPONENT
- assertEquals("Component requireNS100 should not be activated", -1, getBaseConfigData(COMP_REQUIRE_100));
- // component requireNS100 - property set by Configuration Admin; XML NS
- // 1.0.0 - INVALID COMPONENT
- config = cm.getConfiguration(COMP_REQUIRE_100);
- config.update(props);
- Thread.sleep(timeout * 3);
- assertEquals("Component requireNS100 should not be activated", -1, getBaseConfigData(COMP_REQUIRE_100));
-
- // component requireNS110 - property not set by Configuration Admin; XML NS
- // 1.1.0
- assertEquals("Configuration data should not be available for requireNS110, and it should not be satisfied", -1,
- getBaseConfigData(COMP_REQUIRE_110));
- // component requireNS110 - property set by Configuration Admin; XML NS
- // 1.1.0
- config = cm.getConfiguration(COMP_REQUIRE_110);
- config.update(props);
- Thread.sleep(timeout * 3);
- assertEquals("Configuration data should be available for requireNS110 and equal to 1", 1,
- getBaseConfigData(COMP_REQUIRE_110));
-
- // component ignoreNS100 - property not set by Configuration Admin; XML NS
- // 1.0.0 - INVALID COMPONENT
- assertEquals("Component ignoreNS100 should not be activated", -1, getBaseConfigData(COMP_IGNORE_100));
- // component ignoreNS100 - property set by Configuration Admin; XML NS 1.0.0
- // - INVALID COMPONENT
- config = cm.getConfiguration(COMP_IGNORE_100);
- config.update(props);
- Thread.sleep(timeout * 3);
- assertEquals("Component ignoreNS100 should not be activated", -1, getBaseConfigData(COMP_IGNORE_100));
-
- // component ignoreNS110 - property not set by Configuration Admin; XML NS
- // 1.1.0
- assertEquals("Configuration data should not be available for ignoreNS110, but it should be satisfied", 0,
- getBaseConfigData(COMP_IGNORE_110));
- // component ignoreNS110 - property set by Configuration Admin; XML NS 1.1.0
- config = cm.getConfiguration(COMP_IGNORE_110);
- config.update(props);
- Thread.sleep(timeout * 3);
- assertEquals("Configuration data should not be available for ignoreNS110, but it should be satisfied", 0,
- getBaseConfigData(COMP_IGNORE_110));
-
- uninstallBundle(tb11);
- }
-
- // tests configuration-policy for factory configuration objects
- public void testConfigurationPolicyFactoryConf() throws Exception {
- ConfigurationAdmin cm = (ConfigurationAdmin) trackerCM.getService();
- assertNotNull("The ConfigurationAdmin should be available", cm);
-
- Bundle tb11 = installBundle("tb11");
- tb11.start();
- waitBundleStart();
-
- Hashtable props = new Hashtable(10);
- props.put("config.base.data", new Integer(1));
-
- // component notsetNS100 - property not set by Configuration Admin; XML NS
- // 1.0.0
- assertEquals("Configuration data should not be available for notsetNS100", 0, getBaseConfigData(COMP_NOTSET_100));
- // component notsetNS100 - property set by Configuration Admin; XML NS 1.0.0
- Configuration config = cm.createFactoryConfiguration(COMP_NOTSET_100);
- config.update(props);
- Thread.sleep(timeout * 3);
- assertEquals("Configuration data should be available for notsetNS100 and equal to 1", 1,
- getBaseConfigData(COMP_NOTSET_100));
-
- // component notsetNS110 - property not set by Configuration Admin; XML NS
- // 1.1.0
- assertEquals("Configuration data should not be available for notsetNS110", 0, getBaseConfigData(COMP_NOTSET_110));
- // component notsetNS110 - property set by Configuration Admin; XML NS 1.1.0
- config = cm.createFactoryConfiguration(COMP_NOTSET_110);
- config.update(props);
- Thread.sleep(timeout * 3);
- assertEquals("Configuration data should be available for notsetNS110 and equal to 1", 1,
- getBaseConfigData(COMP_NOTSET_110));
-
- // component optionalNS100 - property not set by Configuration Admin; XML NS
- // 1.0.0 - INVALID COMPONENT
- assertEquals("Component optionalNS100 should not be activated", -1, getBaseConfigData(COMP_OPTIONAL_100));
- // component optionalNS100 - property set by Configuration Admin; XML NS
- // 1.0.0 - INVALID COMPONENT
- config = cm.createFactoryConfiguration(COMP_OPTIONAL_100);
- config.update(props);
- Thread.sleep(timeout * 3);
- assertEquals("Component optionalNS100 should not be activated", -1, getBaseConfigData(COMP_OPTIONAL_100));
-
- // component optionalNS110 - property not set by Configuration Admin; XML NS
- // 1.1.0
- assertEquals("Configuration data should not be available for optionalNS110", 0,
- getBaseConfigData(COMP_OPTIONAL_110));
- // component optionalNS110 - property set by Configuration Admin; XML NS
- // 1.1.0
- config = cm.createFactoryConfiguration(COMP_OPTIONAL_110);
- config.update(props);
- Thread.sleep(timeout * 3);
- assertEquals("Configuration data should be available for optionalNS110 and equal to 1", 1,
- getBaseConfigData(COMP_OPTIONAL_110));
-
- // component requireNS100 - property not set by Configuration Admin; XML NS
- // 1.0.0 - INVALID COMPONENT
- assertEquals("Component requireNS100 should not be activated", -1, getBaseConfigData(COMP_REQUIRE_100));
- // component requireNS100 - property set by Configuration Admin; XML NS
- // 1.0.0 - INVALID COMPONENT
- config = cm.createFactoryConfiguration(COMP_REQUIRE_100);
- config.update(props);
- Thread.sleep(timeout * 3);
- assertEquals("Component requireNS100 should not be activated", -1, getBaseConfigData(COMP_REQUIRE_100));
-
- // component requireNS110 - property not set by Configuration Admin; XML NS
- // 1.1.0
- assertEquals("Configuration data should not be available for requireNS110, and it should not be satisfied", -1,
- getBaseConfigData(COMP_REQUIRE_110));
- // component requireNS110 - property set by Configuration Admin; XML NS
- // 1.1.0
- config = cm.createFactoryConfiguration(COMP_REQUIRE_110);
- config.update(props);
- Thread.sleep(timeout * 3);
- assertEquals("Configuration data should be available for requireNS110 and equal to 1", 1,
- getBaseConfigData(COMP_REQUIRE_110));
-
- // component ignoreNS100 - property not set by Configuration Admin; XML NS
- // 1.0.0 - INVALID COMPONENT
- assertEquals("Component ignoreNS100 should not be activated", -1, getBaseConfigData(COMP_IGNORE_100));
- // component ignoreNS100 - property set by Configuration Admin; XML NS 1.0.0
- // - INVALID COMPONENT
- config = cm.createFactoryConfiguration(COMP_IGNORE_100);
- config.update(props);
- Thread.sleep(timeout * 3);
- assertEquals("Component ignoreNS100 should not be activated", -1, getBaseConfigData(COMP_IGNORE_100));
-
- // component ignoreNS110 - property not set by Configuration Admin; XML NS
- // 1.1.0
- assertEquals("Configuration data should not be available for ignoreNS110, but it should be satisfied", 0,
- getBaseConfigData(COMP_IGNORE_110));
- // component ignoreNS110 - property set by Configuration Admin; XML NS 1.1.0
- config = cm.createFactoryConfiguration(COMP_IGNORE_110);
- config.update(props);
- Thread.sleep(timeout * 3);
- assertEquals("Configuration data should not be available for ignoreNS110, but it should be satisfied", 0,
- getBaseConfigData(COMP_IGNORE_110));
-
- uninstallBundle(tb11);
- }
-
- public void testActivateDeactivate() throws Exception {
- Bundle tb12 = installBundle("tb12");
- tb12.start();
- waitBundleStart();
-
- final String NOTSET_NS100 = "org.eclipse.equinox.ds.tests.tb12.notsetNS100";
- final String NOTSET_NS110 = "org.eclipse.equinox.ds.tests.tb12.notsetNS110";
- final String NOARGS_NS100 = "org.eclipse.equinox.ds.tests.tb12.NoArgs100";
- final String NOARGS_NS110 = "org.eclipse.equinox.ds.tests.tb12.NoArgs110";
- final String CC_NS100 = "org.eclipse.equinox.ds.tests.tb12.CcNS100";
- final String CC_NS110 = "org.eclipse.equinox.ds.tests.tb12.CcNS110";
- final String BC_NS100 = "org.eclipse.equinox.ds.tests.tb12.Bc100";
- final String BC_NS110 = "org.eclipse.equinox.ds.tests.tb12.Bc110";
- final String MAP_NS100 = "org.eclipse.equinox.ds.tests.tb12.MapNS100";
- final String MAP_NS110 = "org.eclipse.equinox.ds.tests.tb12.MapNS110";
- final String CC_BC_MAP_NS100 = "org.eclipse.equinox.ds.tests.tb12.CcBcMapNS100";
- final String CC_BC_MAP_NS110 = "org.eclipse.equinox.ds.tests.tb12.CcBcMapNS110";
- final String INT_NS110 = "org.eclipse.equinox.ds.tests.tb12.IntNS110";
- final String CC_BC_MAP_INT_NS110 = "org.eclipse.equinox.ds.tests.tb12.CcBcMapIntNS110";
-
- PropertiesProvider bs = getBaseService(NOTSET_NS100);
- ComponentContext cc = (bs instanceof ComponentContextProvider) ? ((ComponentContextProvider) bs)
- .getComponentContext() : null;
- assertNotNull("Component context should be available", cc);
-
- assertEquals("Activate method of " + NOTSET_NS100 + " should be called", 1 << 0, (1 << 0) & getBaseConfigData(bs));
- cc.disableComponent(NOTSET_NS100);
- Thread.sleep(timeout * 3);
- assertEquals("Deactivate method of " + NOTSET_NS100 + " should be called", 1 << 1, (1 << 1) & getBaseConfigData(bs));
-
- bs = getBaseService(NOTSET_NS110);
- assertNotNull(bs);
- assertEquals("Activate method of " + NOTSET_NS110 + " should be called", 1 << 0, (1 << 0) & getBaseConfigData(bs));
- cc.disableComponent(NOTSET_NS110);
- Thread.sleep(timeout * 3);
- assertEquals("Deactivate method of " + NOTSET_NS110 + " should be called", 1 << 1, (1 << 1) & getBaseConfigData(bs));
-
- bs = getBaseService(NOARGS_NS100); // INVALID COMPONENT FOR XML NS 1.0.0
- assertEquals("Component " + NOARGS_NS100 + " should not be activated", -1, getBaseConfigData(bs));
-
- bs = getBaseService(NOARGS_NS110);
- assertNotNull(bs);
- assertEquals("Activate method of " + NOARGS_NS110 + " should be called", 1 << 2, (1 << 2) & getBaseConfigData(bs));
- cc.disableComponent(NOARGS_NS110);
- Thread.sleep(timeout * 3);
- assertEquals("Deactivate method of " + NOARGS_NS110 + " should be called", 1 << 3, (1 << 3) & getBaseConfigData(bs));
-
- bs = getBaseService(CC_NS100); // INVALID COMPONENT FOR XML NS 1.0.0
- assertEquals("Component " + CC_NS100 + " should not be activated", -1, getBaseConfigData(bs));
-
- bs = getBaseService(CC_NS110);
- assertNotNull(bs);
- assertEquals("Activate method of " + CC_NS110 + " should be called", 1 << 4, (1 << 4) & getBaseConfigData(bs));
- cc.disableComponent(CC_NS110);
- Thread.sleep(timeout * 3);
- assertEquals("Deactivate method of " + CC_NS110 + " should be called", 1 << 5, (1 << 5) & getBaseConfigData(bs));
-
- bs = getBaseService(BC_NS100); // INVALID COMPONENT FOR XML NS 1.0.0
- assertEquals("Component " + BC_NS100 + " should not be activated", -1, getBaseConfigData(bs));
-
- bs = getBaseService(BC_NS110);
- assertNotNull(bs);
- assertEquals("Activate method of " + BC_NS110 + " should be called", 1 << 6, (1 << 6) & getBaseConfigData(bs));
- cc.disableComponent(BC_NS110);
- Thread.sleep(timeout * 3);
- assertEquals("Deactivate method of " + BC_NS110 + " should be called", 1 << 7, (1 << 7) & getBaseConfigData(bs));
-
- bs = getBaseService(MAP_NS100); // INVALID COMPONENT FOR XML NS 1.0.0
- assertEquals("Component " + MAP_NS100 + " should not be activated", -1, getBaseConfigData(bs));
-
- bs = getBaseService(MAP_NS110);
- assertNotNull(bs);
- assertEquals("Activate method of " + MAP_NS110 + " should be called", 1 << 8, (1 << 8) & getBaseConfigData(bs));
- cc.disableComponent(MAP_NS110);
- Thread.sleep(timeout * 3);
- assertEquals("Deactivate method of " + MAP_NS110 + " should be called", 1 << 9, (1 << 9) & getBaseConfigData(bs));
-
- bs = getBaseService(CC_BC_MAP_NS100); // INVALID COMPONENT FOR XML NS 1.0.0
- assertEquals("Component " + CC_BC_MAP_NS100 + " should not be activated", -1, getBaseConfigData(bs));
-
- bs = getBaseService(CC_BC_MAP_NS110);
- assertNotNull(bs);
- assertEquals("Activate method of " + CC_BC_MAP_NS110 + " should be called", 1 << 10, (1 << 10)
- & getBaseConfigData(bs));
- cc.disableComponent(CC_BC_MAP_NS110);
- Thread.sleep(timeout * 3);
- assertEquals("Deactivate method of " + CC_BC_MAP_NS110 + " should be called", 1 << 11, (1 << 11)
- & getBaseConfigData(bs));
-
- bs = getBaseService(INT_NS110);
- assertNotNull(bs);
- cc.disableComponent(INT_NS110);
- Thread.sleep(timeout * 3);
- assertEquals("Deactivate method of " + INT_NS110 + " should be called", 1 << 12, (1 << 12) & getBaseConfigData(bs));
-
- bs = getBaseService(CC_BC_MAP_INT_NS110);
- assertNotNull(bs);
- cc.disableComponent(CC_BC_MAP_INT_NS110);
- Thread.sleep(timeout * 3);
- int data = getBaseConfigData(bs);
- assertEquals("Deactivate method of " + CC_BC_MAP_INT_NS110 + " should be called", 1 << 13, (1 << 13) & data);
-
- // // Testing Deactivation reasons ////
- assertEquals("Deactivation reason shall be DEACTIVATION_REASON_DISABLED", 1, 0xFF & (data >> 16));
-
- final String CONT_EXP = "org.eclipse.equinox.ds.tests.tb12.ContextExp";
-
- cc.enableComponent(CC_BC_MAP_INT_NS110);
- Thread.sleep(timeout * 3);
- bs = getBaseService(CC_BC_MAP_INT_NS110);
- assertNotNull(bs);
- cc.disableComponent(CONT_EXP);
- Thread.sleep(timeout * 3);
- assertEquals("Deactivation reason shall be DEACTIVATION_REASON_REFERENCE", 2, 0xFF & (getBaseConfigData(bs) >> 16));
-
- cc.enableComponent(CONT_EXP);
- Thread.sleep(timeout * 3);
-
- bs = getBaseService(CC_BC_MAP_INT_NS110);
- assertNotNull(bs);
- ConfigurationAdmin cm = (ConfigurationAdmin) trackerCM.getService();
- assertNotNull("The ConfigurationAdmin should be available", cm);
- Configuration config = cm.getConfiguration(CC_BC_MAP_INT_NS110);
- Dictionary properties = config.getProperties();
- if (properties == null) {
- properties = new Hashtable();
- }
- properties.put("configuration.dummy", "dummy");
- config.update(properties);
- Thread.sleep(timeout * 3);
- assertEquals("Deactivation reason shall be DEACTIVATION_REASON_CONFIGURATION_MODIFIED", 3,
- 0xFF & (getBaseConfigData(bs) >> 16));
-
- cc.enableComponent(CC_BC_MAP_INT_NS110);
- Thread.sleep(timeout * 3);
-
- bs = getBaseService(CC_BC_MAP_INT_NS110);
- assertNotNull(bs);
- config = cm.getConfiguration(CC_BC_MAP_INT_NS110);
- config.delete();
- Thread.sleep(timeout * 3);
- assertEquals("Deactivation reason shall be DEACTIVATION_REASON_CONFIGURATION_DELETED", 4,
- 0xFF & (getBaseConfigData(bs) >> 16));
-
- cc.enableComponent(CC_BC_MAP_INT_NS110);
- Thread.sleep(timeout * 3);
-
- cc.enableComponent(INT_NS110);
- Thread.sleep(timeout * 3);
-
- bs = getBaseService(INT_NS110);
- assertNotNull(bs);
- ComponentContext ccIntNS110 = (bs instanceof ComponentContextProvider) ? ((ComponentContextProvider) bs)
- .getComponentContext() : null;
- assertNotNull("Component context should be available for " + INT_NS110, ccIntNS110);
- ccIntNS110.getComponentInstance().dispose();
- assertEquals("Deactivation reason shall be DEACTIVATION_REASON_DISPOSED", 5, 0xFF & (getBaseConfigData(bs) >> 16));
-
- bs = getBaseService(CC_BC_MAP_INT_NS110);
- assertNotNull(bs);
- tb12.stop();
- assertEquals("Deactivation reason shall be DEACTIVATION_REASON_BUNDLE_STOPPED", 6,
- 0xFF & (getBaseConfigData(bs) >> 16));
-
- uninstallBundle(tb12);
- }
-
- public void testBindUnbindParams() throws Exception {
- Bundle tb13 = installBundle("tb13");
- tb13.start();
- waitBundleStart();
-
- final String SR_NS100 = "org.eclipse.equinox.ds.tests.tb13.SrNS100";
- final String SR_NS110 = "org.eclipse.equinox.ds.tests.tb13.SrNS110";
- final String CE_NS100 = "org.eclipse.equinox.ds.tests.tb13.CeNS100";
- final String CE_NS110 = "org.eclipse.equinox.ds.tests.tb13.CeNS110";
- final String CE_MAP_NS100 = "org.eclipse.equinox.ds.tests.tb13.CeMapNS100";
- final String CE_MAP_NS110 = "org.eclipse.equinox.ds.tests.tb13.CeMapNS110";
-
- ServiceReference ref = getContext().getServiceReference(ComponentManager.class.getName());
- assertNotNull("Component Enabler Service Reference should be available", ref);
- ComponentManager enabler = (ComponentManager) getContext().getService(ref);
- assertNotNull("Component Enabler Service should be available", enabler);
-
- PropertiesProvider bs = getBaseService(SR_NS100);
- assertNotNull("Component " + SR_NS100 + " should be activated", bs);
- assertEquals("Bind method of " + SR_NS100 + " should be called", 1 << 0, (1 << 0) & getBaseConfigData(bs));
- enabler.enableComponent(SR_NS100, false);
- Thread.sleep(timeout * 3);
- assertEquals("Unbind method of " + SR_NS100 + " should be called", 1 << 1, (1 << 1) & getBaseConfigData(bs));
-
- bs = getBaseService(SR_NS110);
- assertNotNull("Component " + SR_NS110 + " should be activated", bs);
- assertEquals("Bind method of " + SR_NS110 + " should be called", 1 << 0, (1 << 0) & getBaseConfigData(bs));
- enabler.enableComponent(SR_NS110, false);
- Thread.sleep(timeout * 3);
- assertEquals("Unbind method of " + SR_NS110 + " should be called", 1 << 5, (1 << 5) & getBaseConfigData(bs));
-
- bs = getBaseService(CE_NS100);
- assertNotNull("Component " + CE_NS100 + " should be activated", bs);
- assertEquals("Bind method of " + CE_NS100 + " should be called", 1 << 2, (1 << 2) & getBaseConfigData(bs));
- enabler.enableComponent(CE_NS100, false);
- Thread.sleep(timeout * 3);
- assertEquals("Unbind method of " + CE_NS100 + " should be called", 1 << 3, (1 << 3) & getBaseConfigData(bs));
-
- bs = getBaseService(CE_NS110);
- assertNotNull("Component " + CE_NS110 + " should be activated", bs);
- assertEquals("Bind method of " + CE_NS110 + " should be called", 1 << 2, (1 << 2) & getBaseConfigData(bs));
- enabler.enableComponent(CE_NS110, false);
- Thread.sleep(timeout * 3);
- assertEquals("Unbind method of " + CE_NS110 + " should be called", 1 << 3, (1 << 3) & getBaseConfigData(bs));
-
- bs = getBaseService(CE_MAP_NS100);
- assertNull("Component " + CE_MAP_NS100 + " should not be activated", bs);
-
- bs = getBaseService(CE_MAP_NS110);
- assertNotNull("Component " + CE_MAP_NS110 + " should be activated", bs);
- assertEquals("Bind method of " + CE_MAP_NS110 + " should be called", 1 << 4, (1 << 4) & getBaseConfigData(bs));
- enabler.enableComponent(CE_MAP_NS110, false);
- Thread.sleep(timeout * 3);
- assertEquals("Unbind method of " + CE_MAP_NS110 + " should be called", 1 << 5, (1 << 5) & getBaseConfigData(bs));
-
- getContext().ungetService(ref);
- uninstallBundle(tb13);
- }
-
- public void testOptionalNames() throws Exception {
- Bundle tb14 = installBundle("tb14");
- tb14.start();
- waitBundleStart();
- PropertiesProvider bs;
-
- final String OPT_NAME_100 = "org.eclipse.equinox.ds.tests.tb14.Optional";
- final String OPT_NAME_110 = "org.eclipse.equinox.ds.tests.tb14.Optional2";
- final String OPT_REF_100 = "org.eclipse.equinox.ds.tests.tb14.OptRef100";
- final String OPT_REF_110 = "org.eclipse.equinox.ds.tests.tb14.OptRef110";
-
- assertNull("Component " + OPT_NAME_100 + " should not be activated", getBaseService(OPT_NAME_100));
- assertNotNull("Component " + OPT_NAME_110 + " should be activated", getBaseService(OPT_NAME_110));
-
- assertNull("Component " + OPT_REF_100 + " should not be activated", getBaseService(OPT_REF_100));
- assertNotNull("Component " + OPT_REF_110 + " should be activated", bs = getBaseService(OPT_REF_110));
-
- ComponentContext cc = (bs instanceof ComponentContextProvider) ? ((ComponentContextProvider) bs)
- .getComponentContext() : null;
- assertNotNull("Component context should be available", cc);
- assertNotNull("Optional reference name should be set to interface attribute", cc
- .locateService(ComponentContextProvider.class.getName()));
-
- uninstallBundle(tb14);
- }
-
- public void testDisposingMultipleDependencies() throws Exception {
- Bundle tb15 = installBundle("tb15");
- tb15.start();
- waitBundleStart();
-
- final String C1 = "org.eclipse.equinox.ds.tests.tb15.Component1";
- final String C2 = "org.eclipse.equinox.ds.tests.tb15.Component2";
- final String C3 = "org.eclipse.equinox.ds.tests.tb15.Component3";
-
- PropertiesProvider serviceC1 = getBaseService(C1);
- assertNotNull("Component " + C1 + " should be activated", serviceC1);
- PropertiesProvider serviceC2 = getBaseService(C2);
- assertNotNull("Component " + C2 + " should be activated", serviceC2);
- PropertiesProvider serviceC3 = getBaseService(C3);
- assertNotNull("Component " + C3 + " should be activated", serviceC3);
-
- ComponentContext cc = (serviceC1 instanceof ComponentContextProvider) ? ((ComponentContextProvider) serviceC1)
- .getComponentContext() : null;
- assertNotNull("Component context should be available", cc);
-
- cc.disableComponent(C1);
- Thread.sleep(timeout * 3);
-
- assertEquals("Component " + C3 + " should be deactivated first", 0, getBaseConfigData(serviceC3));
- assertEquals("Component " + C2 + " should be deactivated second", 1, getBaseConfigData(serviceC2));
- assertEquals("Component " + C1 + " should be deactivated third", 2, getBaseConfigData(serviceC1));
-
- uninstallBundle(tb15);
- }
-
- public void testReferenceTargetProperty() throws Exception {
- Bundle tb16 = installBundle("tb16");
- tb16.start();
- waitBundleStart();
-
- final String EXPOSER = "org.eclipse.equinox.ds.tests.tb16.Exposer";
- final String C1 = "org.eclipse.equinox.ds.tests.tb16.C1";
- final String C2 = "org.eclipse.equinox.ds.tests.tb16.C2";
-
- PropertiesProvider bs = getBaseService(EXPOSER);
- ComponentContext cc = (bs instanceof ComponentContextProvider) ? ((ComponentContextProvider) bs)
- .getComponentContext() : null;
- assertNotNull("Component context should be available", cc);
-
- PropertiesProvider serviceC2 = getBaseService(C2);
- // target property of referenced service of component Component2 should not
- // be satisfied
- assertNull("Component " + C2 + " should not be activated because of unsatisfied reference", serviceC2);
-
- cc.enableComponent(C1);
- Thread.sleep(timeout * 3);
- assertNotNull("Component " + C1 + " should be available", getBaseService(C1));
-
- serviceC2 = getBaseService(C2);
- // target property of referenced service of component Component2 should now
- // be satisfied
- assertNotNull("Component " + C2 + " should be activated", serviceC2);
-
- uninstallBundle(tb16);
- }
-
- class OverloadManager extends Thread {
- private String compPrefix;
- private int firstComp;
- private int lastComp;
-
- public OverloadManager(String compPrefix, int first, int last) {
- this.compPrefix = compPrefix;
- this.firstComp = first;
- this.lastComp = last;
- }
-
- public void run() {
- ConfigurationAdmin cm = (ConfigurationAdmin) trackerCM.getService();
- assertNotNull("The ConfigurationAdmin should be available", cm);
-
- try {
- for (int i = firstComp; i <= lastComp; i++) {
- Configuration config = cm.getConfiguration(compPrefix + i);
- Dictionary properties = config.getProperties();
- if (properties == null) {
- properties = new Hashtable();
- }
- properties.put("component.index", new Integer(i));
- config.update(properties);
-
- sleep0(100);
- }
- } catch (IOException e) {
- return;
- }
- }
-
- public boolean isAllComponentsRunning() {
- for (int i = firstComp; i <= lastComp; i++) {
- if (getBaseService(compPrefix + i) == null) {
- return false;
- }
- }
- return true;
- }
- }
-
- public void testOverload() throws Exception {
- Bundle tb17 = installBundle("tb17");
- Bundle tb18 = installBundle("tb18");
- Bundle tb19 = installBundle("tb19");
- tb17.start();
- tb18.start();
- tb19.start();
- waitBundleStart();
-
- final String SCR = "org.eclipse.equinox.ds.tests";
- final int startComp = 1;
- final int lastComp = 10;
- final int OVERLOAD_TIMEOUT = 60000; // max time allowed for processing in ms
-
- OverloadManager manager17 = new OverloadManager(SCR + ".tb17.C", startComp, lastComp);
- OverloadManager manager18 = new OverloadManager(SCR + ".tb18.C", startComp, lastComp);
- OverloadManager manager19 = new OverloadManager(SCR + ".tb19.C", startComp, lastComp);
-
- long startTime = System.currentTimeMillis();
- manager17.start();
- manager18.start();
- manager19.start();
-
- manager17.join();
- manager18.join();
- manager19.join();
-
- // waiting SCR to process events
- int successCount = 0;
- while ((successCount < 5) && (System.currentTimeMillis() - startTime < OVERLOAD_TIMEOUT)) {
- Thread.sleep(100);
- if (!manager17.isAllComponentsRunning() || !manager18.isAllComponentsRunning()
- || !manager19.isAllComponentsRunning()) {
- successCount = 0;
- continue;
- }
- successCount++;
- }
-
- long elapsed = System.currentTimeMillis() - startTime;
- log("testOverload(): Overload processing finished for " + elapsed + " ms.");
-
- assertTrue("All components of tb17 should be activated", manager17.isAllComponentsRunning());
- assertTrue("All components of tb18 should be activated", manager18.isAllComponentsRunning());
- assertTrue("All components of tb19 should be activated", manager19.isAllComponentsRunning());
-
- uninstallBundle(tb17);
- uninstallBundle(tb18);
- uninstallBundle(tb19);
- }
-
- public void testLazyBundles() throws Exception {
- Bundle tb20 = installBundle("tb20");
- // lazy bundle
- tb20.start(Bundle.START_ACTIVATION_POLICY);
- waitBundleStart();
-
- final String COMP = "org.eclipse.equinox.ds.tests.tb20.component";
-
- Thread.sleep(timeout);
- assertTrue("Provided service of Component " + COMP + " should be available.", trackerBaseService.size() > 0);
-
- uninstallBundle(tb20);
- }
-
- // Testing modified attribute for XML NS 1.0.0
- public void testModified100() throws Exception {
- ConfigurationAdmin cm = (ConfigurationAdmin) trackerCM.getService();
- assertNotNull("The ConfigurationAdmin should be available", cm);
-
- Bundle tb21 = installBundle("tb21");
-
- Hashtable props = new Hashtable(10);
- props.put("config.dummy.data", new Integer(1));
- cm.getConfiguration(MOD_NOTSET_NS100).update(props);
- cm.getConfiguration(MOD_NOARGS_NS100).update(props);
- cm.getConfiguration(MOD_CC_NS100).update(props);
- cm.getConfiguration(MOD_BC_NS100).update(props);
- cm.getConfiguration(MOD_MAP_NS100).update(props);
- cm.getConfiguration(MOD_CC_BC_MAP_NS100).update(props);
-
- Thread.sleep(timeout * 3);
-
- tb21.start();
- waitBundleStart();
-
- props.put("config.dummy.data", new Integer(2));
- Hashtable unsatisfyingProps = new Hashtable(10);
- unsatisfyingProps.put("ref.target", "(component.name=org.eclipse.equinox.ds.tests.tb21.unexisting.provider)");
-
- PropertiesProvider bs = getBaseService(MOD_NOTSET_NS100);
- assertNotNull(bs);
- cm.getConfiguration(MOD_NOTSET_NS100).update(props);
- Thread.sleep(timeout * 3);
- assertEquals("Modified method of " + MOD_NOTSET_NS100 + " should not be called", 0, (1 << 0)
- & getBaseConfigData(bs));
- assertEquals("Deactivate method of " + MOD_NOTSET_NS100 + " should be called", 1 << 7, (1 << 7)
- & getBaseConfigData(bs));
- bs = getBaseService(MOD_NOTSET_NS100);
- cm.getConfiguration(MOD_NOTSET_NS100).update(unsatisfyingProps);
- Thread.sleep(timeout * 3);
- assertEquals("Modified method of " + MOD_NOTSET_NS100 + " should not be called", 0, (1 << 0)
- & getBaseConfigData(bs));
- assertEquals("Deactivate method of " + MOD_NOTSET_NS100 + " should be called", 1 << 7, (1 << 7)
- & getBaseConfigData(bs));
-
- // INVALID COMPONENTS for XML NS 1.0.0 - modified attribute is set
- bs = getBaseService(MOD_NOARGS_NS100);
- assertEquals("Component " + MOD_NOARGS_NS100 + " should not be activated", null, bs);
- bs = getBaseService(MOD_CC_NS100);
- assertEquals("Component " + MOD_CC_NS100 + " should not be activated", null, bs);
- bs = getBaseService(MOD_BC_NS100);
- assertEquals("Component " + MOD_BC_NS100 + " should not be activated", null, bs);
- bs = getBaseService(MOD_MAP_NS100);
- assertEquals("Component " + MOD_MAP_NS100 + " should not be activated", null, bs);
- bs = getBaseService(MOD_CC_BC_MAP_NS100);
- assertEquals("Component " + MOD_CC_BC_MAP_NS100 + " should not be activated", null, bs);
-
- uninstallBundle(tb21);
- }
-
- // Testing modified attribute for XML NS 1.1.0
- public void testModified110() throws Exception {
- ConfigurationAdmin cm = (ConfigurationAdmin) trackerCM.getService();
- assertNotNull("The ConfigurationAdmin should be available", cm);
-
- Bundle tb21a = installBundle("tb21a");
-
- Hashtable props = new Hashtable(10);
- props.put("config.dummy.data", new Integer(1));
- cm.getConfiguration(MOD_NOTSET_NS110).update(props);
- cm.getConfiguration(MOD_NOARGS_NS110).update(props);
- cm.getConfiguration(MOD_CC_NS110).update(props);
- cm.getConfiguration(MOD_BC_NS110).update(props);
- cm.getConfiguration(MOD_MAP_NS110).update(props);
- cm.getConfiguration(MOD_CC_BC_MAP_NS110).update(props);
-
- Thread.sleep(timeout * 3);
-
- tb21a.start();
- waitBundleStart();
-
- props.put("config.dummy.data", new Integer(2));
- Hashtable unsatisfyingProps = new Hashtable(10);
- unsatisfyingProps.put("ref.target", "(component.name=org.eclipse.equinox.ds.tests.tb21.unexisting.provider)");
-
- PropertiesProvider bs = getBaseService(MOD_NOTSET_NS110);
- cm.getConfiguration(MOD_NOTSET_NS110).update(props);
- Thread.sleep(timeout * 3);
- assertEquals("Modified method of " + MOD_NOTSET_NS110 + " should not be called", 0, (1 << 0)
- & getBaseConfigData(bs));
- assertEquals("Deactivate method of " + MOD_NOTSET_NS110 + " should be called", 1 << 7, (1 << 7)
- & getBaseConfigData(bs));
- bs = getBaseService(MOD_NOTSET_NS110);
- cm.getConfiguration(MOD_NOTSET_NS110).update(unsatisfyingProps);
- Thread.sleep(timeout * 3);
- assertEquals("Modified method of " + MOD_NOTSET_NS110 + " should not be called", 0, (1 << 0)
- & getBaseConfigData(bs));
- assertEquals("Deactivate method of " + MOD_NOTSET_NS110 + " should be called", 1 << 7, (1 << 7)
- & getBaseConfigData(bs));
- // Re-activating
- bs = getBaseService(MOD_NOTSET_NS110);
- assertEquals("Activate method of " + MOD_NOTSET_NS110 + " should be called", 1 << 6, (1 << 6)
- & getBaseConfigData(bs));
-
- bs = getBaseService(MOD_NOARGS_NS110);
- cm.getConfiguration(MOD_NOARGS_NS110).update(props);
- Thread.sleep(timeout * 3);
- assertEquals("Modified method of " + MOD_NOARGS_NS110 + " should be called", 1 << 1, (1 << 1)
- & getBaseConfigData(bs));
- assertEquals("Deactivate method of " + MOD_NOARGS_NS110 + " should not be called", 0, (1 << 7)
- & getBaseConfigData(bs));
- cm.getConfiguration(MOD_NOARGS_NS110).update(unsatisfyingProps);
- Thread.sleep(timeout * 3);
- assertEquals("Deactivate method of " + MOD_NOARGS_NS110 + " should be called", 1 << 7, (1 << 7)
- & getBaseConfigData(bs));
- // Re-activating
- bs = getBaseService(MOD_NOARGS_NS110);
- assertEquals("Activate method of " + MOD_NOARGS_NS110 + " should be called", 1 << 6, (1 << 6)
- & getBaseConfigData(bs));
-
- bs = getBaseService(MOD_CC_NS110);
- cm.getConfiguration(MOD_CC_NS110).update(props);
- Thread.sleep(timeout * 3);
- assertEquals("Modified method of " + MOD_CC_NS110 + " should be called", 1 << 2, (1 << 2) & getBaseConfigData(bs));
- assertEquals("Deactivate method of " + MOD_CC_NS110 + " should not be called", 0, (1 << 7) & getBaseConfigData(bs));
- cm.getConfiguration(MOD_CC_NS110).update(unsatisfyingProps);
- Thread.sleep(timeout * 3);
- assertEquals("Deactivate method of " + MOD_CC_NS110 + " should be called", 1 << 7, (1 << 7) & getBaseConfigData(bs));
- // Re-activating
- bs = getBaseService(MOD_CC_NS110);
- assertEquals("Activate method of " + MOD_CC_NS110 + " should be called", 1 << 6, (1 << 6) & getBaseConfigData(bs));
-
- bs = getBaseService(MOD_BC_NS110);
- cm.getConfiguration(MOD_BC_NS110).update(props);
- Thread.sleep(timeout * 3);
- assertEquals("Modified method of " + MOD_BC_NS110 + " should be called", 1 << 3, (1 << 3) & getBaseConfigData(bs));
- assertEquals("Deactivate method of " + MOD_BC_NS110 + " should not be called", 0, (1 << 7) & getBaseConfigData(bs));
- cm.getConfiguration(MOD_BC_NS110).update(unsatisfyingProps);
- Thread.sleep(timeout * 3);
- assertEquals("Deactivate method of " + MOD_BC_NS110 + " should be called", 1 << 7, (1 << 7) & getBaseConfigData(bs));
- // Re-activating
- bs = getBaseService(MOD_BC_NS110);
- assertEquals("Activate method of " + MOD_BC_NS110 + " should be called", 1 << 6, (1 << 6) & getBaseConfigData(bs));
-
- bs = getBaseService(MOD_MAP_NS110);
- cm.getConfiguration(MOD_MAP_NS110).update(props);
- Thread.sleep(timeout * 3);
- assertEquals("Modified method of " + MOD_MAP_NS110 + " should be called", 1 << 4, (1 << 4) & getBaseConfigData(bs));
- assertEquals("Deactivate method of " + MOD_MAP_NS110 + " should not be called", 0, (1 << 7) & getBaseConfigData(bs));
- cm.getConfiguration(MOD_MAP_NS110).update(unsatisfyingProps);
- Thread.sleep(timeout * 3);
- assertEquals("Deactivate method of " + MOD_MAP_NS110 + " should be called", 1 << 7, (1 << 7)
- & getBaseConfigData(bs));
- // Re-activating
- bs = getBaseService(MOD_MAP_NS110);
- assertEquals("Activate method of " + MOD_MAP_NS110 + " should be called", 1 << 6, (1 << 6) & getBaseConfigData(bs));
-
- bs = getBaseService(MOD_CC_BC_MAP_NS110);
- cm.getConfiguration(MOD_CC_BC_MAP_NS110).update(props);
- Thread.sleep(timeout * 3);
- assertEquals("Modified method of " + MOD_CC_BC_MAP_NS110 + " should be called", 1 << 5, (1 << 5)
- & getBaseConfigData(bs));
- assertEquals("Deactivate method of " + MOD_CC_BC_MAP_NS110 + " should not be called", 0, (1 << 7)
- & getBaseConfigData(bs));
- cm.getConfiguration(MOD_CC_BC_MAP_NS110).update(unsatisfyingProps);
- Thread.sleep(timeout * 3);
- assertEquals("Deactivate method of " + MOD_CC_BC_MAP_NS110 + " should be called", 1 << 7, (1 << 7)
- & getBaseConfigData(bs));
- // Re-activating
- bs = getBaseService(MOD_CC_BC_MAP_NS110);
- assertEquals("Activate method of " + MOD_CC_BC_MAP_NS110 + " should be called", 1 << 6, (1 << 6)
- & getBaseConfigData(bs));
-
- uninstallBundle(tb21a);
- }
-
- // Testing modified attribute - special cases
- public void testModifiedSpecialCases() throws Exception {
- ConfigurationAdmin cm = (ConfigurationAdmin) trackerCM.getService();
- assertNotNull("The ConfigurationAdmin should be available", cm);
-
- Bundle tb21a = installBundle("tb21a");
-
- Hashtable props = new Hashtable(10);
- props.put("config.dummy.data", new Integer(1));
- cm.getConfiguration(MOD_CC_NS110).update(props);
- cm.getConfiguration(MOD_NOT_EXIST_NS110).update(props);
- cm.getConfiguration(MOD_THROW_EX_NS110).update(props);
- cm.getConfiguration(MOD_BC_NS110).update(props);
- Thread.sleep(timeout * 3);
-
- tb21a.start();
- waitBundleStart();
-
- // Verifying correctness of updated component properties
- PropertiesProvider bs = getBaseService(MOD_CC_NS110);
- props.put("config.dummy.data", new Integer(2));
- cm.getConfiguration(MOD_CC_NS110).update(props);
- Thread.sleep(timeout * 3);
- Object val = ((ComponentContextProvider) bs).getComponentContext().getProperties().get("config.dummy.data");
- assertEquals("Modified method of " + MOD_CC_NS110 + " should be called", 1 << 2, (1 << 2) & getBaseConfigData(bs));
- assertTrue("Component properties should be updated properly for " + MOD_CC_NS110, (new Integer(2)).equals(val));
-
- // Specified modified method doesn't exist, deactivate() should be called
- // instead of modified
- bs = getBaseService(MOD_NOT_EXIST_NS110);
- cm.getConfiguration(MOD_NOT_EXIST_NS110).update(props);
- Thread.sleep(timeout * 3);
- assertEquals("Deactivate method of " + MOD_NOT_EXIST_NS110 + " should be called", 1 << 7, (1 << 7)
- & getBaseConfigData(bs));
- // Re-activating
- bs = getBaseService(MOD_NOT_EXIST_NS110);
- assertEquals("Activate method of " + MOD_NOT_EXIST_NS110 + " should be called", 1 << 6, (1 << 6)
- & getBaseConfigData(bs));
-
- // Specified modified method throws exception. Normal workflow should
- // continue, deactivate() should not be called
- bs = getBaseService(MOD_THROW_EX_NS110);
- cm.getConfiguration(MOD_THROW_EX_NS110).update(props);
- Thread.sleep(timeout * 3);
- assertEquals("Deactivate method of " + MOD_THROW_EX_NS110 + " should not be called", 0, (1 << 7)
- & getBaseConfigData(bs));
-
- // Deleting component configuration
- bs = getBaseService(MOD_BC_NS110);
- cm.getConfiguration(MOD_BC_NS110).delete();
- Thread.sleep(timeout * 3);
- assertEquals("Modified method of " + MOD_BC_NS110 + " should not be called", 0, (1 << 5) & getBaseConfigData(bs));
- assertEquals("Deactivate method of " + MOD_BC_NS110 + " should be called", 1 << 7, (1 << 7) & getBaseConfigData(bs));
- // Re-activating
- bs = getBaseService(MOD_BC_NS110);
- assertEquals("Activate method of " + MOD_BC_NS110 + " should be called", 1 << 6, (1 << 6) & getBaseConfigData(bs));
-
- uninstallBundle(tb21a);
- }
-
- public void testPrivateProperties() throws Exception {
- Bundle tb22 = installBundle("tb22");
- tb22.start();
- waitBundleStart();
-
- final String COMP = "org.eclipse.equinox.ds.tests.tb22.component";
-
- ServiceReference ref = trackerBaseService.getServiceReference();
- assertNotNull("Provided service of " + COMP + " should be available", ref);
- String[] keys = ref.getPropertyKeys();
- for (int i = 0; i < keys.length; i++) {
- assertTrue("Private properties should not be propagated", !keys[i].startsWith("."));
- }
-
- uninstallBundle(tb22);
- }
-
- // Testing situation when bind method throws exception
- public void testBindException() throws Exception {
- Bundle tb23 = installBundle("tb23");
-
- final String MANDATORY_REF_COMP = "org.eclipse.equinox.ds.tests.tb23.mandatory";
- final String OPTIONAL_REF_COMP = "org.eclipse.equinox.ds.tests.tb23.optional";
- tb23.start();
- waitBundleStart();
-
- PropertiesProvider bs = getBaseService(MANDATORY_REF_COMP);
- assertEquals("Component " + MANDATORY_REF_COMP + " should not be activated", null, bs);
- bs = getBaseService(OPTIONAL_REF_COMP);
- assertEquals("Component " + OPTIONAL_REF_COMP + " should be activated", 1 << 2, (1 << 2) & getBaseConfigData(bs));
-
- uninstallBundle(tb23);
- }
-
- /**
- * Searches for component with name componentName which provides
- * PropertiesProvider. Returns value of its "config.base.data" property.
- *
- * @param componentName
- * - the name of the component to get data
- * @return the value of property "config.base.data", provided by
- * PropertiesProvider.getProperties(). Returned value is -1 when
- * component which provides PropertiesProvider and has specified name
- * is not activated. Returned value is 0 when component with specified
- * name is active but doesn't have property "config.base.data".
- */
- private int getBaseConfigData(String componentName) {
- PropertiesProvider s = getBaseService(componentName);
- return getBaseConfigData(s);
- }
-
- private int getBaseConfigData(PropertiesProvider s) {
- Dictionary props = null;
- int value = -1;
- if (s != null) {
- value = 0;
- if ((props = s.getProperties()) != null) {
- Object prop = props.get("config.base.data");
- if (prop instanceof Integer) {
- value = ((Integer) prop).intValue();
- }
- }
- }
- return value;
- }
-
- private PropertiesProvider getBaseService(String componentName) {
- Object[] services = trackerBaseService.getServices();
- if (services == null) {
- return null;
- }
- for (int i = 0; i < services.length; i++) {
- if (services[i] instanceof PropertiesProvider) {
- PropertiesProvider s = (PropertiesProvider) services[i];
- Dictionary props = s.getProperties();
- if (props != null && ((String) props.get(ComponentConstants.COMPONENT_NAME)).equals(componentName)) {
- return s;
- }
- }
- }
- return null;
- }
-
- private BundleContext getContext() {
- return DSTestsActivator.getContext();
- }
-
- private Bundle installBundle(String bundle) throws BundleException {
- Bundle b = installer.installBundle(bundle);
- return b;
- }
-
- private void uninstallBundle(Bundle bundle) throws BundleException {
- installer.uninstallBundle(bundle);
- }
-
- private ServiceRegistration registerService(String className, Object service, Dictionary props) {
- ServiceRegistration sr = getContext().registerService(className, service, props);
-
- registeredServices.put(service, sr);
-
- return sr;
- }
-
- private void unregisterService(Object service) {
- ServiceRegistration sr = (ServiceRegistration) registeredServices.get(service);
- if (sr != null) {
- sr.unregister();
- registeredServices.remove(sr);
- }
- }
-
- private void unregisterService(ServiceRegistration reg) {
- Enumeration e = registeredServices.elements();
- while (e.hasMoreElements()) {
- Object service = e.nextElement();
- if (reg == null || registeredServices.get(service) == reg) {
- unregisterService(service);
- }
- }
- }
-
- private void unregisterAllServices() {
- Enumeration e = registeredServices.elements();
- while (e.hasMoreElements()) {
- Object service = e.nextElement();
- unregisterService(service);
- }
- }
-
- private void log(String msg) {
- // System.out.println("[Declarative Service TC] " + msg);
- }
-
- public void sleep0(long millisToSleep) {
- long start = System.currentTimeMillis();
- do {
- try {
- Thread.sleep(50);
- } catch (InterruptedException e) {
- }
- } while (System.currentTimeMillis() - start < millisToSleep);
- }
-
- private void waitBundleStart() {
- if (!synchronousBuild) {
- sleep0(2 * timeout);
- }
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/tbc/DynamicWorker.java b/bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/tbc/DynamicWorker.java
deleted file mode 100644
index 16cbfda..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/tbc/DynamicWorker.java
+++ /dev/null
@@ -1,22 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tbc;
-
-import java.util.Dictionary;
-
-public class DynamicWorker implements PropertiesProvider {
-
- public Dictionary getProperties() {
- return null;
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/tbc/NamespaceProvider.java b/bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/tbc/NamespaceProvider.java
deleted file mode 100644
index 187c8ec..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/tbc/NamespaceProvider.java
+++ /dev/null
@@ -1,16 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tbc;
-
-public interface NamespaceProvider {
- public int getComponentNSID();
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/tbc/PropertiesProvider.java b/bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/tbc/PropertiesProvider.java
deleted file mode 100644
index d9c253c..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/tbc/PropertiesProvider.java
+++ /dev/null
@@ -1,20 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tbc;
-
-import java.util.Dictionary;
-
-public interface PropertiesProvider {
-
- public Dictionary getProperties();
-
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/tbc/StaticWorker.java b/bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/tbc/StaticWorker.java
deleted file mode 100644
index 617efa4..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/tbc/StaticWorker.java
+++ /dev/null
@@ -1,22 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tbc;
-
-import java.util.Dictionary;
-
-public class StaticWorker implements PropertiesProvider {
-
- public Dictionary getProperties() {
- return null;
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/tbc/TestHelper.java b/bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/tbc/TestHelper.java
deleted file mode 100644
index f8324b0..0000000
--- a/bundles/org.eclipse.equinox.ds.tests/src/org/eclipse/equinox/ds/tests/tbc/TestHelper.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1997-2009 by ProSyst Software GmbH
- * http://www.prosyst.com
- * 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:
- * ProSyst Software GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.equinox.ds.tests.tbc;
-
-public class TestHelper {
-
- private static boolean activatedStandAlone = false;
- private static boolean activatedServiceProvider = false;
-
- public static void reset() {
- activatedStandAlone = false;
- activatedServiceProvider = false;
- }
-
- public static boolean isActivatedServiceProvider() {
- return activatedServiceProvider;
- }
-
- public static void setActivatedServiceProvider(boolean activatedServiceProvider) {
- TestHelper.activatedServiceProvider = activatedServiceProvider;
- }
-
- public static boolean isActivatedStandAlone() {
- return activatedStandAlone;
- }
-
- public static void setActivatedStandAlone(boolean activatedStandAlone) {
- TestHelper.activatedStandAlone = activatedStandAlone;
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.log.test/.classpath b/bundles/org.eclipse.equinox.log.test/.classpath
deleted file mode 100644
index 64c5e31..0000000
--- a/bundles/org.eclipse.equinox.log.test/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
- <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="src" path="src"/>
- <classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/bundles/org.eclipse.equinox.log.test/.cvsignore b/bundles/org.eclipse.equinox.log.test/.cvsignore
deleted file mode 100644
index ba077a4..0000000
--- a/bundles/org.eclipse.equinox.log.test/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-bin
diff --git a/bundles/org.eclipse.equinox.log.test/.project b/bundles/org.eclipse.equinox.log.test/.project
deleted file mode 100644
index b518713..0000000
--- a/bundles/org.eclipse.equinox.log.test/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.equinox.log.test</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/bundles/org.eclipse.equinox.log.test/.settings/org.eclipse.jdt.core.prefs b/bundles/org.eclipse.equinox.log.test/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index e98c4ac..0000000
--- a/bundles/org.eclipse.equinox.log.test/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,351 +0,0 @@
-#Tue May 19 17:56:53 CDT 2009
-eclipse.preferences.version=1
-org.eclipse.jdt.core.builder.cleanOutputFolder=clean
-org.eclipse.jdt.core.builder.duplicateResourceTask=warning
-org.eclipse.jdt.core.builder.invalidClasspath=abort
-org.eclipse.jdt.core.builder.recreateModifiedClassFileInOutputFolder=ignore
-org.eclipse.jdt.core.builder.resourceCopyExclusionFilter=*.launch
-org.eclipse.jdt.core.circularClasspath=error
-org.eclipse.jdt.core.classpath.exclusionPatterns=enabled
-org.eclipse.jdt.core.classpath.multipleOutputLocations=enabled
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.2
-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=1.5
-org.eclipse.jdt.core.compiler.debug.lineNumber=generate
-org.eclipse.jdt.core.compiler.debug.localVariable=generate
-org.eclipse.jdt.core.compiler.debug.sourceFile=generate
-org.eclipse.jdt.core.compiler.doc.comment.support=enabled
-org.eclipse.jdt.core.compiler.maxProblemPerUnit=1000
-org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.autoboxing=ignore
-org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning
-org.eclipse.jdt.core.compiler.problem.deadCode=warning
-org.eclipse.jdt.core.compiler.problem.deprecation=warning
-org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
-org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=enabled
-org.eclipse.jdt.core.compiler.problem.discouragedReference=warning
-org.eclipse.jdt.core.compiler.problem.emptyStatement=warning
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.problem.fallthroughCase=ignore
-org.eclipse.jdt.core.compiler.problem.fatalOptionalError=enabled
-org.eclipse.jdt.core.compiler.problem.fieldHiding=warning
-org.eclipse.jdt.core.compiler.problem.finalParameterBound=ignore
-org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning
-org.eclipse.jdt.core.compiler.problem.forbiddenReference=error
-org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
-org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
-org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=ignore
-org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=warning
-org.eclipse.jdt.core.compiler.problem.invalidJavadoc=error
-org.eclipse.jdt.core.compiler.problem.invalidJavadocTags=disabled
-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsDeprecatedRef=disabled
-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsNotVisibleRef=disabled
-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsVisibility=private
-org.eclipse.jdt.core.compiler.problem.localVariableHiding=warning
-org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning
-org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=ignore
-org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=ignore
-org.eclipse.jdt.core.compiler.problem.missingJavadocComments=ignore
-org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsOverriding=enabled
-org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsVisibility=public
-org.eclipse.jdt.core.compiler.problem.missingJavadocTagDescription=return_tag
-org.eclipse.jdt.core.compiler.problem.missingJavadocTags=ignore
-org.eclipse.jdt.core.compiler.problem.missingJavadocTagsOverriding=enabled
-org.eclipse.jdt.core.compiler.problem.missingJavadocTagsVisibility=public
-org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=ignore
-org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
-org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=ignore
-org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
-org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
-org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=warning
-org.eclipse.jdt.core.compiler.problem.nullReference=warning
-org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
-org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore
-org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=warning
-org.eclipse.jdt.core.compiler.problem.potentialNullReference=ignore
-org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning
-org.eclipse.jdt.core.compiler.problem.redundantNullCheck=ignore
-org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=ignore
-org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
-org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
-org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
-org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=warning
-org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
-org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning
-org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning
-org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning
-org.eclipse.jdt.core.compiler.problem.unnecessaryElse=warning
-org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=warning
-org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=enabled
-org.eclipse.jdt.core.compiler.problem.unusedImport=error
-org.eclipse.jdt.core.compiler.problem.unusedLabel=warning
-org.eclipse.jdt.core.compiler.problem.unusedLocal=warning
-org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
-org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=enabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=enabled
-org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=error
-org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
-org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
-org.eclipse.jdt.core.compiler.source=1.3
-org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_assignment=0
-org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
-org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80
-org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0
-org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
-org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
-org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
-org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16
-org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
-org.eclipse.jdt.core.formatter.blank_lines_after_package=1
-org.eclipse.jdt.core.formatter.blank_lines_before_field=0
-org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0
-org.eclipse.jdt.core.formatter.blank_lines_before_imports=1
-org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1
-org.eclipse.jdt.core.formatter.blank_lines_before_method=1
-org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1
-org.eclipse.jdt.core.formatter.blank_lines_before_package=0
-org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1
-org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1
-org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=false
-org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=false
-org.eclipse.jdt.core.formatter.comment.format_block_comments=false
-org.eclipse.jdt.core.formatter.comment.format_header=false
-org.eclipse.jdt.core.formatter.comment.format_html=true
-org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=false
-org.eclipse.jdt.core.formatter.comment.format_line_comments=false
-org.eclipse.jdt.core.formatter.comment.format_source_code=true
-org.eclipse.jdt.core.formatter.comment.indent_parameter_description=false
-org.eclipse.jdt.core.formatter.comment.indent_root_tags=false
-org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert
-org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=do not insert
-org.eclipse.jdt.core.formatter.comment.line_length=80
-org.eclipse.jdt.core.formatter.compact_else_if=true
-org.eclipse.jdt.core.formatter.continuation_indentation=2
-org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
-org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true
-org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true
-org.eclipse.jdt.core.formatter.indent_empty_lines=false
-org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true
-org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
-org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
-org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=true
-org.eclipse.jdt.core.formatter.indentation.size=4
-org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert
-org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert
-org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert
-org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert
-org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert
-org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false
-org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false
-org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false
-org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false
-org.eclipse.jdt.core.formatter.lineSplit=800
-org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
-org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false
-org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
-org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1
-org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=false
-org.eclipse.jdt.core.formatter.tabulation.char=tab
-org.eclipse.jdt.core.formatter.tabulation.size=4
-org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
-org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true
-org.eclipse.jdt.core.incompatibleJDKLevel=ignore
-org.eclipse.jdt.core.incompleteClasspath=error
diff --git a/bundles/org.eclipse.equinox.log.test/.settings/org.eclipse.jdt.launching.prefs b/bundles/org.eclipse.equinox.log.test/.settings/org.eclipse.jdt.launching.prefs
deleted file mode 100644
index d591829..0000000
--- a/bundles/org.eclipse.equinox.log.test/.settings/org.eclipse.jdt.launching.prefs
+++ /dev/null
@@ -1,3 +0,0 @@
-#Mon Mar 23 17:19:09 EDT 2009
-eclipse.preferences.version=1
-org.eclipse.jdt.launching.PREF_STRICTLY_COMPATIBLE_JRE_NOT_AVAILABLE=warning
diff --git a/bundles/org.eclipse.equinox.log.test/.settings/org.eclipse.jdt.ui.prefs b/bundles/org.eclipse.equinox.log.test/.settings/org.eclipse.jdt.ui.prefs
deleted file mode 100644
index 21bd9f3..0000000
--- a/bundles/org.eclipse.equinox.log.test/.settings/org.eclipse.jdt.ui.prefs
+++ /dev/null
@@ -1,57 +0,0 @@
-#Tue Aug 21 11:30:07 CDT 2007
-eclipse.preferences.version=1
-editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true
-formatter_profile=_core
-formatter_settings_version=11
-org.eclipse.jdt.ui.ignorelowercasenames=true
-org.eclipse.jdt.ui.importorder=;
-org.eclipse.jdt.ui.ondemandthreshold=3
-org.eclipse.jdt.ui.staticondemandthreshold=3
-sp_cleanup.add_default_serial_version_id=true
-sp_cleanup.add_generated_serial_version_id=false
-sp_cleanup.add_missing_annotations=true
-sp_cleanup.add_missing_deprecated_annotations=true
-sp_cleanup.add_missing_nls_tags=false
-sp_cleanup.add_missing_override_annotations=true
-sp_cleanup.add_serial_version_id=false
-sp_cleanup.always_use_blocks=true
-sp_cleanup.always_use_parentheses_in_expressions=false
-sp_cleanup.always_use_this_for_non_static_field_access=false
-sp_cleanup.always_use_this_for_non_static_method_access=false
-sp_cleanup.convert_to_enhanced_for_loop=false
-sp_cleanup.correct_indentation=false
-sp_cleanup.format_source_code=true
-sp_cleanup.make_local_variable_final=false
-sp_cleanup.make_parameters_final=false
-sp_cleanup.make_private_fields_final=true
-sp_cleanup.make_variable_declarations_final=true
-sp_cleanup.never_use_blocks=false
-sp_cleanup.never_use_parentheses_in_expressions=true
-sp_cleanup.on_save_use_additional_actions=false
-sp_cleanup.organize_imports=true
-sp_cleanup.qualify_static_field_accesses_with_declaring_class=false
-sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
-sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
-sp_cleanup.qualify_static_member_accesses_with_declaring_class=false
-sp_cleanup.qualify_static_method_accesses_with_declaring_class=false
-sp_cleanup.remove_private_constructors=true
-sp_cleanup.remove_trailing_whitespaces=false
-sp_cleanup.remove_trailing_whitespaces_all=true
-sp_cleanup.remove_trailing_whitespaces_ignore_empty=false
-sp_cleanup.remove_unnecessary_casts=true
-sp_cleanup.remove_unnecessary_nls_tags=false
-sp_cleanup.remove_unused_imports=false
-sp_cleanup.remove_unused_local_variables=false
-sp_cleanup.remove_unused_private_fields=true
-sp_cleanup.remove_unused_private_members=false
-sp_cleanup.remove_unused_private_methods=true
-sp_cleanup.remove_unused_private_types=true
-sp_cleanup.sort_members=false
-sp_cleanup.sort_members_all=false
-sp_cleanup.use_blocks=false
-sp_cleanup.use_blocks_only_for_return_and_throw=false
-sp_cleanup.use_parentheses_in_expressions=false
-sp_cleanup.use_this_for_non_static_field_access=false
-sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=true
-sp_cleanup.use_this_for_non_static_method_access=false
-sp_cleanup.use_this_for_non_static_method_access_only_if_necessary=true
diff --git a/bundles/org.eclipse.equinox.log.test/META-INF/MANIFEST.MF b/bundles/org.eclipse.equinox.log.test/META-INF/MANIFEST.MF
deleted file mode 100644
index d954a50..0000000
--- a/bundles/org.eclipse.equinox.log.test/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,14 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: Test Plug-in
-Bundle-SymbolicName: org.eclipse.equinox.log.test
-Bundle-Version: 1.0.0
-Bundle-Activator: org.eclipse.equinox.log.test.Activator
-Import-Package: junit.framework;version="[3.8.2,4.0.0)",
- org.osgi.framework;version="1.3.0",
- org.osgi.service.event;version="1.1.0",
- org.osgi.service.log,
- org.osgi.service.packageadmin;version="1.2.0"
-Eclipse-LazyStart: true
-Bundle-ActivationPolicy: lazy
-Require-Bundle: org.eclipse.equinox.log
diff --git a/bundles/org.eclipse.equinox.log.test/build.properties b/bundles/org.eclipse.equinox.log.test/build.properties
deleted file mode 100644
index 34d2e4d..0000000
--- a/bundles/org.eclipse.equinox.log.test/build.properties
+++ /dev/null
@@ -1,4 +0,0 @@
-source.. = src/
-output.. = bin/
-bin.includes = META-INF/,\
- .
diff --git a/bundles/org.eclipse.equinox.log.test/src/org/eclipse/equinox/log/test/Activator.java b/bundles/org.eclipse.equinox.log.test/src/org/eclipse/equinox/log/test/Activator.java
deleted file mode 100644
index 0873d5a..0000000
--- a/bundles/org.eclipse.equinox.log.test/src/org/eclipse/equinox/log/test/Activator.java
+++ /dev/null
@@ -1,66 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007, 2009 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
- *******************************************************************************/
-package org.eclipse.equinox.log.test;
-
-import org.osgi.framework.*;
-import org.osgi.service.packageadmin.PackageAdmin;
-
-public class Activator implements BundleActivator {
-
- private static PackageAdmin packageAdmin;
- private static BundleContext bundleContext;
- private ServiceReference packageAdminRef;
-
- public void start(BundleContext context) throws Exception {
- packageAdminRef = context.getServiceReference(PackageAdmin.class.getName());
- setPackageAdmin((PackageAdmin) context.getService(packageAdminRef));
- setBundleContext(context);
- }
-
- public void stop(BundleContext context) throws Exception {
- setBundleContext(null);
- setPackageAdmin(null);
- context.ungetService(packageAdminRef);
- }
-
- private static synchronized void setBundleContext(BundleContext context) {
- bundleContext = context;
- }
-
- private static synchronized void setPackageAdmin(PackageAdmin service) {
- packageAdmin = service;
- }
-
- static synchronized BundleContext getBundleContext() {
- return bundleContext;
- }
-
- static synchronized Bundle getBundle(String symbolicName) {
- if (packageAdmin == null)
- return null;
-
- Bundle[] bundles = packageAdmin.getBundles(symbolicName, null);
- if (bundles == null)
- return null;
- //Return the first bundle that is not installed or uninstalled
- for (int i = 0; i < bundles.length; i++) {
- if ((bundles[i].getState() & (Bundle.INSTALLED | Bundle.UNINSTALLED)) == 0) {
- return bundles[i];
- }
- }
- return null;
- }
-
- static synchronized void refreshPackages() {
- if (packageAdmin == null)
- throw new IllegalStateException("PackageAdmin not registered"); //$NON-NLS-1$
-
- packageAdmin.refreshPackages(null);
- }
-}
diff --git a/bundles/org.eclipse.equinox.log.test/src/org/eclipse/equinox/log/test/AllExtendedLogServiceTests.java b/bundles/org.eclipse.equinox.log.test/src/org/eclipse/equinox/log/test/AllExtendedLogServiceTests.java
deleted file mode 100644
index 7ea5c07..0000000
--- a/bundles/org.eclipse.equinox.log.test/src/org/eclipse/equinox/log/test/AllExtendedLogServiceTests.java
+++ /dev/null
@@ -1,13 +0,0 @@
-package org.eclipse.equinox.log.test;
-
-import junit.framework.Test;
-import junit.framework.TestSuite;
-
-public class AllExtendedLogServiceTests {
- public static Test suite() {
- TestSuite suite = new TestSuite("Test extended log service"); //$NON-NLS-1$
- suite.addTestSuite(ExtendedLogServiceTest.class);
- suite.addTestSuite(ExtendedLogReaderServiceTest.class);
- return suite;
- }
-}
diff --git a/bundles/org.eclipse.equinox.log.test/src/org/eclipse/equinox/log/test/AllLogServiceTests.java b/bundles/org.eclipse.equinox.log.test/src/org/eclipse/equinox/log/test/AllLogServiceTests.java
deleted file mode 100644
index 2290d46..0000000
--- a/bundles/org.eclipse.equinox.log.test/src/org/eclipse/equinox/log/test/AllLogServiceTests.java
+++ /dev/null
@@ -1,13 +0,0 @@
-package org.eclipse.equinox.log.test;
-
-import junit.framework.Test;
-import junit.framework.TestSuite;
-
-public class AllLogServiceTests {
- public static Test suite() {
- TestSuite suite = new TestSuite("Test log service"); //$NON-NLS-1$
- suite.addTestSuite(LogServiceTest.class);
- suite.addTestSuite(LogReaderServiceTest.class);
- return suite;
- }
-}
diff --git a/bundles/org.eclipse.equinox.log.test/src/org/eclipse/equinox/log/test/AllTests.java b/bundles/org.eclipse.equinox.log.test/src/org/eclipse/equinox/log/test/AllTests.java
deleted file mode 100644
index 328e776..0000000
--- a/bundles/org.eclipse.equinox.log.test/src/org/eclipse/equinox/log/test/AllTests.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007 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
- *******************************************************************************/
-package org.eclipse.equinox.log.test;
-
-import junit.framework.Test;
-import junit.framework.TestSuite;
-
-public class AllTests {
-
- public static Test suite() {
- TestSuite suite = new TestSuite("Test for org.eclipse.equinox.log.test"); //$NON-NLS-1$
- suite.addTest(AllLogServiceTests.suite());
- suite.addTest(AllExtendedLogServiceTests.suite());
- return suite;
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.log.test/src/org/eclipse/equinox/log/test/ExtendedLogReaderServiceTest.java b/bundles/org.eclipse.equinox.log.test/src/org/eclipse/equinox/log/test/ExtendedLogReaderServiceTest.java
deleted file mode 100644
index b141a1f..0000000
--- a/bundles/org.eclipse.equinox.log.test/src/org/eclipse/equinox/log/test/ExtendedLogReaderServiceTest.java
+++ /dev/null
@@ -1,155 +0,0 @@
-package org.eclipse.equinox.log.test;
-
-import java.io.*;
-import junit.framework.TestCase;
-import org.eclipse.equinox.log.*;
-import org.eclipse.equinox.log.internal.ExtendedLogReaderServiceFactory;
-import org.osgi.framework.Bundle;
-import org.osgi.framework.ServiceReference;
-import org.osgi.service.log.*;
-
-public class ExtendedLogReaderServiceTest extends TestCase {
-
- private ExtendedLogService log;
- private ServiceReference logReference;
- private ExtendedLogReaderService reader;
- private ServiceReference readerReference;
- private boolean called;
-
- public ExtendedLogReaderServiceTest(String name) {
- super(name);
- }
-
- protected void setUp() throws Exception {
- Activator.getBundle("org.eclipse.equinox.log").start();
- logReference = Activator.getBundleContext().getServiceReference(ExtendedLogService.class.getName());
- readerReference = Activator.getBundleContext().getServiceReference(ExtendedLogReaderService.class.getName());
-
- log = (ExtendedLogService) Activator.getBundleContext().getService(logReference);
- reader = (ExtendedLogReaderService) Activator.getBundleContext().getService(readerReference);
- }
-
- protected void tearDown() throws Exception {
- Activator.getBundleContext().ungetService(logReference);
- Activator.getBundleContext().ungetService(readerReference);
- Activator.getBundle("org.eclipse.equinox.log").stop();
- }
-
- public void testaddFilteredListener() throws Exception {
- TestListener listener = new TestListener();
- reader.addLogListener(listener, new LogFilter() {
- public boolean isLoggable(Bundle b, String loggerName, int logLevel) {
- return true;
- }
- });
- synchronized (listener) {
- log.log(LogService.LOG_INFO, "info");
- listener.wait();
- }
- assertTrue(listener.getEntry().getLevel() == LogService.LOG_INFO);
- }
-
- public void testaddNullFilterr() throws Exception {
- TestListener listener = new TestListener();
-
- try {
- reader.addLogListener(listener, null);
- } catch (IllegalArgumentException e) {
- return;
- }
- fail();
- }
-
- public void testaddFilteredListenerTwice() throws Exception {
- TestListener listener = new TestListener();
- reader.addLogListener(listener, new LogFilter() {
- public boolean isLoggable(Bundle b, String loggerName, int logLevel) {
- return false;
- }
- });
-
- if (log.isLoggable(LogService.LOG_INFO))
- fail();
-
- reader.addLogListener(listener, new LogFilter() {
- public boolean isLoggable(Bundle b, String loggerName, int logLevel) {
- return true;
- }
- });
- synchronized (listener) {
- log.log(LogService.LOG_INFO, "info");
- listener.wait();
- }
- assertTrue(listener.getEntry().getLevel() == LogService.LOG_INFO);
- }
-
- public void testaddNullListener() throws Exception {
- try {
- reader.addLogListener(null);
- } catch (IllegalArgumentException t) {
- return;
- }
- fail();
- }
-
- public void testBadFilter() throws Exception {
- TestListener listener = new TestListener();
- reader.addLogListener(listener, new LogFilter() {
- public boolean isLoggable(Bundle b, String loggerName, int logLevel) {
- throw new RuntimeException("Expected error for testBadFilter.");
- }
- });
- ExtendedLogReaderServiceFactory.setErrorStream(new PrintStream(new OutputStream() {
- public void write(int arg0) throws IOException {
-
- }
- }));
-
- if (log.isLoggable(LogService.LOG_INFO))
- fail();
- }
-
- public void testSynchronousLogListener() throws Exception {
- final Thread loggerThread = Thread.currentThread();
- called = false;
- LogListener listener = new SynchronousLogListener() {
- public void logged(LogEntry entry) {
- assertTrue(Thread.currentThread() == loggerThread);
- called = true;
- }
- };
- reader.addLogListener(listener);
- log.log(LogService.LOG_INFO, "info");
- assertTrue(called);
- }
-
- public void testExtendedLogEntry() throws Exception {
- TestListener listener = new TestListener();
- reader.addLogListener(listener);
- long timeBeforeLog = System.currentTimeMillis();
- String threadName = Thread.currentThread().getName();
- long threadId = Thread.currentThread().getId();
- synchronized (listener) {
- log.getLogger("test").log(logReference, LogService.LOG_INFO, "info", new Throwable("test"));
- listener.wait();
- }
- long sequenceNumberBefore = listener.getEntryX().getSequenceNumber();
-
- synchronized (listener) {
- log.getLogger("test").log(logReference, LogService.LOG_INFO, "info", new Throwable("test"));
- listener.wait();
- }
- assertTrue(listener.getEntryX().getBundle() == Activator.getBundleContext().getBundle());
- assertTrue(listener.getEntryX().getMessage().equals("info"));
- assertTrue(listener.getEntryX().getException().getMessage().equals("test"));
- assertTrue(listener.getEntryX().getServiceReference() == logReference);
- assertTrue(listener.getEntryX().getTime() >= timeBeforeLog);
- assertTrue(listener.getEntryX().getLevel() == LogService.LOG_INFO);
-
- assertTrue(listener.getEntryX().getLoggerName().equals("test"));
- assertTrue(listener.getEntryX().getThreadName().equals(threadName));
- assertTrue(listener.getEntryX().getThreadId() == threadId);
- assertTrue(listener.getEntryX().getContext() == logReference);
- assertTrue(listener.getEntryX().getSequenceNumber() > sequenceNumberBefore);
- }
-}
diff --git a/bundles/org.eclipse.equinox.log.test/src/org/eclipse/equinox/log/test/ExtendedLogServiceTest.java b/bundles/org.eclipse.equinox.log.test/src/org/eclipse/equinox/log/test/ExtendedLogServiceTest.java
deleted file mode 100644
index 484ad7f..0000000
--- a/bundles/org.eclipse.equinox.log.test/src/org/eclipse/equinox/log/test/ExtendedLogServiceTest.java
+++ /dev/null
@@ -1,195 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007, 2009 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
- *******************************************************************************/
-package org.eclipse.equinox.log.test;
-
-import junit.framework.TestCase;
-
-import org.eclipse.equinox.log.ExtendedLogReaderService;
-import org.eclipse.equinox.log.ExtendedLogService;
-import org.eclipse.equinox.log.LogFilter;
-import org.osgi.framework.Bundle;
-import org.osgi.framework.ServiceReference;
-import org.osgi.service.log.LogService;
-
-public class ExtendedLogServiceTest extends TestCase {
-
- private Bundle bundle;
- private Bundle logBundle;
- private ExtendedLogService log;
- private ServiceReference logReference;
- private ExtendedLogReaderService reader;
- private ServiceReference readerReference;
- private TestListener listener;
-
- public ExtendedLogServiceTest(String name) {
- super(name);
- }
-
- protected void setUp() throws Exception {
- bundle = Activator.getBundleContext().getBundle();
- logBundle = Activator.getBundle("org.eclipse.equinox.log");
- logBundle.start();
- logReference = Activator.getBundleContext().getServiceReference(ExtendedLogService.class.getName());
- readerReference = Activator.getBundleContext().getServiceReference(ExtendedLogReaderService.class.getName());
-
- log = (ExtendedLogService) Activator.getBundleContext().getService(logReference);
- reader = (ExtendedLogReaderService) Activator.getBundleContext().getService(readerReference);
-
- listener = new TestListener();
- reader.addLogListener(listener);
- }
-
- protected void tearDown() throws Exception {
- reader.removeLogListener(listener);
- Activator.getBundleContext().ungetService(logReference);
- Activator.getBundleContext().ungetService(readerReference);
- logBundle.stop();
- }
-
- public void testLogContext() throws Exception {
- synchronized (listener) {
- log.log(this, LogService.LOG_INFO, null);
- listener.wait();
- }
- assertTrue(listener.getEntryX().getContext() == this);
- }
-
- public void testNullLogContext() throws Exception {
- synchronized (listener) {
- log.log(null, LogService.LOG_INFO, null);
- listener.wait();
- }
- assertTrue(listener.getEntryX().getContext() == null);
- }
-
- public void testLogContextWithNullThrowable() throws Exception {
- synchronized (listener) {
- log.log(this, LogService.LOG_INFO, null, null);
- listener.wait();
- }
- assertTrue(listener.getEntryX().getContext() == this);
- }
-
- public void testIsLoggableTrue() throws Exception {
- if (!log.isLoggable(LogService.LOG_INFO))
- fail();
- }
-
- public void testNotIsLoggableWithNoListener() throws Exception {
- reader.removeLogListener(listener);
- if (log.isLoggable(LogService.LOG_INFO))
- fail();
- }
-
- public void testNotIsLoggableWithListener() throws Exception {
- reader.addLogListener(listener, new LogFilter() {
-
- public boolean isLoggable(Bundle b, String loggerName, int logLevel) {
- return false;
- }
- });
- if (log.isLoggable(LogService.LOG_INFO))
- fail();
- }
-
- public void testNamedLoggerLogNull() throws Exception {
- synchronized (listener) {
- log.getLogger("test").log(null, 0, null, null);
- listener.wait();
- }
- assertTrue(listener.getEntryX().getLoggerName() == "test");
- assertTrue(listener.getEntry().getLevel() == 0);
- assertTrue(listener.getEntry().getMessage() == null);
- assertTrue(listener.getEntry().getException() == null);
- assertTrue(listener.getEntry().getServiceReference() == null);
- }
-
- public void testNullLoggerLogNull() throws Exception {
- synchronized (listener) {
- log.getLogger(null).log(null, 0, null, null);
- listener.wait();
- }
- assertTrue(listener.getEntryX().getLoggerName() == null);
- assertTrue(listener.getEntry().getLevel() == 0);
- assertTrue(listener.getEntry().getMessage() == null);
- assertTrue(listener.getEntry().getException() == null);
- assertTrue(listener.getEntry().getServiceReference() == null);
- }
-
- public void testNamedLoggerLogFull() throws Exception {
- String message = "test";
- Throwable t = new Throwable("test");
- synchronized (listener) {
- log.getLogger("test").log(logReference, LogService.LOG_INFO, message, t);
- listener.wait();
- }
- assertTrue(listener.getEntryX().getLoggerName() == "test");
- assertTrue(listener.getEntry().getBundle() == bundle);
- assertTrue(listener.getEntry().getLevel() == LogService.LOG_INFO);
- assertTrue(listener.getEntry().getMessage().equals(message));
- assertTrue(listener.getEntry().getException().getMessage().equals(t.getMessage()));
- assertTrue(listener.getEntry().getServiceReference() == logReference);
- }
-
- public void testNamedLoggerLogFullWithNullBundle() throws Exception {
- String message = "test";
- Throwable t = new Throwable("test");
- synchronized (listener) {
- log.getLogger(null, "test").log(logReference, LogService.LOG_INFO, message, t);
- listener.wait();
- }
- assertTrue(listener.getEntryX().getLoggerName() == "test");
- assertTrue(listener.getEntry().getBundle() == bundle);
- assertTrue(listener.getEntry().getLevel() == LogService.LOG_INFO);
- assertTrue(listener.getEntry().getMessage().equals(message));
- assertTrue(listener.getEntry().getException().getMessage().equals(t.getMessage()));
- assertTrue(listener.getEntry().getServiceReference() == logReference);
- }
-
- public void testNamedLoggerLogFullWithBundle() throws Exception {
- String message = "test";
- Throwable t = new Throwable("test");
- synchronized (listener) {
- log.getLogger(bundle, "test").log(logReference, LogService.LOG_INFO, message, t);
- listener.wait();
- }
- assertTrue(listener.getEntryX().getLoggerName() == "test");
- assertTrue(listener.getEntry().getBundle() == bundle);
- assertTrue(listener.getEntry().getLevel() == LogService.LOG_INFO);
- assertTrue(listener.getEntry().getMessage().equals(message));
- assertTrue(listener.getEntry().getException().getMessage().equals(t.getMessage()));
- assertTrue(listener.getEntry().getServiceReference() == logReference);
- }
-
- public void testLoggerIsLoggableTrue() throws Exception {
- reader.addLogListener(listener, new LogFilter() {
-
- public boolean isLoggable(Bundle b, String loggerName, int logLevel) {
- if (loggerName.equals("test"))
- return true;
- return false;
- }
- });
- if (!log.getLogger("test").isLoggable(LogService.LOG_INFO))
- fail();
- }
-
- public void testLoggerNotIsLoggableWithListener() throws Exception {
- reader.addLogListener(listener, new LogFilter() {
-
- public boolean isLoggable(Bundle b, String loggerName, int logLevel) {
- if (loggerName.equals("test"))
- return false;
- return true;
- }
- });
- if (log.getLogger("test").isLoggable(LogService.LOG_INFO))
- fail();
- }
-}
diff --git a/bundles/org.eclipse.equinox.log.test/src/org/eclipse/equinox/log/test/LogReaderServiceTest.java b/bundles/org.eclipse.equinox.log.test/src/org/eclipse/equinox/log/test/LogReaderServiceTest.java
deleted file mode 100644
index 1955e3f..0000000
--- a/bundles/org.eclipse.equinox.log.test/src/org/eclipse/equinox/log/test/LogReaderServiceTest.java
+++ /dev/null
@@ -1,160 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007, 2009 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
- *******************************************************************************/
-package org.eclipse.equinox.log.test;
-
-import java.io.*;
-import java.util.Hashtable;
-import junit.framework.TestCase;
-import org.eclipse.equinox.log.internal.ExtendedLogReaderServiceFactory;
-import org.osgi.framework.*;
-import org.osgi.service.log.*;
-
-public class LogReaderServiceTest extends TestCase {
-
- private LogService log;
- private ServiceReference logReference;
- private LogReaderService reader;
- private ServiceReference readerReference;
-
- public LogReaderServiceTest(String name) {
- super(name);
- }
-
- protected void setUp() throws Exception {
- Activator.getBundle("org.eclipse.equinox.log").start(); //$NON-NLS-1$
- logReference = Activator.getBundleContext().getServiceReference(LogService.class.getName());
- readerReference = Activator.getBundleContext().getServiceReference(LogReaderService.class.getName());
-
- log = (LogService) Activator.getBundleContext().getService(logReference);
- reader = (LogReaderService) Activator.getBundleContext().getService(readerReference);
- }
-
- protected void tearDown() throws Exception {
- Activator.getBundleContext().ungetService(logReference);
- Activator.getBundleContext().ungetService(readerReference);
- Activator.getBundle("org.eclipse.equinox.log").stop(); //$NON-NLS-1$
- }
-
- public void testaddListener() throws Exception {
- TestListener listener = new TestListener();
- reader.addLogListener(listener);
- synchronized (listener) {
- log.log(LogService.LOG_INFO, "info"); //$NON-NLS-1$
- listener.wait();
- }
- assertTrue(listener.getEntry().getLevel() == LogService.LOG_INFO);
- }
-
- public void testaddListenerTwice() throws Exception {
- TestListener listener = new TestListener();
- reader.addLogListener(listener);
- reader.addLogListener(listener);
- synchronized (listener) {
- log.log(LogService.LOG_INFO, "info"); //$NON-NLS-1$
- listener.wait();
- }
- assertTrue(listener.getEntry().getLevel() == LogService.LOG_INFO);
- }
-
- public void testaddNullListener() throws Exception {
- try {
- reader.addLogListener(null);
- } catch (IllegalArgumentException t) {
- return;
- }
- fail();
- }
-
- public void testBadListener() throws Exception {
- LogListener listener = new LogListener() {
- public synchronized void logged(LogEntry entry) {
- notifyAll();
- throw new RuntimeException("Expected error for testBadListener."); //$NON-NLS-1$
- }
- };
- reader.addLogListener(listener);
-
- ExtendedLogReaderServiceFactory.setErrorStream(new PrintStream(new OutputStream() {
- public void write(int arg0) throws IOException {
-
- }
- }));
-
- synchronized (listener) {
- log.log(LogService.LOG_INFO, "info"); //$NON-NLS-1$
- listener.wait();
- }
- }
-
- public void testLogEntry() throws Exception {
- TestListener listener = new TestListener();
- reader.addLogListener(listener);
- long timeBeforeLog = System.currentTimeMillis();
- synchronized (listener) {
- log.log(logReference, LogService.LOG_INFO, "info", new Throwable("test")); //$NON-NLS-1$ //$NON-NLS-2$
- listener.wait();
- }
- assertTrue(listener.getEntry().getBundle() == Activator.getBundleContext().getBundle());
- assertTrue(listener.getEntry().getMessage().equals("info")); //$NON-NLS-1$
- assertTrue(listener.getEntry().getException().getMessage().equals("test")); //$NON-NLS-1$
- assertTrue(listener.getEntry().getServiceReference() == logReference);
- assertTrue(listener.getEntry().getTime() >= timeBeforeLog);
- assertTrue(listener.getEntry().getLevel() == LogService.LOG_INFO);
- }
-
- public void testLogBundleEventInfo() throws Exception {
-
- // this is just a bundle that is harmless to start/stop
- Bundle servicesBundle = Activator.getBundle("org.eclipse.osgi.services"); //$NON-NLS-1$
- if (servicesBundle == null)
- return; // ignore
-
- servicesBundle.stop();
-
- TestListener listener = new TestListener();
- reader.addLogListener(listener);
- synchronized (listener) {
- servicesBundle.start();
- listener.wait();
- }
- assertTrue(listener.getEntry().getLevel() == LogService.LOG_INFO);
- }
-
- public void testLogServiceEventInfo() throws Exception {
- TestListener listener = new TestListener();
- reader.addLogListener(listener);
- synchronized (listener) {
- Activator.getBundleContext().registerService(Object.class.getName(), new Object(), null);
- listener.wait();
- }
- assertTrue(listener.getEntry().getLevel() == LogService.LOG_INFO);
- }
-
- public void testLogServiceEventDebug() throws Exception {
- ServiceRegistration registration = Activator.getBundleContext().registerService(Object.class.getName(), new Object(), null);
-
- TestListener listener = new TestListener();
- reader.addLogListener(listener);
- synchronized (listener) {
- registration.setProperties(new Hashtable());
- listener.wait();
- }
- assertTrue(listener.getEntry().getLevel() == LogService.LOG_DEBUG);
- }
-
- public void testLogFrameworkEvent() throws Exception {
- TestListener listener = new TestListener();
- reader.addLogListener(listener);
- synchronized (listener) {
- Activator.refreshPackages();
- listener.wait();
- }
- assertTrue(listener.getEntry().getLevel() == LogService.LOG_INFO);
- }
-}
diff --git a/bundles/org.eclipse.equinox.log.test/src/org/eclipse/equinox/log/test/LogServiceTest.java b/bundles/org.eclipse.equinox.log.test/src/org/eclipse/equinox/log/test/LogServiceTest.java
deleted file mode 100644
index 5c7371d..0000000
--- a/bundles/org.eclipse.equinox.log.test/src/org/eclipse/equinox/log/test/LogServiceTest.java
+++ /dev/null
@@ -1,245 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007, 2009 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
- *******************************************************************************/
-package org.eclipse.equinox.log.test;
-
-import junit.framework.TestCase;
-import org.osgi.framework.ServiceReference;
-import org.osgi.service.log.LogReaderService;
-import org.osgi.service.log.LogService;
-
-public class LogServiceTest extends TestCase {
-
- private LogService log;
- private ServiceReference logReference;
- private LogReaderService reader;
- private ServiceReference readerReference;
- private TestListener listener;
-
- public LogServiceTest(String name) {
- super(name);
- }
-
- protected void setUp() throws Exception {
- Activator.getBundle("org.eclipse.equinox.log").start(); //$NON-NLS-1$
- logReference = Activator.getBundleContext().getServiceReference(LogService.class.getName());
- readerReference = Activator.getBundleContext().getServiceReference(LogReaderService.class.getName());
-
- log = (LogService) Activator.getBundleContext().getService(logReference);
- reader = (LogReaderService) Activator.getBundleContext().getService(readerReference);
-
- listener = new TestListener();
- reader.addLogListener(listener);
- }
-
- protected void tearDown() throws Exception {
- reader.removeLogListener(listener);
- Activator.getBundleContext().ungetService(logReference);
- Activator.getBundleContext().ungetService(readerReference);
- Activator.getBundle("org.eclipse.equinox.log").stop(); //$NON-NLS-1$
- }
-
- public void testLogDebug() throws Exception {
- synchronized (listener) {
- log.log(LogService.LOG_DEBUG, "debug"); //$NON-NLS-1$
- listener.wait();
- }
- assertTrue(listener.getEntry().getLevel() == LogService.LOG_DEBUG);
- }
-
- public void testLogError() throws Exception {
- synchronized (listener) {
- log.log(LogService.LOG_ERROR, "error"); //$NON-NLS-1$
- listener.wait();
- }
- assertTrue(listener.getEntry().getLevel() == LogService.LOG_ERROR);
- }
-
- public void testLogInfo() throws Exception {
- synchronized (listener) {
- log.log(LogService.LOG_INFO, "info"); //$NON-NLS-1$
- listener.wait();
- }
- assertTrue(listener.getEntry().getLevel() == LogService.LOG_INFO);
- }
-
- public void testLogWarning() throws Exception {
- synchronized (listener) {
- log.log(LogService.LOG_WARNING, "warning"); //$NON-NLS-1$
- listener.wait();
- }
- assertTrue(listener.getEntry().getLevel() == LogService.LOG_WARNING);
- }
-
- public void testLogZeroLevel() throws Exception {
- synchronized (listener) {
- log.log(0, "zero"); //$NON-NLS-1$
- listener.wait();
- }
- assertTrue(listener.getEntry().getLevel() == 0);
- }
-
- public void testLogNegativeLevel() throws Exception {
- synchronized (listener) {
- log.log(-1, "negative"); //$NON-NLS-1$
- listener.wait();
- }
- assertTrue(listener.getEntry().getLevel() == -1);
- }
-
- public void testLogMessage() throws Exception {
- synchronized (listener) {
- log.log(LogService.LOG_INFO, "message"); //$NON-NLS-1$
- listener.wait();
- }
- assertTrue(listener.getEntry().getMessage().equals("message")); //$NON-NLS-1$
- }
-
- public void testLogNullMessage() throws Exception {
- synchronized (listener) {
- log.log(LogService.LOG_INFO, null);
- listener.wait();
- }
- assertTrue(listener.getEntry().getMessage() == null);
- }
-
- public void testLogThrowable() throws Exception {
- Throwable t = new Throwable("throwable"); //$NON-NLS-1$
- synchronized (listener) {
- log.log(LogService.LOG_INFO, null, t);
- listener.wait();
- }
- assertTrue(listener.getEntry().getException().getMessage().equals(t.getMessage()));
- }
-
- public void testLogNullThrowable() throws Exception {
- synchronized (listener) {
- log.log(LogService.LOG_INFO, null, null);
- listener.wait();
- }
- assertTrue(listener.getEntry().getException() == null);
- }
-
- public void testLogServiceReference() throws Exception {
- synchronized (listener) {
- log.log(logReference, LogService.LOG_INFO, null);
- listener.wait();
- }
- assertTrue(listener.getEntry().getServiceReference().equals(logReference));
- }
-
- public void testNullLogServiceReference() throws Exception {
- synchronized (listener) {
- log.log(null, LogService.LOG_INFO, null);
- listener.wait();
- }
- assertTrue(listener.getEntry().getServiceReference() == null);
- }
-
- public void testLogServiceReferenceWithNullThrowable() throws Exception {
- synchronized (listener) {
- log.log(logReference, LogService.LOG_INFO, null, null);
- listener.wait();
- }
- assertTrue(listener.getEntry().getServiceReference().equals(logReference));
- }
-
- public void testLogNull1() throws Exception {
- synchronized (listener) {
- log.log(0, null);
- listener.wait();
- }
- assertTrue(listener.getEntry().getLevel() == 0);
- assertTrue(listener.getEntry().getMessage() == null);
- assertTrue(listener.getEntry().getException() == null);
- assertTrue(listener.getEntry().getServiceReference() == null);
- }
-
- public void testLogNull2() throws Exception {
- synchronized (listener) {
- log.log(0, null, null);
- listener.wait();
- }
- assertTrue(listener.getEntry().getLevel() == 0);
- assertTrue(listener.getEntry().getMessage() == null);
- assertTrue(listener.getEntry().getException() == null);
- assertTrue(listener.getEntry().getServiceReference() == null);
- }
-
- public void testLogNull3() throws Exception {
- synchronized (listener) {
- log.log(null, 0, null);
- listener.wait();
- }
- assertTrue(listener.getEntry().getLevel() == 0);
- assertTrue(listener.getEntry().getMessage() == null);
- assertTrue(listener.getEntry().getException() == null);
- assertTrue(listener.getEntry().getServiceReference() == null);
- }
-
- public void testLogNull4() throws Exception {
- synchronized (listener) {
- log.log(null, 0, null, null);
- listener.wait();
- }
- assertTrue(listener.getEntry().getLevel() == 0);
- assertTrue(listener.getEntry().getMessage() == null);
- assertTrue(listener.getEntry().getException() == null);
- assertTrue(listener.getEntry().getServiceReference() == null);
- }
-
- public void testLogFull1() throws Exception {
- String message = "test"; //$NON-NLS-1$
- synchronized (listener) {
- log.log(LogService.LOG_INFO, message);
- listener.wait();
- }
- assertTrue(listener.getEntry().getLevel() == LogService.LOG_INFO);
- assertTrue(listener.getEntry().getMessage().equals(message));
- assertTrue(listener.getEntry().getException() == null);
- assertTrue(listener.getEntry().getServiceReference() == null);
- }
-
- public void testLogFull2() throws Exception {
- String message = "test"; //$NON-NLS-1$
- Throwable t = new Throwable("test"); //$NON-NLS-1$
- synchronized (listener) {
- log.log(LogService.LOG_INFO, message, t);
- listener.wait();
- }
- assertTrue(listener.getEntry().getLevel() == LogService.LOG_INFO);
- assertTrue(listener.getEntry().getMessage().equals(message));
- assertTrue(listener.getEntry().getException().getMessage().equals(t.getMessage()));
- assertTrue(listener.getEntry().getServiceReference() == null);
- }
-
- public void testLogFull3() throws Exception {
- String message = "test"; //$NON-NLS-1$
- synchronized (listener) {
- log.log(logReference, LogService.LOG_INFO, message);
- listener.wait();
- }
- assertTrue(listener.getEntry().getLevel() == LogService.LOG_INFO);
- assertTrue(listener.getEntry().getMessage().equals(message));
- assertTrue(listener.getEntry().getException() == null);
- assertTrue(listener.getEntry().getServiceReference() == logReference);
- }
-
- public void testLogFull4() throws Exception {
- String message = "test"; //$NON-NLS-1$
- Throwable t = new Throwable("test"); //$NON-NLS-1$
- synchronized (listener) {
- log.log(logReference, LogService.LOG_INFO, message, t);
- listener.wait();
- }
- assertTrue(listener.getEntry().getLevel() == LogService.LOG_INFO);
- assertTrue(listener.getEntry().getMessage().equals(message));
- assertTrue(listener.getEntry().getException().getMessage().equals(t.getMessage()));
- assertTrue(listener.getEntry().getServiceReference() == logReference);
- }
-}
diff --git a/bundles/org.eclipse.equinox.log.test/src/org/eclipse/equinox/log/test/TestListener.java b/bundles/org.eclipse.equinox.log.test/src/org/eclipse/equinox/log/test/TestListener.java
deleted file mode 100644
index 8e3ec71..0000000
--- a/bundles/org.eclipse.equinox.log.test/src/org/eclipse/equinox/log/test/TestListener.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007, 2009 IBM Corporation 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
- *******************************************************************************/
-package org.eclipse.equinox.log.test;
-
-import org.eclipse.equinox.log.ExtendedLogEntry;
-import org.osgi.framework.Bundle;
-import org.osgi.service.log.LogEntry;
-import org.osgi.service.log.LogListener;
-
-class TestListener implements LogListener {
- LogEntry entry;
- final Bundle logImpl = Activator.getBundle("org.eclipse.equinox.log");
-
- public synchronized void logged(LogEntry entry) {
- if (entry.getBundle() == logImpl)
- return; // discard logs from the logImpl
- this.entry = entry;
- notifyAll();
- }
-
- public synchronized LogEntry getEntry() {
- return entry;
- }
-
- public synchronized ExtendedLogEntry getEntryX() {
- return (ExtendedLogEntry) entry;
- }
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.equinox.weaving.aspectj/.classpath b/bundles/org.eclipse.equinox.weaving.aspectj/.classpath
deleted file mode 100644
index a38af92..0000000
--- a/bundles/org.eclipse.equinox.weaving.aspectj/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
- <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 excluding="org/eclipse/osgi/aspectj/weavingService/WeavingServiceFactory.java" kind="src" path="src"/>
- <classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/bundles/org.eclipse.equinox.weaving.aspectj/.cvsignore b/bundles/org.eclipse.equinox.weaving.aspectj/.cvsignore
deleted file mode 100644
index ba077a4..0000000
--- a/bundles/org.eclipse.equinox.weaving.aspectj/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-bin
diff --git a/bundles/org.eclipse.equinox.weaving.aspectj/.options b/bundles/org.eclipse.equinox.weaving.aspectj/.options
deleted file mode 100644
index a4c746e..0000000
--- a/bundles/org.eclipse.equinox.weaving.aspectj/.options
+++ /dev/null
@@ -1 +0,0 @@
-org.aspectj.osgi.service.weaving/debug=false
diff --git a/bundles/org.eclipse.equinox.weaving.aspectj/.project b/bundles/org.eclipse.equinox.weaving.aspectj/.project
deleted file mode 100644
index 3ddde52..0000000
--- a/bundles/org.eclipse.equinox.weaving.aspectj/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.equinox.weaving.aspectj</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/bundles/org.eclipse.equinox.weaving.aspectj/.settings/org.eclipse.core.resources.prefs b/bundles/org.eclipse.equinox.weaving.aspectj/.settings/org.eclipse.core.resources.prefs
deleted file mode 100644
index 074ef50..0000000
--- a/bundles/org.eclipse.equinox.weaving.aspectj/.settings/org.eclipse.core.resources.prefs
+++ /dev/null
@@ -1,3 +0,0 @@
-#Mon Aug 04 14:34:18 CEST 2008
-eclipse.preferences.version=1
-encoding/<project>=UTF-8
diff --git a/bundles/org.eclipse.equinox.weaving.aspectj/.settings/org.eclipse.jdt.core.prefs b/bundles/org.eclipse.equinox.weaving.aspectj/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index 9d6dac1..0000000
--- a/bundles/org.eclipse.equinox.weaving.aspectj/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,339 +0,0 @@
-#Tue Nov 11 23:48:19 CET 2008
-eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=1.5
-org.eclipse.jdt.core.compiler.debug.lineNumber=generate
-org.eclipse.jdt.core.compiler.debug.localVariable=generate
-org.eclipse.jdt.core.compiler.debug.sourceFile=generate
-org.eclipse.jdt.core.compiler.doc.comment.support=enabled
-org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.autoboxing=ignore
-org.eclipse.jdt.core.compiler.problem.deprecation=warning
-org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
-org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
-org.eclipse.jdt.core.compiler.problem.discouragedReference=warning
-org.eclipse.jdt.core.compiler.problem.emptyStatement=ignore
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.problem.fallthroughCase=warning
-org.eclipse.jdt.core.compiler.problem.fatalOptionalError=enabled
-org.eclipse.jdt.core.compiler.problem.fieldHiding=ignore
-org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning
-org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning
-org.eclipse.jdt.core.compiler.problem.forbiddenReference=error
-org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
-org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
-org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=warning
-org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=warning
-org.eclipse.jdt.core.compiler.problem.invalidJavadoc=warning
-org.eclipse.jdt.core.compiler.problem.invalidJavadocTags=enabled
-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsDeprecatedRef=enabled
-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsNotVisibleRef=enabled
-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsVisibility=protected
-org.eclipse.jdt.core.compiler.problem.localVariableHiding=ignore
-org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning
-org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=warning
-org.eclipse.jdt.core.compiler.problem.missingJavadocComments=warning
-org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsOverriding=enabled
-org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsVisibility=protected
-org.eclipse.jdt.core.compiler.problem.missingJavadocTagDescription=all_standard_tags
-org.eclipse.jdt.core.compiler.problem.missingJavadocTags=warning
-org.eclipse.jdt.core.compiler.problem.missingJavadocTagsOverriding=disabled
-org.eclipse.jdt.core.compiler.problem.missingJavadocTagsVisibility=protected
-org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=warning
-org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
-org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
-org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
-org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=warning
-org.eclipse.jdt.core.compiler.problem.nullReference=warning
-org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
-org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore
-org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=ignore
-org.eclipse.jdt.core.compiler.problem.potentialNullReference=ignore
-org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning
-org.eclipse.jdt.core.compiler.problem.redundantNullCheck=ignore
-org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=ignore
-org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
-org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
-org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
-org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore
-org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
-org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning
-org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore
-org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning
-org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
-org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=warning
-org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
-org.eclipse.jdt.core.compiler.problem.unusedImport=warning
-org.eclipse.jdt.core.compiler.problem.unusedLabel=warning
-org.eclipse.jdt.core.compiler.problem.unusedLocal=warning
-org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
-org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
-org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning
-org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
-org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
-org.eclipse.jdt.core.compiler.source=1.5
-org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_assignment=0
-org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
-org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80
-org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0
-org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
-org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
-org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
-org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16
-org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
-org.eclipse.jdt.core.formatter.blank_lines_after_package=1
-org.eclipse.jdt.core.formatter.blank_lines_before_field=1
-org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=1
-org.eclipse.jdt.core.formatter.blank_lines_before_imports=1
-org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1
-org.eclipse.jdt.core.formatter.blank_lines_before_method=1
-org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1
-org.eclipse.jdt.core.formatter.blank_lines_before_package=1
-org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1
-org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1
-org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=false
-org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=false
-org.eclipse.jdt.core.formatter.comment.format_block_comments=true
-org.eclipse.jdt.core.formatter.comment.format_header=false
-org.eclipse.jdt.core.formatter.comment.format_html=true
-org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true
-org.eclipse.jdt.core.formatter.comment.format_line_comments=false
-org.eclipse.jdt.core.formatter.comment.format_source_code=true
-org.eclipse.jdt.core.formatter.comment.indent_parameter_description=true
-org.eclipse.jdt.core.formatter.comment.indent_root_tags=true
-org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert
-org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=do not insert
-org.eclipse.jdt.core.formatter.comment.line_length=80
-org.eclipse.jdt.core.formatter.compact_else_if=true
-org.eclipse.jdt.core.formatter.continuation_indentation=2
-org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
-org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true
-org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true
-org.eclipse.jdt.core.formatter.indent_empty_lines=false
-org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true
-org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
-org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
-org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=false
-org.eclipse.jdt.core.formatter.indentation.size=4
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_member=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert
-org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert
-org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert
-org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert
-org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert
-org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false
-org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false
-org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=true
-org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false
-org.eclipse.jdt.core.formatter.lineSplit=80
-org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
-org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false
-org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
-org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1
-org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true
-org.eclipse.jdt.core.formatter.tabulation.char=space
-org.eclipse.jdt.core.formatter.tabulation.size=4
-org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
-org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true
diff --git a/bundles/org.eclipse.equinox.weaving.aspectj/.settings/org.eclipse.jdt.ui.prefs b/bundles/org.eclipse.equinox.weaving.aspectj/.settings/org.eclipse.jdt.ui.prefs
deleted file mode 100644
index 5423ee6..0000000
--- a/bundles/org.eclipse.equinox.weaving.aspectj/.settings/org.eclipse.jdt.ui.prefs
+++ /dev/null
@@ -1,114 +0,0 @@
-#Mon Aug 04 14:34:18 CEST 2008
-cleanup.add_default_serial_version_id=false
-cleanup.add_generated_serial_version_id=true
-cleanup.add_missing_annotations=true
-cleanup.add_missing_deprecated_annotations=true
-cleanup.add_missing_methods=false
-cleanup.add_missing_nls_tags=false
-cleanup.add_missing_override_annotations=true
-cleanup.add_serial_version_id=true
-cleanup.always_use_blocks=true
-cleanup.always_use_parentheses_in_expressions=false
-cleanup.always_use_this_for_non_static_field_access=false
-cleanup.always_use_this_for_non_static_method_access=false
-cleanup.convert_to_enhanced_for_loop=false
-cleanup.correct_indentation=false
-cleanup.format_source_code=true
-cleanup.format_source_code_changes_only=false
-cleanup.make_local_variable_final=true
-cleanup.make_parameters_final=true
-cleanup.make_private_fields_final=true
-cleanup.make_type_abstract_if_missing_method=false
-cleanup.make_variable_declarations_final=true
-cleanup.never_use_blocks=false
-cleanup.never_use_parentheses_in_expressions=true
-cleanup.organize_imports=true
-cleanup.qualify_static_field_accesses_with_declaring_class=false
-cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
-cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
-cleanup.qualify_static_member_accesses_with_declaring_class=true
-cleanup.qualify_static_method_accesses_with_declaring_class=false
-cleanup.remove_private_constructors=true
-cleanup.remove_trailing_whitespaces=true
-cleanup.remove_trailing_whitespaces_all=true
-cleanup.remove_trailing_whitespaces_ignore_empty=false
-cleanup.remove_unnecessary_casts=true
-cleanup.remove_unnecessary_nls_tags=true
-cleanup.remove_unused_imports=true
-cleanup.remove_unused_local_variables=false
-cleanup.remove_unused_private_fields=true
-cleanup.remove_unused_private_members=false
-cleanup.remove_unused_private_methods=true
-cleanup.remove_unused_private_types=true
-cleanup.sort_members=true
-cleanup.sort_members_all=true
-cleanup.use_blocks=false
-cleanup.use_blocks_only_for_return_and_throw=false
-cleanup.use_parentheses_in_expressions=false
-cleanup.use_this_for_non_static_field_access=false
-cleanup.use_this_for_non_static_field_access_only_if_necessary=true
-cleanup.use_this_for_non_static_method_access=false
-cleanup.use_this_for_non_static_method_access_only_if_necessary=true
-cleanup_profile=_defaultCleanUpProfile
-cleanup_settings_version=2
-eclipse.preferences.version=1
-editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true
-formatter_profile=_defaultFormatterProfile
-formatter_settings_version=11
-org.eclipse.jdt.ui.ignorelowercasenames=true
-org.eclipse.jdt.ui.importorder=java;javax;com;de;net;org;
-org.eclipse.jdt.ui.javadoc=false
-org.eclipse.jdt.ui.ondemandthreshold=99
-org.eclipse.jdt.ui.staticondemandthreshold=99
-org.eclipse.jdt.ui.text.custom_code_templates=<?xml version\="1.0" encoding\="UTF-8"?><templates><template autoinsert\="true" context\="gettercomment_context" deleted\="false" description\="Comment for getter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.gettercomment" name\="gettercomment">/**\n * @return the ${bare_field_name}\n */</template><template autoinsert\="true" context\="settercomment_context" deleted\="false" description\="Comment for setter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.settercomment" name\="settercomment">/**\n * @param ${param} the ${bare_field_name} to set\n */</template><template autoinsert\="true" context\="constructorcomment_context" deleted\="false" description\="Comment for created constructors" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorcomment" name\="constructorcomment">/**\n * ${tags}\n */</template><template autoinsert\="false" context\="filecomment_context" deleted\="false" description\="Comment for created Java files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.filecomment" name\="filecomment">/*******************************************************************************\n * Copyright (c) 2008 ${user} and others.\n * All rights reserved. This program and the accompanying materials \n * are made available under the terms of the Eclipse Public License v1.0\n * which accompanies this distribution, and is available at\n * http\://www.eclipse.org/legal/epl-v10.html.\n * \n * Contributors\:\n * ${user} - initial implementation\n ******************************************************************************/\n</template><template autoinsert\="false" context\="typecomment_context" deleted\="false" description\="Comment for created types" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.typecomment" name\="typecomment">/**\n * @author ${user}\n * ${tags}\n */</template><template autoinsert\="true" context\="fieldcomment_context" deleted\="false" description\="Comment for fields" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.fieldcomment" name\="fieldcomment">/**\n * \n */</template><template autoinsert\="true" context\="methodcomment_context" deleted\="false" description\="Comment for non-overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodcomment" name\="methodcomment">/**\n * ${tags}\n */</template><template autoinsert\="false" context\="overridecomment_context" deleted\="false" description\="Comment for overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.overridecomment" name\="overridecomment">/**\n * ${see_to_overridden}\n */</template><template autoinsert\="true" context\="delegatecomment_context" deleted\="false" description\="Comment for delegate methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.delegatecomment" name\="delegatecomment">/**\n * ${tags}\n * ${see_to_target}\n */</template><template autoinsert\="false" context\="newtype_context" deleted\="false" description\="Newly created files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.newtype" name\="newtype">${filecomment}\n\n${package_declaration}\n\n${typecomment}\n${type_declaration}</template><template autoinsert\="true" context\="classbody_context" deleted\="false" description\="Code in new class type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.classbody" name\="classbody">\n</template><template autoinsert\="true" context\="interfacebody_context" deleted\="false" description\="Code in new interface type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.interfacebody" name\="interfacebody">\n</template><template autoinsert\="true" context\="enumbody_context" deleted\="false" description\="Code in new enum type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.enumbody" name\="enumbody">\n</template><template autoinsert\="true" context\="annotationbody_context" deleted\="false" description\="Code in new annotation type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.annotationbody" name\="annotationbody">\n</template><template autoinsert\="true" context\="catchblock_context" deleted\="false" description\="Code in new catch blocks" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.catchblock" name\="catchblock">// ${todo} Auto-generated catch block\n${exception_var}.printStackTrace();</template><template autoinsert\="true" context\="methodbody_context" deleted\="false" description\="Code in created method stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodbody" name\="methodbody">// ${todo} Auto-generated method stub\n${body_statement}</template><template autoinsert\="false" context\="constructorbody_context" deleted\="false" description\="Code in created constructor stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorbody" name\="constructorbody">// ${todo} Auto-generated constructor stub\n${body_statement}</template><template autoinsert\="true" context\="getterbody_context" deleted\="false" description\="Code in created getters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.getterbody" name\="getterbody">return ${field};</template><template autoinsert\="true" context\="setterbody_context" deleted\="false" description\="Code in created setters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.setterbody" name\="setterbody">${field} \= ${param};</template></templates>
-sp_cleanup.add_default_serial_version_id=true
-sp_cleanup.add_generated_serial_version_id=false
-sp_cleanup.add_missing_annotations=true
-sp_cleanup.add_missing_deprecated_annotations=true
-sp_cleanup.add_missing_methods=false
-sp_cleanup.add_missing_nls_tags=false
-sp_cleanup.add_missing_override_annotations=true
-sp_cleanup.add_serial_version_id=false
-sp_cleanup.always_use_blocks=true
-sp_cleanup.always_use_parentheses_in_expressions=false
-sp_cleanup.always_use_this_for_non_static_field_access=false
-sp_cleanup.always_use_this_for_non_static_method_access=false
-sp_cleanup.convert_to_enhanced_for_loop=false
-sp_cleanup.correct_indentation=false
-sp_cleanup.format_source_code=true
-sp_cleanup.format_source_code_changes_only=false
-sp_cleanup.make_local_variable_final=true
-sp_cleanup.make_parameters_final=true
-sp_cleanup.make_private_fields_final=true
-sp_cleanup.make_type_abstract_if_missing_method=false
-sp_cleanup.make_variable_declarations_final=true
-sp_cleanup.never_use_blocks=false
-sp_cleanup.never_use_parentheses_in_expressions=true
-sp_cleanup.on_save_use_additional_actions=true
-sp_cleanup.organize_imports=true
-sp_cleanup.qualify_static_field_accesses_with_declaring_class=false
-sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
-sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
-sp_cleanup.qualify_static_member_accesses_with_declaring_class=false
-sp_cleanup.qualify_static_method_accesses_with_declaring_class=false
-sp_cleanup.remove_private_constructors=true
-sp_cleanup.remove_trailing_whitespaces=true
-sp_cleanup.remove_trailing_whitespaces_all=true
-sp_cleanup.remove_trailing_whitespaces_ignore_empty=false
-sp_cleanup.remove_unnecessary_casts=true
-sp_cleanup.remove_unnecessary_nls_tags=true
-sp_cleanup.remove_unused_imports=true
-sp_cleanup.remove_unused_local_variables=false
-sp_cleanup.remove_unused_private_fields=true
-sp_cleanup.remove_unused_private_members=false
-sp_cleanup.remove_unused_private_methods=true
-sp_cleanup.remove_unused_private_types=true
-sp_cleanup.sort_members=true
-sp_cleanup.sort_members_all=true
-sp_cleanup.use_blocks=false
-sp_cleanup.use_blocks_only_for_return_and_throw=false
-sp_cleanup.use_parentheses_in_expressions=false
-sp_cleanup.use_this_for_non_static_field_access=false
-sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=true
-sp_cleanup.use_this_for_non_static_method_access=false
-sp_cleanup.use_this_for_non_static_method_access_only_if_necessary=true
diff --git a/bundles/org.eclipse.equinox.weaving.aspectj/.settings/org.eclipse.pde.prefs b/bundles/org.eclipse.equinox.weaving.aspectj/.settings/org.eclipse.pde.prefs
deleted file mode 100644
index 21798cc..0000000
--- a/bundles/org.eclipse.equinox.weaving.aspectj/.settings/org.eclipse.pde.prefs
+++ /dev/null
@@ -1,22 +0,0 @@
-#Mon Aug 04 14:34:18 CEST 2008
-compilers.f.unresolved-features=1
-compilers.f.unresolved-plugins=1
-compilers.incompatible-environment=1
-compilers.p.build=1
-compilers.p.deprecated=1
-compilers.p.discouraged-class=1
-compilers.p.internal=1
-compilers.p.missing-packages=2
-compilers.p.no-required-att=0
-compilers.p.not-externalized-att=1
-compilers.p.unknown-attribute=1
-compilers.p.unknown-class=1
-compilers.p.unknown-element=1
-compilers.p.unknown-identifier=1
-compilers.p.unknown-resource=1
-compilers.p.unresolved-ex-points=0
-compilers.p.unresolved-import=0
-compilers.s.create-docs=false
-compilers.s.doc-folder=doc
-compilers.s.open-tags=1
-eclipse.preferences.version=1
diff --git a/bundles/org.eclipse.equinox.weaving.aspectj/META-INF/MANIFEST.MF b/bundles/org.eclipse.equinox.weaving.aspectj/META-INF/MANIFEST.MF
deleted file mode 100644
index e42035d..0000000
--- a/bundles/org.eclipse.equinox.weaving.aspectj/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,18 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: WeavingService Plug-in (Incubation)
-Bundle-SymbolicName: org.eclipse.equinox.weaving.aspectj
-Bundle-Version: 1.0.0.qualifier
-Bundle-Activator: org.eclipse.equinox.weaving.aspectj.AspectJWeavingActivator
-Import-Package: org.aspectj.weaver;version="1.6.2",
- org.aspectj.weaver.loadtime;version="1.6.2",
- org.aspectj.weaver.loadtime.definition;version="1.6.2",
- org.aspectj.weaver.tools;version="1.6.2",
- org.eclipse.equinox.service.weaving,
- org.eclipse.osgi.service.debug,
- org.eclipse.osgi.service.resolver,
- org.eclipse.osgi.util;version="1.1.0",
- org.osgi.framework
-Bundle-RequiredExecutionEnvironment: J2SE-1.5
-Export-Package: org.eclipse.equinox.weaving.aspectj;x-friends:="org.eclipse.equinox.weaving.tests",
- org.eclipse.equinox.weaving.aspectj.loadtime;x-friends:="org.eclipse.equinox.weaving.tests"
diff --git a/bundles/org.eclipse.equinox.weaving.aspectj/META-INF/optional-p2.inf b/bundles/org.eclipse.equinox.weaving.aspectj/META-INF/optional-p2.inf
deleted file mode 100644
index 43ce7ce..0000000
--- a/bundles/org.eclipse.equinox.weaving.aspectj/META-INF/optional-p2.inf
+++ /dev/null
@@ -1,10 +0,0 @@
-instructions.configure = \
- setStartLevel(startLevel:4); \
- markStarted(started: true); \
- setProgramProperty(propName:org.aspectj.weaver.showWeaveInfo, propValue:true); \
- setProgramProperty(propName:org.aspectj.osgi.verbose, propValue:true); \
- setProgramProperty(propName:aj.weaving.verbose, propValue:true);
-instructions.unconfigure = \
- setProgramProperty(propName:org.aspectj.weaver.showWeaveInfo, propValue:); \
- setProgramProperty(propName:org.aspectj.osgi.verbose, propValue:); \
- setProgramProperty(propName:aj.weaving.verbose, propValue:);
diff --git a/bundles/org.eclipse.equinox.weaving.aspectj/build.properties b/bundles/org.eclipse.equinox.weaving.aspectj/build.properties
deleted file mode 100644
index 07bbd6d..0000000
--- a/bundles/org.eclipse.equinox.weaving.aspectj/build.properties
+++ /dev/null
@@ -1,6 +0,0 @@
-source.. = src/
-output.. = bin/
-bin.includes = META-INF/,\
- .,\
- .options
-src.includes = src/
diff --git a/bundles/org.eclipse.equinox.weaving.aspectj/src/org/eclipse/equinox/weaving/aspectj/AspectAdmin.java b/bundles/org.eclipse.equinox.weaving.aspectj/src/org/eclipse/equinox/weaving/aspectj/AspectAdmin.java
deleted file mode 100644
index bcc1d2f..0000000
--- a/bundles/org.eclipse.equinox.weaving.aspectj/src/org/eclipse/equinox/weaving/aspectj/AspectAdmin.java
+++ /dev/null
@@ -1,180 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2009 Martin Lippert 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:
- * Martin Lippert initial implementation
- *******************************************************************************/
-
-package org.eclipse.equinox.weaving.aspectj;
-
-import org.aspectj.weaver.loadtime.definition.Definition;
-import org.osgi.framework.Bundle;
-
-/**
- * The AspectAdmin gives you detailed information about bundles providing
- * aspects, which aspects are provided, which aspects are exported and the
- * defined aspect policies for exported packages.
- *
- * This service is used by the weaver to determine which aspects to weave into
- * which bundles. It can also be used to implement some basic management
- * features for the AspectJ-based weaving of Equinox Aspects.
- *
- * @author Martin Lippert
- */
-public interface AspectAdmin {
-
- /**
- * Header for aspect bundle manifest files to indicate whether a bundle is
- * readily compiled with AJDT, for example. This tells Equinox Aspects that
- * the bundle does not need to be woven if it refers to just its own
- * aspects.
- */
- public static final String AOP_BUNDLE_FINISHED_HEADER = "Eclipse-AspectBundle"; //$NON-NLS-1$
-
- /**
- * The value for the aspect bundle header to indicate that there is no
- * weaving necessary to finish the aspects of the bundle itself
- */
- public static final String AOP_BUNDLE_FINISHED_VALUE = "finished"; //$NON-NLS-1$
-
- /**
- * This is the default value for the location of the aop.xml file inside a
- * bundle
- */
- public static final String AOP_CONTEXT_DEFAULT_LOCATION = "META-INF/aop.xml"; //$NON-NLS-1$
-
- /**
- * The name of the header to determine where to look for the aop.xml files
- * inside a bundle Bundles can use this header to specify the location where
- * their aop.xml is located
- */
- public static final String AOP_CONTEXT_LOCATION_HEADER = "Eclipse-AspectContext"; //$NON-NLS-1$
-
- /**
- * directive for the policy to apply aspects from imported or required
- * bundles
- */
- public static final String ASPECT_APPLY_POLICY_DIRECTIVE = "apply-aspects"; //$NON-NLS-1$
-
- /**
- * apply policy is false in this case, do not apply aspects for weaving
- */
- public static final int ASPECT_APPLY_POLICY_FALSE = 2;
-
- /**
- * apply policy is not defined
- */
- public static final int ASPECT_APPLY_POLICY_NOT_DEFINED = 0;
-
- /**
- * apply policy is true, so apply aspects for weaving
- */
- public static final int ASPECT_APPLY_POLICY_TRUE = 1;
-
- /**
- * directive to declare the aspect policy. possible values are "opt-in" or
- * "opt-out"
- */
- public static final String ASPECT_POLICY_DIRECTIVE = "aspect-policy"; //$NON-NLS-1$
-
- /**
- * policy directive value to tell the weaver that clients have explicitly to
- * ask for those aspects to be applied
- */
- public static final String ASPECT_POLICY_DIRECTIVE_OPT_IN = "opt-in"; //$NON-NLS-1$
-
- /**
- * policy directive value to tell the weaver that clients will get those
- * aspects applied automatically unless they ask for not applying them
- */
- public static final String ASPECT_POLICY_DIRECTIVE_OPT_OUT = "opt-out"; //$NON-NLS-1$
-
- /**
- * This indicates that there is no aspects policy defined
- */
- public static final int ASPECT_POLICY_NOT_DEFINED = 0;
-
- /**
- * Policy to indicate that the aspects of this package should only be woven
- * if the importer explicitly asks for it
- */
- public static final int ASPECT_POLICY_OPT_IN = 1;
-
- /**
- * Policy to indicate that the aspects of this package should automatically
- * be woven if the importer does not prohibit it
- */
- public static final int ASPECT_POLICY_OPT_OUT = 2;
-
- /**
- * directive to declare the exported aspects. The values should list the
- * aspect class names without the package
- */
- public static final String ASPECTS_ATTRIBUTE = "aspects"; //$NON-NLS-1$
-
- /**
- * Returns the cached aspect definition for the given bundle, if the bundle
- * has an aspect definition
- *
- * @param bundle The bundle for which the aspect definition should be
- * returned
- * @return The parsed and cached aspect definition for the given bundle or
- * null, if the bundle doesn't contain an aspect definition
- */
- public Definition getAspectDefinition(final Bundle bundle);
-
- /**
- * Gives information on which aspect policy is defined for the given package
- * of the given bundle
- *
- * @param bundle The bundle which contains the aspects for the given package
- * @param packageName The name of the package that contains the aspects
- * @return OPT_IN_POLICY or OPT_OUT_POLICY (where OPT_OUT_POLICY is the
- * defailt case)
- */
- public int getAspectPolicy(Bundle bundle, String packageName);
-
- /**
- * Returns the definitions of aspects whose packages are exported and
- * therefore visible to the outside of the bundle.
- *
- * @param bundle The bundle for which the visible aspects should be
- * calculated
- * @return The definition for the exported aspects or null, if no aspect is
- * visible
- */
- public Definition getExportedAspectDefinitions(final Bundle bundle);
-
- /**
- * Calculates the set of aspects to be woven if the given imported package
- * is wired to the given bundle (with the given policy on applying aspects)
- *
- * @param bundle The bundle from which the given package is imported
- * @param packageName The name of the package that is imported
- * @param applyAspectsPolicy the policy for applying visible aspects for
- * weaving
- * @return The set of aspects that should be woven from the given imported
- * package
- */
- public Definition resolveImportedPackage(final Bundle bundle,
- String packageName, final int applyAspectsPolicy);
-
- /**
- * Calculates the set of aspects to be woven if the given bundle is declared
- * as a required bundle (with the given policy on applying aspects)
- *
- * @param bundle The bundle which is required and might export aspects that
- * should be woven
- * @param applyAspectsPolicy the policy for applying visible aspects for
- * weaving
- * @return The set of aspects that should be woven from the given required
- * bundle
- */
- public Definition resolveRequiredBundle(final Bundle bundle,
- final int applyAspectsPolicy);
-
-}
diff --git a/bundles/org.eclipse.equinox.weaving.aspectj/src/org/eclipse/equinox/weaving/aspectj/AspectConfiguration.java b/bundles/org.eclipse.equinox.weaving.aspectj/src/org/eclipse/equinox/weaving/aspectj/AspectConfiguration.java
deleted file mode 100644
index 2fc91d7..0000000
--- a/bundles/org.eclipse.equinox.weaving.aspectj/src/org/eclipse/equinox/weaving/aspectj/AspectConfiguration.java
+++ /dev/null
@@ -1,70 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2009 Martin Lippert 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:
- * Martin Lippert initial implementation
- *******************************************************************************/
-
-package org.eclipse.equinox.weaving.aspectj;
-
-import java.util.Arrays;
-import java.util.List;
-
-import org.aspectj.weaver.loadtime.definition.Definition;
-import org.osgi.framework.Bundle;
-
-/**
- * An aspect configuration object describes for one specific bundle which
- * aspects from which other bundles are declared to be woven into the bundle.
- *
- * @author Martin Lippert
- */
-public class AspectConfiguration {
-
- private final Definition[] aspectDefinitions;
-
- private final Bundle bundle;
-
- private final String fingerprint;
-
- /**
- * Creates a new aspect configuration object for the given bundle.
- *
- * @param bundle The host bundle this configuration belongs to
- * @param aspectDefinitions The set of aspect definitions for the weaver
- * @param fingerprint The fingerprint of the defined aspects
- */
- public AspectConfiguration(final Bundle bundle,
- final Definition[] aspectDefinitions, final String fingerprint) {
- this.bundle = bundle;
- this.fingerprint = fingerprint;
- this.aspectDefinitions = aspectDefinitions;
- }
-
- /**
- * @return The set of aspect configurations to be used by the weaver
- */
- public List<Definition> getAspectDefinitions() {
- return Arrays.asList(aspectDefinitions);
- }
-
- /**
- * @return The host bundle this aspect configuration belongs to
- */
- public Bundle getBundle() {
- return bundle;
- }
-
- /**
- * @return A short version of the different aspects being woven into this
- * bundle to be used as unique identifier for aspect configurations
- */
- public String getFingerprint() {
- return fingerprint;
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.weaving.aspectj/src/org/eclipse/equinox/weaving/aspectj/AspectJWeavingActivator.java b/bundles/org.eclipse.equinox.weaving.aspectj/src/org/eclipse/equinox/weaving/aspectj/AspectJWeavingActivator.java
deleted file mode 100644
index 1720110..0000000
--- a/bundles/org.eclipse.equinox.weaving.aspectj/src/org/eclipse/equinox/weaving/aspectj/AspectJWeavingActivator.java
+++ /dev/null
@@ -1,110 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006, 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:
- * David Knibb initial implementation
- * Matthew Webster Eclipse 3.2 changes
- * Martin Lippert extracted weaving service factory
- *******************************************************************************/
-
-package org.eclipse.equinox.weaving.aspectj;
-
-import java.util.Properties;
-
-import org.eclipse.equinox.service.weaving.IWeavingServiceFactory;
-import org.eclipse.equinox.weaving.aspectj.loadtime.AspectAdminImpl;
-import org.eclipse.osgi.service.debug.DebugOptions;
-import org.osgi.framework.BundleActivator;
-import org.osgi.framework.BundleContext;
-import org.osgi.framework.ServiceReference;
-
-/**
- * The main plugin class to be used in the desktop.
- */
-public class AspectJWeavingActivator implements BundleActivator {
-
- public static boolean DEBUG;
-
- public static boolean verbose = Boolean
- .getBoolean("org.aspectj.osgi.verbose");
-
- //The shared instance.
- private static AspectJWeavingActivator plugin;
-
- private AspectAdminImpl aspectDefinitionRegistry;
-
- private BundleContext context;
-
- /**
- * The constructor.
- */
- public AspectJWeavingActivator() {
- plugin = this;
- }
-
- /**
- * Returns the shared instance.
- */
- public static AspectJWeavingActivator getDefault() {
- return plugin;
- }
-
- /**
- * @return The bundle context of the weaving service bundle or null, of
- * bundle is not started
- */
- public BundleContext getContext() {
- return this.context;
- }
-
- /**
- * This method is called upon plug-in activation
- */
- public void start(final BundleContext context) throws Exception {
- this.context = context;
-
- this.aspectDefinitionRegistry = new AspectAdminImpl();
- context.addBundleListener(this.aspectDefinitionRegistry);
- this.aspectDefinitionRegistry.initialize(context.getBundles());
-
- loadOptions(context);
- if (verbose)
- System.err
- .println("[org.eclipse.equinox.weaving.aspectj] info Starting AspectJ weaving service ...");
- final String serviceName = IWeavingServiceFactory.class.getName();
- final IWeavingServiceFactory weavingServiceFactory = new AspectJWeavingServiceFactory(
- aspectDefinitionRegistry);
- final Properties props = new Properties();
- context.registerService(serviceName, weavingServiceFactory, props);
- }
-
- /**
- * This method is called when the plug-in is stopped
- */
- public void stop(final BundleContext context) throws Exception {
- this.context = null;
- plugin = null;
- }
-
- private void loadOptions(final BundleContext context) {
- // all this is only to get the application args
- DebugOptions service = null;
- final ServiceReference reference = context
- .getServiceReference(DebugOptions.class.getName());
- if (reference != null)
- service = (DebugOptions) context.getService(reference);
- if (service == null) return;
- try {
- DEBUG = service.getBooleanOption(
- "org.aspectj.osgi.service.weaving/debug", false);
- } finally {
- // we have what we want - release the service
- context.ungetService(reference);
- }
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.weaving.aspectj/src/org/eclipse/equinox/weaving/aspectj/AspectJWeavingService.java b/bundles/org.eclipse.equinox.weaving.aspectj/src/org/eclipse/equinox/weaving/aspectj/AspectJWeavingService.java
deleted file mode 100644
index f42d904..0000000
--- a/bundles/org.eclipse.equinox.weaving.aspectj/src/org/eclipse/equinox/weaving/aspectj/AspectJWeavingService.java
+++ /dev/null
@@ -1,165 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006, 2008, 2009 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:
- * David Knibb initial implementation
- * Matthew Webster Eclipse 3.2 changes
- * Heiko Seeberger AJDT 1.5.1 changes
- * Martin Lippert weaving context and adaptors reworked
- * Martin Lippert extracted weaving service factory
- * Martin Lippert advanced aspect resolving implemented
- * Martin Lippert caching of generated classes
- *******************************************************************************/
-
-package org.eclipse.equinox.weaving.aspectj;
-
-import java.io.IOException;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-import org.aspectj.weaver.loadtime.definition.Definition;
-import org.eclipse.equinox.service.weaving.ISupplementerRegistry;
-import org.eclipse.equinox.service.weaving.IWeavingService;
-import org.eclipse.equinox.weaving.aspectj.loadtime.AspectResolver;
-import org.eclipse.equinox.weaving.aspectj.loadtime.OSGiWeavingAdaptor;
-import org.eclipse.equinox.weaving.aspectj.loadtime.OSGiWeavingContext;
-import org.eclipse.osgi.service.resolver.BundleDescription;
-import org.eclipse.osgi.service.resolver.State;
-import org.osgi.framework.Bundle;
-
-public class AspectJWeavingService implements IWeavingService {
-
- private List<Definition> aspectDefinitions;
-
- private BundleDescription bundleDescription;
-
- private boolean enabled;
-
- private String namespaceAddOn;
-
- private OSGiWeavingAdaptor weavingAdaptor;
-
- private OSGiWeavingContext weavingContext;
-
- public AspectJWeavingService() {
- if (AspectJWeavingActivator.DEBUG)
- System.out.println("- WeavingService.<init>");
- }
-
- public AspectJWeavingService(final ClassLoader loader, final Bundle bundle,
- final State state, final BundleDescription bundleDescription,
- final ISupplementerRegistry supplementerRegistry,
- final AspectAdmin aspectAdmin) {
- this.bundleDescription = bundleDescription;
-
- final AspectResolver aspectResolver = new AspectResolver(state,
- supplementerRegistry, aspectAdmin, AspectJWeavingActivator
- .getDefault().getContext());
- final AspectConfiguration aspectConfig = aspectResolver
- .resolveAspectsFor(bundle, bundleDescription);
- this.namespaceAddOn = aspectConfig.getFingerprint();
- this.aspectDefinitions = aspectConfig.getAspectDefinitions();
-
- this.enabled = this.aspectDefinitions.size() > 0;
- if (this.enabled) {
- this.weavingContext = new OSGiWeavingContext(loader,
- bundleDescription, aspectDefinitions);
- this.weavingAdaptor = new OSGiWeavingAdaptor(loader,
- weavingContext, namespaceAddOn.toString());
- } else {
- if (AspectJWeavingActivator.DEBUG) {
- System.err
- .println("[org.eclipse.equinox.weaving.aspectj] info not weaving bundle '"
- + bundle.getSymbolicName() + "'");
- }
- }
- }
-
- /**
- * @see org.eclipse.equinox.service.weaving.IWeavingService#flushGeneratedClasses(java.lang.ClassLoader)
- */
- public void flushGeneratedClasses(final ClassLoader loader) {
- if (enabled) {
- ensureAdaptorInit();
- weavingAdaptor.flushGeneratedClasses();
- }
- }
-
- /**
- * @see org.eclipse.equinox.service.weaving.IWeavingService#generatedClassesExistFor(java.lang.ClassLoader,
- * java.lang.String)
- */
- public boolean generatedClassesExistFor(final ClassLoader loader,
- final String className) {
- if (enabled) {
- ensureAdaptorInit();
- return weavingAdaptor.generatedClassesExistFor(className);
- } else {
- return false;
- }
- }
-
- /**
- * @see org.eclipse.equinox.service.weaving.IWeavingService#getGeneratedClassesFor(java.lang.String)
- */
- public Map<String, byte[]> getGeneratedClassesFor(final String className) {
- if (enabled) {
- ensureAdaptorInit();
- return weavingAdaptor.getGeneratedClassesFor(className);
- } else {
- return new HashMap<String, byte[]>();
- }
- }
-
- /**
- * @see org.eclipse.equinox.service.weaving.IWeavingService#getKey()
- */
- public String getKey() {
- if (AspectJWeavingActivator.DEBUG)
- System.out.println("> WeavingService.getKey() bundle="
- + bundleDescription.getSymbolicName());
-
- final String namespace = namespaceAddOn.toString();
-
- if (AspectJWeavingActivator.DEBUG)
- System.out.println("< WeavingService.getKey() key='" + namespace
- + "'");
-
- return namespace;
- }
-
- /**
- * @see org.eclipse.equinox.service.weaving.IWeavingService#preProcess(java.lang.String,
- * byte[], java.lang.ClassLoader)
- */
- public byte[] preProcess(final String name, final byte[] classbytes,
- final ClassLoader loader) throws IOException {
- if (enabled) {
- if (AspectJWeavingActivator.DEBUG)
- System.out.println("> WeavingService.preProcess() bundle="
- + bundleDescription.getSymbolicName() + ", name="
- + name + ", bytes=" + classbytes.length);
- byte[] newBytes;
- ensureAdaptorInit();
-
- // Bug 215177: Adapt to updated (AJ 1.5.4) signature.
- newBytes = weavingAdaptor.weaveClass(name, classbytes, false);
- if (AspectJWeavingActivator.DEBUG)
- System.out.println("< WeavingService.preProcess() bytes="
- + newBytes.length);
- return newBytes;
- } else {
- return null;
- }
- }
-
- private void ensureAdaptorInit() {
- weavingAdaptor.initialize();
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.weaving.aspectj/src/org/eclipse/equinox/weaving/aspectj/AspectJWeavingServiceFactory.java b/bundles/org.eclipse.equinox.weaving.aspectj/src/org/eclipse/equinox/weaving/aspectj/AspectJWeavingServiceFactory.java
deleted file mode 100644
index 184eb59..0000000
--- a/bundles/org.eclipse.equinox.weaving.aspectj/src/org/eclipse/equinox/weaving/aspectj/AspectJWeavingServiceFactory.java
+++ /dev/null
@@ -1,50 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008 Martin Lippert 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:
- * Martin Lippert initial implementation
- *******************************************************************************/
-
-package org.eclipse.equinox.weaving.aspectj;
-
-import org.eclipse.equinox.service.weaving.ISupplementerRegistry;
-import org.eclipse.equinox.service.weaving.IWeavingService;
-import org.eclipse.equinox.service.weaving.IWeavingServiceFactory;
-import org.eclipse.equinox.weaving.aspectj.loadtime.AspectAdminImpl;
-import org.eclipse.osgi.service.resolver.BundleDescription;
-import org.eclipse.osgi.service.resolver.State;
-import org.osgi.framework.Bundle;
-
-/**
- * The factory to create AspectJ-based weavers.
- *
- * @author martinlippert
- */
-public class AspectJWeavingServiceFactory implements IWeavingServiceFactory {
-
- private final AspectAdminImpl aspectDefinitionRegistry;
-
- public AspectJWeavingServiceFactory(final AspectAdminImpl aspectDefinitionRegistry) {
- this.aspectDefinitionRegistry = aspectDefinitionRegistry;
- }
-
- /**
- * @see org.eclipse.equinox.service.weaving.IWeavingServiceFactory#createWeavingService(java.lang.ClassLoader,
- * org.osgi.framework.Bundle, org.eclipse.osgi.service.resolver.State,
- * org.eclipse.osgi.service.resolver.BundleDescription,
- * org.eclipse.equinox.service.weaving.ISupplementerRegistry)
- */
- public IWeavingService createWeavingService(final ClassLoader loader,
- final Bundle bundle, final State resolverState,
- final BundleDescription bundleDesciption,
- final ISupplementerRegistry supplementerRegistry) {
- return new AspectJWeavingService(loader, bundle, resolverState,
- bundleDesciption, supplementerRegistry,
- aspectDefinitionRegistry);
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.weaving.aspectj/src/org/eclipse/equinox/weaving/aspectj/loadtime/AspectAdminImpl.java b/bundles/org.eclipse.equinox.weaving.aspectj/src/org/eclipse/equinox/weaving/aspectj/loadtime/AspectAdminImpl.java
deleted file mode 100644
index 357f083..0000000
--- a/bundles/org.eclipse.equinox.weaving.aspectj/src/org/eclipse/equinox/weaving/aspectj/loadtime/AspectAdminImpl.java
+++ /dev/null
@@ -1,464 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008, 2009 Martin Lippert 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:
- * Martin Lippert initial implementation
- *******************************************************************************/
-
-package org.eclipse.equinox.weaving.aspectj.loadtime;
-
-import java.net.URL;
-import java.util.Dictionary;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.LinkedHashSet;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-import java.util.concurrent.ConcurrentHashMap;
-
-import org.aspectj.weaver.loadtime.definition.Definition;
-import org.aspectj.weaver.loadtime.definition.DocumentParser;
-import org.aspectj.weaver.loadtime.definition.Definition.ConcreteAspect;
-import org.eclipse.equinox.weaving.aspectj.AspectAdmin;
-import org.eclipse.osgi.util.ManifestElement;
-import org.osgi.framework.Bundle;
-import org.osgi.framework.BundleEvent;
-import org.osgi.framework.Constants;
-import org.osgi.framework.SynchronousBundleListener;
-
-/**
- * The AspectAdmin takes care of resolving aspect definitions of resolved
- * bundles and provides information which bundle should be woven with which
- * aspects.
- *
- * The AspectAdmin takes the aop.xml files into account as well as the aspect
- * definitions in the bundle manifests.
- *
- * All the information parsing and resolving is done at bundle resolve time, the
- * removal from the cache is done at unresolved events. The initial state is
- * re-created by the initialize method.
- *
- * @author Martin Lippert
- */
-public class AspectAdminImpl implements AspectAdmin, SynchronousBundleListener {
-
- // remember all aspect definitions for the given bundle (regardless of the way they are declared)
- private final Map<Bundle, Definition> aspectDefinitions;
-
- // remember only the exported aspect definitions for the given bundle (regardless of the way they are declared)
- private final Map<Bundle, Definition> aspectDefinitionsExported;
-
- // remember the aspect policies per exported package per bundle
- private final Map<Bundle, Map<String, Integer>> aspectPolicies;
-
- /**
- * Create a registry to manage aspect definition files
- */
- public AspectAdminImpl() {
- this.aspectDefinitions = new ConcurrentHashMap<Bundle, Definition>();
- this.aspectDefinitionsExported = new ConcurrentHashMap<Bundle, Definition>();
- this.aspectPolicies = new ConcurrentHashMap<Bundle, Map<String, Integer>>();
- }
-
- /**
- * @see org.osgi.framework.BundleListener#bundleChanged(org.osgi.framework.BundleEvent)
- */
- public void bundleChanged(final BundleEvent event) {
- if (event.getType() == BundleEvent.RESOLVED) {
- bundleResolved(event.getBundle());
- } else if (event.getType() == BundleEvent.UNRESOLVED) {
- bundleUnresolved(event.getBundle());
- }
- }
-
- /**
- * Do the parsing when a bundle is resolved
- *
- * @param bundle The bundle that is resolved (should not be null)
- */
- public void bundleResolved(final Bundle bundle) {
- if (!this.aspectDefinitions.containsKey(bundle)
- && !this.aspectDefinitionsExported.containsKey(bundle)
- && !this.aspectPolicies.containsKey(bundle)) {
- parseDefinitions(bundle);
- }
- }
-
- /**
- * Remove the cached aspect definitions from the aspect definition registry
- *
- * @param bundle The bundle that got unresolved (should not be null)
- */
- public void bundleUnresolved(final Bundle bundle) {
- this.aspectDefinitions.remove(bundle);
- this.aspectDefinitionsExported.remove(bundle);
- this.aspectPolicies.remove(bundle);
- }
-
- /**
- * @see org.eclipse.equinox.weaving.aspectj.AspectAdmin#getAspectDefinition(org.osgi.framework.Bundle)
- */
- public Definition getAspectDefinition(final Bundle bundle) {
- return this.aspectDefinitions.get(bundle);
- }
-
- /**
- * @see org.eclipse.equinox.weaving.aspectj.AspectAdmin#getAspectPolicy(org.osgi.framework.Bundle,
- * java.lang.String)
- */
- public int getAspectPolicy(final Bundle bundle, final String packageName) {
- final Map<String, Integer> policies = this.aspectPolicies.get(bundle);
- if (policies != null) {
- final Integer policy = policies.get(packageName);
- if (policy != null) {
- return policy;
- }
- }
-
- return AspectAdmin.ASPECT_POLICY_NOT_DEFINED;
- }
-
- /**
- * Finds the location of the aspect definition within the given bundle. The
- * default location is "META-INF/aop.xml", but if the bundles manifest
- * contains an entry for "Eclipse-AspectContext", that value is used to
- * search for the aop.xml file.
- *
- * @param bundle The bundle for which to calculate the location of the
- * aspect definition file
- * @return The path to the aspect definition relately to the given bundle
- */
- public String getDefinitionLocation(final Bundle bundle) {
- String aopContextHeader = (String) bundle.getHeaders().get(
- AOP_CONTEXT_LOCATION_HEADER);
- if (aopContextHeader != null) {
- aopContextHeader = aopContextHeader.trim();
- return aopContextHeader;
- }
-
- return AOP_CONTEXT_DEFAULT_LOCATION;
- }
-
- /**
- * @see org.eclipse.equinox.weaving.aspectj.AspectAdmin#getExportedAspectDefinitions(org.osgi.framework.Bundle)
- */
- public Definition getExportedAspectDefinitions(final Bundle bundle) {
- return this.aspectDefinitionsExported.get(bundle);
- }
-
- /**
- * Initialize the state of the aspect definition registry for the given
- * bundles. This should typically be called when the weaving service bundle
- * is started to set up the aspect definitions for all resolved bundles
- *
- * @param bundles All bundles that should be taken into account and searched
- * for aspect definitions
- *
- */
- public void initialize(final Bundle[] bundles) {
- for (final Bundle bundle : bundles) {
- final int state = bundle.getState();
- if (state != Bundle.INSTALLED && state != Bundle.UNINSTALLED) {
- parseDefinitions(bundle);
- }
- }
- }
-
- /**
- * @see org.eclipse.equinox.weaving.aspectj.AspectAdmin#resolveImportedPackage(org.osgi.framework.Bundle,
- * java.lang.String, int)
- */
- public Definition resolveImportedPackage(final Bundle bundle,
- final String packageName, final int applyAspectsPolicy) {
- if (AspectAdmin.ASPECT_APPLY_POLICY_TRUE == applyAspectsPolicy) {
- final Definition exportedAspectDefinitions = getExportedAspectDefinitions(bundle);
- final Definition result = new Definition();
- if (exportedAspectDefinitions != null) {
- final List<?> aspectClassNames = exportedAspectDefinitions
- .getAspectClassNames();
- for (final Iterator<?> iterator = aspectClassNames.iterator(); iterator
- .hasNext();) {
- final String aspectName = (String) iterator.next();
- final String aspectPackageName = getPackage(aspectName);
- if (aspectPackageName.equals(packageName)) {
- result.getAspectClassNames().add(aspectName);
- }
- }
-
- final Iterator<?> concreteAspects = exportedAspectDefinitions
- .getConcreteAspects().iterator();
- while (concreteAspects.hasNext()) {
- final Definition.ConcreteAspect concreteAspect = (ConcreteAspect) concreteAspects
- .next();
- if (concreteAspect.name != null
- && getPackage(concreteAspect.name).equals(
- packageName)) {
- result.getConcreteAspects().add(concreteAspect);
- }
- }
-
- if (exportedAspectDefinitions.getWeaverOptions().trim()
- .length() > 0) {
- result.appendWeaverOptions(exportedAspectDefinitions
- .getWeaverOptions());
- }
- }
- if (result.getAspectClassNames().size() > 0
- || result.getConcreteAspects().size() > 0
- || result.getWeaverOptions().length() > 0) {
- return result;
- } else {
- return null;
- }
- } else if (AspectAdmin.ASPECT_APPLY_POLICY_FALSE == applyAspectsPolicy) {
- return null;
- } else {
- final Definition exportedAspectDefinitions = getExportedAspectDefinitions(bundle);
- final Definition result = new Definition();
- if (exportedAspectDefinitions != null) {
- final List<?> aspectClassNames = exportedAspectDefinitions
- .getAspectClassNames();
- for (final Iterator<?> iterator = aspectClassNames.iterator(); iterator
- .hasNext();) {
- final String aspectName = (String) iterator.next();
- final String aspectPackageName = getPackage(aspectName);
- final int aspectPolicy = getAspectPolicy(bundle,
- aspectPackageName);
- if (aspectPackageName.equals(packageName)
- && (AspectAdmin.ASPECT_POLICY_NOT_DEFINED == aspectPolicy || AspectAdmin.ASPECT_POLICY_OPT_OUT == aspectPolicy)) {
- result.getAspectClassNames().add(aspectName);
- }
- }
-
- final Iterator<?> concreteAspects = exportedAspectDefinitions
- .getConcreteAspects().iterator();
- while (concreteAspects.hasNext()) {
- final Definition.ConcreteAspect concreteAspect = (ConcreteAspect) concreteAspects
- .next();
-
- final String aspectPackageName = getPackage(concreteAspect.name);
- final int aspectPolicy = getAspectPolicy(bundle,
- aspectPackageName);
-
- if (aspectPackageName.equals(packageName)
- && (AspectAdmin.ASPECT_POLICY_NOT_DEFINED == aspectPolicy || AspectAdmin.ASPECT_POLICY_OPT_OUT == aspectPolicy)) {
- result.getConcreteAspects().add(concreteAspect);
- }
- }
-
- if (exportedAspectDefinitions.getWeaverOptions().trim()
- .length() > 0) {
- result.appendWeaverOptions(exportedAspectDefinitions
- .getWeaverOptions());
- }
- }
-
- if (result.getAspectClassNames().size() > 0
- || result.getConcreteAspects().size() > 0
- || result.getWeaverOptions().length() > 0) {
- return result;
- } else {
- return null;
- }
- }
- }
-
- /**
- * @see org.eclipse.equinox.weaving.aspectj.AspectAdmin#resolveRequiredBundle(org.osgi.framework.Bundle,
- * int)
- */
- public Definition resolveRequiredBundle(final Bundle bundle,
- final int applyAspectsPolicy) {
- if (AspectAdmin.ASPECT_APPLY_POLICY_TRUE == applyAspectsPolicy) {
- return getExportedAspectDefinitions(bundle);
- } else if (AspectAdmin.ASPECT_APPLY_POLICY_FALSE == applyAspectsPolicy) {
- return null;
- } else {
- final Definition exportedAspectDefinitions = getExportedAspectDefinitions(bundle);
- final Definition result = new Definition();
-
- if (exportedAspectDefinitions != null) {
- final Iterator<?> aspects = exportedAspectDefinitions
- .getAspectClassNames().iterator();
- while (aspects.hasNext()) {
- final String aspect = (String) aspects.next();
- final String aspectPackage = getPackage(aspect);
- final int aspectPolicy = getAspectPolicy(bundle,
- aspectPackage);
-
- if (aspectPolicy == AspectAdmin.ASPECT_POLICY_NOT_DEFINED
- || aspectPolicy == AspectAdmin.ASPECT_POLICY_OPT_OUT) {
- result.getAspectClassNames().add(aspect);
- }
- }
-
- final Iterator<?> concreteAspects = exportedAspectDefinitions
- .getConcreteAspects().iterator();
- while (concreteAspects.hasNext()) {
- final Definition.ConcreteAspect concreteAspect = (Definition.ConcreteAspect) concreteAspects
- .next();
- final String aspectPackage = getPackage(concreteAspect.name);
- final int aspectPolicy = getAspectPolicy(bundle,
- aspectPackage);
-
- if (aspectPolicy == AspectAdmin.ASPECT_POLICY_NOT_DEFINED
- || aspectPolicy == AspectAdmin.ASPECT_POLICY_OPT_OUT) {
- result.getConcreteAspects().add(concreteAspect);
- }
- }
-
- if (exportedAspectDefinitions.getWeaverOptions().trim()
- .length() > 0) {
- result.appendWeaverOptions(exportedAspectDefinitions
- .getWeaverOptions());
- }
- }
-
- if (result.getAspectClassNames().size() > 0
- || result.getConcreteAspects().size() > 0
- || result.getWeaverOptions().length() > 0) {
- return result;
- } else {
- return null;
- }
- }
- }
-
- /**
- * Parse the aspect definition for the given bundle, if there is one.
- *
- * @param bundle The bundle for which the aspect definition should be parsed
- */
- protected void parseDefinitions(final Bundle bundle) {
- try {
- Definition allAspectsDefinition = null;
- final Set<String> exportedAspects = new LinkedHashSet<String>();
- final Set<Definition.ConcreteAspect> exportedConcreteAspects = new HashSet<Definition.ConcreteAspect>();
- final Map<String, Integer> policies = new HashMap<String, Integer>();
- final Set<String> exportedPackages = new HashSet<String>();
-
- // try to find aop.xml file
- final String aopXmlLocation = getDefinitionLocation(bundle);
- final URL aopXmlDef = bundle.getEntry(aopXmlLocation);
- if (aopXmlDef != null) {
- allAspectsDefinition = DocumentParser.parse(aopXmlDef);
- }
-
- // parse export package headers
- final Dictionary<?, ?> manifest = bundle.getHeaders();
- final ManifestElement[] exports = ManifestElement.parseHeader(
- Constants.EXPORT_PACKAGE, (String) manifest
- .get(Constants.EXPORT_PACKAGE));
-
- for (int i = 0; exports != null && i < exports.length; i++) {
- final String packageName = exports[i].getValue();
- exportedPackages.add(packageName);
-
- // policies
- final String policy = exports[i]
- .getDirective(ASPECT_POLICY_DIRECTIVE);
- if (policy != null
- && policy.trim().toLowerCase().equals(
- ASPECT_POLICY_DIRECTIVE_OPT_OUT)) {
- policies
- .put(packageName, AspectAdmin.ASPECT_POLICY_OPT_OUT);
- }
- if (policy != null
- && policy.trim().toLowerCase().equals(
- ASPECT_POLICY_DIRECTIVE_OPT_IN)) {
- policies.put(packageName, AspectAdmin.ASPECT_POLICY_OPT_IN);
- }
-
- // aspects
- final String allaspects = exports[i]
- .getAttribute(ASPECTS_ATTRIBUTE);
- if (allaspects != null) {
- final String[] aspects = ManifestElement
- .getArrayFromList(allaspects);
- if (aspects != null) {
- for (int j = 0; j < aspects.length; j++) {
- exportedAspects.add(packageName + "." + aspects[j]); //$NON-NLS-1$
- }
- }
- }
- }
-
- // add aop.xml declared aspects to the list of exported aspects if their packages are exported
- if (allAspectsDefinition != null
- && allAspectsDefinition.getAspectClassNames() != null) {
- final Iterator<?> iterator = allAspectsDefinition
- .getAspectClassNames().iterator();
- while (iterator.hasNext()) {
- final String aspect = (String) iterator.next();
- final String packageName = getPackage(aspect);
- if (exportedPackages.contains(packageName)) {
- exportedAspects.add(aspect);
- }
- }
- }
-
- if (allAspectsDefinition != null
- && allAspectsDefinition.getConcreteAspects().size() > 0) {
- final Iterator<?> iterator = allAspectsDefinition
- .getConcreteAspects().iterator();
- while (iterator.hasNext()) {
- final Definition.ConcreteAspect concreteAspect = (Definition.ConcreteAspect) iterator
- .next();
- if (concreteAspect.name != null
- && exportedPackages
- .contains(getPackage(concreteAspect.name))) {
- exportedConcreteAspects.add(concreteAspect);
- }
- }
- }
-
- if (allAspectsDefinition != null) {
- this.aspectDefinitions.put(bundle, allAspectsDefinition);
- }
-
- if (exportedAspects.size() > 0
- || exportedConcreteAspects.size() > 0
- || (allAspectsDefinition != null && allAspectsDefinition
- .getWeaverOptions().length() > 0)) {
- final Definition exportedAspectsDefinition = new Definition();
- exportedAspectsDefinition.getAspectClassNames().addAll(
- exportedAspects);
- exportedAspectsDefinition.getConcreteAspects().addAll(
- exportedConcreteAspects);
-
- if (allAspectsDefinition != null
- && allAspectsDefinition.getWeaverOptions().trim()
- .length() > 0) {
- exportedAspectsDefinition
- .appendWeaverOptions(allAspectsDefinition
- .getWeaverOptions());
- }
-
- this.aspectDefinitionsExported.put(bundle,
- exportedAspectsDefinition);
- }
-
- if (policies.size() > 0) {
- this.aspectPolicies.put(bundle, policies);
- }
-
- } catch (final Exception e) {
- e.printStackTrace();
- }
- }
-
- private String getPackage(final String aspect) {
- final int index = aspect.lastIndexOf('.');
- if (index >= 0) {
- return aspect.substring(0, index);
- } else {
- return ""; //$NON-NLS-1$
- }
- }
-}
diff --git a/bundles/org.eclipse.equinox.weaving.aspectj/src/org/eclipse/equinox/weaving/aspectj/loadtime/AspectResolver.java b/bundles/org.eclipse.equinox.weaving.aspectj/src/org/eclipse/equinox/weaving/aspectj/loadtime/AspectResolver.java
deleted file mode 100644
index f6df097..0000000
--- a/bundles/org.eclipse.equinox.weaving.aspectj/src/org/eclipse/equinox/weaving/aspectj/loadtime/AspectResolver.java
+++ /dev/null
@@ -1,259 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2009 Martin Lippert 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:
- * Martin Lippert initial implementation
- * Martin Lippert fragment handling fixed
- *******************************************************************************/
-
-package org.eclipse.equinox.weaving.aspectj.loadtime;
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.Iterator;
-import java.util.List;
-
-import org.aspectj.weaver.loadtime.definition.Definition;
-import org.eclipse.equinox.service.weaving.ISupplementerRegistry;
-import org.eclipse.equinox.service.weaving.Supplementer;
-import org.eclipse.equinox.weaving.aspectj.AspectAdmin;
-import org.eclipse.equinox.weaving.aspectj.AspectConfiguration;
-import org.eclipse.osgi.service.resolver.BundleDescription;
-import org.eclipse.osgi.service.resolver.ExportPackageDescription;
-import org.eclipse.osgi.service.resolver.State;
-import org.eclipse.osgi.util.ManifestElement;
-import org.osgi.framework.Bundle;
-import org.osgi.framework.BundleContext;
-import org.osgi.framework.BundleException;
-import org.osgi.framework.Constants;
-
-/**
- * The aspect resolver is responsible for finding the right connections between
- * bundles and aspects. It calculates the set of aspects that should be woven
- * into a specific bundle, depending on the resolved wires of the bundle and the
- * aspects declared by the wired bundles.
- *
- * @author Martin Lippert
- */
-public class AspectResolver {
-
- private final AspectAdmin aspectAdmin;
-
- private final State state;
-
- private final ISupplementerRegistry supplementerRegistry;
-
- private final BundleContext weavingBundleContext;
-
- /**
- * Creates a new instance of an aspect resolver for the given state. This
- * resolver can be used to resolve aspect configurations for bundles. It
- * does not carry any own state, it just uses the injected components to
- * retrieve the necessary informaton to determine which aspects to weave
- * into which bundles.
- *
- * @param state The state of the OSGi framework (contains wiring
- * information)
- * @param supplementerRegistry The supplementer registry
- * @param aspectAdmin The aspect admin, which tells us which bundle exports
- * which aspects
- * @param bundleContext The bundle context in which the aspect resolver is
- * used
- */
- public AspectResolver(final State state,
- final ISupplementerRegistry supplementerRegistry,
- final AspectAdmin aspectAdmin, final BundleContext bundleContext) {
- this.state = state;
- this.supplementerRegistry = supplementerRegistry;
- this.aspectAdmin = aspectAdmin;
- this.weavingBundleContext = bundleContext;
- }
-
- /**
- * Resolve the aspects to be woven into the given bundle
- *
- * @param bundle The bundle in which the aspects should be woven into
- * @param bundleDescription The description of the bundle to be woven into
- * @return The configuration of aspects what should be woven into the bundle
- */
- public AspectConfiguration resolveAspectsFor(final Bundle bundle,
- final BundleDescription bundleDescription) {
- final List<String> fingerprintElements = new ArrayList<String>();
-
- final List<Definition> definitions = resolveAspectsForBundle(
- fingerprintElements, bundle, bundleDescription);
-
- final Definition[] foundDefinitions = definitions
- .toArray(new Definition[definitions.size()]);
-
- Collections.sort(fingerprintElements);
- final StringBuilder fingerprint = new StringBuilder();
- final Iterator<String> iterator = fingerprintElements.iterator();
- while (iterator.hasNext()) {
- final String element = iterator.next();
- fingerprint.append(element);
- fingerprint.append(';');
- }
-
- return new AspectConfiguration(bundle, foundDefinitions, fingerprint
- .toString());
- }
-
- private int getApplyAspectsPolicy(final ManifestElement[] headers,
- final String manifestValue) {
- int result = AspectAdmin.ASPECT_APPLY_POLICY_NOT_DEFINED;
-
- if (headers != null) {
- for (int i = 0; i < headers.length; i++) {
- if (headers[i].getValue().equals(manifestValue)) {
- final String directive = headers[i]
- .getDirective(AspectAdmin.ASPECT_APPLY_POLICY_DIRECTIVE);
- if ("true".equals(directive)) { //$NON-NLS-1$
- result = AspectAdmin.ASPECT_APPLY_POLICY_TRUE;
- } else if ("false".equals(directive)) { //$NON-NLS-1$
- result = AspectAdmin.ASPECT_APPLY_POLICY_FALSE;
- }
- }
- }
- }
- return result;
- }
-
- private String getBundleVersion(final Bundle bundle) {
- return state.getBundle(bundle.getBundleId()).getVersion().toString();
- }
-
- private List<Definition> resolveAspectsForBundle(
- final List<String> fingerprintElements, final Bundle bundle,
- final BundleDescription bundleDescription) {
- final List<Definition> result = new ArrayList<Definition>();
-
- if (weavingBundleContext != null) {
-
- Definition aspects = null;
-
- // fragments
- final BundleDescription[] fragments = bundleDescription
- .getFragments();
- for (int i = 0; i < fragments.length; i++) {
- final Bundle fragmentBundle = weavingBundleContext
- .getBundle(fragments[i].getBundleId());
- if (fragmentBundle != null) {
- aspects = aspectAdmin.getAspectDefinition(fragmentBundle);
- if (aspects != null) {
- result.add(aspects);
- fingerprintElements.add(fragmentBundle
- .getSymbolicName()
- + ":" //$NON-NLS-1$
- + fragments[i].getVersion().toString());
- }
- }
- }
-
- // required bundles
- final BundleDescription[] resolvedRequires = bundleDescription
- .getResolvedRequires();
- ManifestElement[] requireHeaders = null;
- if (resolvedRequires.length > 0) {
- try {
- requireHeaders = ManifestElement
- .parseHeader(Constants.REQUIRE_BUNDLE,
- (String) bundle.getHeaders().get(
- Constants.REQUIRE_BUNDLE));
- } catch (final BundleException e) {
- }
- }
- for (int i = 0; i < resolvedRequires.length; i++) {
- final Bundle requiredBundle = weavingBundleContext
- .getBundle(resolvedRequires[i].getBundleId());
- if (requiredBundle != null) {
- final int applyPolicy = getApplyAspectsPolicy(
- requireHeaders, requiredBundle.getSymbolicName());
-
- aspects = aspectAdmin.resolveRequiredBundle(requiredBundle,
- applyPolicy);
-
- if (aspects != null) {
- result.add(aspects);
- fingerprintElements.add(requiredBundle
- .getSymbolicName()
- + ":" //$NON-NLS-1$
- + resolvedRequires[i].getVersion().toString());
- }
- }
- }
-
- // imported packages
- final ExportPackageDescription[] resolvedImports = bundleDescription
- .getResolvedImports();
- ManifestElement[] importHeaders = null;
- if (resolvedImports.length > 0) {
- try {
- importHeaders = ManifestElement
- .parseHeader(Constants.IMPORT_PACKAGE,
- (String) bundle.getHeaders().get(
- Constants.IMPORT_PACKAGE));
- } catch (final BundleException e) {
- }
- }
- for (int i = 0; i < resolvedImports.length; i++) {
- final Bundle exportingBundle = weavingBundleContext
- .getBundle(resolvedImports[i].getExporter()
- .getBundleId());
- if (exportingBundle != null) {
- final String importedPackage = resolvedImports[i].getName();
-
- final int applyPolicy = getApplyAspectsPolicy(
- importHeaders, importedPackage);
-
- aspects = aspectAdmin.resolveImportedPackage(
- exportingBundle, importedPackage, applyPolicy);
-
- if (aspects != null) {
- result.add(aspects);
- fingerprintElements.add(importedPackage + ":" //$NON-NLS-1$
- + resolvedImports[i].getVersion().toString());
- }
- }
- }
-
- // supplementers
- final Supplementer[] supplementers = this.supplementerRegistry
- .getSupplementers(bundleDescription.getBundleId());
-
- for (int i = 0; i < supplementers.length; i++) {
- aspects = aspectAdmin
- .getExportedAspectDefinitions(supplementers[i]
- .getSupplementerBundle());
- if (aspects != null) {
- result.add(aspects);
- fingerprintElements.add(supplementers[i].getSymbolicName()
- + ":" //$NON-NLS-1$
- + getBundleVersion(supplementers[i]
- .getSupplementerBundle()));
- }
- }
-
- // this bundle
- aspects = aspectAdmin.getAspectDefinition(bundle);
- if (aspects != null) {
- final String finishedValue = (String) bundle.getHeaders().get(
- AspectAdmin.AOP_BUNDLE_FINISHED_HEADER);
- if (finishedValue == null
- || !AspectAdmin.AOP_BUNDLE_FINISHED_VALUE
- .equals(finishedValue)) {
- result.add(aspects);
- fingerprintElements.add(bundle.getSymbolicName() + ":" //$NON-NLS-1$
- + bundleDescription.getVersion().toString());
- }
- }
- }
-
- return result;
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.weaving.aspectj/src/org/eclipse/equinox/weaving/aspectj/loadtime/OSGiWeavingAdaptor.java b/bundles/org.eclipse.equinox.weaving.aspectj/src/org/eclipse/equinox/weaving/aspectj/loadtime/OSGiWeavingAdaptor.java
deleted file mode 100644
index 808eecf..0000000
--- a/bundles/org.eclipse.equinox.weaving.aspectj/src/org/eclipse/equinox/weaving/aspectj/loadtime/OSGiWeavingAdaptor.java
+++ /dev/null
@@ -1,126 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006, 2008, 2009 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:
- * David Knibb initial implementation
- * Matthew Webster Eclipse 3.2 changes
- * Heiko Seeberger AJDT 1.5.1 changes
- * Martin Lippert minor changes and bugfixes
- * Martin Lippert reworked
- * Martin Lippert caching of generated classes
- *******************************************************************************/
-
-package org.eclipse.equinox.weaving.aspectj.loadtime;
-
-import java.io.IOException;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.Map;
-
-import org.aspectj.weaver.IUnwovenClassFile;
-import org.aspectj.weaver.loadtime.ClassLoaderWeavingAdaptor;
-import org.eclipse.equinox.weaving.aspectj.AspectJWeavingActivator;
-
-/**
- * The weaving adaptor for AspectJs load-time weaving API that deals with the
- * OSGi specifics for load-time weaving
- */
-public class OSGiWeavingAdaptor extends ClassLoaderWeavingAdaptor {
-
- private final ClassLoader classLoader;
-
- private boolean initialized;
-
- private boolean initializing;
-
- private final String namespace;
-
- private final OSGiWeavingContext weavingContext;
-
- public OSGiWeavingAdaptor(final ClassLoader loader,
- final OSGiWeavingContext context, final String namespace) {
- super();
- this.classLoader = loader;
- this.weavingContext = context;
- this.namespace = namespace;
- }
-
- public Map<String, byte[]> getGeneratedClassesFor(final String className) {
- final Map<?, ?> generated = this.generatedClasses;
- final Map<String, byte[]> result = new HashMap<String, byte[]>();
-
- final Iterator<?> generatedClassNames = generated.keySet().iterator();
- while (generatedClassNames.hasNext()) {
- final String name = (String) generatedClassNames.next();
- final IUnwovenClassFile unwovenClass = (IUnwovenClassFile) generated
- .get(name);
-
- if (!className.equals(name)) {
- result.put(name, unwovenClass.getBytes());
- }
- }
-
- flushGeneratedClasses();
- return result;
- }
-
- /**
- * @see org.aspectj.weaver.loadtime.ClassLoaderWeavingAdaptor#getNamespace()
- */
- @Override
- public String getNamespace() {
- return namespace;
- }
-
- public void initialize() {
- if (!initializing) {
- if (!initialized) {
- initializing = true;
- super.initialize(classLoader, weavingContext);
- initialized = true;
- initializing = false;
-
- if (AspectJWeavingActivator.verbose) {
- if (isEnabled())
- System.err
- .println("[org.eclipse.equinox.weaving.aspectj] info weaving bundle '"
- + weavingContext.getClassLoaderName()
- + "'");
- else
- System.err
- .println("[org.eclipse.equinox.weaving.aspectj] info not weaving bundle '"
- + weavingContext.getClassLoaderName()
- + "'");
- }
- }
- }
- }
-
- // Bug 215177: Adapt to updated (AJ 1.5.4) super class signature:
- /**
- * @see org.aspectj.weaver.tools.WeavingAdaptor#weaveClass(java.lang.String,
- * byte[], boolean)
- */
- @Override
- public byte[] weaveClass(final String name, byte[] bytes,
- final boolean mustWeave) throws IOException {
-
- /* Avoid recursion during adaptor initialization */
- if (!initializing) {
- if (!initialized) {
- initializing = true;
- initialize(classLoader, weavingContext);
- initialized = true;
- initializing = false;
- }
- // Bug 215177: Adapt to updated (AJ 1.5.4) super class signature:
- bytes = super.weaveClass(name, bytes, mustWeave);
- }
- return bytes;
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.weaving.aspectj/src/org/eclipse/equinox/weaving/aspectj/loadtime/OSGiWeavingContext.java b/bundles/org.eclipse.equinox.weaving.aspectj/src/org/eclipse/equinox/weaving/aspectj/loadtime/OSGiWeavingContext.java
deleted file mode 100644
index d9187ae..0000000
--- a/bundles/org.eclipse.equinox.weaving.aspectj/src/org/eclipse/equinox/weaving/aspectj/loadtime/OSGiWeavingContext.java
+++ /dev/null
@@ -1,87 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006, 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:
- * David Knibb initial implementation
- * Matthew Webster Eclipse 3.2 changes
- * Martin Lippert reworked
- *******************************************************************************/
-
-package org.eclipse.equinox.weaving.aspectj.loadtime;
-
-import java.net.URL;
-import java.util.List;
-
-import org.aspectj.weaver.loadtime.DefaultWeavingContext;
-import org.aspectj.weaver.loadtime.definition.Definition;
-import org.aspectj.weaver.tools.WeavingAdaptor;
-import org.eclipse.equinox.weaving.aspectj.AspectJWeavingActivator;
-import org.eclipse.osgi.service.resolver.BundleDescription;
-
-/**
- * The weaving context for AspectJs load-time weaving API that deals with the
- * OSGi specifics for load-time weaving
- */
-public class OSGiWeavingContext extends DefaultWeavingContext {
-
- private final List<Definition> aspectDefinitions;
-
- private final BundleDescription bundleDescription;
-
- public OSGiWeavingContext(final ClassLoader loader,
- final BundleDescription bundleDescription,
- final List<Definition> aspectDefinitions) {
- super(loader);
- this.bundleDescription = bundleDescription;
- this.aspectDefinitions = aspectDefinitions;
- if (AspectJWeavingActivator.DEBUG)
- System.out.println("- WeavingContext.WeavingContext() locader="
- + loader + ", bundle="
- + bundleDescription.getSymbolicName());
- }
-
- /**
- * @see org.aspectj.weaver.loadtime.DefaultWeavingContext#getClassLoaderName()
- */
- @Override
- public String getClassLoaderName() {
- return bundleDescription.getSymbolicName();
- }
-
- /**
- * @see org.aspectj.weaver.loadtime.DefaultWeavingContext#getDefinitions(java.lang.ClassLoader,
- * org.aspectj.weaver.tools.WeavingAdaptor)
- */
- @Override
- public List getDefinitions(final ClassLoader loader,
- final WeavingAdaptor adaptor) {
- return aspectDefinitions;
- }
-
- /**
- * @see org.aspectj.weaver.loadtime.DefaultWeavingContext#getFile(java.net.URL)
- */
- @Override
- public String getFile(final URL url) {
- return getBundleIdFromURL(url) + url.getFile();
- }
-
- /**
- * @see org.aspectj.weaver.loadtime.DefaultWeavingContext#getId()
- */
- @Override
- public String getId() {
- return bundleDescription.getSymbolicName();
- }
-
- @Override
- public String toString() {
- return getClass().getName() + "[" + bundleDescription.getSymbolicName()
- + "]";
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.weaving.caching.j9/.classpath b/bundles/org.eclipse.equinox.weaving.caching.j9/.classpath
deleted file mode 100644
index 304e861..0000000
--- a/bundles/org.eclipse.equinox.weaving.caching.j9/.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.5"/>
- <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
- <classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/bundles/org.eclipse.equinox.weaving.caching.j9/.cvsignore b/bundles/org.eclipse.equinox.weaving.caching.j9/.cvsignore
deleted file mode 100644
index ba077a4..0000000
--- a/bundles/org.eclipse.equinox.weaving.caching.j9/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-bin
diff --git a/bundles/org.eclipse.equinox.weaving.caching.j9/.options b/bundles/org.eclipse.equinox.weaving.caching.j9/.options
deleted file mode 100644
index 7f5c583..0000000
--- a/bundles/org.eclipse.equinox.weaving.caching.j9/.options
+++ /dev/null
@@ -1 +0,0 @@
-org.aspectj.osgi.service.caching.j9/debug=false
diff --git a/bundles/org.eclipse.equinox.weaving.caching.j9/.project b/bundles/org.eclipse.equinox.weaving.caching.j9/.project
deleted file mode 100644
index 3443fe7..0000000
--- a/bundles/org.eclipse.equinox.weaving.caching.j9/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.equinox.weaving.caching.j9</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/bundles/org.eclipse.equinox.weaving.caching.j9/.settings/org.eclipse.core.resources.prefs b/bundles/org.eclipse.equinox.weaving.caching.j9/.settings/org.eclipse.core.resources.prefs
deleted file mode 100644
index 131a78f..0000000
--- a/bundles/org.eclipse.equinox.weaving.caching.j9/.settings/org.eclipse.core.resources.prefs
+++ /dev/null
@@ -1,3 +0,0 @@
-#Mon Aug 04 14:33:55 CEST 2008
-eclipse.preferences.version=1
-encoding/<project>=UTF-8
diff --git a/bundles/org.eclipse.equinox.weaving.caching.j9/.settings/org.eclipse.jdt.core.prefs b/bundles/org.eclipse.equinox.weaving.caching.j9/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index 14ce066..0000000
--- a/bundles/org.eclipse.equinox.weaving.caching.j9/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,329 +0,0 @@
-#Mon Aug 04 14:33:55 CEST 2008
-eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.doc.comment.support=enabled
-org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
-org.eclipse.jdt.core.compiler.problem.autoboxing=ignore
-org.eclipse.jdt.core.compiler.problem.deprecation=warning
-org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
-org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
-org.eclipse.jdt.core.compiler.problem.discouragedReference=warning
-org.eclipse.jdt.core.compiler.problem.emptyStatement=ignore
-org.eclipse.jdt.core.compiler.problem.fallthroughCase=warning
-org.eclipse.jdt.core.compiler.problem.fatalOptionalError=enabled
-org.eclipse.jdt.core.compiler.problem.fieldHiding=ignore
-org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning
-org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning
-org.eclipse.jdt.core.compiler.problem.forbiddenReference=error
-org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
-org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
-org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=warning
-org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=warning
-org.eclipse.jdt.core.compiler.problem.invalidJavadoc=warning
-org.eclipse.jdt.core.compiler.problem.invalidJavadocTags=enabled
-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsDeprecatedRef=enabled
-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsNotVisibleRef=enabled
-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsVisibility=protected
-org.eclipse.jdt.core.compiler.problem.localVariableHiding=ignore
-org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning
-org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=warning
-org.eclipse.jdt.core.compiler.problem.missingJavadocComments=warning
-org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsOverriding=enabled
-org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsVisibility=protected
-org.eclipse.jdt.core.compiler.problem.missingJavadocTagDescription=all_standard_tags
-org.eclipse.jdt.core.compiler.problem.missingJavadocTags=warning
-org.eclipse.jdt.core.compiler.problem.missingJavadocTagsOverriding=disabled
-org.eclipse.jdt.core.compiler.problem.missingJavadocTagsVisibility=protected
-org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=warning
-org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
-org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
-org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
-org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=warning
-org.eclipse.jdt.core.compiler.problem.nullReference=warning
-org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
-org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore
-org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=ignore
-org.eclipse.jdt.core.compiler.problem.potentialNullReference=ignore
-org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning
-org.eclipse.jdt.core.compiler.problem.redundantNullCheck=ignore
-org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=ignore
-org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
-org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
-org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
-org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore
-org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
-org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning
-org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore
-org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning
-org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
-org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=warning
-org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
-org.eclipse.jdt.core.compiler.problem.unusedImport=warning
-org.eclipse.jdt.core.compiler.problem.unusedLabel=warning
-org.eclipse.jdt.core.compiler.problem.unusedLocal=warning
-org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
-org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
-org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning
-org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
-org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
-org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_assignment=0
-org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
-org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80
-org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0
-org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
-org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
-org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
-org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16
-org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
-org.eclipse.jdt.core.formatter.blank_lines_after_package=1
-org.eclipse.jdt.core.formatter.blank_lines_before_field=1
-org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=1
-org.eclipse.jdt.core.formatter.blank_lines_before_imports=1
-org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1
-org.eclipse.jdt.core.formatter.blank_lines_before_method=1
-org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1
-org.eclipse.jdt.core.formatter.blank_lines_before_package=1
-org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1
-org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1
-org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=false
-org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=false
-org.eclipse.jdt.core.formatter.comment.format_block_comments=true
-org.eclipse.jdt.core.formatter.comment.format_header=false
-org.eclipse.jdt.core.formatter.comment.format_html=true
-org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true
-org.eclipse.jdt.core.formatter.comment.format_line_comments=false
-org.eclipse.jdt.core.formatter.comment.format_source_code=true
-org.eclipse.jdt.core.formatter.comment.indent_parameter_description=true
-org.eclipse.jdt.core.formatter.comment.indent_root_tags=true
-org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert
-org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=do not insert
-org.eclipse.jdt.core.formatter.comment.line_length=80
-org.eclipse.jdt.core.formatter.compact_else_if=true
-org.eclipse.jdt.core.formatter.continuation_indentation=2
-org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
-org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true
-org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true
-org.eclipse.jdt.core.formatter.indent_empty_lines=false
-org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true
-org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
-org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
-org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=false
-org.eclipse.jdt.core.formatter.indentation.size=4
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_member=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert
-org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert
-org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert
-org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert
-org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert
-org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false
-org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false
-org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=true
-org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false
-org.eclipse.jdt.core.formatter.lineSplit=80
-org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
-org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false
-org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
-org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1
-org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true
-org.eclipse.jdt.core.formatter.tabulation.char=space
-org.eclipse.jdt.core.formatter.tabulation.size=4
-org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
-org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true
diff --git a/bundles/org.eclipse.equinox.weaving.caching.j9/.settings/org.eclipse.jdt.ui.prefs b/bundles/org.eclipse.equinox.weaving.caching.j9/.settings/org.eclipse.jdt.ui.prefs
deleted file mode 100644
index 4f5015a..0000000
--- a/bundles/org.eclipse.equinox.weaving.caching.j9/.settings/org.eclipse.jdt.ui.prefs
+++ /dev/null
@@ -1,114 +0,0 @@
-#Mon Aug 04 14:33:55 CEST 2008
-cleanup.add_default_serial_version_id=false
-cleanup.add_generated_serial_version_id=true
-cleanup.add_missing_annotations=true
-cleanup.add_missing_deprecated_annotations=true
-cleanup.add_missing_methods=false
-cleanup.add_missing_nls_tags=false
-cleanup.add_missing_override_annotations=true
-cleanup.add_serial_version_id=true
-cleanup.always_use_blocks=true
-cleanup.always_use_parentheses_in_expressions=false
-cleanup.always_use_this_for_non_static_field_access=false
-cleanup.always_use_this_for_non_static_method_access=false
-cleanup.convert_to_enhanced_for_loop=false
-cleanup.correct_indentation=false
-cleanup.format_source_code=true
-cleanup.format_source_code_changes_only=false
-cleanup.make_local_variable_final=true
-cleanup.make_parameters_final=true
-cleanup.make_private_fields_final=true
-cleanup.make_type_abstract_if_missing_method=false
-cleanup.make_variable_declarations_final=true
-cleanup.never_use_blocks=false
-cleanup.never_use_parentheses_in_expressions=true
-cleanup.organize_imports=true
-cleanup.qualify_static_field_accesses_with_declaring_class=false
-cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
-cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
-cleanup.qualify_static_member_accesses_with_declaring_class=true
-cleanup.qualify_static_method_accesses_with_declaring_class=false
-cleanup.remove_private_constructors=true
-cleanup.remove_trailing_whitespaces=true
-cleanup.remove_trailing_whitespaces_all=true
-cleanup.remove_trailing_whitespaces_ignore_empty=false
-cleanup.remove_unnecessary_casts=true
-cleanup.remove_unnecessary_nls_tags=true
-cleanup.remove_unused_imports=true
-cleanup.remove_unused_local_variables=false
-cleanup.remove_unused_private_fields=true
-cleanup.remove_unused_private_members=false
-cleanup.remove_unused_private_methods=true
-cleanup.remove_unused_private_types=true
-cleanup.sort_members=true
-cleanup.sort_members_all=true
-cleanup.use_blocks=false
-cleanup.use_blocks_only_for_return_and_throw=false
-cleanup.use_parentheses_in_expressions=false
-cleanup.use_this_for_non_static_field_access=false
-cleanup.use_this_for_non_static_field_access_only_if_necessary=true
-cleanup.use_this_for_non_static_method_access=false
-cleanup.use_this_for_non_static_method_access_only_if_necessary=true
-cleanup_profile=_defaultCleanUpProfile
-cleanup_settings_version=2
-eclipse.preferences.version=1
-editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true
-formatter_profile=_defaultFormatterProfile
-formatter_settings_version=11
-org.eclipse.jdt.ui.ignorelowercasenames=true
-org.eclipse.jdt.ui.importorder=java;javax;com;de;net;org;
-org.eclipse.jdt.ui.javadoc=false
-org.eclipse.jdt.ui.ondemandthreshold=99
-org.eclipse.jdt.ui.staticondemandthreshold=99
-org.eclipse.jdt.ui.text.custom_code_templates=<?xml version\="1.0" encoding\="UTF-8"?><templates><template autoinsert\="true" context\="gettercomment_context" deleted\="false" description\="Comment for getter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.gettercomment" name\="gettercomment">/**\n * @return the ${bare_field_name}\n */</template><template autoinsert\="true" context\="settercomment_context" deleted\="false" description\="Comment for setter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.settercomment" name\="settercomment">/**\n * @param ${param} the ${bare_field_name} to set\n */</template><template autoinsert\="true" context\="constructorcomment_context" deleted\="false" description\="Comment for created constructors" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorcomment" name\="constructorcomment">/**\n * ${tags}\n */</template><template autoinsert\="false" context\="filecomment_context" deleted\="false" description\="Comment for created Java files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.filecomment" name\="filecomment">/*******************************************************************************\n * Copyright (c) 2008 ${user} and others.\n * All rights reserved. This program and the accompanying materials \n * are made available under the terms of the Eclipse Public License v1.0\n * which accompanies this distribution, and is available at\n * http\://www.eclipse.org/legal/epl-v10.html.\n * \n * Contributors\:\n * ${user} - initial implementation\n ******************************************************************************/\n</template><template autoinsert\="false" context\="typecomment_context" deleted\="false" description\="Comment for created types" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.typecomment" name\="typecomment">/**\n * @author ${user}\n * ${tags}\n */</template><template autoinsert\="true" context\="fieldcomment_context" deleted\="false" description\="Comment for fields" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.fieldcomment" name\="fieldcomment">/**\n * \n */</template><template autoinsert\="true" context\="methodcomment_context" deleted\="false" description\="Comment for non-overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodcomment" name\="methodcomment">/**\n * ${tags}\n */</template><template autoinsert\="false" context\="overridecomment_context" deleted\="false" description\="Comment for overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.overridecomment" name\="overridecomment">/**\n * ${see_to_overridden}\n */</template><template autoinsert\="true" context\="delegatecomment_context" deleted\="false" description\="Comment for delegate methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.delegatecomment" name\="delegatecomment">/**\n * ${tags}\n * ${see_to_target}\n */</template><template autoinsert\="false" context\="newtype_context" deleted\="false" description\="Newly created files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.newtype" name\="newtype">${filecomment}\n\n${package_declaration}\n\n${typecomment}\n${type_declaration}</template><template autoinsert\="true" context\="classbody_context" deleted\="false" description\="Code in new class type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.classbody" name\="classbody">\n</template><template autoinsert\="true" context\="interfacebody_context" deleted\="false" description\="Code in new interface type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.interfacebody" name\="interfacebody">\n</template><template autoinsert\="true" context\="enumbody_context" deleted\="false" description\="Code in new enum type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.enumbody" name\="enumbody">\n</template><template autoinsert\="true" context\="annotationbody_context" deleted\="false" description\="Code in new annotation type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.annotationbody" name\="annotationbody">\n</template><template autoinsert\="true" context\="catchblock_context" deleted\="false" description\="Code in new catch blocks" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.catchblock" name\="catchblock">// ${todo} Auto-generated catch block\n${exception_var}.printStackTrace();</template><template autoinsert\="true" context\="methodbody_context" deleted\="false" description\="Code in created method stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodbody" name\="methodbody">// ${todo} Auto-generated method stub\n${body_statement}</template><template autoinsert\="false" context\="constructorbody_context" deleted\="false" description\="Code in created constructor stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorbody" name\="constructorbody">// ${todo} Auto-generated constructor stub\n${body_statement}</template><template autoinsert\="true" context\="getterbody_context" deleted\="false" description\="Code in created getters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.getterbody" name\="getterbody">return ${field};</template><template autoinsert\="true" context\="setterbody_context" deleted\="false" description\="Code in created setters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.setterbody" name\="setterbody">${field} \= ${param};</template></templates>
-sp_cleanup.add_default_serial_version_id=true
-sp_cleanup.add_generated_serial_version_id=false
-sp_cleanup.add_missing_annotations=true
-sp_cleanup.add_missing_deprecated_annotations=true
-sp_cleanup.add_missing_methods=false
-sp_cleanup.add_missing_nls_tags=false
-sp_cleanup.add_missing_override_annotations=true
-sp_cleanup.add_serial_version_id=false
-sp_cleanup.always_use_blocks=true
-sp_cleanup.always_use_parentheses_in_expressions=false
-sp_cleanup.always_use_this_for_non_static_field_access=false
-sp_cleanup.always_use_this_for_non_static_method_access=false
-sp_cleanup.convert_to_enhanced_for_loop=false
-sp_cleanup.correct_indentation=false
-sp_cleanup.format_source_code=true
-sp_cleanup.format_source_code_changes_only=false
-sp_cleanup.make_local_variable_final=true
-sp_cleanup.make_parameters_final=true
-sp_cleanup.make_private_fields_final=true
-sp_cleanup.make_type_abstract_if_missing_method=false
-sp_cleanup.make_variable_declarations_final=true
-sp_cleanup.never_use_blocks=false
-sp_cleanup.never_use_parentheses_in_expressions=true
-sp_cleanup.on_save_use_additional_actions=true
-sp_cleanup.organize_imports=true
-sp_cleanup.qualify_static_field_accesses_with_declaring_class=false
-sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
-sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
-sp_cleanup.qualify_static_member_accesses_with_declaring_class=false
-sp_cleanup.qualify_static_method_accesses_with_declaring_class=false
-sp_cleanup.remove_private_constructors=true
-sp_cleanup.remove_trailing_whitespaces=true
-sp_cleanup.remove_trailing_whitespaces_all=true
-sp_cleanup.remove_trailing_whitespaces_ignore_empty=false
-sp_cleanup.remove_unnecessary_casts=true
-sp_cleanup.remove_unnecessary_nls_tags=true
-sp_cleanup.remove_unused_imports=true
-sp_cleanup.remove_unused_local_variables=false
-sp_cleanup.remove_unused_private_fields=true
-sp_cleanup.remove_unused_private_members=false
-sp_cleanup.remove_unused_private_methods=true
-sp_cleanup.remove_unused_private_types=true
-sp_cleanup.sort_members=true
-sp_cleanup.sort_members_all=true
-sp_cleanup.use_blocks=false
-sp_cleanup.use_blocks_only_for_return_and_throw=false
-sp_cleanup.use_parentheses_in_expressions=false
-sp_cleanup.use_this_for_non_static_field_access=false
-sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=true
-sp_cleanup.use_this_for_non_static_method_access=false
-sp_cleanup.use_this_for_non_static_method_access_only_if_necessary=true
diff --git a/bundles/org.eclipse.equinox.weaving.caching.j9/.settings/org.eclipse.pde.prefs b/bundles/org.eclipse.equinox.weaving.caching.j9/.settings/org.eclipse.pde.prefs
deleted file mode 100644
index d0cd502..0000000
--- a/bundles/org.eclipse.equinox.weaving.caching.j9/.settings/org.eclipse.pde.prefs
+++ /dev/null
@@ -1,22 +0,0 @@
-#Mon Aug 04 14:33:55 CEST 2008
-compilers.f.unresolved-features=1
-compilers.f.unresolved-plugins=1
-compilers.incompatible-environment=1
-compilers.p.build=1
-compilers.p.deprecated=1
-compilers.p.discouraged-class=1
-compilers.p.internal=1
-compilers.p.missing-packages=2
-compilers.p.no-required-att=0
-compilers.p.not-externalized-att=1
-compilers.p.unknown-attribute=1
-compilers.p.unknown-class=1
-compilers.p.unknown-element=1
-compilers.p.unknown-identifier=1
-compilers.p.unknown-resource=1
-compilers.p.unresolved-ex-points=0
-compilers.p.unresolved-import=0
-compilers.s.create-docs=false
-compilers.s.doc-folder=doc
-compilers.s.open-tags=1
-eclipse.preferences.version=1
diff --git a/bundles/org.eclipse.equinox.weaving.caching.j9/META-INF/MANIFEST.MF b/bundles/org.eclipse.equinox.weaving.caching.j9/META-INF/MANIFEST.MF
deleted file mode 100644
index bd21949..0000000
--- a/bundles/org.eclipse.equinox.weaving.caching.j9/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,12 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: J9 CachingService Plug-in (Incubation)
-Bundle-SymbolicName: org.eclipse.equinox.weaving.caching.j9
-Bundle-Version: 1.0.0.qualifier
-Bundle-Activator: org.eclipse.equinox.weaving.internal.caching.j9.CachingServicePlugin
-Bundle-ActivationPolicy: lazy
-Import-Package: com.ibm.oti.shared;resolution:=optional,
- org.eclipse.equinox.service.weaving,
- org.eclipse.osgi.service.debug;version="1.0.0",
- org.osgi.framework;version="1.4.0"
-Bundle-RequiredExecutionEnvironment: J2SE-1.5
diff --git a/bundles/org.eclipse.equinox.weaving.caching.j9/META-INF/p2.inf b/bundles/org.eclipse.equinox.weaving.caching.j9/META-INF/p2.inf
deleted file mode 100644
index 1fdb52e..0000000
--- a/bundles/org.eclipse.equinox.weaving.caching.j9/META-INF/p2.inf
+++ /dev/null
@@ -1,3 +0,0 @@
-instructions.configure = \
- setStartLevel(startLevel:4); \
- markStarted(started: true);
diff --git a/bundles/org.eclipse.equinox.weaving.caching.j9/build.properties b/bundles/org.eclipse.equinox.weaving.caching.j9/build.properties
deleted file mode 100644
index 02f2e5a..0000000
--- a/bundles/org.eclipse.equinox.weaving.caching.j9/build.properties
+++ /dev/null
@@ -1,6 +0,0 @@
-source.. = src/
-output.. = bin/
-bin.includes = META-INF/,\
- .,\
- .options
-jars.extra.classpath = j9stubs.jar
diff --git a/bundles/org.eclipse.equinox.weaving.caching.j9/j9stubs.jar b/bundles/org.eclipse.equinox.weaving.caching.j9/j9stubs.jar
deleted file mode 100644
index 597a2d4..0000000
--- a/bundles/org.eclipse.equinox.weaving.caching.j9/j9stubs.jar
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.equinox.weaving.caching.j9/src/org/eclipse/equinox/weaving/internal/caching/j9/CachingService.java b/bundles/org.eclipse.equinox.weaving.caching.j9/src/org/eclipse/equinox/weaving/internal/caching/j9/CachingService.java
deleted file mode 100644
index df3026c..0000000
--- a/bundles/org.eclipse.equinox.weaving.caching.j9/src/org/eclipse/equinox/weaving/internal/caching/j9/CachingService.java
+++ /dev/null
@@ -1,151 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006, 2008, 2009 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:
- * David Knibb initial implementation
- * Matthew Webster Eclipse 3.2 changes
- * Martin Lippert extracted caching service factory
- * Martin Lippert caching of generated classes
- *******************************************************************************/
-
-package org.eclipse.equinox.weaving.internal.caching.j9;
-
-import java.net.URL;
-import java.security.MessageDigest;
-import java.security.NoSuchAlgorithmException;
-import java.util.Map;
-
-import com.ibm.oti.shared.HelperAlreadyDefinedException;
-import com.ibm.oti.shared.Shared;
-import com.ibm.oti.shared.SharedClassURLHelper;
-
-import org.eclipse.equinox.service.weaving.CacheEntry;
-import org.eclipse.equinox.service.weaving.ICachingService;
-import org.osgi.framework.Bundle;
-
-public class CachingService implements ICachingService {
-
- SharedClassURLHelper urlhelper;
-
- private final Bundle bundle;
-
- private final ClassLoader classLoader;
-
- private final String partition;
-
- public CachingService(final ClassLoader loader, final Bundle bundle,
- final String key) {
- if (CachingServicePlugin.DEBUG)
- System.out.println("> CachingService.<init>() bundle="
- + bundle.getSymbolicName() + ", loader=" + loader
- + ", key='" + key + "'");
- this.bundle = bundle;
- this.classLoader = loader;
- this.partition = hashNamespace(key + bundle.getBundleId()
- + bundle.getLastModified());
- try {
- urlhelper = Shared.getSharedClassHelperFactory().getURLHelper(
- classLoader);
- } catch (final HelperAlreadyDefinedException e) {
- e.printStackTrace();
- }
- if (CachingServicePlugin.DEBUG)
- System.out.println("< CachingService.<init>() partition='"
- + partition + "', urlhelper=" + urlhelper);
- }
-
- /**
- * @see org.eclipse.equinox.service.weaving.ICachingService#canCacheGeneratedClasses()
- */
- public boolean canCacheGeneratedClasses() {
- return false;
- }
-
- /**
- * @see org.eclipse.equinox.service.weaving.ICachingService#findStoredClass(java.lang.String,
- * java.net.URL, java.lang.String)
- */
- public CacheEntry findStoredClass(final String namespace,
- final URL sourceFileURL, final String name) {
- final byte[] bytes = urlhelper.findSharedClass(partition,
- sourceFileURL, name);
- if (CachingServicePlugin.DEBUG && bytes != null)
- System.out.println("- CachingService.findStoredClass() bundle="
- + bundle.getSymbolicName() + ", name=" + name + ", url="
- + sourceFileURL + ", bytes=" + bytes);
-
- if (bytes != null) {
- return new CacheEntry(true, bytes);
- } else {
- return new CacheEntry(false, null);
- }
- }
-
- /**
- * Hash the shared class namespace using MD5
- *
- * @param keyToHash
- * @return the MD5 version of the input string
- */
- public String hashNamespace(final String namespace) {
- MessageDigest md = null;
- try {
- md = MessageDigest.getInstance("MD5");
- } catch (final NoSuchAlgorithmException e) {
- e.printStackTrace();
- }
- final byte[] bytes = md.digest(namespace.getBytes());
- final StringBuffer result = new StringBuffer();
- for (int i = 0; i < bytes.length; i++) {
- final byte b = bytes[i];
- int num;
- if (b < 0) {
- num = b + 256;
- } else {
- num = b;
- }
- String s = Integer.toHexString(num);
- while (s.length() < 2) {
- s = "0" + s;
- }
- result.append(s);
- }
- return new String(result);
- }
-
- /**
- * @see org.eclipse.equinox.service.weaving.ICachingService#stop()
- */
- public void stop() {
- }
-
- /**
- * @see org.eclipse.equinox.service.weaving.ICachingService#storeClass(java.lang.String,
- * java.net.URL, java.lang.Class, byte[])
- */
- public boolean storeClass(final String namespace, final URL sourceFileURL,
- final Class<?> clazz, final byte[] classbytes) {
- final boolean success = urlhelper.storeSharedClass(partition,
- sourceFileURL, clazz);
- if (CachingServicePlugin.DEBUG && success)
- System.out.println("- CachingService.storeClass() bundle="
- + bundle.getSymbolicName() + ", clazz=" + clazz + ", url="
- + sourceFileURL);
- return success;
- }
-
- /**
- * @see org.eclipse.equinox.service.weaving.ICachingService#storeClassAndGeneratedClasses(java.lang.String,
- * java.net.URL, java.lang.Class, byte[], java.util.Map)
- */
- public boolean storeClassAndGeneratedClasses(final String namespace,
- final URL sourceFileUrl, final Class<?> clazz,
- final byte[] classbytes, final Map<String, byte[]> generatedClasses) {
- return false;
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.weaving.caching.j9/src/org/eclipse/equinox/weaving/internal/caching/j9/CachingServiceFactory.java b/bundles/org.eclipse.equinox.weaving.caching.j9/src/org/eclipse/equinox/weaving/internal/caching/j9/CachingServiceFactory.java
deleted file mode 100644
index 6cadf16..0000000
--- a/bundles/org.eclipse.equinox.weaving.caching.j9/src/org/eclipse/equinox/weaving/internal/caching/j9/CachingServiceFactory.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006, 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:
- * David Knibb initial implementation
- * Matthew Webster Eclipse 3.2 changes
- * Martin Lippert extracted caching service factory
- *******************************************************************************/
-
-package org.eclipse.equinox.weaving.internal.caching.j9;
-
-import org.eclipse.equinox.service.weaving.ICachingService;
-import org.eclipse.equinox.service.weaving.ICachingServiceFactory;
-import org.osgi.framework.Bundle;
-
-/**
- * Factory implementation to create concrete J9 caching services for individual
- * bundles
- *
- * @author martinlippert
- */
-public class CachingServiceFactory implements ICachingServiceFactory {
-
- /**
- * @see org.eclipse.equinox.service.weaving.ICachingServiceFactory#createCachingService(java.lang.ClassLoader,
- * org.osgi.framework.Bundle, java.lang.String)
- */
- public ICachingService createCachingService(final ClassLoader classLoader,
- final Bundle bundle, final String key) {
- return new CachingService(classLoader, bundle, key);
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.weaving.caching.j9/src/org/eclipse/equinox/weaving/internal/caching/j9/CachingServicePlugin.java b/bundles/org.eclipse.equinox.weaving.caching.j9/src/org/eclipse/equinox/weaving/internal/caching/j9/CachingServicePlugin.java
deleted file mode 100644
index 3b66cee..0000000
--- a/bundles/org.eclipse.equinox.weaving.caching.j9/src/org/eclipse/equinox/weaving/internal/caching/j9/CachingServicePlugin.java
+++ /dev/null
@@ -1,125 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006, 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:
- * David Knibb initial implementation
- * Matthew Webster Eclipse 3.2 changes
- * Martin Lippert minor changes
- * Martin Lippert extracted caching service factory
- *******************************************************************************/
-
-package org.eclipse.equinox.weaving.internal.caching.j9;
-
-import com.ibm.oti.shared.Shared;
-
-import org.eclipse.equinox.service.weaving.ICachingServiceFactory;
-import org.eclipse.osgi.service.debug.DebugOptions;
-import org.osgi.framework.BundleActivator;
-import org.osgi.framework.BundleContext;
-import org.osgi.framework.ServiceReference;
-
-/**
- * The main plugin class to be used in the desktop.
- */
-public class CachingServicePlugin implements BundleActivator {
-
- public static boolean DEBUG;
-
- public static boolean verbose = Boolean
- .getBoolean("org.aspectj.osgi.verbose");
-
- /**
- * The constructor.
- */
- public CachingServicePlugin() {
- }
-
- /**
- * This method is called upon plug-in activation
- */
- public void start(final BundleContext context) throws Exception {
- if (CachingServicePlugin.DEBUG)
- System.out.println("> CachingServicePlugin.start() context="
- + context);
-
- loadOptions(context);
-
- //are we on J9?
- if (shouldRegister()) {
- if (verbose)
- System.err
- .println("[org.eclipse.equinox.weaving.caching.j9] info starting J9 caching service ...");
- final String name = ICachingServiceFactory.class.getName();
- final CachingServiceFactory cachingServiceFactory = new CachingServiceFactory();
- context.registerService(name, cachingServiceFactory, null);
- } else {
- if (verbose)
- System.err
- .println("[org.eclipse.equinox.weaving.caching.j9] warning cannot start J9 caching service");
- }
-
- if (CachingServicePlugin.DEBUG)
- System.out.println("< CachingServicePlugin.start()");
- }
-
- /**
- * This method is called when the plug-in is stopped
- */
- public void stop(final BundleContext context) throws Exception {
- }
-
- private void loadOptions(final BundleContext context) {
- // all this is only to get the application args
- DebugOptions service = null;
- final ServiceReference reference = context
- .getServiceReference(DebugOptions.class.getName());
- if (reference != null)
- service = (DebugOptions) context.getService(reference);
- if (service == null) return;
- try {
- DEBUG = service.getBooleanOption(
- "org.aspectj.osgi.service.caching.j9/debug", false);
- } finally {
- // we have what we want - release the service
- context.ungetService(reference);
- }
- }
-
- private boolean shouldRegister() {
- if (CachingServicePlugin.DEBUG)
- System.out.println("> CachingServicePlugin.shouldRegister()");
-
- boolean enabled;
- try {
- Class.forName("com.ibm.oti.vm.VM"); //if this fails we are not on J9
- final boolean sharing = Shared.isSharingEnabled(); //if not using shared classes we want a different adaptor
- if (CachingServicePlugin.DEBUG)
- System.out
- .println("- CachingServicePlugin.shouldRegister() sharing="
- + sharing);
-
- if (sharing) {
- enabled = true;
- } else {
- enabled = false;
- }
- } catch (final ClassNotFoundException ex) {
- if (CachingServicePlugin.DEBUG)
- System.out
- .println("E CachingServicePlugin.shouldRegister() ex="
- + ex);
- //not on J9
- enabled = false;
- }
-
- if (CachingServicePlugin.DEBUG)
- System.out.println("< CachingServicePlugin.shouldRegister() "
- + enabled);
- return enabled;
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.weaving.caching/.classpath b/bundles/org.eclipse.equinox.weaving.caching/.classpath
deleted file mode 100644
index 304e861..0000000
--- a/bundles/org.eclipse.equinox.weaving.caching/.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.5"/>
- <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
- <classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/bundles/org.eclipse.equinox.weaving.caching/.cvsignore b/bundles/org.eclipse.equinox.weaving.caching/.cvsignore
deleted file mode 100644
index ba077a4..0000000
--- a/bundles/org.eclipse.equinox.weaving.caching/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-bin
diff --git a/bundles/org.eclipse.equinox.weaving.caching/.options b/bundles/org.eclipse.equinox.weaving.caching/.options
deleted file mode 100644
index 847c41a..0000000
--- a/bundles/org.eclipse.equinox.weaving.caching/.options
+++ /dev/null
@@ -1 +0,0 @@
-org.eclipse.equinox.weaving.caching/debug=false
diff --git a/bundles/org.eclipse.equinox.weaving.caching/.project b/bundles/org.eclipse.equinox.weaving.caching/.project
deleted file mode 100644
index 06b2f9f..0000000
--- a/bundles/org.eclipse.equinox.weaving.caching/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.equinox.weaving.caching</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/bundles/org.eclipse.equinox.weaving.caching/.settings/org.eclipse.core.resources.prefs b/bundles/org.eclipse.equinox.weaving.caching/.settings/org.eclipse.core.resources.prefs
deleted file mode 100644
index 1edc1be..0000000
--- a/bundles/org.eclipse.equinox.weaving.caching/.settings/org.eclipse.core.resources.prefs
+++ /dev/null
@@ -1,3 +0,0 @@
-#Mon Jul 14 17:28:42 CEST 2008
-eclipse.preferences.version=1
-encoding/<project>=UTF-8
diff --git a/bundles/org.eclipse.equinox.weaving.caching/.settings/org.eclipse.jdt.core.prefs b/bundles/org.eclipse.equinox.weaving.caching/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index 68690b6..0000000
--- a/bundles/org.eclipse.equinox.weaving.caching/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,339 +0,0 @@
-#Mon Aug 04 14:32:44 CEST 2008
-eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=1.5
-org.eclipse.jdt.core.compiler.debug.lineNumber=generate
-org.eclipse.jdt.core.compiler.debug.localVariable=generate
-org.eclipse.jdt.core.compiler.debug.sourceFile=generate
-org.eclipse.jdt.core.compiler.doc.comment.support=enabled
-org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.autoboxing=ignore
-org.eclipse.jdt.core.compiler.problem.deprecation=warning
-org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
-org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
-org.eclipse.jdt.core.compiler.problem.discouragedReference=warning
-org.eclipse.jdt.core.compiler.problem.emptyStatement=ignore
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.problem.fallthroughCase=warning
-org.eclipse.jdt.core.compiler.problem.fatalOptionalError=enabled
-org.eclipse.jdt.core.compiler.problem.fieldHiding=ignore
-org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning
-org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning
-org.eclipse.jdt.core.compiler.problem.forbiddenReference=error
-org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
-org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
-org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=warning
-org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=warning
-org.eclipse.jdt.core.compiler.problem.invalidJavadoc=warning
-org.eclipse.jdt.core.compiler.problem.invalidJavadocTags=enabled
-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsDeprecatedRef=enabled
-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsNotVisibleRef=enabled
-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsVisibility=protected
-org.eclipse.jdt.core.compiler.problem.localVariableHiding=ignore
-org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning
-org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=warning
-org.eclipse.jdt.core.compiler.problem.missingJavadocComments=warning
-org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsOverriding=enabled
-org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsVisibility=protected
-org.eclipse.jdt.core.compiler.problem.missingJavadocTagDescription=all_standard_tags
-org.eclipse.jdt.core.compiler.problem.missingJavadocTags=warning
-org.eclipse.jdt.core.compiler.problem.missingJavadocTagsOverriding=disabled
-org.eclipse.jdt.core.compiler.problem.missingJavadocTagsVisibility=protected
-org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=warning
-org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
-org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
-org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
-org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=warning
-org.eclipse.jdt.core.compiler.problem.nullReference=warning
-org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
-org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore
-org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=ignore
-org.eclipse.jdt.core.compiler.problem.potentialNullReference=ignore
-org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning
-org.eclipse.jdt.core.compiler.problem.redundantNullCheck=ignore
-org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=ignore
-org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
-org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
-org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
-org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore
-org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
-org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning
-org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore
-org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning
-org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
-org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=warning
-org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
-org.eclipse.jdt.core.compiler.problem.unusedImport=warning
-org.eclipse.jdt.core.compiler.problem.unusedLabel=warning
-org.eclipse.jdt.core.compiler.problem.unusedLocal=warning
-org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
-org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
-org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning
-org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
-org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
-org.eclipse.jdt.core.compiler.source=1.5
-org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_assignment=0
-org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
-org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80
-org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0
-org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
-org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
-org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
-org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16
-org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
-org.eclipse.jdt.core.formatter.blank_lines_after_package=1
-org.eclipse.jdt.core.formatter.blank_lines_before_field=1
-org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=1
-org.eclipse.jdt.core.formatter.blank_lines_before_imports=1
-org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1
-org.eclipse.jdt.core.formatter.blank_lines_before_method=1
-org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1
-org.eclipse.jdt.core.formatter.blank_lines_before_package=1
-org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1
-org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1
-org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=false
-org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=false
-org.eclipse.jdt.core.formatter.comment.format_block_comments=true
-org.eclipse.jdt.core.formatter.comment.format_header=false
-org.eclipse.jdt.core.formatter.comment.format_html=true
-org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true
-org.eclipse.jdt.core.formatter.comment.format_line_comments=false
-org.eclipse.jdt.core.formatter.comment.format_source_code=true
-org.eclipse.jdt.core.formatter.comment.indent_parameter_description=true
-org.eclipse.jdt.core.formatter.comment.indent_root_tags=true
-org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert
-org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=do not insert
-org.eclipse.jdt.core.formatter.comment.line_length=80
-org.eclipse.jdt.core.formatter.compact_else_if=true
-org.eclipse.jdt.core.formatter.continuation_indentation=2
-org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
-org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true
-org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true
-org.eclipse.jdt.core.formatter.indent_empty_lines=false
-org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true
-org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
-org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
-org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=false
-org.eclipse.jdt.core.formatter.indentation.size=4
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_member=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert
-org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert
-org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert
-org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert
-org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert
-org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false
-org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false
-org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=true
-org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false
-org.eclipse.jdt.core.formatter.lineSplit=80
-org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
-org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false
-org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
-org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1
-org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true
-org.eclipse.jdt.core.formatter.tabulation.char=space
-org.eclipse.jdt.core.formatter.tabulation.size=4
-org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
-org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true
diff --git a/bundles/org.eclipse.equinox.weaving.caching/.settings/org.eclipse.jdt.ui.prefs b/bundles/org.eclipse.equinox.weaving.caching/.settings/org.eclipse.jdt.ui.prefs
deleted file mode 100644
index b9a2bb7..0000000
--- a/bundles/org.eclipse.equinox.weaving.caching/.settings/org.eclipse.jdt.ui.prefs
+++ /dev/null
@@ -1,114 +0,0 @@
-#Mon Jul 14 17:28:42 CEST 2008
-cleanup.add_default_serial_version_id=false
-cleanup.add_generated_serial_version_id=true
-cleanup.add_missing_annotations=true
-cleanup.add_missing_deprecated_annotations=true
-cleanup.add_missing_methods=false
-cleanup.add_missing_nls_tags=false
-cleanup.add_missing_override_annotations=true
-cleanup.add_serial_version_id=true
-cleanup.always_use_blocks=true
-cleanup.always_use_parentheses_in_expressions=false
-cleanup.always_use_this_for_non_static_field_access=false
-cleanup.always_use_this_for_non_static_method_access=false
-cleanup.convert_to_enhanced_for_loop=false
-cleanup.correct_indentation=false
-cleanup.format_source_code=true
-cleanup.format_source_code_changes_only=false
-cleanup.make_local_variable_final=true
-cleanup.make_parameters_final=true
-cleanup.make_private_fields_final=true
-cleanup.make_type_abstract_if_missing_method=false
-cleanup.make_variable_declarations_final=true
-cleanup.never_use_blocks=false
-cleanup.never_use_parentheses_in_expressions=true
-cleanup.organize_imports=true
-cleanup.qualify_static_field_accesses_with_declaring_class=false
-cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
-cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
-cleanup.qualify_static_member_accesses_with_declaring_class=true
-cleanup.qualify_static_method_accesses_with_declaring_class=false
-cleanup.remove_private_constructors=true
-cleanup.remove_trailing_whitespaces=true
-cleanup.remove_trailing_whitespaces_all=true
-cleanup.remove_trailing_whitespaces_ignore_empty=false
-cleanup.remove_unnecessary_casts=true
-cleanup.remove_unnecessary_nls_tags=true
-cleanup.remove_unused_imports=true
-cleanup.remove_unused_local_variables=false
-cleanup.remove_unused_private_fields=true
-cleanup.remove_unused_private_members=false
-cleanup.remove_unused_private_methods=true
-cleanup.remove_unused_private_types=true
-cleanup.sort_members=true
-cleanup.sort_members_all=true
-cleanup.use_blocks=false
-cleanup.use_blocks_only_for_return_and_throw=false
-cleanup.use_parentheses_in_expressions=false
-cleanup.use_this_for_non_static_field_access=false
-cleanup.use_this_for_non_static_field_access_only_if_necessary=true
-cleanup.use_this_for_non_static_method_access=false
-cleanup.use_this_for_non_static_method_access_only_if_necessary=true
-cleanup_profile=_defaultCleanUpProfile
-cleanup_settings_version=2
-eclipse.preferences.version=1
-editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true
-formatter_profile=_defaultFormatterProfile
-formatter_settings_version=11
-org.eclipse.jdt.ui.ignorelowercasenames=true
-org.eclipse.jdt.ui.importorder=java;javax;com;de;net;org;
-org.eclipse.jdt.ui.javadoc=false
-org.eclipse.jdt.ui.ondemandthreshold=99
-org.eclipse.jdt.ui.staticondemandthreshold=99
-org.eclipse.jdt.ui.text.custom_code_templates=<?xml version\="1.0" encoding\="UTF-8"?><templates><template autoinsert\="true" context\="gettercomment_context" deleted\="false" description\="Comment for getter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.gettercomment" name\="gettercomment">/**\n * @return the ${bare_field_name}\n */</template><template autoinsert\="true" context\="settercomment_context" deleted\="false" description\="Comment for setter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.settercomment" name\="settercomment">/**\n * @param ${param} the ${bare_field_name} to set\n */</template><template autoinsert\="true" context\="constructorcomment_context" deleted\="false" description\="Comment for created constructors" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorcomment" name\="constructorcomment">/**\n * ${tags}\n */</template><template autoinsert\="false" context\="filecomment_context" deleted\="false" description\="Comment for created Java files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.filecomment" name\="filecomment">/*******************************************************************************\n * Copyright (c) 2008 ${user} and others.\n * All rights reserved. This program and the accompanying materials \n * are made available under the terms of the Eclipse Public License v1.0\n * which accompanies this distribution, and is available at\n * http\://www.eclipse.org/legal/epl-v10.html.\n * \n * Contributors\:\n * ${user} - initial implementation\n ******************************************************************************/\n</template><template autoinsert\="false" context\="typecomment_context" deleted\="false" description\="Comment for created types" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.typecomment" name\="typecomment">/**\n * @author ${user}\n * ${tags}\n */</template><template autoinsert\="true" context\="fieldcomment_context" deleted\="false" description\="Comment for fields" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.fieldcomment" name\="fieldcomment">/**\n * \n */</template><template autoinsert\="true" context\="methodcomment_context" deleted\="false" description\="Comment for non-overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodcomment" name\="methodcomment">/**\n * ${tags}\n */</template><template autoinsert\="false" context\="overridecomment_context" deleted\="false" description\="Comment for overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.overridecomment" name\="overridecomment">/**\n * ${see_to_overridden}\n */</template><template autoinsert\="true" context\="delegatecomment_context" deleted\="false" description\="Comment for delegate methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.delegatecomment" name\="delegatecomment">/**\n * ${tags}\n * ${see_to_target}\n */</template><template autoinsert\="false" context\="newtype_context" deleted\="false" description\="Newly created files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.newtype" name\="newtype">${filecomment}\n\n${package_declaration}\n\n${typecomment}\n${type_declaration}</template><template autoinsert\="true" context\="classbody_context" deleted\="false" description\="Code in new class type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.classbody" name\="classbody">\n</template><template autoinsert\="true" context\="interfacebody_context" deleted\="false" description\="Code in new interface type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.interfacebody" name\="interfacebody">\n</template><template autoinsert\="true" context\="enumbody_context" deleted\="false" description\="Code in new enum type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.enumbody" name\="enumbody">\n</template><template autoinsert\="true" context\="annotationbody_context" deleted\="false" description\="Code in new annotation type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.annotationbody" name\="annotationbody">\n</template><template autoinsert\="true" context\="catchblock_context" deleted\="false" description\="Code in new catch blocks" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.catchblock" name\="catchblock">// ${todo} Auto-generated catch block\n${exception_var}.printStackTrace();</template><template autoinsert\="true" context\="methodbody_context" deleted\="false" description\="Code in created method stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodbody" name\="methodbody">// ${todo} Auto-generated method stub\n${body_statement}</template><template autoinsert\="false" context\="constructorbody_context" deleted\="false" description\="Code in created constructor stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorbody" name\="constructorbody">// ${todo} Auto-generated constructor stub\n${body_statement}</template><template autoinsert\="true" context\="getterbody_context" deleted\="false" description\="Code in created getters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.getterbody" name\="getterbody">return ${field};</template><template autoinsert\="true" context\="setterbody_context" deleted\="false" description\="Code in created setters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.setterbody" name\="setterbody">${field} \= ${param};</template></templates>
-sp_cleanup.add_default_serial_version_id=true
-sp_cleanup.add_generated_serial_version_id=false
-sp_cleanup.add_missing_annotations=true
-sp_cleanup.add_missing_deprecated_annotations=true
-sp_cleanup.add_missing_methods=false
-sp_cleanup.add_missing_nls_tags=false
-sp_cleanup.add_missing_override_annotations=true
-sp_cleanup.add_serial_version_id=false
-sp_cleanup.always_use_blocks=true
-sp_cleanup.always_use_parentheses_in_expressions=false
-sp_cleanup.always_use_this_for_non_static_field_access=false
-sp_cleanup.always_use_this_for_non_static_method_access=false
-sp_cleanup.convert_to_enhanced_for_loop=false
-sp_cleanup.correct_indentation=false
-sp_cleanup.format_source_code=true
-sp_cleanup.format_source_code_changes_only=false
-sp_cleanup.make_local_variable_final=true
-sp_cleanup.make_parameters_final=true
-sp_cleanup.make_private_fields_final=true
-sp_cleanup.make_type_abstract_if_missing_method=false
-sp_cleanup.make_variable_declarations_final=true
-sp_cleanup.never_use_blocks=false
-sp_cleanup.never_use_parentheses_in_expressions=true
-sp_cleanup.on_save_use_additional_actions=true
-sp_cleanup.organize_imports=true
-sp_cleanup.qualify_static_field_accesses_with_declaring_class=false
-sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
-sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
-sp_cleanup.qualify_static_member_accesses_with_declaring_class=false
-sp_cleanup.qualify_static_method_accesses_with_declaring_class=false
-sp_cleanup.remove_private_constructors=true
-sp_cleanup.remove_trailing_whitespaces=true
-sp_cleanup.remove_trailing_whitespaces_all=true
-sp_cleanup.remove_trailing_whitespaces_ignore_empty=false
-sp_cleanup.remove_unnecessary_casts=true
-sp_cleanup.remove_unnecessary_nls_tags=true
-sp_cleanup.remove_unused_imports=true
-sp_cleanup.remove_unused_local_variables=false
-sp_cleanup.remove_unused_private_fields=true
-sp_cleanup.remove_unused_private_members=false
-sp_cleanup.remove_unused_private_methods=true
-sp_cleanup.remove_unused_private_types=true
-sp_cleanup.sort_members=true
-sp_cleanup.sort_members_all=true
-sp_cleanup.use_blocks=false
-sp_cleanup.use_blocks_only_for_return_and_throw=false
-sp_cleanup.use_parentheses_in_expressions=false
-sp_cleanup.use_this_for_non_static_field_access=false
-sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=true
-sp_cleanup.use_this_for_non_static_method_access=false
-sp_cleanup.use_this_for_non_static_method_access_only_if_necessary=true
diff --git a/bundles/org.eclipse.equinox.weaving.caching/.settings/org.eclipse.pde.core.prefs b/bundles/org.eclipse.equinox.weaving.caching/.settings/org.eclipse.pde.core.prefs
deleted file mode 100644
index efde3d1..0000000
--- a/bundles/org.eclipse.equinox.weaving.caching/.settings/org.eclipse.pde.core.prefs
+++ /dev/null
@@ -1,4 +0,0 @@
-#Sun Jan 13 21:33:28 CET 2008
-eclipse.preferences.version=1
-pluginProject.extensions=false
-resolve.requirebundle=false
diff --git a/bundles/org.eclipse.equinox.weaving.caching/.settings/org.eclipse.pde.prefs b/bundles/org.eclipse.equinox.weaving.caching/.settings/org.eclipse.pde.prefs
deleted file mode 100644
index 37d9082..0000000
--- a/bundles/org.eclipse.equinox.weaving.caching/.settings/org.eclipse.pde.prefs
+++ /dev/null
@@ -1,23 +0,0 @@
-#Mon Jul 14 17:28:40 CEST 2008
-compilers.f.unresolved-features=1
-compilers.f.unresolved-plugins=1
-compilers.incompatible-environment=1
-compilers.p.build=1
-compilers.p.deprecated=1
-compilers.p.discouraged-class=1
-compilers.p.internal=1
-compilers.p.missing-packages=2
-compilers.p.no-required-att=0
-compilers.p.not-externalized-att=1
-compilers.p.unknown-attribute=1
-compilers.p.unknown-class=1
-compilers.p.unknown-element=1
-compilers.p.unknown-identifier=1
-compilers.p.unknown-resource=1
-compilers.p.unresolved-ex-points=0
-compilers.p.unresolved-import=0
-compilers.s.create-docs=false
-compilers.s.doc-folder=doc
-compilers.s.open-tags=1
-compilers.use-project=true
-eclipse.preferences.version=1
diff --git a/bundles/org.eclipse.equinox.weaving.caching/META-INF/MANIFEST.MF b/bundles/org.eclipse.equinox.weaving.caching/META-INF/MANIFEST.MF
deleted file mode 100644
index bd51e3b..0000000
--- a/bundles/org.eclipse.equinox.weaving.caching/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,13 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-SymbolicName: org.eclipse.equinox.weaving.caching
-Bundle-Version: 1.0.0.qualifier
-Bundle-Name: Standard Caching Service for Equinox Aspects (Incubation)
-Bundle-RequiredExecutionEnvironment: J2SE-1.5
-Bundle-Activator: org.eclipse.equinox.weaving.internal.caching.Activator
-Import-Package: com.ibm.oti.shared;resolution:=optional,
- org.eclipse.equinox.service.weaving,
- org.eclipse.osgi.service.datalocation;version="1.0.0",
- org.eclipse.osgi.service.debug;version="1.0.0",
- org.osgi.framework;version="1.4.0"
-Export-Package: org.eclipse.equinox.weaving.internal.caching;x-friends:="org.aspectj.osgi.service.caching.test"
diff --git a/bundles/org.eclipse.equinox.weaving.caching/META-INF/p2.inf b/bundles/org.eclipse.equinox.weaving.caching/META-INF/p2.inf
deleted file mode 100644
index c89ea93..0000000
--- a/bundles/org.eclipse.equinox.weaving.caching/META-INF/p2.inf
+++ /dev/null
@@ -1,3 +0,0 @@
-instructions.configure = \
- setStartLevel(startLevel:4); \
- markStarted(started: true);
diff --git a/bundles/org.eclipse.equinox.weaving.caching/build.properties b/bundles/org.eclipse.equinox.weaving.caching/build.properties
deleted file mode 100644
index 34d2e4d..0000000
--- a/bundles/org.eclipse.equinox.weaving.caching/build.properties
+++ /dev/null
@@ -1,4 +0,0 @@
-source.. = src/
-output.. = bin/
-bin.includes = META-INF/,\
- .
diff --git a/bundles/org.eclipse.equinox.weaving.caching/src/org/eclipse/equinox/weaving/internal/caching/Activator.java b/bundles/org.eclipse.equinox.weaving.caching/src/org/eclipse/equinox/weaving/internal/caching/Activator.java
deleted file mode 100644
index fb56c9f..0000000
--- a/bundles/org.eclipse.equinox.weaving.caching/src/org/eclipse/equinox/weaving/internal/caching/Activator.java
+++ /dev/null
@@ -1,125 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008 Heiko Seeberger 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:
- * Heiko Seeberger initial implementation
- * Martin Lippert extracted caching service factory
- *******************************************************************************/
-
-package org.eclipse.equinox.weaving.internal.caching;
-
-import java.lang.reflect.InvocationTargetException;
-import java.lang.reflect.Method;
-
-import org.eclipse.equinox.service.weaving.ICachingService;
-import org.eclipse.equinox.service.weaving.ICachingServiceFactory;
-import org.eclipse.osgi.service.debug.DebugOptions;
-import org.osgi.framework.BundleActivator;
-import org.osgi.framework.BundleContext;
-import org.osgi.framework.ServiceReference;
-import org.osgi.framework.ServiceRegistration;
-
-/**
- * {@link BundleActivator} for "org.aspectj.osgi.service.caching".
- *
- * @author Heiko Seeberger
- */
-public class Activator implements BundleActivator {
-
- private static boolean verbose = Boolean
- .getBoolean("org.aspectj.osgi.verbose"); //$NON-NLS-1$
-
- private CachingServiceFactory cachingServiceFactory;
-
- private ServiceRegistration cachingServiceFactoryRegistration;
-
- /**
- * Registers a new {@link CachingServiceFactory} instance as OSGi service
- * under the interface {@link ICachingService}.
- *
- * @see org.osgi.framework.BundleActivator#start(org.osgi.framework.BundleContext)
- */
- public void start(final BundleContext bundleContext) {
- setDebugEnabled(bundleContext);
-
- if (shouldRegister()) {
- if (verbose)
- System.err
- .println("[org.eclipse.equinox.weaving.caching] info starting standard caching service ..."); //$NON-NLS-1$
- registerCachingServiceFactory(bundleContext);
- } else {
- if (verbose)
- System.err
- .println("[org.eclipse.equinox.weaving.caching] warning cannot start standard caching service on J9 VM"); //$NON-NLS-1$
- }
- }
-
- /**
- * Shuts down the {@link CachingServiceFactory}.
- *
- * @see org.osgi.framework.BundleActivator#stop(org.osgi.framework.BundleContext)
- */
- public void stop(final BundleContext context) {
- cachingServiceFactory.stop();
- cachingServiceFactoryRegistration.unregister();
- if (Log.isDebugEnabled()) {
- Log.debug("Shut down and unregistered SingletonCachingService."); //$NON-NLS-1$
- }
- }
-
- private void registerCachingServiceFactory(final BundleContext bundleContext) {
- cachingServiceFactory = new CachingServiceFactory(bundleContext);
- cachingServiceFactoryRegistration = bundleContext.registerService(
- ICachingServiceFactory.class.getName(), cachingServiceFactory,
- null);
- if (Log.isDebugEnabled()) {
- Log.debug("Created and registered SingletonCachingService."); //$NON-NLS-1$
- }
- }
-
- private void setDebugEnabled(final BundleContext bundleContext) {
- final ServiceReference debugOptionsReference = bundleContext
- .getServiceReference(DebugOptions.class.getName());
- if (debugOptionsReference != null) {
- final DebugOptions debugOptions = (DebugOptions) bundleContext
- .getService(debugOptionsReference);
- if (debugOptions != null) {
- Log.debugEnabled = debugOptions.getBooleanOption(
- "org.eclipse.equinox.weaving.caching/debug", false); //$NON-NLS-1$
- }
- }
- if (debugOptionsReference != null) {
- bundleContext.ungetService(debugOptionsReference);
- }
- }
-
- private boolean shouldRegister() {
- boolean enabled = true;
- try {
- Class.forName("com.ibm.oti.vm.VM"); // if this fails we are not on J9 //$NON-NLS-1$
- final Class<?> sharedClass = Class
- .forName("com.ibm.oti.shared.Shared"); //$NON-NLS-1$
- final Method isSharingEnabledMethod = sharedClass.getMethod(
- "isSharingEnabled", (Class[]) null); //$NON-NLS-1$
- if (isSharingEnabledMethod != null) {
- final Boolean sharing = (Boolean) isSharingEnabledMethod
- .invoke(null, (Object[]) null);
- if (sharing != null && sharing.booleanValue()) {
- enabled = false;
- }
- }
- } catch (final ClassNotFoundException ex) {
- } catch (final SecurityException e) {
- } catch (final NoSuchMethodException e) {
- } catch (final IllegalArgumentException e) {
- } catch (final IllegalAccessException e) {
- } catch (final InvocationTargetException e) {
- }
-
- return enabled;
- }
-}
diff --git a/bundles/org.eclipse.equinox.weaving.caching/src/org/eclipse/equinox/weaving/internal/caching/BundleCachingService.java b/bundles/org.eclipse.equinox.weaving.caching/src/org/eclipse/equinox/weaving/internal/caching/BundleCachingService.java
deleted file mode 100644
index 2cf38a9..0000000
--- a/bundles/org.eclipse.equinox.weaving.caching/src/org/eclipse/equinox/weaving/internal/caching/BundleCachingService.java
+++ /dev/null
@@ -1,264 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008, 2009 Heiko Seeberger 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:
- * Heiko Seeberger - initial implementation
- * Martin Lippert - asynchronous cache writing
- * Martin Lippert - caching of generated classes
- *******************************************************************************/
-
-package org.eclipse.equinox.weaving.internal.caching;
-
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.IOException;
-import java.io.InputStream;
-import java.net.URL;
-import java.security.MessageDigest;
-import java.security.NoSuchAlgorithmException;
-import java.text.MessageFormat;
-import java.util.Map;
-import java.util.concurrent.BlockingQueue;
-
-import org.eclipse.equinox.service.weaving.CacheEntry;
-import org.eclipse.equinox.service.weaving.ICachingService;
-import org.osgi.framework.Bundle;
-import org.osgi.framework.BundleContext;
-
-/**
- * <p>
- * {@link ICachingService} instantiated by {@link CachingServiceFactory} for
- * each bundle.
- * </p>
- * <p>
- *
- * @author Heiko Seeberger
- * @author Martin Lippert
- */
-public class BundleCachingService implements ICachingService {
-
- private static final int READ_BUFFER_SIZE = 8 * 1024;
-
- private final Bundle bundle;
-
- private File cacheDirectory;
-
- private final String cacheKey;
-
- private final BlockingQueue<CacheItem> cacheWriterQueue;
-
- /**
- * @param bundleContext Must not be null!
- * @param bundle Must not be null!
- * @param key Must not be null!
- * @param cacheWriterQueue The queue for items to be written to the cache,
- * must not be null
- * @throws IllegalArgumentException if given bundleContext or bundle is
- * null.
- */
- public BundleCachingService(final BundleContext bundleContext,
- final Bundle bundle, final String key,
- final BlockingQueue<CacheItem> cacheWriterQueue) {
-
- if (bundleContext == null) {
- throw new IllegalArgumentException(
- "Argument \"bundleContext\" must not be null!"); //$NON-NLS-1$
- }
- if (bundle == null) {
- throw new IllegalArgumentException(
- "Argument \"bundle\" must not be null!"); //$NON-NLS-1$
- }
- if (key == null) {
- throw new IllegalArgumentException(
- "Argument \"key\" must not be null!"); //$NON-NLS-1$
- }
-
- this.bundle = bundle;
- this.cacheKey = hashNamespace(key);
- this.cacheWriterQueue = cacheWriterQueue;
-
- final File dataFile = bundleContext.getDataFile(cacheKey);
- if (dataFile != null) {
- final String bundleCacheDir = bundle.getBundleId()
- + "-" + bundle.getLastModified(); //$NON-NLS-1$
- cacheDirectory = new File(dataFile, bundleCacheDir);
- } else {
- Log.error("Cannot initialize cache!", null); //$NON-NLS-1$
- }
- }
-
- /**
- * @see org.eclipse.equinox.service.weaving.ICachingService#canCacheGeneratedClasses()
- */
- public boolean canCacheGeneratedClasses() {
- return true;
- }
-
- /**
- * @see org.eclipse.equinox.service.weaving.ICachingService#findStoredClass(java.lang.String,
- * java.net.URL, java.lang.String)
- */
- public CacheEntry findStoredClass(final String namespace,
- final URL sourceFileURL, final String name) {
-
- if (name == null) {
- throw new IllegalArgumentException(
- "Argument \"name\" must not be null!"); //$NON-NLS-1$
- }
-
- byte[] storedClass = null;
- boolean isCached = false;
-
- if (cacheDirectory != null) {
- final File cachedBytecodeFile = new File(cacheDirectory, name);
- storedClass = read(name, cachedBytecodeFile);
- isCached = storedClass != null;
- }
-
- if (Log.isDebugEnabled()) {
- Log.debug(MessageFormat.format("for [{0}]: {1} {2}", bundle //$NON-NLS-1$
- .getSymbolicName(), ((storedClass != null) ? "Found" //$NON-NLS-1$
- : "Found NOT"), name)); //$NON-NLS-1$
- }
- return new CacheEntry(isCached, storedClass);
- }
-
- /**
- * Writes the remaining cache to disk.
- */
- public void stop() {
- }
-
- /**
- * @see org.eclipse.equinox.service.weaving.ICachingService#storeClass(java.lang.String,
- * java.net.URL, java.lang.Class, byte[])
- */
- public boolean storeClass(final String namespace, final URL sourceFileURL,
- final Class<?> clazz, final byte[] classbytes) {
- if (clazz == null) {
- throw new IllegalArgumentException(
- "Argument \"clazz\" must not be null!"); //$NON-NLS-1$
- }
- if (classbytes == null) {
- throw new IllegalArgumentException(
- "Argument \"classbytes\" must not be null!"); //$NON-NLS-1$
- }
- if (cacheDirectory == null) {
- return false;
- }
-
- final CacheItem item = new CacheItem(classbytes, cacheDirectory
- .getAbsolutePath(), clazz.getName());
-
- return this.cacheWriterQueue.offer(item);
- }
-
- /**
- * @see org.eclipse.equinox.service.weaving.ICachingService#storeClassAndGeneratedClasses(java.lang.String,
- * java.net.URL, java.lang.Class, byte[], java.util.Map)
- */
- public boolean storeClassAndGeneratedClasses(final String namespace,
- final URL sourceFileUrl, final Class<?> clazz,
- final byte[] classbytes, final Map<String, byte[]> generatedClasses) {
-
- final CacheItem item = new CacheItem(classbytes, cacheDirectory
- .getAbsolutePath(), clazz.getName(), generatedClasses);
-
- return this.cacheWriterQueue.offer(item);
- }
-
- /**
- * Hash the shared class namespace using MD5
- *
- * @param keyToHash
- * @return the MD5 version of the input string
- */
- private String hashNamespace(final String namespace) {
- MessageDigest md = null;
- try {
- md = MessageDigest.getInstance("MD5"); //$NON-NLS-1$
- } catch (final NoSuchAlgorithmException e) {
- e.printStackTrace();
- }
- final byte[] bytes = md.digest(namespace.getBytes());
- final StringBuffer result = new StringBuffer();
- for (final byte b : bytes) {
- int num;
- if (b < 0) {
- num = b + 256;
- } else {
- num = b;
- }
- String s = Integer.toHexString(num);
- while (s.length() < 2) {
- s = "0" + s; //$NON-NLS-1$
- }
- result.append(s);
- }
- return new String(result);
- }
-
- private byte[] read(final String name, final File file) {
- int length = (int) file.length();
-
- InputStream in = null;
- try {
- byte[] classbytes = new byte[length];
- int bytesread = 0;
- int readcount;
-
- in = new FileInputStream(file);
-
- if (length > 0) {
- classbytes = new byte[length];
- for (; bytesread < length; bytesread += readcount) {
- readcount = in.read(classbytes, bytesread, length
- - bytesread);
- if (readcount <= 0) /* if we didn't read anything */
- break; /* leave the loop */
- }
- } else /* BundleEntry does not know its own length! */{
- length = READ_BUFFER_SIZE;
- classbytes = new byte[length];
- readloop: while (true) {
- for (; bytesread < length; bytesread += readcount) {
- readcount = in.read(classbytes, bytesread, length
- - bytesread);
- if (readcount <= 0) /* if we didn't read anything */
- break readloop; /* leave the loop */
- }
- final byte[] oldbytes = classbytes;
- length += READ_BUFFER_SIZE;
- classbytes = new byte[length];
- System.arraycopy(oldbytes, 0, classbytes, 0, bytesread);
- }
- }
- if (classbytes.length > bytesread) {
- final byte[] oldbytes = classbytes;
- classbytes = new byte[bytesread];
- System.arraycopy(oldbytes, 0, classbytes, 0, bytesread);
- }
- return classbytes;
- } catch (final IOException e) {
- Log.debug(MessageFormat.format(
- "for [{0}]: Cannot read [1] from cache!", bundle //$NON-NLS-1$
- .getSymbolicName(), name));
- return null;
- } finally {
- if (in != null) {
- try {
- in.close();
- } catch (final IOException e) {
- Log.error(MessageFormat.format(
- "for [{0}]: Cannot close cache file for [1]!", //$NON-NLS-1$
- bundle.getSymbolicName(), name), e);
- }
- }
- }
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.weaving.caching/src/org/eclipse/equinox/weaving/internal/caching/CacheItem.java b/bundles/org.eclipse.equinox.weaving.caching/src/org/eclipse/equinox/weaving/internal/caching/CacheItem.java
deleted file mode 100644
index 7d07e59..0000000
--- a/bundles/org.eclipse.equinox.weaving.caching/src/org/eclipse/equinox/weaving/internal/caching/CacheItem.java
+++ /dev/null
@@ -1,92 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2009 Martin Lippert 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:
- * Martin Lippert - initial implementation
- * Martin Lippert - caching of generated classes
- *******************************************************************************/
-
-package org.eclipse.equinox.weaving.internal.caching;
-
-import java.util.Map;
-
-/**
- * A CacheItem contains the necessary information to store the cached bytecode
- * of a class to the cache disk storage.
- *
- * @author Martin Lippert
- */
-public class CacheItem {
-
- private final byte[] cachedBytes;
-
- private final String directory;
-
- private final Map<String, byte[]> generatedClasses;
-
- private final String name;
-
- /**
- * Create a new item to be cached
- *
- * @param cachedBytes The bytes to be written to the cache
- * @param directory The directory to where the bytes should be stored
- * @param name The name of the file to store the bytes in
- */
- public CacheItem(final byte[] cachedBytes, final String directory,
- final String name) {
- this(cachedBytes, directory, name, null);
- }
-
- /**
- * Create a new item to be cached
- *
- * @param cachedBytes The bytes to be written to the cache
- * @param directory The directory to where the bytes should be stored
- * @param name The name of the file to store the bytes in
- * @param generatedClasses The generated classes that should be stored
- * together with this item (className -> bytecode)
- */
- public CacheItem(final byte[] cachedBytes, final String directory,
- final String name, final Map<String, byte[]> generatedClasses) {
- this.cachedBytes = cachedBytes;
- this.directory = directory;
- this.name = name;
- this.generatedClasses = generatedClasses;
- }
-
- /**
- * @return The bytes to be written to the cache under the given name
- */
- public byte[] getCachedBytes() {
- return cachedBytes;
- }
-
- /**
- * @return The directory in which the item should be stored
- */
- public String getDirectory() {
- return directory;
- }
-
- /**
- * @return A map containing the generated classes (name -> bytecode) for
- * this item or null, if there are no generated classes with this
- * one
- */
- public Map<String, byte[]> getGeneratedClasses() {
- return generatedClasses;
- }
-
- /**
- * @return The name of the file to be written to the cache
- */
- public String getName() {
- return name;
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.weaving.caching/src/org/eclipse/equinox/weaving/internal/caching/CacheWriter.java b/bundles/org.eclipse.equinox.weaving.caching/src/org/eclipse/equinox/weaving/internal/caching/CacheWriter.java
deleted file mode 100644
index eaf2cd7..0000000
--- a/bundles/org.eclipse.equinox.weaving.caching/src/org/eclipse/equinox/weaving/internal/caching/CacheWriter.java
+++ /dev/null
@@ -1,135 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2009 Martin Lippert 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:
- * Martin Lippert - initial implementation
- * Martin Lippert - caching of generated classes
- *******************************************************************************/
-
-package org.eclipse.equinox.weaving.internal.caching;
-
-import java.io.BufferedOutputStream;
-import java.io.DataOutputStream;
-import java.io.File;
-import java.io.FileNotFoundException;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.util.Iterator;
-import java.util.Map;
-import java.util.concurrent.BlockingQueue;
-
-/**
- * The CacheWriter is responsible to store cache items to disk. The cache items
- * are read from the given queue.
- *
- * @author Martin Lippert
- */
-public class CacheWriter {
-
- private final Thread writerThread;
-
- /**
- * Create a new cache writer for the given queue of cache items
- *
- * @param cacheQueue The blocking queue that delivers the cache items to
- * store to this cache writer
- */
- public CacheWriter(final BlockingQueue<CacheItem> cacheQueue) {
- this.writerThread = new Thread(new Runnable() {
-
- public void run() {
- try {
- while (true) {
- final CacheItem item = cacheQueue.take();
- try {
- store(item);
- } catch (final IOException ioe) {
- // storing in cache failed, do nothing
- }
- }
- } catch (final InterruptedException e) {
- }
- }
- });
- this.writerThread.setPriority(Thread.MIN_PRIORITY);
- }
-
- /**
- * start the cache writers work (creates a new thread to work on the queue)
- */
- public void start() {
- this.writerThread.start();
- }
-
- /**
- * stops the cache writer
- */
- public void stop() {
- this.writerThread.interrupt();
- }
-
- /**
- * store the cache item to disk
- *
- * This operation creates the appropriate directory for the cache item if it
- * does not exist
- *
- * @param item the cache item to store to disc
- * @throws IOException if an error occurs while writing to the cache
- */
- protected void store(final CacheItem item) throws IOException {
-
- // write out generated classes first
- final Map<String, byte[]> generatedClasses = item.getGeneratedClasses();
- if (generatedClasses != null) {
- final Iterator<String> generatedClassNames = generatedClasses
- .keySet().iterator();
- while (generatedClassNames.hasNext()) {
- final String className = generatedClassNames.next();
- final byte[] classBytes = generatedClasses.get(className);
- storeSingleClass(className, classBytes, item.getDirectory());
- }
- }
-
- // write out the woven class
- storeSingleClass(item.getName(), item.getCachedBytes(), item
- .getDirectory());
- }
-
- private void storeSingleClass(final String className,
- final byte[] classBytes, final String cacheDirectory)
- throws FileNotFoundException, IOException {
- DataOutputStream outCache = null;
- FileOutputStream fosCache = null;
- try {
- final File directory = new File(cacheDirectory);
- if (!directory.exists()) {
- directory.mkdirs();
- }
-
- fosCache = new FileOutputStream(new File(directory, className));
- outCache = new DataOutputStream(new BufferedOutputStream(fosCache));
-
- outCache.write(classBytes);
- } finally {
- if (outCache != null) {
- try {
- outCache.flush();
- fosCache.getFD().sync();
- } catch (final IOException e) {
- // do nothing, we tried
- }
- try {
- outCache.close();
- } catch (final IOException e) {
- // do nothing
- }
- }
- }
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.weaving.caching/src/org/eclipse/equinox/weaving/internal/caching/CachingServiceFactory.java b/bundles/org.eclipse.equinox.weaving.caching/src/org/eclipse/equinox/weaving/internal/caching/CachingServiceFactory.java
deleted file mode 100644
index 8ff4afc..0000000
--- a/bundles/org.eclipse.equinox.weaving.caching/src/org/eclipse/equinox/weaving/internal/caching/CachingServiceFactory.java
+++ /dev/null
@@ -1,151 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008 Heiko Seeberger 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:
- * Heiko Seeberger - initial implementation
- * Martin Lippert - further improvements and optimizations
- *******************************************************************************/
-
-package org.eclipse.equinox.weaving.internal.caching;
-
-import java.text.MessageFormat;
-import java.util.HashMap;
-import java.util.Map;
-import java.util.concurrent.ArrayBlockingQueue;
-import java.util.concurrent.BlockingQueue;
-
-import org.eclipse.equinox.service.weaving.ICachingService;
-import org.eclipse.equinox.service.weaving.ICachingServiceFactory;
-import org.osgi.framework.Bundle;
-import org.osgi.framework.BundleContext;
-import org.osgi.framework.BundleEvent;
-import org.osgi.framework.Constants;
-import org.osgi.framework.SynchronousBundleListener;
-
-/**
- * {@link ICachingService} used as "singleton" OSGi service by
- * "org.aspectj.osgi".
- *
- * @author Heiko Seeberger
- */
-public class CachingServiceFactory implements ICachingServiceFactory {
-
- private final Map<String, ICachingService> bundleCachingServices = new HashMap<String, ICachingService>();
-
- private final BundleContext bundleContext;
-
- private final BlockingQueue<CacheItem> cacheQueue;
-
- private final CacheWriter cacheWriter;
-
- /**
- * @param bundleContext Must not be null!
- * @throws IllegalArgumentException if given bundleContext is null.
- */
- public CachingServiceFactory(final BundleContext bundleContext) {
- if (bundleContext == null) {
- throw new IllegalArgumentException(
- "Argument \"bundleContext\" must not be null!"); //$NON-NLS-1$
- }
- this.bundleContext = bundleContext;
- this.cacheQueue = new ArrayBlockingQueue<CacheItem>(5000);
- this.cacheWriter = new CacheWriter(this.cacheQueue);
- this.cacheWriter.start();
-
- this.bundleContext.addBundleListener(new SynchronousBundleListener() {
-
- public void bundleChanged(final BundleEvent event) {
- if (event.getType() == BundleEvent.UNINSTALLED) {
- stopBundleCachingService(event);
- } else if (event.getType() == BundleEvent.UPDATED) {
- stopBundleCachingService(event);
- }
- }
- });
- }
-
- /**
- * @see org.eclipse.equinox.service.weaving.ICachingServiceFactory#createCachingService(java.lang.ClassLoader,
- * org.osgi.framework.Bundle, java.lang.String)
- */
- public synchronized ICachingService createCachingService(
- final ClassLoader classLoader, final Bundle bundle, final String key) {
-
- if (bundle == null) {
- throw new IllegalArgumentException(
- "Argument \"bundle\" must not be null!"); //$NON-NLS-1$
- }
-
- final String cacheId = getCacheId(bundle);
-
- ICachingService bundleCachingService = bundleCachingServices
- .get(cacheId);
-
- if (bundleCachingService == null) {
-
- if (key != null && key.length() > 0) {
- bundleCachingService = new BundleCachingService(bundleContext,
- bundle, key, this.cacheQueue);
- } else {
- bundleCachingService = new UnchangedCachingService();
- }
- bundleCachingServices.put(cacheId, bundleCachingService);
-
- if (Log.isDebugEnabled()) {
- Log.debug(MessageFormat.format(
- "Created BundleCachingService for [{0}].", cacheId)); //$NON-NLS-1$
- }
- }
-
- return bundleCachingService;
- }
-
- /**
- * Generates the unique id for the cache of the given bundle (usually the
- * symbolic name and the bundle version)
- *
- * @param bundle The bundle for which a unique cache id should be calculated
- * @return The unique id of the cache for the given bundle
- */
- public String getCacheId(final Bundle bundle) {
- String bundleVersion = (String) bundle.getHeaders().get(
- Constants.BUNDLE_VERSION);
- if (bundleVersion == null || bundleVersion.length() == 0) {
- bundleVersion = "0.0.0"; //$NON-NLS-1$
- }
- return bundle.getSymbolicName() + "_" + bundleVersion; //$NON-NLS-1$
- }
-
- /**
- * Stops all individual bundle services.
- */
- public synchronized void stop() {
- for (final ICachingService bundleCachingService : bundleCachingServices
- .values()) {
- bundleCachingService.stop();
- }
- bundleCachingServices.clear();
- this.cacheWriter.stop();
- }
-
- /**
- * Stops individual bundle caching service if the bundle is uninstalled
- *
- * @param event The event contains the information for which bundle to stop
- * the caching service
- */
- protected void stopBundleCachingService(final BundleEvent event) {
- final String cacheId = getCacheId(event.getBundle());
- final ICachingService bundleCachingService = bundleCachingServices
- .get(cacheId);
- if (bundleCachingService != null) {
- bundleCachingService.stop();
- bundleCachingServices.remove(cacheId);
- }
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.weaving.caching/src/org/eclipse/equinox/weaving/internal/caching/IBundleConstants.java b/bundles/org.eclipse.equinox.weaving.caching/src/org/eclipse/equinox/weaving/internal/caching/IBundleConstants.java
deleted file mode 100644
index a77b2e0..0000000
--- a/bundles/org.eclipse.equinox.weaving.caching/src/org/eclipse/equinox/weaving/internal/caching/IBundleConstants.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008 Heiko Seeberger 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:
- * Heiko Seeberger - initial implementation
- *******************************************************************************/
-
-package org.eclipse.equinox.weaving.internal.caching;
-
-/**
- * Constants for org.aspectj.osgi.service.caching".
- *
- * @author Heiko Seeberger
- */
-public interface IBundleConstants {
-
- /**
- * The symbolic name for this bundle: "org.aspectj.osgi.service.caching".
- */
- public static final String BUNDLE_SYMBOLIC_NAME = "org.eclipse.equinox.weaving.caching"; //$NON-NLS-1$
-}
diff --git a/bundles/org.eclipse.equinox.weaving.caching/src/org/eclipse/equinox/weaving/internal/caching/Log.java b/bundles/org.eclipse.equinox.weaving.caching/src/org/eclipse/equinox/weaving/internal/caching/Log.java
deleted file mode 100644
index a25b1c3..0000000
--- a/bundles/org.eclipse.equinox.weaving.caching/src/org/eclipse/equinox/weaving/internal/caching/Log.java
+++ /dev/null
@@ -1,63 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008 Heiko Seeberger 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:
- * Heiko Seeberger - initial implementation
- *******************************************************************************/
-
-package org.eclipse.equinox.weaving.internal.caching;
-
-import static org.eclipse.equinox.weaving.internal.caching.IBundleConstants.BUNDLE_SYMBOLIC_NAME;
-
-/**
- * Logging utility.
- *
- * @author Heiko Seeberger
- */
-public class Log {
-
- static boolean debugEnabled = false;
-
- private static final String PREFIX = "[" + BUNDLE_SYMBOLIC_NAME + "] "; //$NON-NLS-1$ //$NON-NLS-2$
-
- /**
- * Logging debug information.
- *
- * @param message The tracing message, optional.
- */
- public static void debug(final String message) {
- if (debugEnabled) {
- if (message != null) {
- System.out.println(PREFIX + message);
- }
- }
- }
-
- /**
- * Logging an error.
- *
- * @param message The error message, optional.
- * @param t The Throwable for this error, optional.
- */
- public static void error(final String message, final Throwable t) {
- if (message != null) {
- System.err.println(PREFIX + message);
- }
- if (t != null) {
- t.printStackTrace(System.err);
- }
- }
-
- /**
- * Shows debug toggle state.
- *
- * @return true, if debug is enabled, else false.
- */
- public static boolean isDebugEnabled() {
- return debugEnabled;
- }
-}
diff --git a/bundles/org.eclipse.equinox.weaving.caching/src/org/eclipse/equinox/weaving/internal/caching/UnchangedCachingService.java b/bundles/org.eclipse.equinox.weaving.caching/src/org/eclipse/equinox/weaving/internal/caching/UnchangedCachingService.java
deleted file mode 100644
index fc899fa..0000000
--- a/bundles/org.eclipse.equinox.weaving.caching/src/org/eclipse/equinox/weaving/internal/caching/UnchangedCachingService.java
+++ /dev/null
@@ -1,74 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008, 2009 Martin Lippert 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:
- * Martin Lippert - initial implementation
- * Martin Lippert - caching of generated classes
- *******************************************************************************/
-
-package org.eclipse.equinox.weaving.internal.caching;
-
-import java.net.URL;
-import java.util.Map;
-
-import org.eclipse.equinox.service.weaving.CacheEntry;
-import org.eclipse.equinox.service.weaving.ICachingService;
-
-/**
- * This implementation of the caching service is responsible for those bundles
- * that are not affected by the weaving. This is the case if no aspects are
- * being found for this bundle.
- *
- * This caching service indicates for the runtime system that classes of the
- * bundle this caching service belongs to dont need to be passed to the weaving
- * service. Instead the original code from the bundle can be used.
- *
- * @author Martin Lippert
- */
-public class UnchangedCachingService implements ICachingService {
-
- /**
- * @see org.eclipse.equinox.service.weaving.ICachingService#canCacheGeneratedClasses()
- */
- public boolean canCacheGeneratedClasses() {
- return false;
- }
-
- /**
- * @see org.eclipse.equinox.service.weaving.ICachingService#findStoredClass(java.lang.String,
- * java.net.URL, java.lang.String)
- */
- public CacheEntry findStoredClass(final String namespace,
- final URL sourceFileURL, final String name) {
- return new CacheEntry(true, null);
- }
-
- /**
- * @see org.eclipse.equinox.service.weaving.ICachingService#stop()
- */
- public void stop() {
- }
-
- /**
- * @see org.eclipse.equinox.service.weaving.ICachingService#storeClass(java.lang.String,
- * java.net.URL, java.lang.Class, byte[])
- */
- public boolean storeClass(final String namespace, final URL sourceFileURL,
- final Class<?> clazz, final byte[] classbytes) {
- return false;
- }
-
- /**
- * @see org.eclipse.equinox.service.weaving.ICachingService#storeClassAndGeneratedClasses(java.lang.String,
- * java.net.URL, java.lang.Class, byte[], java.util.Map)
- */
- public boolean storeClassAndGeneratedClasses(final String namespace,
- final URL sourceFileUrl, final Class<?> clazz,
- final byte[] classbytes, final Map<String, byte[]> generatedClasses) {
- return false;
- }
-}
diff --git a/bundles/org.eclipse.equinox.weaving.hook/.classpath b/bundles/org.eclipse.equinox.weaving.hook/.classpath
deleted file mode 100644
index a070cdd..0000000
--- a/bundles/org.eclipse.equinox.weaving.hook/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
- <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 excluding="org/aspectj/weaver/osgi/hooks/AspectJBundleWatcherHook.java|org/aspectj/weaver/osgi/hooks/AspectJBundleFileWrapperFactoryHook.java|org/aspectj/weaver/osgi/hooks/AspectJHookConfigurator.java|org/aspectj/weaver/osgi/hooks/AspectJClassLoadingHook.java|org/aspectj/weaver/osgi/hooks/AspectJClassLoadingStatsHook.java|org/aspectj/osgi/hooks/AspectJHookConfigurator.java|org/aspectj/osgi/hooks/AspectJClassLoadingHook.java|org/aspectj/osgi/hooks/AspectJBundleFileWrapperFactoryHook.java|org/aspectj/osgi/hooks/AspectJBundleWatcherHook.java|org/aspectj/osgi/hooks/AspectJClassLoadingStatsHook.java" kind="src" path="src"/>
- <classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/bundles/org.eclipse.equinox.weaving.hook/.cvsignore b/bundles/org.eclipse.equinox.weaving.hook/.cvsignore
deleted file mode 100644
index ba077a4..0000000
--- a/bundles/org.eclipse.equinox.weaving.hook/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-bin
diff --git a/bundles/org.eclipse.equinox.weaving.hook/.options b/bundles/org.eclipse.equinox.weaving.hook/.options
deleted file mode 100644
index b588b6c..0000000
--- a/bundles/org.eclipse.equinox.weaving.hook/.options
+++ /dev/null
@@ -1,6 +0,0 @@
-org.aspectj.osgi/debug=false
-org.aspectj.osgi/debug/bundle=false
-org.aspectj.osgi/debug/weave=true
-org.aspectj.osgi/debug/cache=false
-org.aspectj.osgi/debug/supplements=false
-org.aspectj.osgi/debug/bundleName=false
diff --git a/bundles/org.eclipse.equinox.weaving.hook/.project b/bundles/org.eclipse.equinox.weaving.hook/.project
deleted file mode 100644
index ccdd439..0000000
--- a/bundles/org.eclipse.equinox.weaving.hook/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.equinox.weaving.hook</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/bundles/org.eclipse.equinox.weaving.hook/.settings/org.eclipse.core.resources.prefs b/bundles/org.eclipse.equinox.weaving.hook/.settings/org.eclipse.core.resources.prefs
deleted file mode 100644
index f8cd6fb..0000000
--- a/bundles/org.eclipse.equinox.weaving.hook/.settings/org.eclipse.core.resources.prefs
+++ /dev/null
@@ -1,3 +0,0 @@
-#Mon Aug 04 14:33:29 CEST 2008
-eclipse.preferences.version=1
-encoding/<project>=UTF-8
diff --git a/bundles/org.eclipse.equinox.weaving.hook/.settings/org.eclipse.jdt.core.prefs b/bundles/org.eclipse.equinox.weaving.hook/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index 2c10e2d..0000000
--- a/bundles/org.eclipse.equinox.weaving.hook/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,339 +0,0 @@
-#Sun Oct 19 17:27:55 CEST 2008
-eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=1.5
-org.eclipse.jdt.core.compiler.debug.lineNumber=generate
-org.eclipse.jdt.core.compiler.debug.localVariable=generate
-org.eclipse.jdt.core.compiler.debug.sourceFile=generate
-org.eclipse.jdt.core.compiler.doc.comment.support=enabled
-org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.autoboxing=ignore
-org.eclipse.jdt.core.compiler.problem.deprecation=warning
-org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
-org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
-org.eclipse.jdt.core.compiler.problem.discouragedReference=warning
-org.eclipse.jdt.core.compiler.problem.emptyStatement=ignore
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.problem.fallthroughCase=warning
-org.eclipse.jdt.core.compiler.problem.fatalOptionalError=enabled
-org.eclipse.jdt.core.compiler.problem.fieldHiding=ignore
-org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning
-org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning
-org.eclipse.jdt.core.compiler.problem.forbiddenReference=error
-org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
-org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
-org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=warning
-org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=warning
-org.eclipse.jdt.core.compiler.problem.invalidJavadoc=warning
-org.eclipse.jdt.core.compiler.problem.invalidJavadocTags=enabled
-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsDeprecatedRef=enabled
-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsNotVisibleRef=enabled
-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsVisibility=protected
-org.eclipse.jdt.core.compiler.problem.localVariableHiding=ignore
-org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning
-org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=warning
-org.eclipse.jdt.core.compiler.problem.missingJavadocComments=warning
-org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsOverriding=enabled
-org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsVisibility=protected
-org.eclipse.jdt.core.compiler.problem.missingJavadocTagDescription=all_standard_tags
-org.eclipse.jdt.core.compiler.problem.missingJavadocTags=warning
-org.eclipse.jdt.core.compiler.problem.missingJavadocTagsOverriding=disabled
-org.eclipse.jdt.core.compiler.problem.missingJavadocTagsVisibility=protected
-org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=warning
-org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
-org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
-org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
-org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=warning
-org.eclipse.jdt.core.compiler.problem.nullReference=warning
-org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
-org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore
-org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=ignore
-org.eclipse.jdt.core.compiler.problem.potentialNullReference=ignore
-org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning
-org.eclipse.jdt.core.compiler.problem.redundantNullCheck=ignore
-org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=ignore
-org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
-org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
-org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
-org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore
-org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
-org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning
-org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore
-org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning
-org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
-org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=warning
-org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
-org.eclipse.jdt.core.compiler.problem.unusedImport=warning
-org.eclipse.jdt.core.compiler.problem.unusedLabel=warning
-org.eclipse.jdt.core.compiler.problem.unusedLocal=warning
-org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
-org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
-org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning
-org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
-org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
-org.eclipse.jdt.core.compiler.source=1.5
-org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_assignment=0
-org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
-org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80
-org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0
-org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
-org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
-org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
-org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16
-org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
-org.eclipse.jdt.core.formatter.blank_lines_after_package=1
-org.eclipse.jdt.core.formatter.blank_lines_before_field=1
-org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=1
-org.eclipse.jdt.core.formatter.blank_lines_before_imports=1
-org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1
-org.eclipse.jdt.core.formatter.blank_lines_before_method=1
-org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1
-org.eclipse.jdt.core.formatter.blank_lines_before_package=1
-org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1
-org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1
-org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=false
-org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=false
-org.eclipse.jdt.core.formatter.comment.format_block_comments=true
-org.eclipse.jdt.core.formatter.comment.format_header=false
-org.eclipse.jdt.core.formatter.comment.format_html=true
-org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true
-org.eclipse.jdt.core.formatter.comment.format_line_comments=false
-org.eclipse.jdt.core.formatter.comment.format_source_code=true
-org.eclipse.jdt.core.formatter.comment.indent_parameter_description=true
-org.eclipse.jdt.core.formatter.comment.indent_root_tags=true
-org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert
-org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=do not insert
-org.eclipse.jdt.core.formatter.comment.line_length=80
-org.eclipse.jdt.core.formatter.compact_else_if=true
-org.eclipse.jdt.core.formatter.continuation_indentation=2
-org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
-org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true
-org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true
-org.eclipse.jdt.core.formatter.indent_empty_lines=false
-org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true
-org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
-org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
-org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=false
-org.eclipse.jdt.core.formatter.indentation.size=4
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_member=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert
-org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert
-org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert
-org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert
-org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert
-org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false
-org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false
-org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=true
-org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false
-org.eclipse.jdt.core.formatter.lineSplit=80
-org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
-org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false
-org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
-org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1
-org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true
-org.eclipse.jdt.core.formatter.tabulation.char=space
-org.eclipse.jdt.core.formatter.tabulation.size=4
-org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
-org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true
diff --git a/bundles/org.eclipse.equinox.weaving.hook/.settings/org.eclipse.jdt.ui.prefs b/bundles/org.eclipse.equinox.weaving.hook/.settings/org.eclipse.jdt.ui.prefs
deleted file mode 100644
index 1c44c2b..0000000
--- a/bundles/org.eclipse.equinox.weaving.hook/.settings/org.eclipse.jdt.ui.prefs
+++ /dev/null
@@ -1,115 +0,0 @@
-#Mon Aug 04 14:33:29 CEST 2008
-cleanup.add_default_serial_version_id=false
-cleanup.add_generated_serial_version_id=true
-cleanup.add_missing_annotations=true
-cleanup.add_missing_deprecated_annotations=true
-cleanup.add_missing_methods=false
-cleanup.add_missing_nls_tags=false
-cleanup.add_missing_override_annotations=true
-cleanup.add_serial_version_id=true
-cleanup.always_use_blocks=true
-cleanup.always_use_parentheses_in_expressions=false
-cleanup.always_use_this_for_non_static_field_access=false
-cleanup.always_use_this_for_non_static_method_access=false
-cleanup.convert_to_enhanced_for_loop=false
-cleanup.correct_indentation=false
-cleanup.format_source_code=true
-cleanup.format_source_code_changes_only=false
-cleanup.make_local_variable_final=true
-cleanup.make_parameters_final=true
-cleanup.make_private_fields_final=true
-cleanup.make_type_abstract_if_missing_method=false
-cleanup.make_variable_declarations_final=true
-cleanup.never_use_blocks=false
-cleanup.never_use_parentheses_in_expressions=true
-cleanup.organize_imports=true
-cleanup.qualify_static_field_accesses_with_declaring_class=false
-cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
-cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
-cleanup.qualify_static_member_accesses_with_declaring_class=true
-cleanup.qualify_static_method_accesses_with_declaring_class=false
-cleanup.remove_private_constructors=true
-cleanup.remove_trailing_whitespaces=true
-cleanup.remove_trailing_whitespaces_all=true
-cleanup.remove_trailing_whitespaces_ignore_empty=false
-cleanup.remove_unnecessary_casts=true
-cleanup.remove_unnecessary_nls_tags=true
-cleanup.remove_unused_imports=true
-cleanup.remove_unused_local_variables=false
-cleanup.remove_unused_private_fields=true
-cleanup.remove_unused_private_members=false
-cleanup.remove_unused_private_methods=true
-cleanup.remove_unused_private_types=true
-cleanup.sort_members=true
-cleanup.sort_members_all=true
-cleanup.use_blocks=false
-cleanup.use_blocks_only_for_return_and_throw=false
-cleanup.use_parentheses_in_expressions=false
-cleanup.use_this_for_non_static_field_access=false
-cleanup.use_this_for_non_static_field_access_only_if_necessary=true
-cleanup.use_this_for_non_static_method_access=false
-cleanup.use_this_for_non_static_method_access_only_if_necessary=true
-cleanup_profile=_defaultCleanUpProfile
-cleanup_settings_version=2
-eclipse.preferences.version=1
-editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true
-formatter_profile=_defaultFormatterProfile
-formatter_settings_version=11
-internal.default.compliance=default
-org.eclipse.jdt.ui.ignorelowercasenames=true
-org.eclipse.jdt.ui.importorder=java;javax;com;de;net;org;
-org.eclipse.jdt.ui.javadoc=false
-org.eclipse.jdt.ui.ondemandthreshold=99
-org.eclipse.jdt.ui.staticondemandthreshold=99
-org.eclipse.jdt.ui.text.custom_code_templates=<?xml version\="1.0" encoding\="UTF-8"?><templates><template autoinsert\="true" context\="gettercomment_context" deleted\="false" description\="Comment for getter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.gettercomment" name\="gettercomment">/**\n * @return the ${bare_field_name}\n */</template><template autoinsert\="true" context\="settercomment_context" deleted\="false" description\="Comment for setter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.settercomment" name\="settercomment">/**\n * @param ${param} the ${bare_field_name} to set\n */</template><template autoinsert\="true" context\="constructorcomment_context" deleted\="false" description\="Comment for created constructors" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorcomment" name\="constructorcomment">/**\n * ${tags}\n */</template><template autoinsert\="false" context\="filecomment_context" deleted\="false" description\="Comment for created Java files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.filecomment" name\="filecomment">/*******************************************************************************\n * Copyright (c) 2008 ${user} and others.\n * All rights reserved. This program and the accompanying materials \n * are made available under the terms of the Eclipse Public License v1.0\n * which accompanies this distribution, and is available at\n * http\://www.eclipse.org/legal/epl-v10.html.\n * \n * Contributors\:\n * ${user} - initial implementation\n ******************************************************************************/\n</template><template autoinsert\="false" context\="typecomment_context" deleted\="false" description\="Comment for created types" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.typecomment" name\="typecomment">/**\n * @author ${user}\n * ${tags}\n */</template><template autoinsert\="true" context\="fieldcomment_context" deleted\="false" description\="Comment for fields" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.fieldcomment" name\="fieldcomment">/**\n * \n */</template><template autoinsert\="true" context\="methodcomment_context" deleted\="false" description\="Comment for non-overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodcomment" name\="methodcomment">/**\n * ${tags}\n */</template><template autoinsert\="false" context\="overridecomment_context" deleted\="false" description\="Comment for overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.overridecomment" name\="overridecomment">/**\n * ${see_to_overridden}\n */</template><template autoinsert\="true" context\="delegatecomment_context" deleted\="false" description\="Comment for delegate methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.delegatecomment" name\="delegatecomment">/**\n * ${tags}\n * ${see_to_target}\n */</template><template autoinsert\="false" context\="newtype_context" deleted\="false" description\="Newly created files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.newtype" name\="newtype">${filecomment}\n\n${package_declaration}\n\n${typecomment}\n${type_declaration}</template><template autoinsert\="true" context\="classbody_context" deleted\="false" description\="Code in new class type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.classbody" name\="classbody">\n</template><template autoinsert\="true" context\="interfacebody_context" deleted\="false" description\="Code in new interface type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.interfacebody" name\="interfacebody">\n</template><template autoinsert\="true" context\="enumbody_context" deleted\="false" description\="Code in new enum type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.enumbody" name\="enumbody">\n</template><template autoinsert\="true" context\="annotationbody_context" deleted\="false" description\="Code in new annotation type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.annotationbody" name\="annotationbody">\n</template><template autoinsert\="true" context\="catchblock_context" deleted\="false" description\="Code in new catch blocks" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.catchblock" name\="catchblock">// ${todo} Auto-generated catch block\n${exception_var}.printStackTrace();</template><template autoinsert\="true" context\="methodbody_context" deleted\="false" description\="Code in created method stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodbody" name\="methodbody">// ${todo} Auto-generated method stub\n${body_statement}</template><template autoinsert\="false" context\="constructorbody_context" deleted\="false" description\="Code in created constructor stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorbody" name\="constructorbody">// ${todo} Auto-generated constructor stub\n${body_statement}</template><template autoinsert\="true" context\="getterbody_context" deleted\="false" description\="Code in created getters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.getterbody" name\="getterbody">return ${field};</template><template autoinsert\="true" context\="setterbody_context" deleted\="false" description\="Code in created setters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.setterbody" name\="setterbody">${field} \= ${param};</template></templates>
-sp_cleanup.add_default_serial_version_id=true
-sp_cleanup.add_generated_serial_version_id=false
-sp_cleanup.add_missing_annotations=true
-sp_cleanup.add_missing_deprecated_annotations=true
-sp_cleanup.add_missing_methods=false
-sp_cleanup.add_missing_nls_tags=false
-sp_cleanup.add_missing_override_annotations=true
-sp_cleanup.add_serial_version_id=false
-sp_cleanup.always_use_blocks=true
-sp_cleanup.always_use_parentheses_in_expressions=false
-sp_cleanup.always_use_this_for_non_static_field_access=false
-sp_cleanup.always_use_this_for_non_static_method_access=false
-sp_cleanup.convert_to_enhanced_for_loop=false
-sp_cleanup.correct_indentation=false
-sp_cleanup.format_source_code=true
-sp_cleanup.format_source_code_changes_only=false
-sp_cleanup.make_local_variable_final=true
-sp_cleanup.make_parameters_final=true
-sp_cleanup.make_private_fields_final=true
-sp_cleanup.make_type_abstract_if_missing_method=false
-sp_cleanup.make_variable_declarations_final=true
-sp_cleanup.never_use_blocks=false
-sp_cleanup.never_use_parentheses_in_expressions=true
-sp_cleanup.on_save_use_additional_actions=true
-sp_cleanup.organize_imports=true
-sp_cleanup.qualify_static_field_accesses_with_declaring_class=false
-sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
-sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
-sp_cleanup.qualify_static_member_accesses_with_declaring_class=false
-sp_cleanup.qualify_static_method_accesses_with_declaring_class=false
-sp_cleanup.remove_private_constructors=true
-sp_cleanup.remove_trailing_whitespaces=true
-sp_cleanup.remove_trailing_whitespaces_all=true
-sp_cleanup.remove_trailing_whitespaces_ignore_empty=false
-sp_cleanup.remove_unnecessary_casts=true
-sp_cleanup.remove_unnecessary_nls_tags=true
-sp_cleanup.remove_unused_imports=true
-sp_cleanup.remove_unused_local_variables=false
-sp_cleanup.remove_unused_private_fields=true
-sp_cleanup.remove_unused_private_members=false
-sp_cleanup.remove_unused_private_methods=true
-sp_cleanup.remove_unused_private_types=true
-sp_cleanup.sort_members=true
-sp_cleanup.sort_members_all=true
-sp_cleanup.use_blocks=false
-sp_cleanup.use_blocks_only_for_return_and_throw=false
-sp_cleanup.use_parentheses_in_expressions=false
-sp_cleanup.use_this_for_non_static_field_access=false
-sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=true
-sp_cleanup.use_this_for_non_static_method_access=false
-sp_cleanup.use_this_for_non_static_method_access_only_if_necessary=true
diff --git a/bundles/org.eclipse.equinox.weaving.hook/.settings/org.eclipse.pde.prefs b/bundles/org.eclipse.equinox.weaving.hook/.settings/org.eclipse.pde.prefs
deleted file mode 100644
index 7a5611d..0000000
--- a/bundles/org.eclipse.equinox.weaving.hook/.settings/org.eclipse.pde.prefs
+++ /dev/null
@@ -1,22 +0,0 @@
-#Mon Aug 04 14:33:29 CEST 2008
-compilers.f.unresolved-features=1
-compilers.f.unresolved-plugins=1
-compilers.incompatible-environment=1
-compilers.p.build=1
-compilers.p.deprecated=1
-compilers.p.discouraged-class=1
-compilers.p.internal=1
-compilers.p.missing-packages=2
-compilers.p.no-required-att=0
-compilers.p.not-externalized-att=1
-compilers.p.unknown-attribute=1
-compilers.p.unknown-class=1
-compilers.p.unknown-element=1
-compilers.p.unknown-identifier=1
-compilers.p.unknown-resource=1
-compilers.p.unresolved-ex-points=0
-compilers.p.unresolved-import=0
-compilers.s.create-docs=false
-compilers.s.doc-folder=doc
-compilers.s.open-tags=1
-eclipse.preferences.version=1
diff --git a/bundles/org.eclipse.equinox.weaving.hook/META-INF/MANIFEST.MF b/bundles/org.eclipse.equinox.weaving.hook/META-INF/MANIFEST.MF
deleted file mode 100644
index e191d0d..0000000
--- a/bundles/org.eclipse.equinox.weaving.hook/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,10 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: Aspect Weaving Hooks Plug-in (Incubation)
-Bundle-SymbolicName: org.eclipse.equinox.weaving.hook
-Bundle-Version: 1.0.0.qualifier
-Fragment-Host: org.eclipse.osgi;bundle-version="[3.2.0,4.0.0)"
-Export-Package: org.eclipse.equinox.service.weaving,
- org.eclipse.equinox.weaving.adaptors;x-friends:="org.eclipse.equinox.weaving.tests",
- org.eclipse.equinox.weaving.hooks;x-friends:="org.eclipse.equinox.weaving.tests"
-Bundle-RequiredExecutionEnvironment: J2SE-1.5
diff --git a/bundles/org.eclipse.equinox.weaving.hook/build.properties b/bundles/org.eclipse.equinox.weaving.hook/build.properties
deleted file mode 100644
index 61a3c8a..0000000
--- a/bundles/org.eclipse.equinox.weaving.hook/build.properties
+++ /dev/null
@@ -1,7 +0,0 @@
-source.. = src/
-output.. = bin/
-bin.includes = META-INF/,\
- .,\
- hookconfigurators.properties,\
- .options,\
- fragment.xml
diff --git a/bundles/org.eclipse.equinox.weaving.hook/config.ini b/bundles/org.eclipse.equinox.weaving.hook/config.ini
deleted file mode 100644
index 63a0e87..0000000
--- a/bundles/org.eclipse.equinox.weaving.hook/config.ini
+++ /dev/null
@@ -1,11 +0,0 @@
-osgi.bundles=org.eclipse.equinox.weaving.aspectj@1\:start,org.eclipse.equinox.common@2\:start,org.eclipse.update.configurator@3\:start,org.eclipse.core.runtime@start
-osgi.bundles.defaultStartLevel=4
-osgi.framework=org.eclipse.osgi
-osgi.configuration.cascaded=false
-osgi.splashPath=platform:/base/plugins/org.eclipse.platform
-
-# AOSGi
-osgi.framework.extensions=org.eclipse.equinox.weaving.hook
-#aj.weaving.verbose=true
-#org.aspectj.weaver.showWeaveInfo=true
-org.aspectj.osgi.verbose=true
\ No newline at end of file
diff --git a/bundles/org.eclipse.equinox.weaving.hook/hookconfigurators.properties b/bundles/org.eclipse.equinox.weaving.hook/hookconfigurators.properties
deleted file mode 100644
index d3b464c..0000000
--- a/bundles/org.eclipse.equinox.weaving.hook/hookconfigurators.properties
+++ /dev/null
@@ -1,2 +0,0 @@
-hook.configurators= \
- org.eclipse.equinox.weaving.hooks.WeavingHook
diff --git a/bundles/org.eclipse.equinox.weaving.hook/readme.txt b/bundles/org.eclipse.equinox.weaving.hook/readme.txt
deleted file mode 100644
index a5fcf7b..0000000
--- a/bundles/org.eclipse.equinox.weaving.hook/readme.txt
+++ /dev/null
@@ -1,15 +0,0 @@
-This version works with Eclipse 3.2 Final only. Checkout projects org.aspectj.osgi,
-org.aspectj.osgi.service.weaving and org.eclipse.osgi_3.2.0. The OSGi bundle is
-needed to run the org.aspectj.osgi Framework Extension bundle fragment as a
-source project (see https://bugs.eclipse.org/bugs/show_bug.cgi?id=143696).
-
-To run the accompanying tests checkout all the projects in aspects/tests and
-open the WeavingTest.lauch configuration.
-
-To run the demos checkout the projects in aspects/demos.
-- HelloWorld: run HelloWorldTest in the demo.hello bundle as a JUnit Plug-in
-test with the config.ini in the org.aspectj.osgi project.
-- Tooltip: run "Tooltip Demo.launch" in demo.eclipse.tooltip as an
-Eclipse Application using the config.ini in the same project.
-- Tracing: run "Eclipse Tracing Demo.launch" in demo.eclipse.tooltip as an
-Eclipse Application using the config.ini in the same project.
\ No newline at end of file
diff --git a/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/service/weaving/CacheEntry.java b/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/service/weaving/CacheEntry.java
deleted file mode 100644
index 004a8ea..0000000
--- a/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/service/weaving/CacheEntry.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008 Martin Lippert 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:
- * Martin Lippert initial implementation
- *******************************************************************************/
-
-package org.eclipse.equinox.service.weaving;
-
-public class CacheEntry {
-
- private final byte[] cachedBytes;
-
- private final boolean dontWeave;
-
- public CacheEntry(final boolean dontWeave, final byte[] cachedBytes) {
- this.dontWeave = dontWeave;
- this.cachedBytes = cachedBytes;
- }
-
- public boolean dontWeave() {
- return dontWeave;
- }
-
- public byte[] getCachedBytes() {
- return cachedBytes;
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/service/weaving/ICachingService.java b/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/service/weaving/ICachingService.java
deleted file mode 100644
index a1865fb..0000000
--- a/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/service/weaving/ICachingService.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006, 2008, 2009 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:
- * David Knibb initial implementation
- * Matthew Webster Eclipse 3.2 changes
- * Martin Lippert extracted caching service factory
- * Martin Lippert caching of generated classes
- *******************************************************************************/
-
-package org.eclipse.equinox.service.weaving;
-
-import java.net.URL;
-import java.util.Map;
-
-public interface ICachingService {
-
- public boolean canCacheGeneratedClasses();
-
- public CacheEntry findStoredClass(String namespace, URL sourceFileURL,
- String name);
-
- public void stop();
-
- public boolean storeClass(String namespace, URL sourceFileURL,
- Class<?> clazz, byte[] classbytes);
-
- public boolean storeClassAndGeneratedClasses(String namespace,
- URL sourceFileURL, Class<?> clazz, byte[] classbytes,
- Map<String, byte[]> generatedClasses);
-
-}
diff --git a/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/service/weaving/ICachingServiceFactory.java b/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/service/weaving/ICachingServiceFactory.java
deleted file mode 100644
index 6e46a7b..0000000
--- a/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/service/weaving/ICachingServiceFactory.java
+++ /dev/null
@@ -1,21 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008 Martin Lippert 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:
- * Martin Lippert initial implementation
- *******************************************************************************/
-
-package org.eclipse.equinox.service.weaving;
-
-import org.osgi.framework.Bundle;
-
-public interface ICachingServiceFactory {
-
- public ICachingService createCachingService(ClassLoader classLoader,
- Bundle bundle, String key);
-
-}
diff --git a/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/service/weaving/ISupplementerRegistry.java b/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/service/weaving/ISupplementerRegistry.java
deleted file mode 100644
index a1db9ae..0000000
--- a/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/service/weaving/ISupplementerRegistry.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008, 2009 Martin Lippert 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:
- * Martin Lippert initial implementation
- *******************************************************************************/
-
-package org.eclipse.equinox.service.weaving;
-
-import java.util.List;
-
-import org.eclipse.osgi.util.ManifestElement;
-import org.osgi.framework.Bundle;
-import org.osgi.framework.BundleContext;
-import org.osgi.service.packageadmin.PackageAdmin;
-
-public interface ISupplementerRegistry {
-
- public void addBundle(final Bundle bundle);
-
- public void addSupplementedBundle(final Bundle bundle);
-
- public void addSupplementer(final Bundle bundle, final boolean updateBundles);
-
- public List<Supplementer> getMatchingSupplementers(
- final String symbolicName, final ManifestElement[] imports,
- final ManifestElement[] exports);
-
- public PackageAdmin getPackageAdmin();
-
- public Supplementer[] getSupplementers(final Bundle bundle);
-
- public Supplementer[] getSupplementers(final long bundleID);
-
- /**
- * Refreshes the given bundles
- *
- * @param bundles The bundles to refresh
- */
- public void refreshBundles(final Bundle[] bundles);
-
- public void removeBundle(final Bundle bundle);
-
- public void setBundleContext(final BundleContext context);
-
- public void setPackageAdmin(final PackageAdmin packageAdmin);
-
-}
diff --git a/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/service/weaving/IWeavingService.java b/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/service/weaving/IWeavingService.java
deleted file mode 100644
index 76c567e..0000000
--- a/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/service/weaving/IWeavingService.java
+++ /dev/null
@@ -1,89 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006, 2008, 2009 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:
- * David Knibb initial implementation
- * Matthew Webster Eclipse 3.2 changes
- * Martin Lippert extracted weaving service factory
- * Martin Lippert caching of generated classes
- *******************************************************************************/
-
-package org.eclipse.equinox.service.weaving;
-
-import java.io.IOException;
-import java.util.Map;
-
-/**
- * The IWeavingService is the interface for weavers for individual bundles. This
- * weaver is used by the core equinox aspects runtime to weave bytecodes when a
- * class is loaded and not read from cache.
- *
- * @author Martin Lippert
- */
-public interface IWeavingService {
-
- /**
- * Flush all generated classes from the weaving service so that memory kept
- * by the weaving service for additional classes can be freed.
- *
- * @param loader The class loader the weaving service belongs to
- */
- public void flushGeneratedClasses(ClassLoader loader);
-
- /**
- * Has the weaving service generated new classes on the fly for the given
- * class?
- *
- * @param loader The class loader of the woven class
- * @param className The name of the woven class
- * @return true, if the weaving service has generated additional classes for
- * the woven class (closures, for example)
- */
- public boolean generatedClassesExistFor(ClassLoader loader, String className);
-
- /**
- * Returns a map that contains all generated classes for the given class.
- * Implementations of this method should remove those classes from internal
- * lists (to free memory). This means also that calling this method a second
- * time will return an emptry map.
- *
- * @param className The name of the class for which additional classes were
- * generated
- * @return The generated classes (key: generated class name, value:
- * generated class bytecode)
- */
- public Map<String, byte[]> getGeneratedClassesFor(String className);
-
- /**
- * The key of a concrete weaver for a bundle defines the setting in which
- * the weaver works. This key typically defines a unique key for the set of
- * aspects which are woven into this bundle. The core equinox aspects
- * runtime uses this key to feed the caching service. This means, the weaver
- * should return different keys for different set of aspects (including
- * versions), respectively when the cache should switch its context.
- *
- * @return A unique key to define the set of aspects that are woven into the
- * bundle to which this weaver belongs
- */
- public String getKey();
-
- /**
- * This method is called for each class which is loaded into the JVM and not
- * read from cache to do the actual weaving, if necessary.
- *
- * @param name The fully qualified name of the class to be loaded
- * @param classbytes The original unmodified bytecode of the class read by
- * the standard OSGi classloading mechanism
- * @param loader The classloader whichi s responsible for loading the class
- * @return The modified (woven) bytecode of the class or null, if no
- * modification happened
- * @throws IOException
- */
- public byte[] preProcess(String name, byte[] classbytes, ClassLoader loader)
- throws IOException;
-
-}
diff --git a/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/service/weaving/IWeavingServiceFactory.java b/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/service/weaving/IWeavingServiceFactory.java
deleted file mode 100644
index 7eb05c2..0000000
--- a/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/service/weaving/IWeavingServiceFactory.java
+++ /dev/null
@@ -1,47 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008 Martin Lippert 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:
- * Martin Lippert initial implementation
- *******************************************************************************/
-
-package org.eclipse.equinox.service.weaving;
-
-import org.eclipse.osgi.service.resolver.BundleDescription;
-import org.eclipse.osgi.service.resolver.State;
-import org.osgi.framework.Bundle;
-
-/**
- * This is the central interface for other bundles to implement when they would
- * like to contribute a concrete weaving mechanism. Bundles should implement
- * this interface and register an implementation as an OSGi service under this
- * interface.
- *
- * @author martinlippert
- */
-public interface IWeavingServiceFactory {
-
- /**
- * Create a concrete weaving implementation for the given bundle. This is
- * called by the basic equinox aspects weaving hook mechanism lazily when
- * the classloader for the bundle is created.
- *
- * @param loader The classloader of the bundle for which to create a weaver
- * @param bundle The bundle for which to create the weaver
- * @param resolverState The state service of the OSGi runtime
- * @param bundleDesciption The description of the bundle for which to create
- * a weaver
- * @param supplementerRegistry The supplementer registry which is used by
- * the core equinox aspects hook
- * @return The created weaver for the given bundle
- */
- public IWeavingService createWeavingService(ClassLoader loader,
- Bundle bundle, State resolverState,
- BundleDescription bundleDesciption,
- ISupplementerRegistry supplementerRegistry);
-
-}
diff --git a/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/service/weaving/Supplementer.java b/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/service/weaving/Supplementer.java
deleted file mode 100644
index d0a63ae..0000000
--- a/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/service/weaving/Supplementer.java
+++ /dev/null
@@ -1,140 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008, 2009 Martin Lippert 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 Knibb initial implementation
- * Martin Lippert supplementing mechanism reworked
- * Martin Lippert fragment handling fixed
- *******************************************************************************/
-
-package org.eclipse.equinox.service.weaving;
-
-import java.util.HashSet;
-import java.util.Set;
-
-import org.eclipse.osgi.util.ManifestElement;
-import org.osgi.framework.Bundle;
-
-public class Supplementer {
-
- private final ManifestElement[] supplementBundle;
-
- private final Set<Bundle> supplementedBundles; // elements of type Bundle
-
- private final Bundle supplementer;
-
- private final Bundle supplementerHost;
-
- private final ManifestElement[] supplementExporter;
-
- private final ManifestElement[] supplementImporter;
-
- public Supplementer(final Bundle bundle, final Bundle bundleHost,
- final ManifestElement[] supplementBundle,
- final ManifestElement[] supplementImporter,
- final ManifestElement[] supplementExporter) {
- this.supplementer = bundle;
- this.supplementerHost = bundleHost != null ? bundleHost : bundle;
- this.supplementBundle = supplementBundle;
- this.supplementImporter = supplementImporter;
- this.supplementExporter = supplementExporter;
- this.supplementedBundles = new HashSet<Bundle>();
- }
-
- public void addSupplementedBundle(final Bundle supplementedBundle) {
- this.supplementedBundles.add(supplementedBundle);
- }
-
- public Bundle[] getSupplementedBundles() {
- return supplementedBundles.toArray(new Bundle[supplementedBundles
- .size()]);
- }
-
- public Bundle getSupplementerBundle() {
- return supplementer;
- }
-
- public Bundle getSupplementerHost() {
- return supplementerHost;
- }
-
- public String getSymbolicName() {
- return supplementer.getSymbolicName();
- }
-
- public boolean isSupplemented(final Bundle bundle) {
- return supplementedBundles.contains(bundle);
- }
-
- public boolean matchesSupplementExporter(final ManifestElement[] exports) {
- boolean matches = false;
-
- if (supplementExporter != null)
- for (int i = 0; !matches && i < supplementExporter.length; i++) {
- final ManifestElement supplementExport = supplementExporter[i];
- for (int j = 0; !matches && j < exports.length; j++) {
- final ManifestElement exportPackage = exports[j];
- if (supplementExport.getValue().equals(
- exportPackage.getValue())) matches = true;
- }
- }
-
- return matches;
- }
-
- public boolean matchesSupplementImporter(final ManifestElement[] imports) {
- boolean matches = false;
-
- if (supplementImporter != null)
- for (int i = 0; !matches && i < supplementImporter.length; i++) {
- final ManifestElement supplementImport = supplementImporter[i];
- for (int j = 0; !matches && j < imports.length; j++) {
- final ManifestElement importPackage = imports[j];
- if (supplementImport.getValue().equals(
- importPackage.getValue())) matches = true;
- }
- }
-
- return matches;
- }
-
- public boolean matchSupplementer(final String symbolicName) {
- boolean matches = false;
-
- if (supplementBundle != null)
- for (int i = 0; !matches && i < supplementBundle.length; i++) {
- final ManifestElement bundle = supplementBundle[i];
- if (equals_wild(bundle.getValue(), symbolicName))
- matches = true;
- }
-
- return matches;
- }
-
- public void removeSupplementedBundle(final Bundle supplementedBundle) {
- this.supplementedBundles.remove(supplementedBundle);
- }
-
- //knibb
- //test if two Strings are equal
- //with wild card support - only supports strings ending in *
- private boolean equals_wild(final String input, final String match) {
- if (input.equals(match)) {
- //its a match so just return true
- return true;
- }
- if (input.endsWith("*") == false) {
- //no wildcards are being used here
- return false;
- }
- final String wild_in = input.substring(0, input.length() - 1);
- if (match.startsWith(wild_in)) return true;
-
- return false;
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/adaptors/Debug.java b/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/adaptors/Debug.java
deleted file mode 100644
index 74a8fcd..0000000
--- a/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/adaptors/Debug.java
+++ /dev/null
@@ -1,70 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 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:
- * Matthew Webster initial implementation
- *******************************************************************************/
-
-package org.eclipse.equinox.weaving.adaptors;
-
-import org.eclipse.osgi.framework.debug.FrameworkDebugOptions;
-
-public class Debug {
-
- public static final String ASPECTJ_OSGI = "org.eclipse.equinox.weaving.hook"; //$NON-NLS-1$
-
- public static boolean DEBUG_BUNDLE;
-
- public static String DEBUG_BUNDLENAME;
-
- public static boolean DEBUG_CACHE;
-
- public static boolean DEBUG_GENERAL;
-
- public static boolean DEBUG_SUPPLEMENTS;
-
- public static boolean DEBUG_WEAVE;
-
- public static final String OPTION_DEBUG_BUNDLE = ASPECTJ_OSGI
- + "/debug/bundle"; //$NON-NLS-1$
-
- public static final String OPTION_DEBUG_BUNDLENAME = ASPECTJ_OSGI
- + "/debug/bundleName"; //$NON-NLS-1$
-
- public static final String OPTION_DEBUG_CACHE = ASPECTJ_OSGI
- + "/debug/cache"; //$NON-NLS-1$
-
- public static final String OPTION_DEBUG_GENERAL = ASPECTJ_OSGI + "/debug"; //$NON-NLS-1$
-
- public static final String OPTION_DEBUG_SUPPLEMENTS = ASPECTJ_OSGI
- + "/debug/supplements"; //$NON-NLS-1$
-
- public static final String OPTION_DEBUG_WEAVE = ASPECTJ_OSGI
- + "/debug/weave"; //$NON-NLS-1$
-
- static {
- final FrameworkDebugOptions fdo = FrameworkDebugOptions.getDefault();
- if (fdo != null) {
- DEBUG_GENERAL = fdo.getBooleanOption(OPTION_DEBUG_GENERAL, false);
- DEBUG_BUNDLE = fdo.getBooleanOption(OPTION_DEBUG_BUNDLE, false);
- DEBUG_WEAVE = fdo.getBooleanOption(OPTION_DEBUG_WEAVE, false);
- DEBUG_CACHE = fdo.getBooleanOption(OPTION_DEBUG_CACHE, false);
- DEBUG_BUNDLENAME = fdo.getOption(OPTION_DEBUG_BUNDLENAME, "");
- DEBUG_SUPPLEMENTS = fdo.getBooleanOption(OPTION_DEBUG_SUPPLEMENTS,
- false);
- }
- }
-
- public static boolean bundleNameMatches(final String name) {
- return name.equals(DEBUG_BUNDLENAME);
- }
-
- public static void println(final String s) {
- /* if (s.indexOf("org.eclipse.osgi.tests") != -1) */System.err
- .println(s);
- }
-}
diff --git a/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/adaptors/IWeavingAdaptor.java b/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/adaptors/IWeavingAdaptor.java
deleted file mode 100644
index a1f3627..0000000
--- a/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/adaptors/IWeavingAdaptor.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 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:
- * David Knibb initial implementation
- * Matthew Webster Eclipse 3.2 changes
- *******************************************************************************/
-
-package org.eclipse.equinox.weaving.adaptors;
-
-import java.net.URL;
-
-import org.eclipse.equinox.service.weaving.CacheEntry;
-import org.eclipse.osgi.baseadaptor.loader.BaseClassLoader;
-
-public interface IWeavingAdaptor {
-
- public CacheEntry findClass(String name, URL sourceFileURL);
-
- public void initialize();
-
- public void setBaseClassLoader(BaseClassLoader baseClassLoader);
-
- public boolean storeClass(String name, URL sourceFileURL, Class clazz,
- byte[] classbytes);
-
- public byte[] weaveClass(String name, byte[] bytes);
-
-}
diff --git a/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/adaptors/WeavingAdaptor.java b/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/adaptors/WeavingAdaptor.java
deleted file mode 100644
index 20d5074..0000000
--- a/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/adaptors/WeavingAdaptor.java
+++ /dev/null
@@ -1,257 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006, 2009 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:
- * David Knibb initial implementation
- * Matthew Webster Eclipse 3.2 changes
- * Martin Lippert minor changes and bugfixes
- * Martin Lippert caching of generated classes
- *******************************************************************************/
-
-package org.eclipse.equinox.weaving.adaptors;
-
-import java.io.IOException;
-import java.net.URL;
-import java.util.HashSet;
-import java.util.Map;
-import java.util.Set;
-
-import org.eclipse.equinox.service.weaving.CacheEntry;
-import org.eclipse.equinox.service.weaving.ICachingService;
-import org.eclipse.equinox.service.weaving.IWeavingService;
-import org.eclipse.equinox.weaving.hooks.WeavingBundleFile;
-import org.eclipse.osgi.baseadaptor.BaseData;
-import org.eclipse.osgi.baseadaptor.bundlefile.BundleFile;
-import org.eclipse.osgi.baseadaptor.loader.BaseClassLoader;
-import org.eclipse.osgi.framework.internal.core.BundleFragment;
-import org.eclipse.osgi.framework.internal.core.BundleHost;
-import org.osgi.framework.Bundle;
-
-public class WeavingAdaptor implements IWeavingAdaptor {
-
- private static class ThreadLocalSet extends ThreadLocal {
-
- public boolean contains(final Object obj) {
- final Set set = (Set) get();
- return set.contains(obj);
- }
-
- public void put(final Object obj) {
- final Set set = (Set) get();
- if (set.contains(obj)) {
- throw new RuntimeException(obj.toString());
- }
- set.add(obj);
- }
-
- public void remove(final Object obj) {
- final Set set = (Set) get();
- if (!set.contains(obj)) {
- throw new RuntimeException(obj.toString());
- }
- set.remove(obj);
- }
-
- @Override
- protected Object initialValue() {
- return new HashSet();
- }
- }
-
- private static ThreadLocalSet identifyRecursionSet = new ThreadLocalSet();
-
- private BaseClassLoader baseLoader;
-
- private Bundle bundle;
-
- private ICachingService cachingService;
-
- private final BaseData data;
-
- private final WeavingAdaptorFactory factory;
-
- private boolean initialized = false;
-
- private String symbolicName;
-
- private IWeavingService weavingService;
-
- public WeavingAdaptor(final BaseData baseData,
- final WeavingAdaptorFactory serviceFactory,
- final BaseClassLoader baseClassLoader,
- final IWeavingService weavingService,
- final ICachingService cachingService) {
- this.data = baseData;
- this.factory = serviceFactory;
- this.symbolicName = baseData.getLocation();
- if (Debug.DEBUG_GENERAL)
- Debug.println("- AspectJAdaptor.AspectJAdaptor() bundle="
- + symbolicName);
- }
-
- public CacheEntry findClass(final String name, final URL sourceFileURL) {
- if (Debug.DEBUG_CACHE)
- Debug.println("> AspectJAdaptor.findClass() bundle=" + symbolicName
- + ", url=" + sourceFileURL + ", name=" + name);
- CacheEntry cacheEntry = null;
-
- initialize();
- if (cachingService != null) {
- cacheEntry = cachingService
- .findStoredClass("", sourceFileURL, name);
- }
-
- if (Debug.DEBUG_CACHE)
- Debug.println("< AspectJAdaptor.findClass() cacheEntry="
- + cacheEntry);
- return cacheEntry;
- }
-
- public void initialize() {
- synchronized (this) {
- if (initialized) return;
-
- this.bundle = data.getBundle();
- this.symbolicName = data.getSymbolicName();
- if (!identifyRecursionSet.contains(this)) {
- identifyRecursionSet.put(this);
-
- if (Debug.DEBUG_GENERAL)
- Debug.println("> AspectJAdaptor.initialize() bundle="
- + symbolicName + ", baseLoader=" + baseLoader);
-
- if (symbolicName.startsWith("org.aspectj")) {
- if (Debug.DEBUG_GENERAL)
- Debug
- .println("- AspectJAdaptor.initialize() symbolicName="
- + symbolicName
- + ", baseLoader="
- + baseLoader);
- } else if (baseLoader != null) {
- weavingService = factory.getWeavingService(baseLoader);
- cachingService = factory.getCachingService(baseLoader,
- bundle, weavingService);
- } else if (bundle instanceof BundleFragment) {
- final BundleFragment fragment = (BundleFragment) bundle;
- final BundleHost host = (BundleHost) factory
- .getHost(fragment);
- if (Debug.DEBUG_GENERAL)
- Debug
- .println("- AspectJAdaptor.initialize() symbolicName="
- + symbolicName + ", host=" + host);
-
- final BaseData hostData = (BaseData) host.getBundleData();
- // System.err.println("? AspectJAdaptor.initialize() bundleData=" + hostData);
- final BundleFile bundleFile = hostData.getBundleFile();
- if (bundleFile instanceof WeavingBundleFile) {
- final WeavingBundleFile hostFile = (WeavingBundleFile) bundleFile;
- // System.err.println("? AspectJAdaptor.initialize() bundleFile=" + hostFile);
- final WeavingAdaptor hostAdaptor = (WeavingAdaptor) hostFile
- .getAdaptor();
- // System.err.println("? AspectJAdaptor.initialize() bundleFile=" + hostAdaptor);
- weavingService = hostAdaptor.weavingService;
- cachingService = factory.getCachingService(
- hostAdaptor.baseLoader, bundle, weavingService);
- }
- } else {
- if (Debug.DEBUG_GENERAL)
- Debug
- .println("W AspectJAdaptor.initialize() symbolicName="
- + symbolicName
- + ", baseLoader="
- + baseLoader);
- }
- initialized = true;
- identifyRecursionSet.remove(this);
- }
-
- if (Debug.DEBUG_GENERAL)
- Debug.println("< AspectJAdaptor.initialize() weavingService="
- + (weavingService != null) + ", cachingService="
- + (cachingService != null));
- }
- }
-
- public void setBaseClassLoader(final BaseClassLoader baseClassLoader) {
- this.baseLoader = baseClassLoader;
-
- if (Debug.DEBUG_GENERAL)
- Debug.println("- AspectJAdaptor.setBaseClassLoader() bundle="
- + symbolicName + ", baseLoader=" + baseLoader);
- }
-
- public boolean storeClass(final String name, final URL sourceFileURL,
- final Class clazz, final byte[] classbytes) {
- if (Debug.DEBUG_CACHE)
- Debug.println("> AspectJAdaptor.storeClass() bundle="
- + symbolicName + ", url=" + sourceFileURL + ", name="
- + name + ", clazz=" + clazz);
- boolean stored = false;
-
- initialize();
- if (cachingService != null) {
- //have we generated a closure?
- if (weavingService != null
- && weavingService.generatedClassesExistFor(
- (ClassLoader) baseLoader, name)) {
- //If so we need to ask the cache if its capable of handling generated closures
- if (cachingService.canCacheGeneratedClasses()) {
- final Map<String, byte[]> generatedClasses = weavingService
- .getGeneratedClassesFor(name);
-
- stored = cachingService.storeClassAndGeneratedClasses("",
- sourceFileURL, clazz, classbytes, generatedClasses);
- } else {
- weavingService
- .flushGeneratedClasses((ClassLoader) baseLoader);
- if (Debug.DEBUG_CACHE)
- Debug
- .println("- AspectJAdaptor.storeClass() generatedClassesExistFor=true");
- }
- } else {
- stored = cachingService.storeClass("", sourceFileURL, clazz,
- classbytes);
- if (!stored) {
- if (Debug.DEBUG_CACHE)
- Debug.println("E AspectJHook.storeClass() bundle="
- + symbolicName + ", name=" + name);
- }
- }
- }
- if (Debug.DEBUG_CACHE)
- Debug.println("< AspectJAdaptor.storeClass() stored=" + stored);
- return stored;
- }
-
- @Override
- public String toString() {
- return "AspectJAdaptor[" + symbolicName + "]";
- }
-
- public byte[] weaveClass(final String name, final byte[] bytes) {
- if (Debug.DEBUG_WEAVE)
- Debug.println("> AspectJAdaptor.weaveClass() bundle="
- + symbolicName + ", name=" + name + ", bytes="
- + bytes.length);
- byte[] newBytes = null;
-
- initialize();
- if (/* shouldWeave(bytes) && */weavingService != null) {
- try {
- newBytes = weavingService.preProcess(name, bytes,
- (ClassLoader) baseLoader);
- } catch (final IOException ex) {
- throw new ClassFormatError(ex.toString());
- }
- }
-
- if (Debug.DEBUG_WEAVE)
- Debug.println("< AspectJAdaptor.weaveClass() newBytes=" + newBytes);
- return newBytes;
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/adaptors/WeavingAdaptorFactory.java b/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/adaptors/WeavingAdaptorFactory.java
deleted file mode 100644
index efbd370..0000000
--- a/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/adaptors/WeavingAdaptorFactory.java
+++ /dev/null
@@ -1,300 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006, 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:
- * David Knibb initial implementation
- * Matthew Webster Eclipse 3.2 changes
- * Heiko Seeberger Enhancements for service dynamics
- * Martin Lippert extracted weaving and caching service factories
- *******************************************************************************/
-
-package org.eclipse.equinox.weaving.adaptors;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Map.Entry;
-
-import org.eclipse.equinox.service.weaving.ICachingService;
-import org.eclipse.equinox.service.weaving.ICachingServiceFactory;
-import org.eclipse.equinox.service.weaving.ISupplementerRegistry;
-import org.eclipse.equinox.service.weaving.IWeavingService;
-import org.eclipse.equinox.service.weaving.IWeavingServiceFactory;
-import org.eclipse.osgi.baseadaptor.BaseData;
-import org.eclipse.osgi.baseadaptor.loader.BaseClassLoader;
-import org.eclipse.osgi.service.resolver.BundleDescription;
-import org.eclipse.osgi.service.resolver.State;
-import org.osgi.framework.Bundle;
-import org.osgi.framework.BundleContext;
-import org.osgi.framework.Constants;
-import org.osgi.framework.InvalidSyntaxException;
-import org.osgi.framework.ServiceEvent;
-import org.osgi.framework.ServiceListener;
-import org.osgi.framework.ServiceReference;
-import org.osgi.service.packageadmin.PackageAdmin;
-import org.osgi.service.startlevel.StartLevel;
-import org.osgi.util.tracker.ServiceTracker;
-
-public class WeavingAdaptorFactory {
-
- private static final Collection IGNORE_WEAVING_SERVICE_BUNDLES = Arrays
- .asList(new String[] { "org.eclipse.equinox.weaving.aspectj",
- "org.eclipse.equinox.weaving.caching",
- "org.eclipse.equinox.weaving.caching.j9",
- "org.eclipse.update.configurator",
- "org.eclipse.equinox.simpleconfigurator",
- "org.eclipse.equinox.common" });
-
- private static final String WEAVING_SERVICE_DYNAMICS_PROPERTY = "equinox.weaving.service.dynamics";
-
- private BundleContext bundleContext;
-
- private ServiceTracker cachingServiceFactoryTracker;
-
- private PackageAdmin packageAdminService;
-
- private StartLevel startLevelService;
-
- private ISupplementerRegistry supplementerRegistry;
-
- private ServiceTracker weavingServiceFactoryTracker;
-
- private ServiceListener weavingServiceListener;
-
- /**
- * Bundle -> Local weaving service
- */
- private final Map weavingServices = Collections
- .synchronizedMap(new HashMap());
-
- public WeavingAdaptorFactory() {
- }
-
- public void dispose(final BundleContext context) {
-
- context.removeServiceListener(weavingServiceListener);
- if (Debug.DEBUG_WEAVE)
- Debug.println("> Removed service listener for weaving service.");
-
- weavingServiceFactoryTracker.close();
- if (Debug.DEBUG_WEAVE)
- Debug.println("> Closed service tracker for weaving service.");
-
- cachingServiceFactoryTracker.close();
- if (Debug.DEBUG_CACHE)
- Debug.println("> Closed service tracker for caching service.");
- }
-
- public Bundle getHost(final Bundle fragment) {
- if (Debug.DEBUG_GENERAL)
- Debug.println("> AspectJAdaptorFactory.getHost() fragment="
- + fragment);
-
- Bundle host = null;
- if (packageAdminService != null)
- host = packageAdminService.getHosts(fragment)[0];
-
- if (Debug.DEBUG_GENERAL)
- Debug.println("< AspectJAdaptorFactory.getHost() " + host);
- return host;
- }
-
- public void initialize(final BundleContext context,
- final ISupplementerRegistry supplementerRegistry) {
- if (Debug.DEBUG_GENERAL)
- Debug.println("> AspectJAdaptorFactory.initialize() context="
- + context);
- this.bundleContext = context;
- this.supplementerRegistry = supplementerRegistry;
-
- initializePackageAdminService(context);
- initializeStartLevelService(context);
-
- // Service tracker for weaving service
- weavingServiceFactoryTracker = new ServiceTracker(context,
- IWeavingServiceFactory.class.getName(), null);
- weavingServiceFactoryTracker.open();
- if (Debug.DEBUG_WEAVE)
- Debug.println("> Opened service tracker for weaving service.");
-
- // Service listener for weaving service
- weavingServiceListener = new ServiceListener() {
-
- public void serviceChanged(final ServiceEvent event) {
- if (event.getType() == ServiceEvent.REGISTERED) {
- final List<Bundle> bundlesToRefresh = new ArrayList<Bundle>();
-
- final Iterator bundleEntries = weavingServices.entrySet()
- .iterator();
- synchronized (weavingServices) {
- while (bundleEntries.hasNext()) {
- final Entry entry = (Entry) bundleEntries.next();
- final Bundle bundle = (Bundle) entry.getKey();
- if (entry.getValue() == null) {
- bundleEntries.remove();
- System.err
- .println("bundle update because of weaving service start: "
- + bundle.getSymbolicName());
- bundlesToRefresh.add(bundle);
- if (Debug.DEBUG_WEAVE)
- Debug.println("> Updated bundle "
- + bundle.getSymbolicName());
- }
- }
- }
-
- if (bundlesToRefresh.size() > 0) {
- supplementerRegistry.refreshBundles(bundlesToRefresh
- .toArray(new Bundle[bundlesToRefresh.size()]));
- }
- }
- if (event.getType() == ServiceEvent.UNREGISTERING
- && startLevelService != null
- && startLevelService.getStartLevel() > 0) {
- final List<Bundle> bundlesToRefresh = new ArrayList<Bundle>();
-
- final Iterator bundleEntries = weavingServices.entrySet()
- .iterator();
- synchronized (weavingServices) {
- while (bundleEntries.hasNext()) {
- final Entry entry = (Entry) bundleEntries.next();
- final Bundle bundle = (Bundle) entry.getKey();
- if (entry.getValue() != null) {
- bundleEntries.remove();
- System.err
- .println("bundle update because of weaving service stop: "
- + bundle.getSymbolicName());
- bundlesToRefresh.add(bundle);
- if (Debug.DEBUG_WEAVE)
- Debug.println("> Updated bundle "
- + bundle.getSymbolicName());
- }
- }
- }
- if (bundlesToRefresh.size() > 0) {
- supplementerRegistry.refreshBundles(bundlesToRefresh
- .toArray(new Bundle[bundlesToRefresh.size()]));
- }
- }
- }
- };
-
- if (System.getProperty(WEAVING_SERVICE_DYNAMICS_PROPERTY, "false")
- .equals("true")) {
- try {
- context.addServiceListener(weavingServiceListener, "("
- + Constants.OBJECTCLASS + "="
- + IWeavingService.class.getName() + ")");
- } catch (final InvalidSyntaxException e) { // This is correct!
- }
- }
-
- // Service tracker for caching service
- cachingServiceFactoryTracker = new ServiceTracker(context,
- ICachingServiceFactory.class.getName(), null);
- cachingServiceFactoryTracker.open();
- if (Debug.DEBUG_CACHE)
- Debug.println("> Opened service tracker for caching service.");
- }
-
- protected ICachingService getCachingService(final BaseClassLoader loader,
- final Bundle bundle, final IWeavingService weavingService) {
- if (Debug.DEBUG_CACHE)
- Debug.println("> AspectJAdaptorFactory.getCachingService() bundle="
- + bundle + ", weavingService=" + weavingService);
- ICachingService service = null;
- String key = "";
-
- if (weavingService != null) {
- key = weavingService.getKey();
- }
- final ICachingServiceFactory cachingServiceFactory = (ICachingServiceFactory) cachingServiceFactoryTracker
- .getService();
- if (cachingServiceFactory != null) {
- service = cachingServiceFactory.createCachingService(
- (ClassLoader) loader, bundle, key);
- }
- if (Debug.DEBUG_CACHE)
- Debug
- .println("< AspectJAdaptorFactory.getCachingService() service="
- + service + ", key='" + key + "'");
- return service;
- }
-
- protected IWeavingService getWeavingService(final BaseClassLoader loader) {
- if (Debug.DEBUG_WEAVE)
- Debug
- .println("> AspectJAdaptorFactory.getWeavingService() baseClassLoader="
- + loader);
-
- final BaseData baseData = loader.getClasspathManager().getBaseData();
- final State state = baseData.getAdaptor().getState();
- final Bundle bundle = baseData.getBundle();
- final BundleDescription bundleDescription = state.getBundle(bundle
- .getBundleId());
-
- IWeavingService weavingService = null;
- if (!IGNORE_WEAVING_SERVICE_BUNDLES.contains(bundle.getSymbolicName())) {
- final IWeavingServiceFactory weavingServiceFactory = (IWeavingServiceFactory) weavingServiceFactoryTracker
- .getService();
- if (weavingServiceFactory != null) {
- weavingService = weavingServiceFactory.createWeavingService(
- (ClassLoader) loader, bundle, state, bundleDescription,
- supplementerRegistry);
- }
- synchronized (weavingServices) {
- weavingServices.put(bundle, weavingService);
- }
- }
- if (Debug.DEBUG_WEAVE)
- Debug
- .println("< AspectJAdaptorFactory.getWeavingService() service="
- + weavingService);
- return weavingService;
- }
-
- private void initializePackageAdminService(final BundleContext context) {
- if (Debug.DEBUG_GENERAL)
- Debug
- .println("> AspectJAdaptorFactory.initializePackageAdminService() context="
- + context);
-
- final ServiceReference ref = context
- .getServiceReference(PackageAdmin.class.getName());
- if (ref != null) {
- packageAdminService = (PackageAdmin) context.getService(ref);
- }
-
- if (Debug.DEBUG_GENERAL)
- Debug
- .println("< AspectJAdaptorFactory.initializePackageAdminService() "
- + packageAdminService);
- }
-
- private void initializeStartLevelService(final BundleContext context) {
- if (Debug.DEBUG_GENERAL)
- Debug
- .println("> AspectJAdaptorFactory.initializeStartLevelService() context="
- + context);
-
- final ServiceReference ref = context
- .getServiceReference(StartLevel.class.getName());
- if (ref != null) {
- startLevelService = (StartLevel) context.getService(ref);
- }
-
- if (Debug.DEBUG_GENERAL)
- Debug
- .println("< AspectJAdaptorFactory.initializeStartLevelService() "
- + startLevelService);
- }
-}
diff --git a/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/hooks/AbstractWeavingBundleFile.java b/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/hooks/AbstractWeavingBundleFile.java
deleted file mode 100644
index ecc67be..0000000
--- a/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/hooks/AbstractWeavingBundleFile.java
+++ /dev/null
@@ -1,122 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006, 2009 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:
- * David Knibb initial implementation
- * Matthew Webster Eclipse 3.2 changes
- * Martin Lippert caching of generated classes
- *******************************************************************************/
-
-package org.eclipse.equinox.weaving.hooks;
-
-import java.io.File;
-import java.io.IOException;
-import java.net.URL;
-import java.util.Enumeration;
-
-import org.eclipse.equinox.weaving.adaptors.IWeavingAdaptor;
-import org.eclipse.osgi.baseadaptor.bundlefile.BundleEntry;
-import org.eclipse.osgi.baseadaptor.bundlefile.BundleFile;
-
-public abstract class AbstractWeavingBundleFile extends BundleFile {
-
- protected BundleFile delegate;
-
- private final BundleAdaptorProvider adaptorProvider;
-
- public AbstractWeavingBundleFile(final BundleAdaptorProvider adaptorProvider,
- final BundleFile bundleFile) {
- super(bundleFile.getBaseFile());
- this.adaptorProvider = adaptorProvider;
- this.delegate = bundleFile;
- }
-
- /**
- * @see org.eclipse.osgi.baseadaptor.bundlefile.BundleFile#close()
- */
- @Override
- public void close() throws IOException {
- delegate.close();
- }
-
- /**
- * @see org.eclipse.osgi.baseadaptor.bundlefile.BundleFile#containsDir(java.lang.String)
- */
- @Override
- public boolean containsDir(final String dir) {
- return delegate.containsDir(dir);
- }
-
- /**
- * @return
- */
- public IWeavingAdaptor getAdaptor() {
- return this.adaptorProvider.getAdaptor();
- }
-
- /**
- * @see org.eclipse.osgi.baseadaptor.bundlefile.BundleFile#getBaseFile()
- */
- @Override
- public File getBaseFile() {
- final File baseFile = delegate.getBaseFile();
- return baseFile;
- }
-
- /**
- * @see org.eclipse.osgi.baseadaptor.bundlefile.BundleFile#getEntry(java.lang.String)
- */
- @Override
- public BundleEntry getEntry(final String path) {
- return delegate.getEntry(path);
- }
-
- /**
- * @see org.eclipse.osgi.baseadaptor.bundlefile.BundleFile#getEntryPaths(java.lang.String)
- */
- @Override
- public Enumeration getEntryPaths(final String path) {
- return delegate.getEntryPaths(path);
- }
-
- /**
- * @see org.eclipse.osgi.baseadaptor.bundlefile.BundleFile#getFile(java.lang.String,
- * boolean)
- */
- @Override
- public File getFile(final String path, final boolean nativeCode) {
- return delegate.getFile(path, nativeCode);
- }
-
- /**
- * @deprecated
- */
- @Deprecated
- @Override
- public URL getResourceURL(final String path, final long hostBundleID) {
- return delegate.getResourceURL(path, hostBundleID);
- }
-
- /**
- * @deprecated
- */
- @Deprecated
- @Override
- public URL getResourceURL(final String path, final long hostBundleID,
- final int index) {
- return delegate.getResourceURL(path, hostBundleID, index);
- }
-
- /**
- * @see org.eclipse.osgi.baseadaptor.bundlefile.BundleFile#open()
- */
- @Override
- public void open() throws IOException {
- delegate.open();
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/hooks/AbstractWeavingHook.java b/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/hooks/AbstractWeavingHook.java
deleted file mode 100644
index ad1438d..0000000
--- a/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/hooks/AbstractWeavingHook.java
+++ /dev/null
@@ -1,266 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006, 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:
- * Matthew Webster initial implementation
- * Martin Lippert supplementing mechanism reworked
- *******************************************************************************/
-
-package org.eclipse.equinox.weaving.hooks;
-
-import java.io.IOException;
-import java.net.URL;
-import java.net.URLConnection;
-import java.security.ProtectionDomain;
-import java.util.ArrayList;
-import java.util.Properties;
-
-import org.eclipse.equinox.service.weaving.ISupplementerRegistry;
-import org.eclipse.osgi.baseadaptor.BaseAdaptor;
-import org.eclipse.osgi.baseadaptor.BaseData;
-import org.eclipse.osgi.baseadaptor.HookConfigurator;
-import org.eclipse.osgi.baseadaptor.HookRegistry;
-import org.eclipse.osgi.baseadaptor.bundlefile.BundleEntry;
-import org.eclipse.osgi.baseadaptor.bundlefile.BundleFile;
-import org.eclipse.osgi.baseadaptor.hooks.AdaptorHook;
-import org.eclipse.osgi.baseadaptor.hooks.BundleFileWrapperFactoryHook;
-import org.eclipse.osgi.baseadaptor.hooks.ClassLoadingHook;
-import org.eclipse.osgi.baseadaptor.hooks.ClassLoadingStatsHook;
-import org.eclipse.osgi.baseadaptor.loader.BaseClassLoader;
-import org.eclipse.osgi.baseadaptor.loader.ClasspathEntry;
-import org.eclipse.osgi.baseadaptor.loader.ClasspathManager;
-import org.eclipse.osgi.framework.adaptor.BundleProtectionDomain;
-import org.eclipse.osgi.framework.adaptor.ClassLoaderDelegate;
-import org.eclipse.osgi.framework.log.FrameworkLog;
-import org.osgi.framework.BundleContext;
-import org.osgi.framework.BundleException;
-
-/**
- * Default implementation of all the necessary adaptor hooks. Used to keep the
- * real hook implementation focused on only the necessary methods.
- *
- * @author Matthew Webster
- * @author Martin Lippert
- */
-public abstract class AbstractWeavingHook implements HookConfigurator,
- AdaptorHook, BundleFileWrapperFactoryHook, ClassLoadingHook,
- ClassLoadingStatsHook, IAdaptorProvider {
-
- /**
- * flag to indicate whether to print out detailed information or not
- */
- public static boolean verbose = Boolean
- .getBoolean("org.aspectj.osgi.verbose"); //$NON-NLS-1$
-
- private ISupplementerRegistry supplementerRegistry;
-
- /**
- * @see org.eclipse.osgi.baseadaptor.hooks.ClassLoadingHook#addClassPathEntry(java.util.ArrayList,
- * java.lang.String,
- * org.eclipse.osgi.baseadaptor.loader.ClasspathManager,
- * org.eclipse.osgi.baseadaptor.BaseData,
- * java.security.ProtectionDomain)
- */
- public boolean addClassPathEntry(final ArrayList cpEntries,
- final String cp, final ClasspathManager hostmanager,
- final BaseData sourcedata, final ProtectionDomain sourcedomain) {
- return false;
- }
-
- /**
- * @see org.eclipse.osgi.baseadaptor.HookConfigurator#addHooks(org.eclipse.osgi.baseadaptor.HookRegistry)
- */
- public void addHooks(final HookRegistry hooks) {
- if (verbose)
- System.err
- .println("[org.eclipse.equinox.weaving.hook] info adding AspectJ hooks ..."); //$NON-NLS-1$
-
- supplementerRegistry = new SupplementerRegistry(this);
-
- hooks.addAdaptorHook(this);
- hooks.addClassLoadingHook(this);
- hooks.addBundleFileWrapperFactoryHook(this);
- hooks.addClassLoadingStatsHook(this);
- hooks.addClassLoaderDelegateHook(new WeavingLoaderDelegateHook(
- supplementerRegistry));
- }
-
- /**
- * @see org.eclipse.osgi.baseadaptor.hooks.AdaptorHook#addProperties(java.util.Properties)
- */
- public void addProperties(final Properties properties) {
- }
-
- /**
- * @see org.eclipse.osgi.baseadaptor.hooks.ClassLoadingHook#createClassLoader(java.lang.ClassLoader,
- * org.eclipse.osgi.framework.adaptor.ClassLoaderDelegate,
- * org.eclipse.osgi.framework.adaptor.BundleProtectionDomain,
- * org.eclipse.osgi.baseadaptor.BaseData, java.lang.String[])
- */
- public BaseClassLoader createClassLoader(final ClassLoader parent,
- final ClassLoaderDelegate delegate,
- final BundleProtectionDomain domain, final BaseData data,
- final String[] bundleclasspath) {
- return null;
- }
-
- /**
- * @see org.eclipse.osgi.baseadaptor.hooks.AdaptorHook#createFrameworkLog()
- */
- public FrameworkLog createFrameworkLog() {
- return null;
- }
-
- /**
- * @see org.eclipse.osgi.baseadaptor.hooks.ClassLoadingHook#findLibrary(org.eclipse.osgi.baseadaptor.BaseData,
- * java.lang.String)
- */
- public String findLibrary(final BaseData data, final String libName) {
- return null;
- }
-
- /**
- * @see org.eclipse.osgi.baseadaptor.hooks.AdaptorHook#frameworkStart(org.osgi.framework.BundleContext)
- */
- public void frameworkStart(final BundleContext context)
- throws BundleException {
- }
-
- /**
- * @see org.eclipse.osgi.baseadaptor.hooks.AdaptorHook#frameworkStop(org.osgi.framework.BundleContext)
- */
- public void frameworkStop(final BundleContext context)
- throws BundleException {
- }
-
- /**
- * @see org.eclipse.osgi.baseadaptor.hooks.AdaptorHook#frameworkStopping(org.osgi.framework.BundleContext)
- */
- public void frameworkStopping(final BundleContext context) {
- }
-
- /**
- * @see org.eclipse.osgi.baseadaptor.hooks.ClassLoadingHook#getBundleClassLoaderParent()
- */
- public ClassLoader getBundleClassLoaderParent() {
- return null;
- }
-
- /**
- * Their is only one registry for dealing with supplementers available via
- * this accessor method.
- *
- * @return The supplementer registry, guaranteed to be not null
- */
- public ISupplementerRegistry getSupplementerRegistry() {
- return this.supplementerRegistry;
- }
-
- /**
- * @see org.eclipse.osgi.baseadaptor.hooks.AdaptorHook#handleRuntimeError(java.lang.Throwable)
- */
- public void handleRuntimeError(final Throwable error) {
- }
-
- /**
- * @see org.eclipse.osgi.baseadaptor.hooks.AdaptorHook#initialize(org.eclipse.osgi.baseadaptor.BaseAdaptor)
- */
- public void initialize(final BaseAdaptor adaptor) {
- }
-
- /**
- * @see org.eclipse.osgi.baseadaptor.hooks.ClassLoadingHook#initializedClassLoader(org.eclipse.osgi.baseadaptor.loader.BaseClassLoader,
- * org.eclipse.osgi.baseadaptor.BaseData)
- */
- public void initializedClassLoader(final BaseClassLoader baseClassLoader,
- final BaseData data) {
- }
-
- /**
- * @see org.eclipse.osgi.baseadaptor.hooks.AdaptorHook#mapLocationToURLConnection(java.lang.String)
- */
- public URLConnection mapLocationToURLConnection(final String location)
- throws IOException {
- return null;
- }
-
- /**
- * @see org.eclipse.osgi.baseadaptor.hooks.AdaptorHook#matchDNChain(java.lang.String,
- * java.lang.String[])
- */
- public boolean matchDNChain(final String pattern, final String[] dnChain) {
- return false;
- }
-
- /**
- * @see org.eclipse.osgi.baseadaptor.hooks.ClassLoadingStatsHook#postFindLocalClass(java.lang.String,
- * java.lang.Class,
- * org.eclipse.osgi.baseadaptor.loader.ClasspathManager)
- */
- public void postFindLocalClass(final String name, final Class clazz,
- final ClasspathManager manager) {
- }
-
- /**
- * @see org.eclipse.osgi.baseadaptor.hooks.ClassLoadingStatsHook#postFindLocalResource(java.lang.String,
- * java.net.URL, org.eclipse.osgi.baseadaptor.loader.ClasspathManager)
- */
- public void postFindLocalResource(final String name, final URL resource,
- final ClasspathManager manager) {
- }
-
- /**
- * @see org.eclipse.osgi.baseadaptor.hooks.ClassLoadingStatsHook#preFindLocalClass(java.lang.String,
- * org.eclipse.osgi.baseadaptor.loader.ClasspathManager)
- */
- public void preFindLocalClass(final String name,
- final ClasspathManager manager) throws ClassNotFoundException {
- }
-
- /**
- * @see org.eclipse.osgi.baseadaptor.hooks.ClassLoadingStatsHook#preFindLocalResource(java.lang.String,
- * org.eclipse.osgi.baseadaptor.loader.ClasspathManager)
- */
- public void preFindLocalResource(final String name,
- final ClasspathManager manager) {
- }
-
- /**
- * @see org.eclipse.osgi.baseadaptor.hooks.ClassLoadingHook#processClass(java.lang.String,
- * byte[], org.eclipse.osgi.baseadaptor.loader.ClasspathEntry,
- * org.eclipse.osgi.baseadaptor.bundlefile.BundleEntry,
- * org.eclipse.osgi.baseadaptor.loader.ClasspathManager)
- */
- public byte[] processClass(final String name, final byte[] classbytes,
- final ClasspathEntry classpathEntry, final BundleEntry entry,
- final ClasspathManager manager) {
- return null;
- }
-
- /**
- * @see org.eclipse.osgi.baseadaptor.hooks.ClassLoadingStatsHook#recordClassDefine(java.lang.String,
- * java.lang.Class, byte[],
- * org.eclipse.osgi.baseadaptor.loader.ClasspathEntry,
- * org.eclipse.osgi.baseadaptor.bundlefile.BundleEntry,
- * org.eclipse.osgi.baseadaptor.loader.ClasspathManager)
- */
- public void recordClassDefine(final String name, final Class clazz,
- final byte[] classbytes, final ClasspathEntry classpathEntry,
- final BundleEntry entry, final ClasspathManager manager) {
- }
-
- /**
- * @see org.eclipse.osgi.baseadaptor.hooks.BundleFileWrapperFactoryHook#wrapBundleFile(org.eclipse.osgi.baseadaptor.bundlefile.BundleFile,
- * java.lang.Object, org.eclipse.osgi.baseadaptor.BaseData, boolean)
- */
- public BundleFile wrapBundleFile(final BundleFile bundleFile,
- final Object content, final BaseData data, final boolean base)
- throws IOException {
- return null;
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/hooks/BaseWeavingBundleFile.java b/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/hooks/BaseWeavingBundleFile.java
deleted file mode 100644
index 57bcb24..0000000
--- a/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/hooks/BaseWeavingBundleFile.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 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:
- * David Knibb initial implementation
- * Matthew Webster Eclipse 3.2 changes
- *******************************************************************************/
-
-package org.eclipse.equinox.weaving.hooks;
-
-import java.io.IOException;
-
-import org.eclipse.osgi.baseadaptor.bundlefile.BundleFile;
-
-public class BaseWeavingBundleFile extends WeavingBundleFile {
-
- public BaseWeavingBundleFile(final BundleAdaptorProvider adaptorProvider,
- final BundleFile bundleFile) throws IOException {
- super(adaptorProvider, bundleFile);
- }
-}
diff --git a/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/hooks/BundleAdaptorProvider.java b/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/hooks/BundleAdaptorProvider.java
deleted file mode 100644
index db49cf6..0000000
--- a/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/hooks/BundleAdaptorProvider.java
+++ /dev/null
@@ -1,29 +0,0 @@
-
-package org.eclipse.equinox.weaving.hooks;
-
-import org.eclipse.equinox.weaving.adaptors.IWeavingAdaptor;
-import org.eclipse.osgi.baseadaptor.BaseData;
-import org.eclipse.osgi.framework.internal.core.BundleFragment;
-
-public class BundleAdaptorProvider {
-
- private final IAdaptorProvider adaptorProvider;
-
- private final BaseData baseData;
-
- public BundleAdaptorProvider(final BaseData data,
- final IAdaptorProvider adaptorProvider) {
- this.baseData = data;
- this.adaptorProvider = adaptorProvider;
- }
-
- public IWeavingAdaptor getAdaptor() {
- if (this.baseData.getBundle() instanceof BundleFragment) {
- return this.adaptorProvider.getHostBundleAdaptor(this.baseData
- .getBundleID());
- } else {
- return this.adaptorProvider.getAdaptor(this.baseData.getBundleID());
- }
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/hooks/CachedClassBundleEntry.java b/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/hooks/CachedClassBundleEntry.java
deleted file mode 100644
index d2897b9..0000000
--- a/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/hooks/CachedClassBundleEntry.java
+++ /dev/null
@@ -1,93 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2009 Martin Lippert 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:
- * Martin Lippert initial implementation
- *******************************************************************************/
-
-package org.eclipse.equinox.weaving.hooks;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.net.URL;
-
-import org.eclipse.equinox.weaving.adaptors.IWeavingAdaptor;
-import org.eclipse.osgi.baseadaptor.bundlefile.BundleEntry;
-
-public class CachedClassBundleEntry extends BundleEntry {
-
- private final IWeavingAdaptor adaptor;
-
- private final URL bundleFileURL;
-
- private final byte[] bytes;
-
- private final BundleEntry delegate;
-
- private final String name;
-
- public CachedClassBundleEntry(final IWeavingAdaptor aspectjAdaptor,
- final BundleEntry delegate, final String name, final byte[] bytes,
- final URL url) {
- this.adaptor = aspectjAdaptor;
- this.bundleFileURL = url;
- this.delegate = delegate;
- this.name = name;
- this.bytes = bytes;
- }
-
- public boolean dontWeave() {
- return true;
- }
-
- public IWeavingAdaptor getAdaptor() {
- return adaptor;
- }
-
- public URL getBundleFileURL() {
- return bundleFileURL;
- }
-
- @Override
- public byte[] getBytes() throws IOException {
- return bytes;
- }
-
- @Override
- public URL getFileURL() {
- return null;
- }
-
- @Override
- public InputStream getInputStream() throws IOException {
- if (delegate == null) {
- System.err.println("error in: " + name);
- }
- return delegate.getInputStream();
- }
-
- @Override
- public URL getLocalURL() {
- return null;
- }
-
- @Override
- public String getName() {
- return name;
- }
-
- @Override
- public long getSize() {
- return bytes.length;
- }
-
- @Override
- public long getTime() {
- return 0;
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/hooks/CachedGeneratedClassBundleEntry.java b/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/hooks/CachedGeneratedClassBundleEntry.java
deleted file mode 100644
index c2dedf4..0000000
--- a/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/hooks/CachedGeneratedClassBundleEntry.java
+++ /dev/null
@@ -1,88 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2009 Martin Lippert 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:
- * Martin Lippert initial implementation
- *******************************************************************************/
-
-package org.eclipse.equinox.weaving.hooks;
-
-import java.io.ByteArrayInputStream;
-import java.io.IOException;
-import java.io.InputStream;
-import java.net.URL;
-
-import org.eclipse.equinox.weaving.adaptors.IWeavingAdaptor;
-import org.eclipse.osgi.baseadaptor.bundlefile.BundleEntry;
-
-public class CachedGeneratedClassBundleEntry extends BundleEntry {
-
- private final IWeavingAdaptor adaptor;
-
- private final URL bundleFileURL;
-
- private final byte[] bytes;
-
- private final String name;
-
- public CachedGeneratedClassBundleEntry(final IWeavingAdaptor adaptor,
- final String path, final byte[] cachedBytes, final URL url) {
- this.adaptor = adaptor;
- this.bundleFileURL = url;
- this.bytes = cachedBytes;
- this.name = path;
- }
-
- public boolean dontWeave() {
- return true;
- }
-
- public IWeavingAdaptor getAdaptor() {
- return adaptor;
- }
-
- public URL getBundleFileURL() {
- return bundleFileURL;
- }
-
- @Override
- public byte[] getBytes() throws IOException {
- return bytes;
- }
-
- @Override
- public URL getFileURL() {
- return null;
- }
-
- @Override
- public InputStream getInputStream() throws IOException {
- final ByteArrayInputStream result = new ByteArrayInputStream(bytes);
- return result;
- }
-
- @Override
- public URL getLocalURL() {
- return null;
- }
-
- @Override
- public String getName() {
- return name;
- }
-
- @Override
- public long getSize() {
- return bytes.length;
- }
-
- @Override
- public long getTime() {
- return 0;
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/hooks/IAdaptorProvider.java b/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/hooks/IAdaptorProvider.java
deleted file mode 100644
index 89fdb41..0000000
--- a/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/hooks/IAdaptorProvider.java
+++ /dev/null
@@ -1,14 +0,0 @@
-
-package org.eclipse.equinox.weaving.hooks;
-
-import org.eclipse.equinox.weaving.adaptors.IWeavingAdaptor;
-
-public interface IAdaptorProvider {
-
- public IWeavingAdaptor getAdaptor(long bundleID);
-
- public IWeavingAdaptor getHostBundleAdaptor(long bundleID);
-
- public void resetAdaptor(long bundleID);
-
-}
diff --git a/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/hooks/SupplementBundleListener.java b/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/hooks/SupplementBundleListener.java
deleted file mode 100644
index 1b05a5b..0000000
--- a/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/hooks/SupplementBundleListener.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008 Martin Lippert 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:
- * Martin Lippert initial implementation
- *******************************************************************************/
-
-package org.eclipse.equinox.weaving.hooks;
-
-import org.eclipse.equinox.service.weaving.ISupplementerRegistry;
-import org.osgi.framework.Bundle;
-import org.osgi.framework.BundleEvent;
-import org.osgi.framework.SynchronousBundleListener;
-
-public class SupplementBundleListener implements SynchronousBundleListener {
-
- private final ISupplementerRegistry supplementerRegistry;
-
- public SupplementBundleListener(
- final ISupplementerRegistry supplementerRegistry) {
- this.supplementerRegistry = supplementerRegistry;
- }
-
- public void bundleChanged(final BundleEvent event) {
- final Bundle bundle = event.getBundle();
- if (event.getType() == BundleEvent.RESOLVED) {
- supplementerRegistry.addBundle(bundle);
- } else if (event.getType() == BundleEvent.UNRESOLVED) {
- supplementerRegistry.removeBundle(bundle);
- }
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/hooks/SupplementerRegistry.java b/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/hooks/SupplementerRegistry.java
deleted file mode 100644
index d089a11..0000000
--- a/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/hooks/SupplementerRegistry.java
+++ /dev/null
@@ -1,418 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008, 2009 Martin Lippert 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:
- * Matthew Webster initial implementation
- * Martin Lippert supplementing mechanism reworked
- * Heiko Seeberger Enhancements for service dynamics
- * Martin Lippert fragment handling fixed
- *******************************************************************************/
-
-package org.eclipse.equinox.weaving.hooks;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.Dictionary;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-import org.eclipse.equinox.service.weaving.ISupplementerRegistry;
-import org.eclipse.equinox.service.weaving.Supplementer;
-import org.eclipse.osgi.util.ManifestElement;
-import org.osgi.framework.Bundle;
-import org.osgi.framework.BundleContext;
-import org.osgi.framework.BundleException;
-import org.osgi.framework.Constants;
-import org.osgi.service.packageadmin.PackageAdmin;
-
-public class SupplementerRegistry implements ISupplementerRegistry {
-
- //knibb
- /**
- * Manifest header (named "Supplement-Bundle") identifying the
- * names (and optionally, version numbers) of any bundles supplemented by
- * this bundle. All supplemented bundles will have all the exported packages
- * of this bundle added to their imports list
- *
- * <p>
- * The attribute value may be retrieved from the <code>Dictionary</code>
- * object returned by the <code>Bundle.getHeaders</code> method.
- */
- public static final String SUPPLEMENT_BUNDLE = "Eclipse-SupplementBundle"; //$NON-NLS-1$
-
- /**
- * Manifest header (named "Supplement-Exporter") identifying the
- * names (and optionally, version numbers) of the packages that the bundle
- * supplements. All exporters of one of these packages will have the
- * exported packages of this bundle added to their imports list.
- *
- * <p>
- * The attribute value may be retrieved from the <code>Dictionary</code>
- * object returned by the <code>Bundle.getHeaders</code> method.
- */
- public static final String SUPPLEMENT_EXPORTER = "Eclipse-SupplementExporter"; //$NON-NLS-1$
-
- /**
- * Manifest header (named "Supplement-Importer") identifying the
- * names (and optionally, version numbers) of the packages that the bundle
- * supplements. All importers of one of these packages will have the
- * exported packages of this bundle added to their imports in addition.
- *
- * <p>
- * The attribute value may be retrieved from the <code>Dictionary</code>
- * object returned by the <code>Bundle.getHeaders</code> method.
- */
- public static final String SUPPLEMENT_IMPORTER = "Eclipse-SupplementImporter"; //$NON-NLS-1$
-
- private final IAdaptorProvider adaptorProvider;
-
- private BundleContext context;
-
- private final Set<String> dontWeaveTheseBundles; // elements of type String (symbolic name of bundle)
-
- private PackageAdmin packageAdmin;
-
- private final Map<String, Supplementer> supplementers; // keys of type String (symbolic name of supplementer bundle), values of type Supplementer
-
- private final Map<Long, Supplementer[]> supplementersByBundle;
-
- public SupplementerRegistry(final IAdaptorProvider adaptorProvider) {
- this.adaptorProvider = adaptorProvider;
-
- this.supplementers = new HashMap<String, Supplementer>();
- this.supplementersByBundle = new HashMap<Long, Supplementer[]>();
- this.dontWeaveTheseBundles = new HashSet<String>();
-
- this.dontWeaveTheseBundles.add("org.eclipse.osgi");
- this.dontWeaveTheseBundles.add("org.eclipse.update.configurator");
- this.dontWeaveTheseBundles.add("org.eclipse.core.runtime");
- this.dontWeaveTheseBundles.add("org.eclipse.equinox.common");
- this.dontWeaveTheseBundles.add("org.eclipse.equinox.weaving.hook");
- this.dontWeaveTheseBundles.add("org.eclipse.equinox.weaving.aspectj");
- this.dontWeaveTheseBundles.add("org.eclipse.equinox.weaving.caching");
- this.dontWeaveTheseBundles
- .add("org.eclipse.equinox.weaving.caching.j9");
- this.dontWeaveTheseBundles.add("org.aspectj.runtime");
- this.dontWeaveTheseBundles.add("org.aspectj.weaver");
- this.dontWeaveTheseBundles
- .add("org.eclipse.equinox.simpleconfigurator");
- }
-
- /**
- * @see org.eclipse.equinox.service.weaving.ISupplementerRegistry#addBundle(org.osgi.framework.Bundle)
- */
- public void addBundle(final Bundle bundle) {
- // First analyze which supplementers already exists for this bundle
- addSupplementedBundle(bundle);
-
- // Second analyze if this bundle itself is a supplementer
- addSupplementer(bundle, true);
- }
-
- /**
- * @see org.eclipse.equinox.service.weaving.ISupplementerRegistry#addSupplementedBundle(org.osgi.framework.Bundle)
- */
- public void addSupplementedBundle(final Bundle bundle) {
- try {
- final Dictionary<?, ?> manifest = bundle.getHeaders();
- final ManifestElement[] imports = ManifestElement.parseHeader(
- Constants.IMPORT_PACKAGE, (String) manifest
- .get(Constants.IMPORT_PACKAGE));
- final ManifestElement[] exports = ManifestElement.parseHeader(
- Constants.EXPORT_PACKAGE, (String) manifest
- .get(Constants.EXPORT_PACKAGE));
- final List<Supplementer> supplementers = getMatchingSupplementers(
- bundle.getSymbolicName(), imports, exports);
- if (supplementers.size() > 0) {
- this.addSupplementedBundle(bundle, supplementers);
- }
- this.supplementersByBundle.put(bundle.getBundleId(), supplementers
- .toArray(new Supplementer[supplementers.size()]));
- } catch (final BundleException e) {
- }
- }
-
- /**
- * @see org.eclipse.equinox.service.weaving.ISupplementerRegistry#addSupplementer(org.osgi.framework.Bundle,
- * boolean)
- */
- public void addSupplementer(final Bundle bundle, final boolean updateBundles) {
- try {
- final Dictionary<?, ?> manifest = bundle.getHeaders();
- final ManifestElement[] supplementBundle = ManifestElement
- .parseHeader(SUPPLEMENT_BUNDLE, (String) manifest
- .get(SUPPLEMENT_BUNDLE));
- final ManifestElement[] supplementImporter = ManifestElement
- .parseHeader(SUPPLEMENT_IMPORTER, (String) manifest
- .get(SUPPLEMENT_IMPORTER));
- final ManifestElement[] supplementExporter = ManifestElement
- .parseHeader(SUPPLEMENT_EXPORTER, (String) manifest
- .get(SUPPLEMENT_EXPORTER));
-
- if (supplementBundle != null || supplementImporter != null
- || supplementExporter != null) {
-
- final Bundle[] hosts = this.packageAdmin.getHosts(bundle);
- final Bundle host = hosts != null && hosts.length == 1 ? hosts[0]
- : null;
-
- final Supplementer newSupplementer = new Supplementer(bundle,
- host, supplementBundle, supplementImporter,
- supplementExporter);
-
- this.supplementers.put(bundle.getSymbolicName(),
- newSupplementer);
- if (updateBundles) {
- resupplementInstalledBundles(newSupplementer);
- }
- }
- } catch (final BundleException e) {
- }
- }
-
- /**
- * @see org.eclipse.equinox.service.weaving.ISupplementerRegistry#getMatchingSupplementers(java.lang.String,
- * org.eclipse.osgi.util.ManifestElement[],
- * org.eclipse.osgi.util.ManifestElement[])
- */
- public List<Supplementer> getMatchingSupplementers(
- final String symbolicName, final ManifestElement[] imports,
- final ManifestElement[] exports) {
- List<Supplementer> result = Collections.emptyList();
-
- if (supplementers.size() > 0
- && !this.dontWeaveTheseBundles.contains(symbolicName)) {
- result = new LinkedList<Supplementer>();
- for (final Iterator<Supplementer> i = supplementers.values()
- .iterator(); i.hasNext();) {
- final Supplementer supplementer = i.next();
- if (isSupplementerMatching(symbolicName, imports, exports,
- supplementer)) {
- result.add(supplementer);
- }
- }
- }
-
- return result;
- }
-
- /**
- * @see org.eclipse.equinox.service.weaving.ISupplementerRegistry#getPackageAdmin()
- */
- public PackageAdmin getPackageAdmin() {
- return packageAdmin;
- }
-
- /**
- * @see org.eclipse.equinox.service.weaving.ISupplementerRegistry#getSupplementers(org.osgi.framework.Bundle)
- */
- public Supplementer[] getSupplementers(final Bundle bundle) {
- return getSupplementers(bundle.getBundleId());
- }
-
- /**
- * @see org.eclipse.equinox.service.weaving.ISupplementerRegistry#getSupplementers(long)
- */
- public Supplementer[] getSupplementers(final long bundleID) {
- if (supplementersByBundle.containsKey(bundleID)) {
- return supplementersByBundle.get(bundleID);
- } else {
- return new Supplementer[0];
- }
- }
-
- /**
- * Refreshes the given bundles
- *
- * @param bundles The bundles to refresh
- */
- public void refreshBundles(final Bundle[] bundles) {
- if (this.packageAdmin != null) {
- if (AbstractWeavingHook.verbose) {
- for (int i = 0; i < bundles.length; i++) {
- System.out.println("refresh bundle: "
- + bundles[i].getSymbolicName());
- }
- }
-
- this.packageAdmin.refreshPackages(bundles);
- }
- }
-
- /**
- * @see org.eclipse.equinox.service.weaving.ISupplementerRegistry#removeBundle(org.osgi.framework.Bundle)
- */
- public void removeBundle(final Bundle bundle) {
- // if this bundle is itself supplemented by others, remove the bundle from those lists
- removeSupplementedBundle(bundle);
- this.supplementersByBundle.remove(bundle.getBundleId());
-
- this.adaptorProvider.resetAdaptor(bundle.getBundleId());
-
- // if this bundle supplements other bundles, remove this supplementer and update the other bundles
- if (supplementers.containsKey(bundle.getSymbolicName())) {
-
- // remove the supplementer from the list of supplementers
- final Supplementer supplementer = supplementers.get(bundle
- .getSymbolicName());
- supplementers.remove(bundle.getSymbolicName());
- if (AbstractWeavingHook.verbose)
- System.err
- .println("[org.eclipse.equinox.weaving.hook] info removing supplementer " //$NON-NLS-1$
- + bundle.getSymbolicName());
-
- // refresh bundles that where supplemented by this bundle
- final Bundle[] supplementedBundles = supplementer
- .getSupplementedBundles();
- if (supplementedBundles != null && supplementedBundles.length > 0) {
- final List<Bundle> bundlesToRefresh = new ArrayList<Bundle>(
- supplementedBundles.length);
- for (final Bundle bundleToRefresh : supplementedBundles) {
- if (this.adaptorProvider.getAdaptor(bundleToRefresh
- .getBundleId()) != null) {
- bundlesToRefresh.add(bundleToRefresh);
- }
- }
-
- if (bundlesToRefresh.size() > 0) {
- refreshBundles(bundlesToRefresh
- .toArray(new Bundle[bundlesToRefresh.size()]));
- }
- }
-
- // remove this supplementer from the list of supplementers per other bundle
- for (int i = 0; i < supplementedBundles.length; i++) {
- final long bundleId = supplementedBundles[i].getBundleId();
- final List<Supplementer> supplementerList = new ArrayList<Supplementer>(
- Arrays.asList(this.supplementersByBundle.get(bundleId)));
- supplementerList.remove(supplementer);
- this.supplementersByBundle.put(bundleId, supplementerList
- .toArray(new Supplementer[0]));
- }
- }
- }
-
- /**
- * @see org.eclipse.equinox.service.weaving.ISupplementerRegistry#setBundleContext(org.osgi.framework.BundleContext)
- */
- public void setBundleContext(final BundleContext context) {
- this.context = context;
- }
-
- /**
- * @see org.eclipse.equinox.service.weaving.ISupplementerRegistry#setPackageAdmin(org.osgi.service.packageadmin.PackageAdmin)
- */
- public void setPackageAdmin(final PackageAdmin packageAdmin) {
- this.packageAdmin = packageAdmin;
- }
-
- private void addSupplementedBundle(final Bundle supplementedBundle,
- final List<Supplementer> supplementers) {
- for (final Iterator<Supplementer> iterator = supplementers.iterator(); iterator
- .hasNext();) {
- final Supplementer supplementer = iterator.next();
- supplementer.addSupplementedBundle(supplementedBundle);
- }
- }
-
- private boolean isSupplementerMatching(final String symbolicName,
- final ManifestElement[] imports, final ManifestElement[] exports,
- final Supplementer supplementer) {
- final String supplementerName = supplementer.getSymbolicName();
- if (!supplementerName.equals(symbolicName)) {
- if (supplementer.matchSupplementer(symbolicName)
- || (imports != null && supplementer
- .matchesSupplementImporter(imports))
- || (exports != null && supplementer
- .matchesSupplementExporter(exports))) {
- return true;
- }
- }
- return false;
- }
-
- private void removeSupplementedBundle(final Bundle bundle) {
- for (final Iterator<Supplementer> iterator = this.supplementers
- .values().iterator(); iterator.hasNext();) {
- final Supplementer supplementer = iterator.next();
- supplementer.removeSupplementedBundle(bundle);
- }
- }
-
- private void resupplementInstalledBundles(final Supplementer supplementer) {
- final Bundle[] installedBundles = context.getBundles();
-
- final List<Bundle> bundlesToRefresh = new ArrayList<Bundle>();
-
- for (int i = 0; i < installedBundles.length; i++) {
- try {
- final Bundle bundle = installedBundles[i];
-
- // skip the bundle itself, just resupplement already installed bundles
- if (bundle.getSymbolicName().equals(
- supplementer.getSymbolicName())) {
- continue;
- }
-
- // skip bundles that should not be woven
- if (dontWeaveTheseBundles.contains(bundle.getSymbolicName())) {
- continue;
- }
-
- // find out which of the installed bundles matches the new supplementer
- final Dictionary<?, ?> manifest = bundle.getHeaders();
- final ManifestElement[] imports = ManifestElement.parseHeader(
- Constants.IMPORT_PACKAGE, (String) manifest
- .get(Constants.IMPORT_PACKAGE));
- final ManifestElement[] exports = ManifestElement.parseHeader(
- Constants.EXPORT_PACKAGE, (String) manifest
- .get(Constants.EXPORT_PACKAGE));
-
- if (isSupplementerMatching(bundle.getSymbolicName(), imports,
- exports, supplementer)) {
- if (this.adaptorProvider.getAdaptor(bundle.getBundleId()) != null) {
- bundlesToRefresh.add(bundle);
- } else {
- supplementer.addSupplementedBundle(bundle);
- final Supplementer[] existingSupplementers = supplementersByBundle
- .get(bundle.getBundleId());
- List<Supplementer> enhancedSupplementerList = null;
- if (existingSupplementers != null) {
- enhancedSupplementerList = new ArrayList<Supplementer>(
- Arrays.asList(existingSupplementers));
- } else {
- enhancedSupplementerList = new ArrayList<Supplementer>();
- }
- if (!enhancedSupplementerList.contains(supplementer)) {
- enhancedSupplementerList.add(supplementer);
- }
-
- this.supplementersByBundle.put(bundle.getBundleId(),
- enhancedSupplementerList
- .toArray(new Supplementer[0]));
- }
- }
-
- } catch (final BundleException e) {
- e.printStackTrace();
- }
- }
-
- if (bundlesToRefresh.size() > 0) {
- final Bundle[] bundles = bundlesToRefresh
- .toArray(new Bundle[bundlesToRefresh.size()]);
-
- refreshBundles(bundles);
- }
- }
-}
diff --git a/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/hooks/WeavingBundleEntry.java b/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/hooks/WeavingBundleEntry.java
deleted file mode 100644
index 4ec862d..0000000
--- a/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/hooks/WeavingBundleEntry.java
+++ /dev/null
@@ -1,89 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006, 2009 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:
- * David Knibb initial implementation
- * Matthew Webster Eclipse 3.2 changes
- * Martin Lippert minor changes and bugfixes
- * Martin Lippert splitted into different types of bundle entries
- *******************************************************************************/
-
-package org.eclipse.equinox.weaving.hooks;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.net.URL;
-
-import org.eclipse.equinox.weaving.adaptors.IWeavingAdaptor;
-import org.eclipse.osgi.baseadaptor.bundlefile.BundleEntry;
-
-public class WeavingBundleEntry extends BundleEntry {
-
- private final IWeavingAdaptor adaptor;
-
- private final URL bundleFileURL;
-
- private final BundleEntry delegate;
-
- private final boolean dontWeave;
-
- public WeavingBundleEntry(final IWeavingAdaptor aspectjAdaptor,
- final BundleEntry delegate, final URL url, final boolean dontWeave) {
- this.adaptor = aspectjAdaptor;
- this.bundleFileURL = url;
- this.delegate = delegate;
- this.dontWeave = dontWeave;
- }
-
- public boolean dontWeave() {
- return dontWeave;
- }
-
- public IWeavingAdaptor getAdaptor() {
- return adaptor;
- }
-
- public URL getBundleFileURL() {
- return bundleFileURL;
- }
-
- @Override
- public byte[] getBytes() throws IOException {
- return delegate.getBytes();
- }
-
- @Override
- public URL getFileURL() {
- return delegate.getFileURL();
- }
-
- @Override
- public InputStream getInputStream() throws IOException {
- return delegate.getInputStream();
- }
-
- @Override
- public URL getLocalURL() {
- return delegate.getLocalURL();
- }
-
- @Override
- public String getName() {
- return delegate.getName();
- }
-
- @Override
- public long getSize() {
- return delegate.getSize();
- }
-
- @Override
- public long getTime() {
- return delegate.getTime();
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/hooks/WeavingBundleFile.java b/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/hooks/WeavingBundleFile.java
deleted file mode 100644
index fe5f47f..0000000
--- a/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/hooks/WeavingBundleFile.java
+++ /dev/null
@@ -1,95 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006, 2008, 2009 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:
- * David Knibb initial implementation
- * Matthew Webster Eclipse 3.2 changes
- * Martin Lippert caching optimizations
- * Martin Lippert caching of generated classes
- *******************************************************************************/
-
-package org.eclipse.equinox.weaving.hooks;
-
-import java.io.IOException;
-import java.net.URL;
-
-import org.eclipse.equinox.service.weaving.CacheEntry;
-import org.eclipse.equinox.weaving.adaptors.Debug;
-import org.eclipse.equinox.weaving.adaptors.IWeavingAdaptor;
-import org.eclipse.osgi.baseadaptor.bundlefile.BundleEntry;
-import org.eclipse.osgi.baseadaptor.bundlefile.BundleFile;
-
-/**
- * This is a wrapper for bundle files that allows the weaving runtime to create
- * wrapped instances of bundle entry objects.
- *
- * Those bundle entry objects are used to return class bytes from the cache
- * instead of the bundle itself.
- */
-public class WeavingBundleFile extends AbstractWeavingBundleFile {
-
- private final URL url;
-
- /**
- * Create a new wrapper for a bundle file
- *
- * @param adaptorProvider A provider that allows this wrapper to gain access
- * to the adaptor of this bundle
- * @param bundleFile The wrapped bundle file
- * @throws IOException
- */
- public WeavingBundleFile(final BundleAdaptorProvider adaptorProvider,
- final BundleFile bundleFile) throws IOException {
- super(adaptorProvider, bundleFile);
- this.url = delegate.getBaseFile().toURL();
- }
-
- @Override
- public BundleEntry getEntry(final String path) {
- if (Debug.DEBUG_BUNDLE)
- Debug.println("> AspectJBundleFile.getEntry() path=" + path
- + ", url=" + url);
- BundleEntry entry = delegate.getEntry(path);
-
- if (path.endsWith(".class") && entry != null) {
- final int offset = path.lastIndexOf('.');
- final String name = path.substring(0, offset).replace('/', '.');
- final IWeavingAdaptor adaptor = getAdaptor();
- if (adaptor != null) {
- final CacheEntry cacheEntry = adaptor.findClass(name, url);
- if (cacheEntry == null) {
- entry = new WeavingBundleEntry(adaptor, entry, url, false);
- if (Debug.DEBUG_BUNDLE)
- Debug.println("- AspectJBundleFile.getEntry() path="
- + path + ", entry=" + entry);
- } else if (cacheEntry.getCachedBytes() != null) {
- entry = new CachedClassBundleEntry(adaptor, entry, path,
- cacheEntry.getCachedBytes(), url);
- } else {
- entry = new WeavingBundleEntry(adaptor, entry, url,
- cacheEntry.dontWeave());
- }
- }
- } else if (path.endsWith(".class") && entry == null) {
- final int offset = path.lastIndexOf('.');
- final String name = path.substring(0, offset).replace('/', '.');
- final IWeavingAdaptor adaptor = getAdaptor();
- if (adaptor != null) {
- final CacheEntry cacheEntry = adaptor.findClass(name, url);
- if (cacheEntry != null && cacheEntry.getCachedBytes() != null) {
- entry = new CachedGeneratedClassBundleEntry(adaptor, path,
- cacheEntry.getCachedBytes(), url);
- }
- }
- }
-
- if (Debug.DEBUG_BUNDLE)
- Debug.println("< AspectJBundleFile.getEntry() entry=" + entry);
- return entry;
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/hooks/WeavingHook.java b/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/hooks/WeavingHook.java
deleted file mode 100644
index 530b276..0000000
--- a/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/hooks/WeavingHook.java
+++ /dev/null
@@ -1,249 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006, 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:
- * David Knibb initial implementation
- * Matthew Webster Eclipse 3.2 changes
- * Martin Lippert supplementing mechanism reworked
- *******************************************************************************/
-
-package org.eclipse.equinox.weaving.hooks;
-
-import java.io.IOException;
-import java.net.URL;
-import java.util.HashMap;
-import java.util.Map;
-
-import org.eclipse.equinox.service.weaving.ISupplementerRegistry;
-import org.eclipse.equinox.weaving.adaptors.Debug;
-import org.eclipse.equinox.weaving.adaptors.IWeavingAdaptor;
-import org.eclipse.equinox.weaving.adaptors.WeavingAdaptor;
-import org.eclipse.equinox.weaving.adaptors.WeavingAdaptorFactory;
-import org.eclipse.osgi.baseadaptor.BaseData;
-import org.eclipse.osgi.baseadaptor.bundlefile.BundleEntry;
-import org.eclipse.osgi.baseadaptor.bundlefile.BundleFile;
-import org.eclipse.osgi.baseadaptor.loader.BaseClassLoader;
-import org.eclipse.osgi.baseadaptor.loader.ClasspathEntry;
-import org.eclipse.osgi.baseadaptor.loader.ClasspathManager;
-import org.osgi.framework.Bundle;
-import org.osgi.framework.BundleContext;
-import org.osgi.framework.BundleException;
-import org.osgi.framework.ServiceReference;
-import org.osgi.service.packageadmin.PackageAdmin;
-
-public class WeavingHook extends AbstractWeavingHook {
-
- private final WeavingAdaptorFactory adaptorFactory;
-
- private final Map<Long, IWeavingAdaptor> adaptors;
-
- private BundleContext bundleContext;
-
- public WeavingHook() {
- if (Debug.DEBUG_GENERAL) Debug.println("- AspectJHook.<init>()");
- this.adaptorFactory = new WeavingAdaptorFactory();
- this.adaptors = new HashMap<Long, IWeavingAdaptor>();
- }
-
- /**
- * @see org.eclipse.equinox.weaving.hooks.AbstractWeavingHook#frameworkStart(org.osgi.framework.BundleContext)
- */
- @Override
- public void frameworkStart(final BundleContext context)
- throws BundleException {
- // Debug.println("? AspectJHook.frameworkStart() context=" + context + ", fdo=" + FrameworkDebugOptions.getDefault());
- initialize(context);
- }
-
- /**
- * @see org.eclipse.equinox.weaving.hooks.AbstractWeavingHook#frameworkStop(org.osgi.framework.BundleContext)
- */
- @Override
- public void frameworkStop(final BundleContext context)
- throws BundleException {
- adaptorFactory.dispose(context);
- }
-
- public IWeavingAdaptor getAdaptor(final long bundleID) {
- return this.adaptors.get(bundleID);
- }
-
- public IWeavingAdaptor getHostBundleAdaptor(final long bundleID) {
- final Bundle bundle = this.bundleContext.getBundle(bundleID);
- if (bundle != null) {
- final Bundle host = adaptorFactory.getHost(bundle);
- if (host != null) {
- final long hostBundleID = host.getBundleId();
- return this.adaptors.get(hostBundleID);
- }
- }
- return null;
- }
-
- /**
- * @see org.eclipse.equinox.weaving.hooks.AbstractWeavingHook#initializedClassLoader(org.eclipse.osgi.baseadaptor.loader.BaseClassLoader,
- * org.eclipse.osgi.baseadaptor.BaseData)
- */
- @Override
- public void initializedClassLoader(final BaseClassLoader baseClassLoader,
- final BaseData data) {
- if (Debug.DEBUG_GENERAL)
- Debug
- .println("> AspectJHook.initializedClassLoader() bundle="
- + data.getSymbolicName() + ", loader="
- + baseClassLoader + ", data=" + data
- + ", bundleFile=" + data.getBundleFile());
-
- final IWeavingAdaptor adaptor = createAspectJAdaptor(data);
- adaptor.setBaseClassLoader(baseClassLoader);
- adaptor.initialize();
- this.adaptors.put(data.getBundleID(), adaptor);
-
- if (Debug.DEBUG_GENERAL)
- Debug.println("< AspectJHook.initializedClassLoader() adaptor="
- + adaptor);
- }
-
- /**
- * @see org.eclipse.equinox.weaving.hooks.AbstractWeavingHook#processClass(java.lang.String,
- * byte[], org.eclipse.osgi.baseadaptor.loader.ClasspathEntry,
- * org.eclipse.osgi.baseadaptor.bundlefile.BundleEntry,
- * org.eclipse.osgi.baseadaptor.loader.ClasspathManager)
- */
- @Override
- public byte[] processClass(final String name, final byte[] classbytes,
- final ClasspathEntry classpathEntry, final BundleEntry entry,
- final ClasspathManager manager) {
- byte[] newClassytes = null;
- if (entry instanceof WeavingBundleEntry) {
- final WeavingBundleEntry ajBundleEntry = (WeavingBundleEntry) entry;
- if (!ajBundleEntry.dontWeave()) {
- final IWeavingAdaptor adaptor = ajBundleEntry.getAdaptor();
- newClassytes = adaptor.weaveClass(name, classbytes);
- }
- }
- return newClassytes;
- }
-
- /**
- * @see org.eclipse.equinox.weaving.hooks.AbstractWeavingHook#recordClassDefine(java.lang.String,
- * java.lang.Class, byte[],
- * org.eclipse.osgi.baseadaptor.loader.ClasspathEntry,
- * org.eclipse.osgi.baseadaptor.bundlefile.BundleEntry,
- * org.eclipse.osgi.baseadaptor.loader.ClasspathManager)
- */
- @Override
- public void recordClassDefine(final String name, final Class clazz,
- final byte[] classbytes, final ClasspathEntry classpathEntry,
- final BundleEntry entry, final ClasspathManager manager) {
- if (entry instanceof WeavingBundleEntry) {
- final WeavingBundleEntry ajBundleEntry = (WeavingBundleEntry) entry;
- if (!ajBundleEntry.dontWeave()) {
- final IWeavingAdaptor adaptor = ajBundleEntry.getAdaptor();
- final URL sourceFileURL = ajBundleEntry.getBundleFileURL();
- adaptor.storeClass(name, sourceFileURL, clazz, classbytes);
- }
- }
- }
-
- public void resetAdaptor(final long bundleID) {
- this.adaptors.remove(bundleID);
- }
-
- @Override
- public BundleFile wrapBundleFile(final BundleFile bundleFile,
- final Object content, final BaseData data, final boolean base)
- throws IOException {
- BundleFile wrapped = null;
- if (Debug.DEBUG_BUNDLE)
- Debug
- .println("> AspectJBundleFileWrapperFactoryHook.wrapBundleFile() bundle="
- + data.getSymbolicName()
- + " bundleFile="
- + bundleFile
- + ", content="
- + content
- + ", data="
- + data
- + ", base="
- + base
- + ", baseFile="
- + bundleFile.getBaseFile());
-
- if (base) {
- wrapped = new BaseWeavingBundleFile(new BundleAdaptorProvider(data,
- this), bundleFile);
- } else {
- wrapped = new WeavingBundleFile(new BundleAdaptorProvider(data,
- this), bundleFile);
- }
- if (Debug.DEBUG_BUNDLE)
- Debug
- .println("< AspectJBundleFileWrapperFactoryHook.wrapBundleFile() wrapped="
- + wrapped);
- return wrapped;
- }
-
- private IWeavingAdaptor createAspectJAdaptor(final BaseData baseData) {
- if (Debug.DEBUG_GENERAL)
- Debug.println("> AspectJHook.createAspectJAdaptor() location="
- + baseData.getLocation());
- IWeavingAdaptor adaptor = null;
-
- if (adaptorFactory != null) {
- adaptor = new WeavingAdaptor(baseData, adaptorFactory, null, null,
- null);
- } else {
- if (Debug.DEBUG_GENERAL)
- Debug.println("- AspectJHook.createAspectJAdaptor() factory="
- + adaptorFactory);
- }
-
- if (Debug.DEBUG_GENERAL)
- Debug.println("< AspectJHook.createAspectJAdaptor() adaptor="
- + adaptor);
- return adaptor;
- }
-
- private IWeavingAdaptor getAspectJAdaptor(final BaseData data) {
- return getAdaptor(data.getBundleID());
- }
-
- private void initialize(final BundleContext context) {
- if (Debug.DEBUG_GENERAL)
- Debug.println("> AspectJHook.initialize() context=" + context);
-
- this.bundleContext = context;
-
- final ISupplementerRegistry supplementerRegistry = getSupplementerRegistry();
- adaptorFactory.initialize(context, supplementerRegistry);
-
- final ServiceReference serviceReference = context
- .getServiceReference(PackageAdmin.class.getName());
- final PackageAdmin packageAdmin = (PackageAdmin) context
- .getService(serviceReference);
-
- supplementerRegistry.setBundleContext(context);
- supplementerRegistry.setPackageAdmin(packageAdmin);
- context.addBundleListener(new SupplementBundleListener(
- supplementerRegistry));
-
- // final re-build supplementer final registry state for final installed bundles
- final Bundle[] installedBundles = context.getBundles();
- for (int i = 0; i < installedBundles.length; i++) {
- supplementerRegistry.addSupplementer(installedBundles[i], false);
- }
- for (int i = 0; i < installedBundles.length; i++) {
- supplementerRegistry.addSupplementedBundle(installedBundles[i]);
- }
-
- if (Debug.DEBUG_GENERAL)
- Debug.println("< AspectJHook.initialize() adaptorFactory="
- + adaptorFactory);
- }
-
-}
diff --git a/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/hooks/WeavingLoaderDelegateHook.java b/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/hooks/WeavingLoaderDelegateHook.java
deleted file mode 100644
index 7f029fa..0000000
--- a/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/hooks/WeavingLoaderDelegateHook.java
+++ /dev/null
@@ -1,250 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008, 2009 Martin Lippert 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:
- * Martin Lippert initial implementation
- * Martin Lippert fragment handling fixed
- *******************************************************************************/
-
-package org.eclipse.equinox.weaving.hooks;
-
-import java.io.FileNotFoundException;
-import java.net.URL;
-import java.util.Enumeration;
-import java.util.HashSet;
-import java.util.Set;
-
-import org.eclipse.equinox.service.weaving.ISupplementerRegistry;
-import org.eclipse.equinox.service.weaving.Supplementer;
-import org.eclipse.osgi.framework.adaptor.BundleClassLoader;
-import org.eclipse.osgi.framework.adaptor.BundleData;
-import org.eclipse.osgi.framework.adaptor.ClassLoaderDelegateHook;
-
-/**
- * This class implements the delegate hook for the class loader to allow
- * supplemented bundles find types and resources from theirs supplementer
- * bundles
- *
- * This works together with the supplementer registry to handle the
- * supplementing mechanism. The supplementer registry controls which bundle is
- * supplemented by which other bundle. This hook implementation uses this
- * information to broaden type and resource visibility according to the
- * supplementer registry information.
- */
-public class WeavingLoaderDelegateHook implements ClassLoaderDelegateHook {
-
- private final ThreadLocal<Set<String>> postFindClassCalls = new ThreadLocal<Set<String>>() {
-
- @Override
- protected Set<String> initialValue() {
- return new HashSet<String>();
- }
- };
-
- private final ThreadLocal<Set<String>> postFindResourceCalls = new ThreadLocal<Set<String>>() {
-
- @Override
- protected Set<String> initialValue() {
- return new HashSet<String>();
- }
- };
-
- private final ThreadLocal<Set<String>> postFindResourcesCalls = new ThreadLocal<Set<String>>() {
-
- @Override
- protected Set<String> initialValue() {
- return new HashSet<String>();
- }
- };
-
- private final ISupplementerRegistry supplementerRegistry;
-
- /**
- * Create the hook instance for broaden the visibility according to the
- * supplementing mechansism.
- *
- * @param supplementerRegistry The supplementer registry to be used by this
- * hook for information retrieval which bundles are supplemented
- * by which other bundles (needs to not be null)
- */
- public WeavingLoaderDelegateHook(
- final ISupplementerRegistry supplementerRegistry) {
- this.supplementerRegistry = supplementerRegistry;
- }
-
- /**
- * @see org.eclipse.osgi.framework.adaptor.ClassLoaderDelegateHook#postFindClass(java.lang.String,
- * org.eclipse.osgi.framework.adaptor.BundleClassLoader,
- * org.eclipse.osgi.framework.adaptor.BundleData)
- */
- public Class postFindClass(final String name,
- final BundleClassLoader classLoader, final BundleData data)
- throws ClassNotFoundException {
- final long bundleID = data.getBundleID();
-
- final String callKey = bundleID + name;
- if (postFindClassCalls.get().contains(callKey)) {
- return null;
- }
-
- postFindClassCalls.get().add(callKey);
- try {
- final Supplementer[] supplementers = supplementerRegistry
- .getSupplementers(bundleID);
- if (supplementers != null) {
- for (int i = 0; i < supplementers.length; i++) {
- try {
- final Class<?> clazz = supplementers[i]
- .getSupplementerHost().loadClass(name);
- if (clazz != null) {
- return clazz;
- }
- } catch (final ClassNotFoundException e) {
- }
- }
- }
- } finally {
- postFindClassCalls.get().remove(callKey);
- }
-
- return null;
- }
-
- /**
- * @see org.eclipse.osgi.framework.adaptor.ClassLoaderDelegateHook#postFindLibrary(java.lang.String,
- * org.eclipse.osgi.framework.adaptor.BundleClassLoader,
- * org.eclipse.osgi.framework.adaptor.BundleData)
- */
- public String postFindLibrary(final String name,
- final BundleClassLoader classLoader, final BundleData data) {
- return null;
- }
-
- /**
- * @see org.eclipse.osgi.framework.adaptor.ClassLoaderDelegateHook#postFindResource(java.lang.String,
- * org.eclipse.osgi.framework.adaptor.BundleClassLoader,
- * org.eclipse.osgi.framework.adaptor.BundleData)
- */
- public URL postFindResource(final String name,
- final BundleClassLoader classLoader, final BundleData data)
- throws FileNotFoundException {
- final long bundleID = data.getBundleID();
-
- final String callKey = bundleID + name;
- if (postFindResourceCalls.get().contains(callKey)) {
- return null;
- }
-
- postFindResourceCalls.get().add(callKey);
- try {
- final Supplementer[] supplementers = supplementerRegistry
- .getSupplementers(bundleID);
- if (supplementers != null) {
- for (int i = 0; i < supplementers.length; i++) {
- try {
- final URL resource = supplementers[i]
- .getSupplementerHost().getResource(name);
- if (resource != null) {
- return resource;
- }
- } catch (final Exception e) {
- e.printStackTrace();
- }
- }
- }
- } finally {
- postFindResourceCalls.get().remove(callKey);
- }
-
- return null;
- }
-
- /**
- * @see org.eclipse.osgi.framework.adaptor.ClassLoaderDelegateHook#postFindResources(java.lang.String,
- * org.eclipse.osgi.framework.adaptor.BundleClassLoader,
- * org.eclipse.osgi.framework.adaptor.BundleData)
- */
- public Enumeration postFindResources(final String name,
- final BundleClassLoader classLoader, final BundleData data)
- throws FileNotFoundException {
- final long bundleID = data.getBundleID();
-
- final String callKey = bundleID + name;
- if (postFindResourcesCalls.get().contains(callKey)) {
- return null;
- }
-
- postFindResourcesCalls.get().add(callKey);
- try {
- final Supplementer[] supplementers = supplementerRegistry
- .getSupplementers(bundleID);
- if (supplementers != null) {
- for (int i = 0; i < supplementers.length; i++) {
- try {
- final Enumeration<?> resource = supplementers[i]
- .getSupplementerHost().getResources(name);
- if (resource != null) {
- // TODO: if more than one enumeration is found, we should return all items
- return resource;
- }
- } catch (final Exception e) {
- e.printStackTrace();
- }
- }
- }
- } finally {
- postFindResourcesCalls.get().remove(callKey);
- }
-
- return null;
- }
-
- /**
- * @see org.eclipse.osgi.framework.adaptor.ClassLoaderDelegateHook#preFindClass(java.lang.String,
- * org.eclipse.osgi.framework.adaptor.BundleClassLoader,
- * org.eclipse.osgi.framework.adaptor.BundleData)
- */
- public Class preFindClass(final String name,
- final BundleClassLoader classLoader, final BundleData data)
- throws ClassNotFoundException {
- return null;
- }
-
- /**
- * @see org.eclipse.osgi.framework.adaptor.ClassLoaderDelegateHook#preFindLibrary(java.lang.String,
- * org.eclipse.osgi.framework.adaptor.BundleClassLoader,
- * org.eclipse.osgi.framework.adaptor.BundleData)
- */
- public String preFindLibrary(final String name,
- final BundleClassLoader classLoader, final BundleData data)
- throws FileNotFoundException {
- return null;
- }
-
- /**
- * @see org.eclipse.osgi.framework.adaptor.ClassLoaderDelegateHook#preFindResource(java.lang.String,
- * org.eclipse.osgi.framework.adaptor.BundleClassLoader,
- * org.eclipse.osgi.framework.adaptor.BundleData)
- */
- public URL preFindResource(final String name,
- final BundleClassLoader classLoader, final BundleData data)
- throws FileNotFoundException {
- return null;
- }
-
- /**
- * @see org.eclipse.osgi.framework.adaptor.ClassLoaderDelegateHook#preFindResources(java.lang.String,
- * org.eclipse.osgi.framework.adaptor.BundleClassLoader,
- * org.eclipse.osgi.framework.adaptor.BundleData)
- */
- public Enumeration preFindResources(final String name,
- final BundleClassLoader classLoader, final BundleData data)
- throws FileNotFoundException {
- return null;
- }
-
-}
diff --git a/features/org.eclipse.equinox.compendium.sdk/feature.xml b/features/org.eclipse.equinox.compendium.sdk/feature.xml
index 8089b54..9014f78 100644
--- a/features/org.eclipse.equinox.compendium.sdk/feature.xml
+++ b/features/org.eclipse.equinox.compendium.sdk/feature.xml
@@ -2,7 +2,7 @@
<feature
id="org.eclipse.equinox.compendium.sdk"
label="%featureName"
- version="3.5.2.qualifier"
+ version="3.5.1.qualifier"
provider-name="%providerName">
<description>
@@ -16,7 +16,7 @@
<license url="%licenseURL">
%license
</license>
-
+
<plugin
id="org.eclipse.equinox.app"
download-size="0"