diff options
author | cvs2svn | 2011-02-15 16:38:12 +0000 |
---|---|---|
committer | cvs2svn | 2011-02-15 16:38:12 +0000 |
commit | bdf83d63c4d084455187e7014a384ed66d439bc5 (patch) | |
tree | ff817e468aa83409791e3e42117c14bbab2b667a /bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox | |
parent | 6af04281139f9200a2c0d40a7ea4155a80468e12 (diff) | |
download | rt.equinox.bundles-bdf83d63c4d084455187e7014a384ed66d439bc5.tar.gz rt.equinox.bundles-bdf83d63c4d084455187e7014a384ed66d439bc5.tar.xz rt.equinox.bundles-bdf83d63c4d084455187e7014a384ed66d439bc5.zip |
This commit was manufactured by cvs2svn to create branch 'OSGI_R4_3_Wiring'.
Sprout from master 2011-02-15 16:38:10 UTC Thomas Watson <twatson> 'Bug 334005 - MetaTypeInformation.getFactoryPids() returns non-factory pids'
Delete:
bundles/org.eclipse.equinox.app/.classpath
bundles/org.eclipse.equinox.app/.cvsignore
bundles/org.eclipse.equinox.app/.options
bundles/org.eclipse.equinox.app/.project
bundles/org.eclipse.equinox.app/.settings/.api_filters
bundles/org.eclipse.equinox.app/.settings/org.eclipse.core.resources.prefs
bundles/org.eclipse.equinox.app/.settings/org.eclipse.jdt.core.prefs
bundles/org.eclipse.equinox.app/.settings/org.eclipse.jdt.ui.prefs
bundles/org.eclipse.equinox.app/.settings/org.eclipse.pde.core.prefs
bundles/org.eclipse.equinox.app/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.app/about.html
bundles/org.eclipse.equinox.app/about_files/LICENSE-2.0.txt
bundles/org.eclipse.equinox.app/build.properties
bundles/org.eclipse.equinox.app/plugin.properties
bundles/org.eclipse.equinox.app/plugin.xml
bundles/org.eclipse.equinox.app/schema/applications.exsd
bundles/org.eclipse.equinox.app/schema/products.exsd
bundles/org.eclipse.equinox.app/src/org/eclipse/equinox/app/IApplication.java
bundles/org.eclipse.equinox.app/src/org/eclipse/equinox/app/IApplicationContext.java
bundles/org.eclipse.equinox.app/src/org/eclipse/equinox/app/package.html
bundles/org.eclipse.equinox.app/src/org/eclipse/equinox/internal/app/Activator.java
bundles/org.eclipse.equinox.app/src/org/eclipse/equinox/internal/app/AnyThreadAppLauncher.java
bundles/org.eclipse.equinox.app/src/org/eclipse/equinox/internal/app/AppCommands.java
bundles/org.eclipse.equinox.app/src/org/eclipse/equinox/internal/app/AppPersistence.java
bundles/org.eclipse.equinox.app/src/org/eclipse/equinox/internal/app/CommandLineArgs.java
bundles/org.eclipse.equinox.app/src/org/eclipse/equinox/internal/app/DefaultApplicationListener.java
bundles/org.eclipse.equinox.app/src/org/eclipse/equinox/internal/app/EclipseAppContainer.java
bundles/org.eclipse.equinox.app/src/org/eclipse/equinox/internal/app/EclipseAppDescriptor.java
bundles/org.eclipse.equinox.app/src/org/eclipse/equinox/internal/app/EclipseAppHandle.java
bundles/org.eclipse.equinox.app/src/org/eclipse/equinox/internal/app/EclipseScheduledApplication.java
bundles/org.eclipse.equinox.app/src/org/eclipse/equinox/internal/app/ErrorApplication.java
bundles/org.eclipse.equinox.app/src/org/eclipse/equinox/internal/app/IBranding.java
bundles/org.eclipse.equinox.app/src/org/eclipse/equinox/internal/app/MainApplicationLauncher.java
bundles/org.eclipse.equinox.app/src/org/eclipse/equinox/internal/app/Messages.java
bundles/org.eclipse.equinox.app/src/org/eclipse/equinox/internal/app/ProductExtensionBranding.java
bundles/org.eclipse.equinox.app/src/org/eclipse/equinox/internal/app/ProviderExtensionBranding.java
bundles/org.eclipse.equinox.app/src/org/eclipse/equinox/internal/app/messages.properties
bundles/org.eclipse.equinox.app/src/org/osgi/service/application/ApplicationAdminPermission.java
bundles/org.eclipse.equinox.app/src/org/osgi/service/application/ApplicationDescriptor.java
bundles/org.eclipse.equinox.app/src/org/osgi/service/application/ApplicationException.java
bundles/org.eclipse.equinox.app/src/org/osgi/service/application/ApplicationHandle.java
bundles/org.eclipse.equinox.app/src/org/osgi/service/application/ScheduledApplication.java
bundles/org.eclipse.equinox.bidi.tests/.classpath
bundles/org.eclipse.equinox.bidi.tests/.project
bundles/org.eclipse.equinox.bidi.tests/.settings/org.eclipse.jdt.core.prefs
bundles/org.eclipse.equinox.bidi.tests/.settings/org.eclipse.jdt.ui.prefs
bundles/org.eclipse.equinox.bidi.tests/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.bidi.tests/build.properties
bundles/org.eclipse.equinox.bidi.tests/plugin.xml
bundles/org.eclipse.equinox.bidi.tests/src/org/eclipse/equinox/bidi/internal/tests/BidiComplexExtensibilityTest.java
bundles/org.eclipse.equinox.bidi.tests/src/org/eclipse/equinox/bidi/internal/tests/BidiComplexExtensionsTest.java
bundles/org.eclipse.equinox.bidi.tests/src/org/eclipse/equinox/bidi/internal/tests/BidiComplexFullToLeanTest.java
bundles/org.eclipse.equinox.bidi.tests/src/org/eclipse/equinox/bidi/internal/tests/BidiComplexMathTest.java
bundles/org.eclipse.equinox.bidi.tests/src/org/eclipse/equinox/bidi/internal/tests/BidiComplexMethodsTest.java
bundles/org.eclipse.equinox.bidi.tests/src/org/eclipse/equinox/bidi/internal/tests/BidiComplexNullProcessorTest.java
bundles/org.eclipse.equinox.bidi.tests/src/org/eclipse/equinox/bidi/internal/tests/BidiComplexSomeMoreTest.java
bundles/org.eclipse.equinox.bidi.tests/src/org/eclipse/equinox/bidi/internal/tests/BidiComplexTest.java
bundles/org.eclipse.equinox.bidi.tests/src/org/eclipse/equinox/bidi/internal/tests/BidiComplexTestBase.java
bundles/org.eclipse.equinox.bidi.tests/src/org/eclipse/equinox/bidi/internal/tests/BidiComplexUtilTest.java
bundles/org.eclipse.equinox.bidi.tests/src/org/eclipse/equinox/bidi/tests/BidiComplexTestSuite.java
bundles/org.eclipse.equinox.bidi/.classpath
bundles/org.eclipse.equinox.bidi/.options
bundles/org.eclipse.equinox.bidi/.project
bundles/org.eclipse.equinox.bidi/.settings/org.eclipse.core.resources.prefs
bundles/org.eclipse.equinox.bidi/.settings/org.eclipse.jdt.core.prefs
bundles/org.eclipse.equinox.bidi/.settings/org.eclipse.jdt.ui.prefs
bundles/org.eclipse.equinox.bidi/.settings/org.eclipse.pde.api.tools.prefs
bundles/org.eclipse.equinox.bidi/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.bidi/about.html
bundles/org.eclipse.equinox.bidi/build.properties
bundles/org.eclipse.equinox.bidi/plugin.properties
bundles/org.eclipse.equinox.bidi/plugin.xml
bundles/org.eclipse.equinox.bidi/schema/BiDiExpressionType.exsd
bundles/org.eclipse.equinox.bidi/src/org/eclipse/equinox/bidi/BidiComplexEnvironment.java
bundles/org.eclipse.equinox.bidi/src/org/eclipse/equinox/bidi/BidiComplexFeatures.java
bundles/org.eclipse.equinox.bidi/src/org/eclipse/equinox/bidi/BidiComplexHelper.java
bundles/org.eclipse.equinox.bidi/src/org/eclipse/equinox/bidi/BidiComplexStringRecord.java
bundles/org.eclipse.equinox.bidi/src/org/eclipse/equinox/bidi/BidiComplexUtil.java
bundles/org.eclipse.equinox.bidi/src/org/eclipse/equinox/bidi/IBidiComplexExpressionTypes.java
bundles/org.eclipse.equinox.bidi/src/org/eclipse/equinox/bidi/custom/BidiComplexProcessor.java
bundles/org.eclipse.equinox.bidi/src/org/eclipse/equinox/bidi/custom/BidiComplexStringProcessor.java
bundles/org.eclipse.equinox.bidi/src/org/eclipse/equinox/bidi/custom/IBidiComplexProcessor.java
bundles/org.eclipse.equinox.bidi/src/org/eclipse/equinox/bidi/custom/package.html
bundles/org.eclipse.equinox.bidi/src/org/eclipse/equinox/bidi/internal/BidiComplexActivator.java
bundles/org.eclipse.equinox.bidi/src/org/eclipse/equinox/bidi/internal/BidiComplexDelims.java
bundles/org.eclipse.equinox.bidi/src/org/eclipse/equinox/bidi/internal/BidiComplexDelimsEsc.java
bundles/org.eclipse.equinox.bidi/src/org/eclipse/equinox/bidi/internal/BidiComplexImpl.java
bundles/org.eclipse.equinox.bidi/src/org/eclipse/equinox/bidi/internal/BidiComplexSingle.java
bundles/org.eclipse.equinox.bidi/src/org/eclipse/equinox/bidi/internal/BidiComplexTypesCollector.java
bundles/org.eclipse.equinox.bidi/src/org/eclipse/equinox/bidi/internal/consumable/BidiComplexComma.java
bundles/org.eclipse.equinox.bidi/src/org/eclipse/equinox/bidi/internal/consumable/BidiComplexEmail.java
bundles/org.eclipse.equinox.bidi/src/org/eclipse/equinox/bidi/internal/consumable/BidiComplexFile.java
bundles/org.eclipse.equinox.bidi/src/org/eclipse/equinox/bidi/internal/consumable/BidiComplexJava.java
bundles/org.eclipse.equinox.bidi/src/org/eclipse/equinox/bidi/internal/consumable/BidiComplexMath.java
bundles/org.eclipse.equinox.bidi/src/org/eclipse/equinox/bidi/internal/consumable/BidiComplexProperty.java
bundles/org.eclipse.equinox.bidi/src/org/eclipse/equinox/bidi/internal/consumable/BidiComplexRegex.java
bundles/org.eclipse.equinox.bidi/src/org/eclipse/equinox/bidi/internal/consumable/BidiComplexSql.java
bundles/org.eclipse.equinox.bidi/src/org/eclipse/equinox/bidi/internal/consumable/BidiComplexSystem.java
bundles/org.eclipse.equinox.bidi/src/org/eclipse/equinox/bidi/internal/consumable/BidiComplexURL.java
bundles/org.eclipse.equinox.bidi/src/org/eclipse/equinox/bidi/internal/consumable/BidiComplexUnderscore.java
bundles/org.eclipse.equinox.bidi/src/org/eclipse/equinox/bidi/internal/consumable/BidiComplexXPath.java
bundles/org.eclipse.equinox.bidi/src/org/eclipse/equinox/bidi/package.html
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.cm/.classpath
bundles/org.eclipse.equinox.cm/.cvsignore
bundles/org.eclipse.equinox.cm/.project
bundles/org.eclipse.equinox.cm/.settings/org.eclipse.jdt.core.prefs
bundles/org.eclipse.equinox.cm/.settings/org.eclipse.jdt.ui.prefs
bundles/org.eclipse.equinox.cm/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.cm/about.html
bundles/org.eclipse.equinox.cm/build.properties
bundles/org.eclipse.equinox.cm/plugin.properties
bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/Activator.java
bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/ConfigurationAdminFactory.java
bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/ConfigurationAdminImpl.java
bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/ConfigurationDictionary.java
bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/ConfigurationEventAdapter.java
bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/ConfigurationImpl.java
bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/ConfigurationStore.java
bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/EventDispatcher.java
bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/LogTracker.java
bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/ManagedServiceFactoryTracker.java
bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/ManagedServiceTracker.java
bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/PluginManager.java
bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/SerializedTaskQueue.java
bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/reliablefile/ReliableFile.java
bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/reliablefile/ReliableFileInputStream.java
bundles/org.eclipse.equinox.cm/src/org/eclipse/equinox/internal/cm/reliablefile/ReliableFileOutputStream.java
bundles/org.eclipse.equinox.common/.classpath
bundles/org.eclipse.equinox.common/.cvsignore
bundles/org.eclipse.equinox.common/.options
bundles/org.eclipse.equinox.common/.project
bundles/org.eclipse.equinox.common/.settings/org.eclipse.core.resources.prefs
bundles/org.eclipse.equinox.common/.settings/org.eclipse.jdt.core.prefs
bundles/org.eclipse.equinox.common/.settings/org.eclipse.jdt.ui.prefs
bundles/org.eclipse.equinox.common/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.common/about.html
bundles/org.eclipse.equinox.common/build.properties
bundles/org.eclipse.equinox.common/plugin.properties
bundles/org.eclipse.equinox.common/src/org/eclipse/core/internal/boot/PlatformURLBaseConnection.java
bundles/org.eclipse.equinox.common/src/org/eclipse/core/internal/boot/PlatformURLConnection.java
bundles/org.eclipse.equinox.common/src/org/eclipse/core/internal/boot/PlatformURLHandler.java
bundles/org.eclipse.equinox.common/src/org/eclipse/core/internal/runtime/Activator.java
bundles/org.eclipse.equinox.common/src/org/eclipse/core/internal/runtime/AdapterManager.java
bundles/org.eclipse.equinox.common/src/org/eclipse/core/internal/runtime/CommonMessages.java
bundles/org.eclipse.equinox.common/src/org/eclipse/core/internal/runtime/DataArea.java
bundles/org.eclipse.equinox.common/src/org/eclipse/core/internal/runtime/DevClassPathHelper.java
bundles/org.eclipse.equinox.common/src/org/eclipse/core/internal/runtime/FindSupport.java
bundles/org.eclipse.equinox.common/src/org/eclipse/core/internal/runtime/IAdapterFactoryExt.java
bundles/org.eclipse.equinox.common/src/org/eclipse/core/internal/runtime/IAdapterManagerProvider.java
bundles/org.eclipse.equinox.common/src/org/eclipse/core/internal/runtime/IRuntimeConstants.java
bundles/org.eclipse.equinox.common/src/org/eclipse/core/internal/runtime/LocalizationUtils.java
bundles/org.eclipse.equinox.common/src/org/eclipse/core/internal/runtime/MetaDataKeeper.java
bundles/org.eclipse.equinox.common/src/org/eclipse/core/internal/runtime/PlatformLogWriter.java
bundles/org.eclipse.equinox.common/src/org/eclipse/core/internal/runtime/PlatformURLConfigConnection.java
bundles/org.eclipse.equinox.common/src/org/eclipse/core/internal/runtime/PlatformURLConverter.java
bundles/org.eclipse.equinox.common/src/org/eclipse/core/internal/runtime/PlatformURLFragmentConnection.java
bundles/org.eclipse.equinox.common/src/org/eclipse/core/internal/runtime/PlatformURLMetaConnection.java
bundles/org.eclipse.equinox.common/src/org/eclipse/core/internal/runtime/PlatformURLPluginConnection.java
bundles/org.eclipse.equinox.common/src/org/eclipse/core/internal/runtime/PrintStackUtil.java
bundles/org.eclipse.equinox.common/src/org/eclipse/core/internal/runtime/ReferenceHashSet.java
bundles/org.eclipse.equinox.common/src/org/eclipse/core/internal/runtime/ResourceTranslator.java
bundles/org.eclipse.equinox.common/src/org/eclipse/core/internal/runtime/RuntimeLog.java
bundles/org.eclipse.equinox.common/src/org/eclipse/core/internal/runtime/commonMessages.properties
bundles/org.eclipse.equinox.common/src/org/eclipse/core/internal/runtime/package.html
bundles/org.eclipse.equinox.common/src/org/eclipse/core/runtime/Assert.java
bundles/org.eclipse.equinox.common/src/org/eclipse/core/runtime/AssertionFailedException.java
bundles/org.eclipse.equinox.common/src/org/eclipse/core/runtime/CoreException.java
bundles/org.eclipse.equinox.common/src/org/eclipse/core/runtime/FileLocator.java
bundles/org.eclipse.equinox.common/src/org/eclipse/core/runtime/IAdaptable.java
bundles/org.eclipse.equinox.common/src/org/eclipse/core/runtime/IAdapterFactory.java
bundles/org.eclipse.equinox.common/src/org/eclipse/core/runtime/IAdapterManager.java
bundles/org.eclipse.equinox.common/src/org/eclipse/core/runtime/IBundleGroup.java
bundles/org.eclipse.equinox.common/src/org/eclipse/core/runtime/IBundleGroupProvider.java
bundles/org.eclipse.equinox.common/src/org/eclipse/core/runtime/ILogListener.java
bundles/org.eclipse.equinox.common/src/org/eclipse/core/runtime/IPath.java
bundles/org.eclipse.equinox.common/src/org/eclipse/core/runtime/IProgressMonitor.java
bundles/org.eclipse.equinox.common/src/org/eclipse/core/runtime/IProgressMonitorWithBlocking.java
bundles/org.eclipse.equinox.common/src/org/eclipse/core/runtime/ISafeRunnable.java
bundles/org.eclipse.equinox.common/src/org/eclipse/core/runtime/IStatus.java
bundles/org.eclipse.equinox.common/src/org/eclipse/core/runtime/ListenerList.java
bundles/org.eclipse.equinox.common/src/org/eclipse/core/runtime/MultiStatus.java
bundles/org.eclipse.equinox.common/src/org/eclipse/core/runtime/NullProgressMonitor.java
bundles/org.eclipse.equinox.common/src/org/eclipse/core/runtime/OperationCanceledException.java
bundles/org.eclipse.equinox.common/src/org/eclipse/core/runtime/Path.java
bundles/org.eclipse.equinox.common/src/org/eclipse/core/runtime/PlatformObject.java
bundles/org.eclipse.equinox.common/src/org/eclipse/core/runtime/PluginVersionIdentifier.java
bundles/org.eclipse.equinox.common/src/org/eclipse/core/runtime/ProgressMonitorWrapper.java
bundles/org.eclipse.equinox.common/src/org/eclipse/core/runtime/QualifiedName.java
bundles/org.eclipse.equinox.common/src/org/eclipse/core/runtime/SafeRunner.java
bundles/org.eclipse.equinox.common/src/org/eclipse/core/runtime/Status.java
bundles/org.eclipse.equinox.common/src/org/eclipse/core/runtime/SubMonitor.java
bundles/org.eclipse.equinox.common/src/org/eclipse/core/runtime/SubProgressMonitor.java
bundles/org.eclipse.equinox.common/src/org/eclipse/core/runtime/URIUtil.java
bundles/org.eclipse.equinox.common/src/org/eclipse/core/runtime/package.html
bundles/org.eclipse.equinox.common/src/org/eclipse/equinox/events/MemoryEventConstants.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/bundles_src/metatype/tb1/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.compendium.tests/bundles_src/metatype/tb1/OSGI-INF/metatype/testfile.xml
bundles/org.eclipse.equinox.compendium.tests/bundles_src/metatype/tb2/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.compendium.tests/bundles_src/metatype/tb2/OSGI-INF/metatype/metadata.xml
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/event/tests/AllTests.java
bundles/org.eclipse.equinox.compendium.tests/src/org/eclipse/equinox/event/tests/EventAdminTest.java
bundles/org.eclipse.equinox.compendium.tests/src/org/eclipse/equinox/event/tests/EventHandlerHelper.java
bundles/org.eclipse.equinox.compendium.tests/src/org/eclipse/equinox/metatype/tests/AllTests.java
bundles/org.eclipse.equinox.compendium.tests/src/org/eclipse/equinox/metatype/tests/AttributeTypePasswordTest.java
bundles/org.eclipse.equinox.compendium.tests/src/org/eclipse/equinox/metatype/tests/SameOcdPidFactoryPidTest.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.concurrent/.classpath
bundles/org.eclipse.equinox.concurrent/.project
bundles/org.eclipse.equinox.concurrent/.settings/org.eclipse.jdt.core.prefs
bundles/org.eclipse.equinox.concurrent/.settings/org.eclipse.pde.core.prefs
bundles/org.eclipse.equinox.concurrent/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.concurrent/about.html
bundles/org.eclipse.equinox.concurrent/build.properties
bundles/org.eclipse.equinox.concurrent/plugin.properties
bundles/org.eclipse.equinox.concurrent/src/org/eclipse/equinox/concurrent/future/AbstractExecutor.java
bundles/org.eclipse.equinox.concurrent/src/org/eclipse/equinox/concurrent/future/AbstractFuture.java
bundles/org.eclipse.equinox.concurrent/src/org/eclipse/equinox/concurrent/future/FutureProgressMonitor.java
bundles/org.eclipse.equinox.concurrent/src/org/eclipse/equinox/concurrent/future/IExecutor.java
bundles/org.eclipse.equinox.concurrent/src/org/eclipse/equinox/concurrent/future/IFuture.java
bundles/org.eclipse.equinox.concurrent/src/org/eclipse/equinox/concurrent/future/IProgressRunnable.java
bundles/org.eclipse.equinox.concurrent/src/org/eclipse/equinox/concurrent/future/IRunnableExecutor.java
bundles/org.eclipse.equinox.concurrent/src/org/eclipse/equinox/concurrent/future/ISafeProgressRunner.java
bundles/org.eclipse.equinox.concurrent/src/org/eclipse/equinox/concurrent/future/ImmediateExecutor.java
bundles/org.eclipse.equinox.concurrent/src/org/eclipse/equinox/concurrent/future/SingleOperationFuture.java
bundles/org.eclipse.equinox.concurrent/src/org/eclipse/equinox/concurrent/future/ThreadsExecutor.java
bundles/org.eclipse.equinox.concurrent/src/org/eclipse/equinox/concurrent/future/TimeoutException.java
bundles/org.eclipse.equinox.coordinator/.classpath
bundles/org.eclipse.equinox.coordinator/.cvsignore
bundles/org.eclipse.equinox.coordinator/.project
bundles/org.eclipse.equinox.coordinator/.settings/org.eclipse.core.resources.prefs
bundles/org.eclipse.equinox.coordinator/.settings/org.eclipse.jdt.core.prefs
bundles/org.eclipse.equinox.coordinator/.settings/org.eclipse.pde.api.tools.prefs
bundles/org.eclipse.equinox.coordinator/.settings/org.eclipse.pde.core.prefs
bundles/org.eclipse.equinox.coordinator/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.coordinator/OSGI-INF/component.xml
bundles/org.eclipse.equinox.coordinator/about.html
bundles/org.eclipse.equinox.coordinator/about_files/LICENSE-2.0.txt
bundles/org.eclipse.equinox.coordinator/build.properties
bundles/org.eclipse.equinox.coordinator/plugin.properties
bundles/org.eclipse.equinox.coordinator/src/org/eclipse/equinox/coordinator/Activator.java
bundles/org.eclipse.equinox.coordinator/src/org/eclipse/equinox/coordinator/CoordinationImpl.java
bundles/org.eclipse.equinox.coordinator/src/org/eclipse/equinox/coordinator/CoordinationTimerTask.java
bundles/org.eclipse.equinox.coordinator/src/org/eclipse/equinox/coordinator/CoordinatorComponent.java
bundles/org.eclipse.equinox.coordinator/src/org/eclipse/equinox/coordinator/CoordinatorImpl.java
bundles/org.eclipse.equinox.coordinator/src/org/eclipse/equinox/coordinator/CoordinatorServiceFactory.java
bundles/org.eclipse.equinox.coordinator/src/org/eclipse/equinox/coordinator/LogMessages.properties
bundles/org.eclipse.equinox.coordinator/src/org/eclipse/equinox/coordinator/LogTracker.java
bundles/org.eclipse.equinox.coordinator/src/org/eclipse/equinox/coordinator/LogTrackerMsg.java
bundles/org.eclipse.equinox.coordinator/src/org/eclipse/equinox/coordinator/Messages.java
bundles/org.eclipse.equinox.coordinator/src/org/eclipse/equinox/coordinator/messages.properties
bundles/org.eclipse.equinox.coordinator/src/org/osgi/service/coordinator/Coordination.java
bundles/org.eclipse.equinox.coordinator/src/org/osgi/service/coordinator/CoordinationException.java
bundles/org.eclipse.equinox.coordinator/src/org/osgi/service/coordinator/CoordinationPermission.java
bundles/org.eclipse.equinox.coordinator/src/org/osgi/service/coordinator/Coordinator.java
bundles/org.eclipse.equinox.coordinator/src/org/osgi/service/coordinator/Participant.java
bundles/org.eclipse.equinox.coordinator/src/org/osgi/service/coordinator/package-info.java
bundles/org.eclipse.equinox.device/.classpath
bundles/org.eclipse.equinox.device/.cvsignore
bundles/org.eclipse.equinox.device/.project
bundles/org.eclipse.equinox.device/.settings/org.eclipse.core.resources.prefs
bundles/org.eclipse.equinox.device/.settings/org.eclipse.jdt.core.prefs
bundles/org.eclipse.equinox.device/.settings/org.eclipse.jdt.ui.prefs
bundles/org.eclipse.equinox.device/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.device/about.html
bundles/org.eclipse.equinox.device/build.properties
bundles/org.eclipse.equinox.device/plugin.properties
bundles/org.eclipse.equinox.device/src/org/eclipse/equinox/device/Activator.java
bundles/org.eclipse.equinox.device/src/org/eclipse/equinox/device/DeviceMsg.java
bundles/org.eclipse.equinox.device/src/org/eclipse/equinox/device/DeviceTracker.java
bundles/org.eclipse.equinox.device/src/org/eclipse/equinox/device/DriverLocatorTracker.java
bundles/org.eclipse.equinox.device/src/org/eclipse/equinox/device/DriverSelectorTracker.java
bundles/org.eclipse.equinox.device/src/org/eclipse/equinox/device/DriverTracker.java
bundles/org.eclipse.equinox.device/src/org/eclipse/equinox/device/ExternalMessages.properties
bundles/org.eclipse.equinox.device/src/org/eclipse/equinox/device/LogMessages.properties
bundles/org.eclipse.equinox.device/src/org/eclipse/equinox/device/LogTracker.java
bundles/org.eclipse.equinox.device/src/org/eclipse/equinox/device/LogTrackerMsg.java
bundles/org.eclipse.equinox.device/src/org/eclipse/equinox/device/Match.java
bundles/org.eclipse.equinox.device/src/org/eclipse/equinox/device/SecureAction.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/tb24/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb24/org/eclipse/equinox/ds/tests/tb24/ConfigurationPolicyComp.java
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb24/org/eclipse/equinox/ds/tests/tb24/ignore.xml
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb24/org/eclipse/equinox/ds/tests/tb24/optional.xml
bundles/org.eclipse.equinox.ds.tests/bundles_src/tb24/org/eclipse/equinox/ds/tests/tb24/require.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.ds/.classpath
bundles/org.eclipse.equinox.ds/.cvsignore
bundles/org.eclipse.equinox.ds/.options
bundles/org.eclipse.equinox.ds/.project
bundles/org.eclipse.equinox.ds/.settings/.api_filters
bundles/org.eclipse.equinox.ds/.settings/org.eclipse.jdt.core.prefs
bundles/org.eclipse.equinox.ds/.settings/org.eclipse.jdt.ui.prefs
bundles/org.eclipse.equinox.ds/.settings/org.eclipse.pde.core.prefs
bundles/org.eclipse.equinox.ds/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.ds/META-INF/p2.inf
bundles/org.eclipse.equinox.ds/OSGI-INF/permissions.perm
bundles/org.eclipse.equinox.ds/about.html
bundles/org.eclipse.equinox.ds/about_files/LICENSE-2.0.txt
bundles/org.eclipse.equinox.ds/about_files/NOTICE.txt
bundles/org.eclipse.equinox.ds/build.properties
bundles/org.eclipse.equinox.ds/plugin.properties
bundles/org.eclipse.equinox.ds/src/org/apache/felix/scr/Component.java
bundles/org.eclipse.equinox.ds/src/org/apache/felix/scr/Reference.java
bundles/org.eclipse.equinox.ds/src/org/apache/felix/scr/ScrService.java
bundles/org.eclipse.equinox.ds/src/org/apache/felix/scr/package.html
bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/Activator.java
bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/CircularityException.java
bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/ComponentStorage.java
bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/FactoryReg.java
bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/InstanceProcess.java
bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/Messages.java
bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/Reference.java
bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/Resolver.java
bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/SCRCommandProvider.java
bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/SCRManager.java
bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/SCRUtil.java
bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/SCRmessages.properties
bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/ScrServiceImpl.java
bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/ServiceReg.java
bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/WorkPerformer.java
bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/WorkThread.java
bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/impl/ComponentContextImpl.java
bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/impl/ComponentFactoryImpl.java
bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/impl/ComponentInstanceImpl.java
bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/impl/ReadOnlyDictionary.java
bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/model/ComponentReference.java
bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/model/DeclarationParser.java
bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/model/ServiceComponent.java
bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/model/ServiceComponentProp.java
bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/storage/file/DBObject.java
bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/storage/file/FileStorage.java
bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/util/io/Externalizable.java
bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/util/io/ExternalizableDictionary.java
bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/util/io/PDataStream.java
bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/util/io/package.html
bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/util/string/CharBuffer.java
bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/util/string/package.html
bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/util/xml/ExTagListener.java
bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/util/xml/Tag.java
bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/util/xml/TagClass.java
bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/util/xml/TagListener.java
bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/util/xml/XMLParser.java
bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/util/xml/XMLReader.java
bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/util/xml/XMLUtil.java
bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/util/xml/XmlSerializer.java
bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/util/xml/impl/TagImpl.java
bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/util/xml/impl/XMLParserImpl.java
bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/util/xml/package.html
bundles/org.eclipse.equinox.event/.classpath
bundles/org.eclipse.equinox.event/.cvsignore
bundles/org.eclipse.equinox.event/.project
bundles/org.eclipse.equinox.event/.settings/org.eclipse.core.resources.prefs
bundles/org.eclipse.equinox.event/.settings/org.eclipse.jdt.core.prefs
bundles/org.eclipse.equinox.event/.settings/org.eclipse.jdt.ui.prefs
bundles/org.eclipse.equinox.event/.settings/org.eclipse.pde.api.tools.prefs
bundles/org.eclipse.equinox.event/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.event/OSGI-INF/component.xml
bundles/org.eclipse.equinox.event/about.html
bundles/org.eclipse.equinox.event/build.properties
bundles/org.eclipse.equinox.event/plugin.properties
bundles/org.eclipse.equinox.event/src/org/eclipse/equinox/internal/event/Activator.java
bundles/org.eclipse.equinox.event/src/org/eclipse/equinox/internal/event/EventAdminImpl.java
bundles/org.eclipse.equinox.event/src/org/eclipse/equinox/internal/event/EventAdminMsg.java
bundles/org.eclipse.equinox.event/src/org/eclipse/equinox/internal/event/EventComponent.java
bundles/org.eclipse.equinox.event/src/org/eclipse/equinox/internal/event/EventHandlerTracker.java
bundles/org.eclipse.equinox.event/src/org/eclipse/equinox/internal/event/EventHandlerWrapper.java
bundles/org.eclipse.equinox.event/src/org/eclipse/equinox/internal/event/ExternalMessages.properties
bundles/org.eclipse.equinox.event/src/org/eclipse/equinox/internal/event/LogMessages.properties
bundles/org.eclipse.equinox.event/src/org/eclipse/equinox/internal/event/LogTracker.java
bundles/org.eclipse.equinox.event/src/org/eclipse/equinox/internal/event/LogTrackerMsg.java
bundles/org.eclipse.equinox.event/src/org/eclipse/equinox/internal/event/mapper/BundleEventAdapter.java
bundles/org.eclipse.equinox.event/src/org/eclipse/equinox/internal/event/mapper/Constants.java
bundles/org.eclipse.equinox.event/src/org/eclipse/equinox/internal/event/mapper/EventAdapter.java
bundles/org.eclipse.equinox.event/src/org/eclipse/equinox/internal/event/mapper/EventRedeliverer.java
bundles/org.eclipse.equinox.event/src/org/eclipse/equinox/internal/event/mapper/FrameworkEventAdapter.java
bundles/org.eclipse.equinox.event/src/org/eclipse/equinox/internal/event/mapper/ServiceEventAdapter.java
bundles/org.eclipse.equinox.http.jetty5/.classpath
bundles/org.eclipse.equinox.http.jetty5/.cvsignore
bundles/org.eclipse.equinox.http.jetty5/.project
bundles/org.eclipse.equinox.http.jetty5/.settings/org.eclipse.jdt.core.prefs
bundles/org.eclipse.equinox.http.jetty5/.settings/org.eclipse.jdt.ui.prefs
bundles/org.eclipse.equinox.http.jetty5/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.http.jetty5/OSGI-INF/metatype/config.xml
bundles/org.eclipse.equinox.http.jetty5/about.html
bundles/org.eclipse.equinox.http.jetty5/build.properties
bundles/org.eclipse.equinox.http.jetty5/plugin.properties
bundles/org.eclipse.equinox.http.jetty5/src/org/eclipse/equinox/http/jetty/JettyConfigurator.java
bundles/org.eclipse.equinox.http.jetty5/src/org/eclipse/equinox/http/jetty/JettyConstants.java
bundles/org.eclipse.equinox.http.jetty5/src/org/eclipse/equinox/http/jetty/internal/Activator.java
bundles/org.eclipse.equinox.http.jetty5/src/org/eclipse/equinox/http/jetty/internal/HttpServerManager.java
bundles/org.eclipse.equinox.http.jetty5/src/org/eclipse/equinox/http/jetty/internal/Servlet25Handler.java
bundles/org.eclipse.equinox.http.jetty5/src/org/eclipse/equinox/http/jetty/package.html
bundles/org.eclipse.equinox.http.jetty6/.classpath
bundles/org.eclipse.equinox.http.jetty6/.cvsignore
bundles/org.eclipse.equinox.http.jetty6/.project
bundles/org.eclipse.equinox.http.jetty6/.settings/.api_filters
bundles/org.eclipse.equinox.http.jetty6/.settings/org.eclipse.jdt.core.prefs
bundles/org.eclipse.equinox.http.jetty6/.settings/org.eclipse.jdt.ui.prefs
bundles/org.eclipse.equinox.http.jetty6/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.http.jetty6/OSGI-INF/metatype/config.xml
bundles/org.eclipse.equinox.http.jetty6/about.html
bundles/org.eclipse.equinox.http.jetty6/build.properties
bundles/org.eclipse.equinox.http.jetty6/plugin.properties
bundles/org.eclipse.equinox.http.jetty6/src/org/eclipse/equinox/http/jetty/JettyConfigurator.java
bundles/org.eclipse.equinox.http.jetty6/src/org/eclipse/equinox/http/jetty/JettyConstants.java
bundles/org.eclipse.equinox.http.jetty6/src/org/eclipse/equinox/http/jetty/JettyCustomizer.java
bundles/org.eclipse.equinox.http.jetty6/src/org/eclipse/equinox/http/jetty/internal/Activator.java
bundles/org.eclipse.equinox.http.jetty6/src/org/eclipse/equinox/http/jetty/internal/HttpServerManager.java
bundles/org.eclipse.equinox.http.jetty6/src/org/eclipse/equinox/http/jetty/package.html
bundles/org.eclipse.equinox.http.jetty6/src/org/slf4j/Logger.java
bundles/org.eclipse.equinox.http.jetty6/src/org/slf4j/LoggerFactory.java
bundles/org.eclipse.equinox.http.registry/.classpath
bundles/org.eclipse.equinox.http.registry/.cvsignore
bundles/org.eclipse.equinox.http.registry/.project
bundles/org.eclipse.equinox.http.registry/.settings/org.eclipse.jdt.core.prefs
bundles/org.eclipse.equinox.http.registry/.settings/org.eclipse.jdt.ui.prefs
bundles/org.eclipse.equinox.http.registry/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.http.registry/about.html
bundles/org.eclipse.equinox.http.registry/build.properties
bundles/org.eclipse.equinox.http.registry/plugin.properties
bundles/org.eclipse.equinox.http.registry/plugin.xml
bundles/org.eclipse.equinox.http.registry/schema/filters.exsd
bundles/org.eclipse.equinox.http.registry/schema/httpcontexts.exsd
bundles/org.eclipse.equinox.http.registry/schema/resources.exsd
bundles/org.eclipse.equinox.http.registry/schema/servlets.exsd
bundles/org.eclipse.equinox.http.registry/src/org/eclipse/equinox/http/registry/HttpContextExtensionService.java
bundles/org.eclipse.equinox.http.registry/src/org/eclipse/equinox/http/registry/internal/Activator.java
bundles/org.eclipse.equinox.http.registry/src/org/eclipse/equinox/http/registry/internal/DefaultRegistryHttpContext.java
bundles/org.eclipse.equinox.http.registry/src/org/eclipse/equinox/http/registry/internal/ExtensionPointTracker.java
bundles/org.eclipse.equinox.http.registry/src/org/eclipse/equinox/http/registry/internal/FilterManager.java
bundles/org.eclipse.equinox.http.registry/src/org/eclipse/equinox/http/registry/internal/HttpContextManager.java
bundles/org.eclipse.equinox.http.registry/src/org/eclipse/equinox/http/registry/internal/HttpRegistryManager.java
bundles/org.eclipse.equinox.http.registry/src/org/eclipse/equinox/http/registry/internal/HttpServiceTracker.java
bundles/org.eclipse.equinox.http.registry/src/org/eclipse/equinox/http/registry/internal/ResourceManager.java
bundles/org.eclipse.equinox.http.registry/src/org/eclipse/equinox/http/registry/internal/ServletManager.java
bundles/org.eclipse.equinox.http.registry/src/org/eclipse/equinox/http/registry/package.html
bundles/org.eclipse.equinox.http.servlet/.classpath
bundles/org.eclipse.equinox.http.servlet/.cvsignore
bundles/org.eclipse.equinox.http.servlet/.project
bundles/org.eclipse.equinox.http.servlet/.settings/.api_filters
bundles/org.eclipse.equinox.http.servlet/.settings/org.eclipse.jdt.core.prefs
bundles/org.eclipse.equinox.http.servlet/.settings/org.eclipse.jdt.ui.prefs
bundles/org.eclipse.equinox.http.servlet/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.http.servlet/about.html
bundles/org.eclipse.equinox.http.servlet/build.properties
bundles/org.eclipse.equinox.http.servlet/plugin.properties
bundles/org.eclipse.equinox.http.servlet/src/org/eclipse/equinox/http/servlet/ExtendedHttpService.java
bundles/org.eclipse.equinox.http.servlet/src/org/eclipse/equinox/http/servlet/HttpServiceServlet.java
bundles/org.eclipse.equinox.http.servlet/src/org/eclipse/equinox/http/servlet/internal/Activator.java
bundles/org.eclipse.equinox.http.servlet/src/org/eclipse/equinox/http/servlet/internal/DefaultHttpContext.java
bundles/org.eclipse.equinox.http.servlet/src/org/eclipse/equinox/http/servlet/internal/FilterChainImpl.java
bundles/org.eclipse.equinox.http.servlet/src/org/eclipse/equinox/http/servlet/internal/FilterConfigImpl.java
bundles/org.eclipse.equinox.http.servlet/src/org/eclipse/equinox/http/servlet/internal/FilterRegistration.java
bundles/org.eclipse.equinox.http.servlet/src/org/eclipse/equinox/http/servlet/internal/HttpServiceFactory.java
bundles/org.eclipse.equinox.http.servlet/src/org/eclipse/equinox/http/servlet/internal/HttpServiceImpl.java
bundles/org.eclipse.equinox.http.servlet/src/org/eclipse/equinox/http/servlet/internal/HttpServletRequestAdaptor.java
bundles/org.eclipse.equinox.http.servlet/src/org/eclipse/equinox/http/servlet/internal/HttpSessionAdaptor.java
bundles/org.eclipse.equinox.http.servlet/src/org/eclipse/equinox/http/servlet/internal/ProxyContext.java
bundles/org.eclipse.equinox.http.servlet/src/org/eclipse/equinox/http/servlet/internal/ProxyServlet.java
bundles/org.eclipse.equinox.http.servlet/src/org/eclipse/equinox/http/servlet/internal/Registration.java
bundles/org.eclipse.equinox.http.servlet/src/org/eclipse/equinox/http/servlet/internal/RequestDispatcherAdaptor.java
bundles/org.eclipse.equinox.http.servlet/src/org/eclipse/equinox/http/servlet/internal/ResourceServlet.java
bundles/org.eclipse.equinox.http.servlet/src/org/eclipse/equinox/http/servlet/internal/ServletConfigImpl.java
bundles/org.eclipse.equinox.http.servlet/src/org/eclipse/equinox/http/servlet/internal/ServletContextAdaptor.java
bundles/org.eclipse.equinox.http.servlet/src/org/eclipse/equinox/http/servlet/internal/ServletRegistration.java
bundles/org.eclipse.equinox.http.servlet/src/org/eclipse/equinox/http/servlet/package.html
bundles/org.eclipse.equinox.http.servletbridge/.classpath
bundles/org.eclipse.equinox.http.servletbridge/.cvsignore
bundles/org.eclipse.equinox.http.servletbridge/.project
bundles/org.eclipse.equinox.http.servletbridge/.settings/org.eclipse.jdt.core.prefs
bundles/org.eclipse.equinox.http.servletbridge/.settings/org.eclipse.jdt.ui.prefs
bundles/org.eclipse.equinox.http.servletbridge/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.http.servletbridge/about.html
bundles/org.eclipse.equinox.http.servletbridge/build.properties
bundles/org.eclipse.equinox.http.servletbridge/plugin.properties
bundles/org.eclipse.equinox.http.servletbridge/src/org/eclipse/equinox/http/servletbridge/internal/Activator.java
bundles/org.eclipse.equinox.http/.classpath
bundles/org.eclipse.equinox.http/.cvsignore
bundles/org.eclipse.equinox.http/.project
bundles/org.eclipse.equinox.http/.settings/org.eclipse.core.resources.prefs
bundles/org.eclipse.equinox.http/.settings/org.eclipse.jdt.core.prefs
bundles/org.eclipse.equinox.http/.settings/org.eclipse.jdt.ui.prefs
bundles/org.eclipse.equinox.http/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.http/OSGI-INF/l10n/bundle_en.properties
bundles/org.eclipse.equinox.http/OSGI-INF/metatype/METADATA.XML
bundles/org.eclipse.equinox.http/about.html
bundles/org.eclipse.equinox.http/build.properties
bundles/org.eclipse.equinox.http/plugin.properties
bundles/org.eclipse.equinox.http/src/org/eclipse/equinox/http/Activator.java
bundles/org.eclipse.equinox.http/src/org/eclipse/equinox/http/DefaultHttpContext.java
bundles/org.eclipse.equinox.http/src/org/eclipse/equinox/http/ExternalMessages.properties
bundles/org.eclipse.equinox.http/src/org/eclipse/equinox/http/Http.java
bundles/org.eclipse.equinox.http/src/org/eclipse/equinox/http/HttpConfiguration.java
bundles/org.eclipse.equinox.http/src/org/eclipse/equinox/http/HttpConnection.java
bundles/org.eclipse.equinox.http/src/org/eclipse/equinox/http/HttpDate.java
bundles/org.eclipse.equinox.http/src/org/eclipse/equinox/http/HttpListener.java
bundles/org.eclipse.equinox.http/src/org/eclipse/equinox/http/HttpMsg.java
bundles/org.eclipse.equinox.http/src/org/eclipse/equinox/http/HttpSecurityTracker.java
bundles/org.eclipse.equinox.http/src/org/eclipse/equinox/http/HttpServerSocket.java
bundles/org.eclipse.equinox.http/src/org/eclipse/equinox/http/HttpService.java
bundles/org.eclipse.equinox.http/src/org/eclipse/equinox/http/HttpSocket.java
bundles/org.eclipse.equinox.http/src/org/eclipse/equinox/http/HttpThread.java
bundles/org.eclipse.equinox.http/src/org/eclipse/equinox/http/HttpThreadPool.java
bundles/org.eclipse.equinox.http/src/org/eclipse/equinox/http/LogMessages.properties
bundles/org.eclipse.equinox.http/src/org/eclipse/equinox/http/LogTracker.java
bundles/org.eclipse.equinox.http/src/org/eclipse/equinox/http/LogTrackerMsg.java
bundles/org.eclipse.equinox.http/src/org/eclipse/equinox/http/Registration.java
bundles/org.eclipse.equinox.http/src/org/eclipse/equinox/http/ResourceRegistration.java
bundles/org.eclipse.equinox.http/src/org/eclipse/equinox/http/ResourceUnavailableException.java
bundles/org.eclipse.equinox.http/src/org/eclipse/equinox/http/SSLTracker.java
bundles/org.eclipse.equinox.http/src/org/eclipse/equinox/http/SecureAction.java
bundles/org.eclipse.equinox.http/src/org/eclipse/equinox/http/ServletRegistration.java
bundles/org.eclipse.equinox.http/src/org/eclipse/equinox/http/StaticDataReader.java
bundles/org.eclipse.equinox.http/src/org/eclipse/equinox/http/Tokenizer.java
bundles/org.eclipse.equinox.http/src/org/eclipse/equinox/http/URI.java
bundles/org.eclipse.equinox.http/src/org/eclipse/equinox/http/mime.types
bundles/org.eclipse.equinox.http/src/org/eclipse/equinox/http/servlet/HttpServletRequestImpl.java
bundles/org.eclipse.equinox.http/src/org/eclipse/equinox/http/servlet/HttpServletResponseImpl.java
bundles/org.eclipse.equinox.http/src/org/eclipse/equinox/http/servlet/HttpSessionContextImpl.java
bundles/org.eclipse.equinox.http/src/org/eclipse/equinox/http/servlet/HttpSessionImpl.java
bundles/org.eclipse.equinox.http/src/org/eclipse/equinox/http/servlet/RequestDispatcherImpl.java
bundles/org.eclipse.equinox.http/src/org/eclipse/equinox/http/servlet/ServletConfigImpl.java
bundles/org.eclipse.equinox.http/src/org/eclipse/equinox/http/servlet/ServletContextImpl.java
bundles/org.eclipse.equinox.http/src/org/eclipse/equinox/http/servlet/ServletInputStreamImpl.java
bundles/org.eclipse.equinox.http/src/org/eclipse/equinox/http/servlet/ServletOutputStreamImpl.java
bundles/org.eclipse.equinox.http/src/org/eclipse/equinox/http/servlet/ServletPrintWriter.java
bundles/org.eclipse.equinox.http/src/org/eclipse/equinox/http/status.codes
bundles/org.eclipse.equinox.http/src/org/eclipse/equinox/socket/ServerSocketInterface.java
bundles/org.eclipse.equinox.http/src/org/eclipse/equinox/socket/SocketInterface.java
bundles/org.eclipse.equinox.http/src/org/eclipse/equinox/socket/https/HttpsServerSocket.java
bundles/org.eclipse.equinox.http/src/org/eclipse/equinox/socket/https/HttpsSocket.java
bundles/org.eclipse.equinox.io/.classpath
bundles/org.eclipse.equinox.io/.cvsignore
bundles/org.eclipse.equinox.io/.project
bundles/org.eclipse.equinox.io/.settings/org.eclipse.jdt.core.prefs
bundles/org.eclipse.equinox.io/.settings/org.eclipse.jdt.ui.prefs
bundles/org.eclipse.equinox.io/.settings/org.eclipse.pde.core.prefs
bundles/org.eclipse.equinox.io/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.io/OSGI-INF/permissions.perm
bundles/org.eclipse.equinox.io/about.html
bundles/org.eclipse.equinox.io/build.properties
bundles/org.eclipse.equinox.io/plugin.properties
bundles/org.eclipse.equinox.io/src/javax/microedition/io/Connection.java
bundles/org.eclipse.equinox.io/src/javax/microedition/io/ConnectionNotFoundException.java
bundles/org.eclipse.equinox.io/src/javax/microedition/io/Connector.java
bundles/org.eclipse.equinox.io/src/javax/microedition/io/ContentConnection.java
bundles/org.eclipse.equinox.io/src/javax/microedition/io/Datagram.java
bundles/org.eclipse.equinox.io/src/javax/microedition/io/DatagramConnection.java
bundles/org.eclipse.equinox.io/src/javax/microedition/io/HttpConnection.java
bundles/org.eclipse.equinox.io/src/javax/microedition/io/InputConnection.java
bundles/org.eclipse.equinox.io/src/javax/microedition/io/OutputConnection.java
bundles/org.eclipse.equinox.io/src/javax/microedition/io/StreamConnection.java
bundles/org.eclipse.equinox.io/src/javax/microedition/io/StreamConnectionNotifier.java
bundles/org.eclipse.equinox.io/src/javax/microedition/io/package.html
bundles/org.eclipse.equinox.io/src/org/eclipse/equinox/internal/io/ConnectionListener.java
bundles/org.eclipse.equinox.io/src/org/eclipse/equinox/internal/io/ConnectionNotifier.java
bundles/org.eclipse.equinox.io/src/org/eclipse/equinox/internal/io/RandomAccessConnection.java
bundles/org.eclipse.equinox.io/src/org/eclipse/equinox/internal/io/impl/Activator.java
bundles/org.eclipse.equinox.io/src/org/eclipse/equinox/internal/io/impl/ConnectionFactoryListener.java
bundles/org.eclipse.equinox.io/src/org/eclipse/equinox/internal/io/impl/ConnectionNotifierImpl.java
bundles/org.eclipse.equinox.io/src/org/eclipse/equinox/internal/io/impl/ConnectorServiceImpl.java
bundles/org.eclipse.equinox.io/src/org/eclipse/equinox/internal/io/impl/PrivilegedRunner.java
bundles/org.eclipse.equinox.io/src/org/eclipse/equinox/internal/io/impl/TracerConfigConnector.java
bundles/org.eclipse.equinox.io/src/org/eclipse/equinox/internal/io/package.html
bundles/org.eclipse.equinox.io/src/org/eclipse/equinox/internal/io/util/AbstractConnectionNotifier.java
bundles/org.eclipse.equinox.io/src/org/eclipse/equinox/internal/io/util/AbstractDatagram.java
bundles/org.eclipse.equinox.io/src/org/eclipse/equinox/internal/io/util/URI.java
bundles/org.eclipse.equinox.ip/.classpath
bundles/org.eclipse.equinox.ip/.cvsignore
bundles/org.eclipse.equinox.ip/.project
bundles/org.eclipse.equinox.ip/.settings/org.eclipse.jdt.core.prefs
bundles/org.eclipse.equinox.ip/.settings/org.eclipse.jdt.ui.prefs
bundles/org.eclipse.equinox.ip/.settings/org.eclipse.pde.core.prefs
bundles/org.eclipse.equinox.ip/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.ip/OSGI-INF/permissions.perm
bundles/org.eclipse.equinox.ip/about.html
bundles/org.eclipse.equinox.ip/build.properties
bundles/org.eclipse.equinox.ip/plugin.properties
bundles/org.eclipse.equinox.ip/props.txt
bundles/org.eclipse.equinox.ip/src/org/eclipse/equinox/internal/ip/ProvisioningInfoProvider.java
bundles/org.eclipse.equinox.ip/src/org/eclipse/equinox/internal/ip/ProvisioningStorage.java
bundles/org.eclipse.equinox.ip/src/org/eclipse/equinox/internal/ip/dscagent/DiscoveryAgent.java
bundles/org.eclipse.equinox.ip/src/org/eclipse/equinox/internal/ip/impl/Log.java
bundles/org.eclipse.equinox.ip/src/org/eclipse/equinox/internal/ip/impl/ProvisioningAgent.java
bundles/org.eclipse.equinox.ip/src/org/eclipse/equinox/internal/ip/impl/ProvisioningData.java
bundles/org.eclipse.equinox.ip/src/org/eclipse/equinox/internal/ip/package.html
bundles/org.eclipse.equinox.ip/src/org/eclipse/equinox/internal/ip/provider/BaseProvider.java
bundles/org.eclipse.equinox.ip/src/org/eclipse/equinox/internal/ip/provider/env/EnvironmentInfoProvider.java
bundles/org.eclipse.equinox.ip/src/org/eclipse/equinox/internal/ip/provider/file/FileProvider.java
bundles/org.eclipse.equinox.ip/src/org/eclipse/equinox/internal/ip/provider/http/Context.java
bundles/org.eclipse.equinox.ip/src/org/eclipse/equinox/internal/ip/provider/http/HttpProvider.java
bundles/org.eclipse.equinox.ip/src/org/eclipse/equinox/internal/ip/storage/cm/CMStorage.java
bundles/org.eclipse.equinox.ip/src/org/eclipse/equinox/internal/ip/storage/file/FileStorage.java
bundles/org.eclipse.equinox.jsp.jasper.registry/.classpath
bundles/org.eclipse.equinox.jsp.jasper.registry/.cvsignore
bundles/org.eclipse.equinox.jsp.jasper.registry/.project
bundles/org.eclipse.equinox.jsp.jasper.registry/.settings/org.eclipse.jdt.core.prefs
bundles/org.eclipse.equinox.jsp.jasper.registry/.settings/org.eclipse.jdt.ui.prefs
bundles/org.eclipse.equinox.jsp.jasper.registry/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.jsp.jasper.registry/about.html
bundles/org.eclipse.equinox.jsp.jasper.registry/build.properties
bundles/org.eclipse.equinox.jsp.jasper.registry/plugin.properties
bundles/org.eclipse.equinox.jsp.jasper.registry/src/org/eclipse/equinox/internal/jsp/jasper/registry/Activator.java
bundles/org.eclipse.equinox.jsp.jasper.registry/src/org/eclipse/equinox/jsp/jasper/registry/JSPFactory.java
bundles/org.eclipse.equinox.jsp.jasper.registry/src/org/eclipse/equinox/jsp/jasper/registry/package.html
bundles/org.eclipse.equinox.jsp.jasper/.classpath
bundles/org.eclipse.equinox.jsp.jasper/.cvsignore
bundles/org.eclipse.equinox.jsp.jasper/.project
bundles/org.eclipse.equinox.jsp.jasper/.settings/org.eclipse.jdt.core.prefs
bundles/org.eclipse.equinox.jsp.jasper/.settings/org.eclipse.jdt.ui.prefs
bundles/org.eclipse.equinox.jsp.jasper/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.jsp.jasper/about.html
bundles/org.eclipse.equinox.jsp.jasper/build.properties
bundles/org.eclipse.equinox.jsp.jasper/plugin.properties
bundles/org.eclipse.equinox.jsp.jasper/src/org/eclipse/equinox/internal/jsp/jasper/Activator.java
bundles/org.eclipse.equinox.jsp.jasper/src/org/eclipse/equinox/internal/jsp/jasper/BundleProxyClassLoader.java
bundles/org.eclipse.equinox.jsp.jasper/src/org/eclipse/equinox/internal/jsp/jasper/JSPContextFinder.java
bundles/org.eclipse.equinox.jsp.jasper/src/org/eclipse/equinox/internal/jsp/jasper/JspClassLoader.java
bundles/org.eclipse.equinox.jsp.jasper/src/org/eclipse/equinox/jsp/jasper/JspServlet.java
bundles/org.eclipse.equinox.jsp.jasper/src/org/eclipse/equinox/jsp/jasper/package.html
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/LogPermissionCollectionTest.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.log/.classpath
bundles/org.eclipse.equinox.log/.cvsignore
bundles/org.eclipse.equinox.log/.project
bundles/org.eclipse.equinox.log/.settings/.api_filters
bundles/org.eclipse.equinox.log/.settings/org.eclipse.jdt.core.prefs
bundles/org.eclipse.equinox.log/.settings/org.eclipse.jdt.launching.prefs
bundles/org.eclipse.equinox.log/.settings/org.eclipse.jdt.ui.prefs
bundles/org.eclipse.equinox.log/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.log/about.html
bundles/org.eclipse.equinox.log/build.properties
bundles/org.eclipse.equinox.log/plugin.properties
bundles/org.eclipse.equinox.log/src/org/eclipse/equinox/log/ExtendedLogEntry.java
bundles/org.eclipse.equinox.log/src/org/eclipse/equinox/log/ExtendedLogReaderService.java
bundles/org.eclipse.equinox.log/src/org/eclipse/equinox/log/ExtendedLogService.java
bundles/org.eclipse.equinox.log/src/org/eclipse/equinox/log/LogFilter.java
bundles/org.eclipse.equinox.log/src/org/eclipse/equinox/log/LogPermission.java
bundles/org.eclipse.equinox.log/src/org/eclipse/equinox/log/LogPermissionCollection.java
bundles/org.eclipse.equinox.log/src/org/eclipse/equinox/log/Logger.java
bundles/org.eclipse.equinox.log/src/org/eclipse/equinox/log/SynchronousLogListener.java
bundles/org.eclipse.equinox.log/src/org/eclipse/equinox/log/internal/Activator.java
bundles/org.eclipse.equinox.log/src/org/eclipse/equinox/log/internal/BasicReadWriteLock.java
bundles/org.eclipse.equinox.log/src/org/eclipse/equinox/log/internal/EventAdminAdapter.java
bundles/org.eclipse.equinox.log/src/org/eclipse/equinox/log/internal/EventAdminLogListener.java
bundles/org.eclipse.equinox.log/src/org/eclipse/equinox/log/internal/ExtendedLogEntryImpl.java
bundles/org.eclipse.equinox.log/src/org/eclipse/equinox/log/internal/ExtendedLogReaderServiceFactory.java
bundles/org.eclipse.equinox.log/src/org/eclipse/equinox/log/internal/ExtendedLogReaderServiceImpl.java
bundles/org.eclipse.equinox.log/src/org/eclipse/equinox/log/internal/ExtendedLogServiceFactory.java
bundles/org.eclipse.equinox.log/src/org/eclipse/equinox/log/internal/ExtendedLogServiceImpl.java
bundles/org.eclipse.equinox.log/src/org/eclipse/equinox/log/internal/LoggerImpl.java
bundles/org.eclipse.equinox.log/src/org/eclipse/equinox/log/internal/SerializedTaskQueue.java
bundles/org.eclipse.equinox.preferences/.classpath
bundles/org.eclipse.equinox.preferences/.cvsignore
bundles/org.eclipse.equinox.preferences/.options
bundles/org.eclipse.equinox.preferences/.project
bundles/org.eclipse.equinox.preferences/.settings/.api_filters
bundles/org.eclipse.equinox.preferences/.settings/org.eclipse.core.resources.prefs
bundles/org.eclipse.equinox.preferences/.settings/org.eclipse.jdt.core.prefs
bundles/org.eclipse.equinox.preferences/.settings/org.eclipse.jdt.ui.prefs
bundles/org.eclipse.equinox.preferences/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.preferences/about.html
bundles/org.eclipse.equinox.preferences/about_files/LICENSE-2.0.txt
bundles/org.eclipse.equinox.preferences/build.properties
bundles/org.eclipse.equinox.preferences/plugin.properties
bundles/org.eclipse.equinox.preferences/plugin.xml
bundles/org.eclipse.equinox.preferences/schema/preferences.exsd
bundles/org.eclipse.equinox.preferences/src/org/eclipse/core/internal/preferences/AbstractScope.java
bundles/org.eclipse.equinox.preferences/src/org/eclipse/core/internal/preferences/Activator.java
bundles/org.eclipse.equinox.preferences/src/org/eclipse/core/internal/preferences/Base64.java
bundles/org.eclipse.equinox.preferences/src/org/eclipse/core/internal/preferences/BundleDefaultPreferences.java
bundles/org.eclipse.equinox.preferences/src/org/eclipse/core/internal/preferences/ConfigurationPreferences.java
bundles/org.eclipse.equinox.preferences/src/org/eclipse/core/internal/preferences/DefaultPreferences.java
bundles/org.eclipse.equinox.preferences/src/org/eclipse/core/internal/preferences/EclipsePreferences.java
bundles/org.eclipse.equinox.preferences/src/org/eclipse/core/internal/preferences/ExportedPreferences.java
bundles/org.eclipse.equinox.preferences/src/org/eclipse/core/internal/preferences/IPreferencesConstants.java
bundles/org.eclipse.equinox.preferences/src/org/eclipse/core/internal/preferences/ImmutableMap.java
bundles/org.eclipse.equinox.preferences/src/org/eclipse/core/internal/preferences/InstancePreferences.java
bundles/org.eclipse.equinox.preferences/src/org/eclipse/core/internal/preferences/ListenerRegistry.java
bundles/org.eclipse.equinox.preferences/src/org/eclipse/core/internal/preferences/LookupOrder.java
bundles/org.eclipse.equinox.preferences/src/org/eclipse/core/internal/preferences/OSGiPreferencesServiceImpl.java
bundles/org.eclipse.equinox.preferences/src/org/eclipse/core/internal/preferences/OSGiPreferencesServiceManager.java
bundles/org.eclipse.equinox.preferences/src/org/eclipse/core/internal/preferences/PreferenceServiceRegistryHelper.java
bundles/org.eclipse.equinox.preferences/src/org/eclipse/core/internal/preferences/PreferencesOSGiUtils.java
bundles/org.eclipse.equinox.preferences/src/org/eclipse/core/internal/preferences/PreferencesService.java
bundles/org.eclipse.equinox.preferences/src/org/eclipse/core/internal/preferences/PrefsMessages.java
bundles/org.eclipse.equinox.preferences/src/org/eclipse/core/internal/preferences/RootPreferences.java
bundles/org.eclipse.equinox.preferences/src/org/eclipse/core/internal/preferences/StringPool.java
bundles/org.eclipse.equinox.preferences/src/org/eclipse/core/internal/preferences/exchange/ILegacyPreferences.java
bundles/org.eclipse.equinox.preferences/src/org/eclipse/core/internal/preferences/exchange/IProductPreferencesService.java
bundles/org.eclipse.equinox.preferences/src/org/eclipse/core/internal/preferences/messages.properties
bundles/org.eclipse.equinox.preferences/src/org/eclipse/core/runtime/preferences/AbstractPreferenceInitializer.java
bundles/org.eclipse.equinox.preferences/src/org/eclipse/core/runtime/preferences/BundleDefaultsScope.java
bundles/org.eclipse.equinox.preferences/src/org/eclipse/core/runtime/preferences/ConfigurationScope.java
bundles/org.eclipse.equinox.preferences/src/org/eclipse/core/runtime/preferences/DefaultScope.java
bundles/org.eclipse.equinox.preferences/src/org/eclipse/core/runtime/preferences/IEclipsePreferences.java
bundles/org.eclipse.equinox.preferences/src/org/eclipse/core/runtime/preferences/IExportedPreferences.java
bundles/org.eclipse.equinox.preferences/src/org/eclipse/core/runtime/preferences/IPreferenceFilter.java
bundles/org.eclipse.equinox.preferences/src/org/eclipse/core/runtime/preferences/IPreferenceNodeVisitor.java
bundles/org.eclipse.equinox.preferences/src/org/eclipse/core/runtime/preferences/IPreferencesService.java
bundles/org.eclipse.equinox.preferences/src/org/eclipse/core/runtime/preferences/IScope.java
bundles/org.eclipse.equinox.preferences/src/org/eclipse/core/runtime/preferences/IScopeContext.java
bundles/org.eclipse.equinox.preferences/src/org/eclipse/core/runtime/preferences/InstanceScope.java
bundles/org.eclipse.equinox.preferences/src/org/eclipse/core/runtime/preferences/PreferenceFilterEntry.java
bundles/org.eclipse.equinox.preferences/src/org/eclipse/core/runtime/preferences/PreferenceModifyListener.java
bundles/org.eclipse.equinox.preferences/src/org/eclipse/core/runtime/preferences/package.html
bundles/org.eclipse.equinox.preferences/src/org/osgi/service/prefs/BackingStoreException.java
bundles/org.eclipse.equinox.preferences/src/org/osgi/service/prefs/Preferences.java
bundles/org.eclipse.equinox.preferences/src/org/osgi/service/prefs/PreferencesService.java
bundles/org.eclipse.equinox.registry/.classpath
bundles/org.eclipse.equinox.registry/.cvsignore
bundles/org.eclipse.equinox.registry/.options
bundles/org.eclipse.equinox.registry/.project
bundles/org.eclipse.equinox.registry/.settings/org.eclipse.core.resources.prefs
bundles/org.eclipse.equinox.registry/.settings/org.eclipse.jdt.core.prefs
bundles/org.eclipse.equinox.registry/.settings/org.eclipse.jdt.ui.prefs
bundles/org.eclipse.equinox.registry/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.registry/about.html
bundles/org.eclipse.equinox.registry/about_files/LICENSE-2.0.txt
bundles/org.eclipse.equinox.registry/about_files/NOTICE.txt
bundles/org.eclipse.equinox.registry/build.properties
bundles/org.eclipse.equinox.registry/plugin.properties
bundles/org.eclipse.equinox.registry/plugin.xml
bundles/org.eclipse.equinox.registry/schema/adapters.exsd
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/adapter/AdapterFactoryProxy.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/adapter/AdapterManagerListener.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/registry/BaseExtensionHandle.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/registry/BaseExtensionPointHandle.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/registry/BufferedRandomInputStream.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/registry/CombinedEventDelta.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/registry/ConfigurationElement.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/registry/ConfigurationElementHandle.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/registry/ConfigurationElementMulti.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/registry/Contribution.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/registry/DirectMap.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/registry/Extension.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/registry/ExtensionDelta.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/registry/ExtensionHandle.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/registry/ExtensionMulti.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/registry/ExtensionPoint.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/registry/ExtensionPointHandle.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/registry/ExtensionPointMulti.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/registry/ExtensionRegistry.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/registry/ExtensionsParser.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/registry/Handle.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/registry/HashtableOfStringAndInt.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/registry/IObjectManager.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/registry/IRegistryConstants.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/registry/KeyedElement.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/registry/KeyedHashSet.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/registry/OffsetTable.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/registry/ReadWriteMonitor.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/registry/ReferenceMap.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/registry/RegistryChangeEvent.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/registry/RegistryDelta.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/registry/RegistryIndexChildren.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/registry/RegistryIndexElement.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/registry/RegistryMessages.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/registry/RegistryObject.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/registry/RegistryObjectFactory.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/registry/RegistryObjectFactoryMulti.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/registry/RegistryObjectManager.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/registry/RegistryProperties.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/registry/RegistryProviderFactory.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/registry/RegistrySupport.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/registry/RegistryTimestamp.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/registry/TableReader.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/registry/TableWriter.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/registry/TemporaryObjectManager.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/registry/ThirdLevelConfigurationElementHandle.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/registry/messages.properties
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/registry/osgi/Activator.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/registry/osgi/EclipseBundleListener.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/registry/osgi/EquinoxRegistryStrategy.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/registry/osgi/EquinoxUtils.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/registry/osgi/ExtensionEventDispatcherJob.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/registry/osgi/OSGIUtils.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/registry/osgi/RegistryCommandProvider.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/registry/osgi/RegistryProviderOSGI.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/registry/osgi/RegistryStrategyOSGI.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/registry/spi/ConfigurationElementAttribute.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/internal/registry/spi/ConfigurationElementDescription.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/runtime/ContributorFactoryOSGi.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/runtime/ContributorFactorySimple.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/runtime/IConfigurationElement.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/runtime/IContributor.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/runtime/IExecutableExtension.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/runtime/IExecutableExtensionFactory.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/runtime/IExtension.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/runtime/IExtensionDelta.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/runtime/IExtensionPoint.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/runtime/IExtensionRegistry.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/runtime/IRegistryChangeEvent.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/runtime/IRegistryChangeListener.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/runtime/IRegistryEventListener.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/runtime/InvalidRegistryObjectException.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/runtime/RegistryFactory.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/runtime/dynamichelpers/ExtensionTracker.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/runtime/dynamichelpers/IExtensionChangeHandler.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/runtime/dynamichelpers/IExtensionTracker.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/runtime/dynamichelpers/IFilter.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/runtime/dynamichelpers/package.html
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/runtime/spi/IDynamicExtensionRegistry.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/runtime/spi/IRegistryProvider.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/runtime/spi/RegistryContributor.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/runtime/spi/RegistryStrategy.java
bundles/org.eclipse.equinox.registry/src/org/eclipse/core/runtime/spi/package.html
bundles/org.eclipse.equinox.security.macosx/.classpath
bundles/org.eclipse.equinox.security.macosx/.project
bundles/org.eclipse.equinox.security.macosx/.settings/org.eclipse.jdt.core.prefs
bundles/org.eclipse.equinox.security.macosx/.settings/org.eclipse.jdt.ui.prefs
bundles/org.eclipse.equinox.security.macosx/.settings/org.eclipse.pde.core.prefs
bundles/org.eclipse.equinox.security.macosx/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.security.macosx/about.html
bundles/org.eclipse.equinox.security.macosx/build.properties
bundles/org.eclipse.equinox.security.macosx/fragment.properties
bundles/org.eclipse.equinox.security.macosx/fragment.xml
bundles/org.eclipse.equinox.security.macosx/keystoreNative/build.xml
bundles/org.eclipse.equinox.security.macosx/keystoreNative/keystoreNative.h
bundles/org.eclipse.equinox.security.macosx/keystoreNative/keystoreNative.xcodeproj/default.pbxuser
bundles/org.eclipse.equinox.security.macosx/keystoreNative/keystoreNative.xcodeproj/kim.mode1v3
bundles/org.eclipse.equinox.security.macosx/keystoreNative/keystoreNative.xcodeproj/kim.pbxuser
bundles/org.eclipse.equinox.security.macosx/keystoreNative/keystoreNative.xcodeproj/project.pbxproj
bundles/org.eclipse.equinox.security.macosx/keystoreNative/resources/Manifest
bundles/org.eclipse.equinox.security.macosx/keystoreNative/src/keystoreNative.java
bundles/org.eclipse.equinox.security.macosx/keystoreNative/src/keystoreNativejnilib.c
bundles/org.eclipse.equinox.security.macosx/libkeystoreNative.jnilib
bundles/org.eclipse.equinox.security.macosx/src/org/eclipse/equinox/internal/security/osx/OSXProvider.java
bundles/org.eclipse.equinox.security.macosx/src/org/eclipse/equinox/internal/security/osx/nls/OSXProviderMessages.java
bundles/org.eclipse.equinox.security.macosx/src/org/eclipse/equinox/internal/security/osx/nls/messages.properties
bundles/org.eclipse.equinox.security.tests/.classpath
bundles/org.eclipse.equinox.security.tests/.project
bundles/org.eclipse.equinox.security.tests/.settings/org.eclipse.jdt.core.prefs
bundles/org.eclipse.equinox.security.tests/.settings/org.eclipse.jdt.ui.prefs
bundles/org.eclipse.equinox.security.tests/.settings/org.eclipse.pde.core.prefs
bundles/org.eclipse.equinox.security.tests/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.security.tests/Plugin_Testing/priority/high/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.security.tests/Plugin_Testing/priority/high/plugin.xml
bundles/org.eclipse.equinox.security.tests/Plugin_Testing/priority/low/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.security.tests/Plugin_Testing/priority/low/plugin.xml
bundles/org.eclipse.equinox.security.tests/SecurePrefsSample/1/secure_storage.equinox
bundles/org.eclipse.equinox.security.tests/about.html
bundles/org.eclipse.equinox.security.tests/build.properties
bundles/org.eclipse.equinox.security.tests/plugin.xml
bundles/org.eclipse.equinox.security.tests/src/org/eclipse/equinox/internal/security/tests/SecurityTestsActivator.java
bundles/org.eclipse.equinox.security.tests/src/org/eclipse/equinox/internal/security/tests/storage/Base64Test.java
bundles/org.eclipse.equinox.security.tests/src/org/eclipse/equinox/internal/security/tests/storage/DefaultPreferencesTest.java
bundles/org.eclipse.equinox.security.tests/src/org/eclipse/equinox/internal/security/tests/storage/DynamicPreferencesTest.java
bundles/org.eclipse.equinox.security.tests/src/org/eclipse/equinox/internal/security/tests/storage/HighPriorityModule.java
bundles/org.eclipse.equinox.security.tests/src/org/eclipse/equinox/internal/security/tests/storage/LowPriorityModule.java
bundles/org.eclipse.equinox.security.tests/src/org/eclipse/equinox/internal/security/tests/storage/ManualTest.java
bundles/org.eclipse.equinox.security.tests/src/org/eclipse/equinox/internal/security/tests/storage/SecurePreferencesTest.java
bundles/org.eclipse.equinox.security.tests/src/org/eclipse/equinox/internal/security/tests/storage/SlashEncodeTest.java
bundles/org.eclipse.equinox.security.tests/src/org/eclipse/equinox/internal/security/tests/storage/StorageAbstractTest.java
bundles/org.eclipse.equinox.security.tests/src/org/eclipse/equinox/internal/security/tests/storage/WaitingRegistryListener.java
bundles/org.eclipse.equinox.security.tests/src/org/eclipse/equinox/internal/security/tests/storage/WinPreferencesTest.java
bundles/org.eclipse.equinox.security.tests/src/org/eclipse/equinox/security/tests/AllSecurityTests.java
bundles/org.eclipse.equinox.security.tests/test.xml
bundles/org.eclipse.equinox.security.ui/.classpath
bundles/org.eclipse.equinox.security.ui/.options
bundles/org.eclipse.equinox.security.ui/.project
bundles/org.eclipse.equinox.security.ui/.settings/org.eclipse.jdt.core.prefs
bundles/org.eclipse.equinox.security.ui/.settings/org.eclipse.jdt.ui.prefs
bundles/org.eclipse.equinox.security.ui/.settings/org.eclipse.pde.core.prefs
bundles/org.eclipse.equinox.security.ui/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.security.ui/about.html
bundles/org.eclipse.equinox.security.ui/build.properties
bundles/org.eclipse.equinox.security.ui/icons/full/obj16/green.GIF
bundles/org.eclipse.equinox.security.ui/icons/full/obj16/red.GIF
bundles/org.eclipse.equinox.security.ui/icons/full/obj16/signed_yes_tbl.gif
bundles/org.eclipse.equinox.security.ui/icons/full/obj16/yellow.GIF
bundles/org.eclipse.equinox.security.ui/icons/storage/decrypt.gif
bundles/org.eclipse.equinox.security.ui/icons/storage/encrypt.gif
bundles/org.eclipse.equinox.security.ui/icons/storage/export_secure.gif
bundles/org.eclipse.equinox.security.ui/icons/storage/export_secure_wiz.png
bundles/org.eclipse.equinox.security.ui/icons/storage/login_wiz.png
bundles/org.eclipse.equinox.security.ui/icons/storage/new_value_wiz.png
bundles/org.eclipse.equinox.security.ui/icons/storage/node_delete.gif
bundles/org.eclipse.equinox.security.ui/icons/storage/node_new.gif
bundles/org.eclipse.equinox.security.ui/icons/storage/node_refresh.gif
bundles/org.eclipse.equinox.security.ui/icons/storage/save.gif
bundles/org.eclipse.equinox.security.ui/icons/storage/secure_storage.gif
bundles/org.eclipse.equinox.security.ui/icons/storage/value_delete.gif
bundles/org.eclipse.equinox.security.ui/icons/storage/value_new.gif
bundles/org.eclipse.equinox.security.ui/icons/storage/value_show.gif
bundles/org.eclipse.equinox.security.ui/icons/titleAreaCert.gif
bundles/org.eclipse.equinox.security.ui/plugin.properties
bundles/org.eclipse.equinox.security.ui/plugin.xml
bundles/org.eclipse.equinox.security.ui/src/org/eclipse/equinox/internal/provisional/security/ui/AuthorizationManager.java
bundles/org.eclipse.equinox.security.ui/src/org/eclipse/equinox/internal/provisional/security/ui/SecurityContributionItemFactory.java
bundles/org.eclipse.equinox.security.ui/src/org/eclipse/equinox/internal/provisional/security/ui/X500PrincipalHelper.java
bundles/org.eclipse.equinox.security.ui/src/org/eclipse/equinox/internal/provisional/security/ui/X509CertificateViewDialog.java
bundles/org.eclipse.equinox.security.ui/src/org/eclipse/equinox/internal/provisional/security/ui/package.html
bundles/org.eclipse.equinox.security.ui/src/org/eclipse/equinox/internal/security/ui/Activator.java
bundles/org.eclipse.equinox.security.ui/src/org/eclipse/equinox/internal/security/ui/ConfirmationDialog.java
bundles/org.eclipse.equinox.security.ui/src/org/eclipse/equinox/internal/security/ui/DefaultAuthorizationManager.java
bundles/org.eclipse.equinox.security.ui/src/org/eclipse/equinox/internal/security/ui/SecurityConfigurationSection.java
bundles/org.eclipse.equinox.security.ui/src/org/eclipse/equinox/internal/security/ui/SecurityStatusControl.java
bundles/org.eclipse.equinox.security.ui/src/org/eclipse/equinox/internal/security/ui/SecurityUIMsg.java
bundles/org.eclipse.equinox.security.ui/src/org/eclipse/equinox/internal/security/ui/SecurityUIMsg.properties
bundles/org.eclipse.equinox.security.ui/src/org/eclipse/equinox/internal/security/ui/X509CertificateAttribute.java
bundles/org.eclipse.equinox.security.ui/src/org/eclipse/equinox/internal/security/ui/X509CertificateAttributeContentProvider.java
bundles/org.eclipse.equinox.security.ui/src/org/eclipse/equinox/internal/security/ui/X509CertificateAttributeLabelProvider.java
bundles/org.eclipse.equinox.security.ui/src/org/eclipse/equinox/internal/security/ui/nls/SecUIMessages.java
bundles/org.eclipse.equinox.security.ui/src/org/eclipse/equinox/internal/security/ui/nls/messages.properties
bundles/org.eclipse.equinox.security.ui/src/org/eclipse/equinox/internal/security/ui/preferences/AdvancedPage.java
bundles/org.eclipse.equinox.security.ui/src/org/eclipse/equinox/internal/security/ui/preferences/CertificatesPage.java
bundles/org.eclipse.equinox.security.ui/src/org/eclipse/equinox/internal/security/ui/preferences/PolicyPage.java
bundles/org.eclipse.equinox.security.ui/src/org/eclipse/equinox/internal/security/ui/preferences/SecurityCategoryPage.java
bundles/org.eclipse.equinox.security.ui/src/org/eclipse/equinox/internal/security/ui/storage/ChallengeResponseDialog.java
bundles/org.eclipse.equinox.security.ui/src/org/eclipse/equinox/internal/security/ui/storage/ChangePasswordWizard.java
bundles/org.eclipse.equinox.security.ui/src/org/eclipse/equinox/internal/security/ui/storage/ChangePasswordWizardDialog.java
bundles/org.eclipse.equinox.security.ui/src/org/eclipse/equinox/internal/security/ui/storage/DefaultPasswordProvider.java
bundles/org.eclipse.equinox.security.ui/src/org/eclipse/equinox/internal/security/ui/storage/IStorageConst.java
bundles/org.eclipse.equinox.security.ui/src/org/eclipse/equinox/internal/security/ui/storage/PasswordRecoveryDialog.java
bundles/org.eclipse.equinox.security.ui/src/org/eclipse/equinox/internal/security/ui/storage/StorageLoginDialog.java
bundles/org.eclipse.equinox.security.ui/src/org/eclipse/equinox/internal/security/ui/storage/StoragePreferencePage.java
bundles/org.eclipse.equinox.security.ui/src/org/eclipse/equinox/internal/security/ui/storage/StorageUtils.java
bundles/org.eclipse.equinox.security.ui/src/org/eclipse/equinox/internal/security/ui/storage/TabAdvanced.java
bundles/org.eclipse.equinox.security.ui/src/org/eclipse/equinox/internal/security/ui/storage/TabContents.java
bundles/org.eclipse.equinox.security.ui/src/org/eclipse/equinox/internal/security/ui/storage/TabPassword.java
bundles/org.eclipse.equinox.security.ui/src/org/eclipse/equinox/internal/security/ui/storage/UICallbackProvider.java
bundles/org.eclipse.equinox.security.ui/src/org/eclipse/equinox/internal/security/ui/storage/view/ExportDialog.java
bundles/org.eclipse.equinox.security.ui/src/org/eclipse/equinox/internal/security/ui/storage/view/ISecurePreferencesSelection.java
bundles/org.eclipse.equinox.security.ui/src/org/eclipse/equinox/internal/security/ui/storage/view/NewNodeDialog.java
bundles/org.eclipse.equinox.security.ui/src/org/eclipse/equinox/internal/security/ui/storage/view/NewValueDialog.java
bundles/org.eclipse.equinox.security.ui/src/org/eclipse/equinox/internal/security/ui/storage/view/NodesView.java
bundles/org.eclipse.equinox.security.ui/src/org/eclipse/equinox/internal/security/ui/storage/view/ValuesView.java
bundles/org.eclipse.equinox.security.ui/src/org/eclipse/equinox/internal/security/ui/wizard/CertificateImportCertSelectPage.java
bundles/org.eclipse.equinox.security.ui/src/org/eclipse/equinox/internal/security/ui/wizard/CertificateImportConfirmationPage.java
bundles/org.eclipse.equinox.security.ui/src/org/eclipse/equinox/internal/security/ui/wizard/CertificateImportFileSelectPage.java
bundles/org.eclipse.equinox.security.ui/src/org/eclipse/equinox/internal/security/ui/wizard/CertificateImportTrustEngineSelectPage.java
bundles/org.eclipse.equinox.security.ui/src/org/eclipse/equinox/internal/security/ui/wizard/CertificateImportWizard.java
bundles/org.eclipse.equinox.security.ui/src/org/eclipse/equinox/internal/security/ui/wizard/CertificateViewer.java
bundles/org.eclipse.equinox.security.win32.x86/.classpath
bundles/org.eclipse.equinox.security.win32.x86/.project
bundles/org.eclipse.equinox.security.win32.x86/.settings/org.eclipse.jdt.core.prefs
bundles/org.eclipse.equinox.security.win32.x86/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.security.win32.x86/about.html
bundles/org.eclipse.equinox.security.win32.x86/build.properties
bundles/org.eclipse.equinox.security.win32.x86/cpp/ReadMe.txt
bundles/org.eclipse.equinox.security.win32.x86/cpp/jnicrypt.cpp
bundles/org.eclipse.equinox.security.win32.x86/cpp/jnicrypt.h
bundles/org.eclipse.equinox.security.win32.x86/cpp/jnicrypt.vcproj
bundles/org.eclipse.equinox.security.win32.x86/fragment.properties
bundles/org.eclipse.equinox.security.win32.x86/fragment.xml
bundles/org.eclipse.equinox.security.win32.x86/jnicrypt.dll
bundles/org.eclipse.equinox.security.win32.x86/src/org/eclipse/equinox/internal/security/win32/WinCrypto.java
bundles/org.eclipse.equinox.security.win32.x86/src/org/eclipse/equinox/internal/security/win32/nls/WinCryptoMessages.java
bundles/org.eclipse.equinox.security.win32.x86/src/org/eclipse/equinox/internal/security/win32/nls/messages.properties
bundles/org.eclipse.equinox.security/.classpath
bundles/org.eclipse.equinox.security/.options
bundles/org.eclipse.equinox.security/.project
bundles/org.eclipse.equinox.security/.settings/org.eclipse.jdt.core.prefs
bundles/org.eclipse.equinox.security/.settings/org.eclipse.jdt.ui.prefs
bundles/org.eclipse.equinox.security/.settings/org.eclipse.pde.core.prefs
bundles/org.eclipse.equinox.security/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.security/about.html
bundles/org.eclipse.equinox.security/build.properties
bundles/org.eclipse.equinox.security/plugin.properties
bundles/org.eclipse.equinox.security/plugin.xml
bundles/org.eclipse.equinox.security/readme.txt
bundles/org.eclipse.equinox.security/schema/callbackHandler.exsd
bundles/org.eclipse.equinox.security/schema/callbackHandlerMapping.exsd
bundles/org.eclipse.equinox.security/schema/internalUI.exsd
bundles/org.eclipse.equinox.security/schema/loginConfigurationProvider.exsd
bundles/org.eclipse.equinox.security/schema/loginModule.exsd
bundles/org.eclipse.equinox.security/schema/secureStorage.exsd
bundles/org.eclipse.equinox.security/src/org/eclipse/equinox/internal/security/auth/AuthPlugin.java
bundles/org.eclipse.equinox.security/src/org/eclipse/equinox/internal/security/auth/ConfigurationFactory.java
bundles/org.eclipse.equinox.security/src/org/eclipse/equinox/internal/security/auth/ConfigurationFederator.java
bundles/org.eclipse.equinox.security/src/org/eclipse/equinox/internal/security/auth/SecureContext.java
bundles/org.eclipse.equinox.security/src/org/eclipse/equinox/internal/security/auth/SecurePlatformInternal.java
bundles/org.eclipse.equinox.security/src/org/eclipse/equinox/internal/security/auth/events/SecurityEventsManager.java
bundles/org.eclipse.equinox.security/src/org/eclipse/equinox/internal/security/auth/ext/loader/ExtCallbackHandlerLoader.java
bundles/org.eclipse.equinox.security/src/org/eclipse/equinox/internal/security/auth/ext/loader/ExtLoginModuleLoader.java
bundles/org.eclipse.equinox.security/src/org/eclipse/equinox/internal/security/auth/nls/SecAuthMessages.java
bundles/org.eclipse.equinox.security/src/org/eclipse/equinox/internal/security/auth/nls/messages.properties
bundles/org.eclipse.equinox.security/src/org/eclipse/equinox/internal/security/credentials/EquinoxPrivateCredential.java
bundles/org.eclipse.equinox.security/src/org/eclipse/equinox/internal/security/credentials/EquinoxPublicCredential.java
bundles/org.eclipse.equinox.security/src/org/eclipse/equinox/internal/security/storage/Base64.java
bundles/org.eclipse.equinox.security/src/org/eclipse/equinox/internal/security/storage/CallbacksProvider.java
bundles/org.eclipse.equinox.security/src/org/eclipse/equinox/internal/security/storage/CryptoData.java
bundles/org.eclipse.equinox.security/src/org/eclipse/equinox/internal/security/storage/JavaEncryption.java
bundles/org.eclipse.equinox.security/src/org/eclipse/equinox/internal/security/storage/PasswordExt.java
bundles/org.eclipse.equinox.security/src/org/eclipse/equinox/internal/security/storage/PasswordManagement.java
bundles/org.eclipse.equinox.security/src/org/eclipse/equinox/internal/security/storage/PasswordProviderModuleExt.java
bundles/org.eclipse.equinox.security/src/org/eclipse/equinox/internal/security/storage/PasswordProviderSelector.java
bundles/org.eclipse.equinox.security/src/org/eclipse/equinox/internal/security/storage/PersistedPath.java
bundles/org.eclipse.equinox.security/src/org/eclipse/equinox/internal/security/storage/SecurePreferences.java
bundles/org.eclipse.equinox.security/src/org/eclipse/equinox/internal/security/storage/SecurePreferencesContainer.java
bundles/org.eclipse.equinox.security/src/org/eclipse/equinox/internal/security/storage/SecurePreferencesMapper.java
bundles/org.eclipse.equinox.security/src/org/eclipse/equinox/internal/security/storage/SecurePreferencesRoot.java
bundles/org.eclipse.equinox.security/src/org/eclipse/equinox/internal/security/storage/SecurePreferencesWrapper.java
bundles/org.eclipse.equinox.security/src/org/eclipse/equinox/internal/security/storage/SlashEncode.java
bundles/org.eclipse.equinox.security/src/org/eclipse/equinox/internal/security/storage/StorageUtils.java
bundles/org.eclipse.equinox.security/src/org/eclipse/equinox/internal/security/storage/friends/IDeleteListener.java
bundles/org.eclipse.equinox.security/src/org/eclipse/equinox/internal/security/storage/friends/IStorageConstants.java
bundles/org.eclipse.equinox.security/src/org/eclipse/equinox/internal/security/storage/friends/IStorageTask.java
bundles/org.eclipse.equinox.security/src/org/eclipse/equinox/internal/security/storage/friends/IUICallbacks.java
bundles/org.eclipse.equinox.security/src/org/eclipse/equinox/internal/security/storage/friends/InternalExchangeUtils.java
bundles/org.eclipse.equinox.security/src/org/eclipse/equinox/internal/security/storage/friends/PasswordProviderDescription.java
bundles/org.eclipse.equinox.security/src/org/eclipse/equinox/internal/security/storage/friends/ReEncrypter.java
bundles/org.eclipse.equinox.security/src/org/eclipse/equinox/security/auth/ILoginContext.java
bundles/org.eclipse.equinox.security/src/org/eclipse/equinox/security/auth/ILoginContextListener.java
bundles/org.eclipse.equinox.security/src/org/eclipse/equinox/security/auth/LoginContextFactory.java
bundles/org.eclipse.equinox.security/src/org/eclipse/equinox/security/auth/credentials/CredentialsFactory.java
bundles/org.eclipse.equinox.security/src/org/eclipse/equinox/security/auth/credentials/IPrivateCredential.java
bundles/org.eclipse.equinox.security/src/org/eclipse/equinox/security/auth/credentials/IPublicCredential.java
bundles/org.eclipse.equinox.security/src/org/eclipse/equinox/security/auth/credentials/package.html
bundles/org.eclipse.equinox.security/src/org/eclipse/equinox/security/auth/module/ExtensionLoginModule.java
bundles/org.eclipse.equinox.security/src/org/eclipse/equinox/security/auth/module/package.html
bundles/org.eclipse.equinox.security/src/org/eclipse/equinox/security/auth/package.html
bundles/org.eclipse.equinox.security/src/org/eclipse/equinox/security/storage/EncodingUtils.java
bundles/org.eclipse.equinox.security/src/org/eclipse/equinox/security/storage/ISecurePreferences.java
bundles/org.eclipse.equinox.security/src/org/eclipse/equinox/security/storage/SecurePreferencesFactory.java
bundles/org.eclipse.equinox.security/src/org/eclipse/equinox/security/storage/StorageException.java
bundles/org.eclipse.equinox.security/src/org/eclipse/equinox/security/storage/package.html
bundles/org.eclipse.equinox.security/src/org/eclipse/equinox/security/storage/provider/IPreferencesContainer.java
bundles/org.eclipse.equinox.security/src/org/eclipse/equinox/security/storage/provider/IProviderHints.java
bundles/org.eclipse.equinox.security/src/org/eclipse/equinox/security/storage/provider/PasswordProvider.java
bundles/org.eclipse.equinox.security/src/org/eclipse/equinox/security/storage/provider/package.html
bundles/org.eclipse.equinox.servletbridge.extensionbundle/.classpath
bundles/org.eclipse.equinox.servletbridge.extensionbundle/.project
bundles/org.eclipse.equinox.servletbridge.extensionbundle/.settings/org.eclipse.pde.prefs
bundles/org.eclipse.equinox.servletbridge.extensionbundle/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.servletbridge.extensionbundle/META-INF/p2.inf
bundles/org.eclipse.equinox.servletbridge.extensionbundle/about.html
bundles/org.eclipse.equinox.servletbridge.extensionbundle/build.properties
bundles/org.eclipse.equinox.servletbridge.template/.classpath
bundles/org.eclipse.equinox.servletbridge.template/.project
bundles/org.eclipse.equinox.servletbridge.template/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.servletbridge.template/build.properties
bundles/org.eclipse.equinox.servletbridge.template/templates/build.properties
bundles/org.eclipse.equinox.servletbridge.template/templates/feature.xml
bundles/org.eclipse.equinox.servletbridge.template/templates/rootfiles/launch.ini
bundles/org.eclipse.equinox.servletbridge.template/templates/rootfiles/lib/org.eclipse.equinox.servletbridge_1.2.0.v20091026.jar
bundles/org.eclipse.equinox.servletbridge.template/templates/rootfiles/web.xml
bundles/org.eclipse.equinox.servletbridge.template/templates/template.product
bundles/org.eclipse.equinox.servletbridge/.classpath
bundles/org.eclipse.equinox.servletbridge/.cvsignore
bundles/org.eclipse.equinox.servletbridge/.project
bundles/org.eclipse.equinox.servletbridge/.settings/org.eclipse.jdt.core.prefs
bundles/org.eclipse.equinox.servletbridge/.settings/org.eclipse.jdt.ui.prefs
bundles/org.eclipse.equinox.servletbridge/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.servletbridge/about.html
bundles/org.eclipse.equinox.servletbridge/build.properties
bundles/org.eclipse.equinox.servletbridge/plugin.properties
bundles/org.eclipse.equinox.servletbridge/src/org/eclipse/equinox/servletbridge/BridgeServlet.java
bundles/org.eclipse.equinox.servletbridge/src/org/eclipse/equinox/servletbridge/CloseableURLClassLoader.java
bundles/org.eclipse.equinox.servletbridge/src/org/eclipse/equinox/servletbridge/FrameworkLauncher.java
bundles/org.eclipse.equinox.transforms.hook/.classpath
bundles/org.eclipse.equinox.transforms.hook/.project
bundles/org.eclipse.equinox.transforms.hook/.settings/org.eclipse.jdt.core.prefs
bundles/org.eclipse.equinox.transforms.hook/.settings/org.eclipse.jdt.ui.prefs
bundles/org.eclipse.equinox.transforms.hook/.settings/org.eclipse.pde.core.prefs
bundles/org.eclipse.equinox.transforms.hook/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.transforms.hook/New Format Transformer Launch.launch
bundles/org.eclipse.equinox.transforms.hook/about.html
bundles/org.eclipse.equinox.transforms.hook/build.properties
bundles/org.eclipse.equinox.transforms.hook/hookconfigurators.properties
bundles/org.eclipse.equinox.transforms.hook/src/org/eclipse/equinox/internal/transforms/CSVParser.java
bundles/org.eclipse.equinox.transforms.hook/src/org/eclipse/equinox/internal/transforms/LazyInputStream.java
bundles/org.eclipse.equinox.transforms.hook/src/org/eclipse/equinox/internal/transforms/ProxyStreamTransformer.java
bundles/org.eclipse.equinox.transforms.hook/src/org/eclipse/equinox/internal/transforms/StreamTransformer.java
bundles/org.eclipse.equinox.transforms.hook/src/org/eclipse/equinox/internal/transforms/TransformInstanceListData.java
bundles/org.eclipse.equinox.transforms.hook/src/org/eclipse/equinox/internal/transforms/TransformTuple.java
bundles/org.eclipse.equinox.transforms.hook/src/org/eclipse/equinox/internal/transforms/TransformedBundleEntry.java
bundles/org.eclipse.equinox.transforms.hook/src/org/eclipse/equinox/internal/transforms/TransformedBundleFile.java
bundles/org.eclipse.equinox.transforms.hook/src/org/eclipse/equinox/internal/transforms/TransformerHook.java
bundles/org.eclipse.equinox.transforms.hook/src/org/eclipse/equinox/internal/transforms/TransformerList.java
bundles/org.eclipse.equinox.transforms.hook/transformsHook.properties
bundles/org.eclipse.equinox.transforms.xslt/.classpath
bundles/org.eclipse.equinox.transforms.xslt/.cvsignore
bundles/org.eclipse.equinox.transforms.xslt/.project
bundles/org.eclipse.equinox.transforms.xslt/.settings/org.eclipse.jdt.core.prefs
bundles/org.eclipse.equinox.transforms.xslt/.settings/org.eclipse.jdt.ui.prefs
bundles/org.eclipse.equinox.transforms.xslt/.settings/org.eclipse.pde.core.prefs
bundles/org.eclipse.equinox.transforms.xslt/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.transforms.xslt/about.html
bundles/org.eclipse.equinox.transforms.xslt/build.properties
bundles/org.eclipse.equinox.transforms.xslt/bundle.properties
bundles/org.eclipse.equinox.transforms.xslt/src/org/eclipse/equinox/internal/transforms/Pipe.java
bundles/org.eclipse.equinox.transforms.xslt/src/org/eclipse/equinox/internal/transforms/xslt/Activator.java
bundles/org.eclipse.equinox.transforms.xslt/src/org/eclipse/equinox/internal/transforms/xslt/XSLTStreamTransformer.java
bundles/org.eclipse.equinox.useradmin/.classpath
bundles/org.eclipse.equinox.useradmin/.cvsignore
bundles/org.eclipse.equinox.useradmin/.project
bundles/org.eclipse.equinox.useradmin/.settings/org.eclipse.core.resources.prefs
bundles/org.eclipse.equinox.useradmin/.settings/org.eclipse.jdt.core.prefs
bundles/org.eclipse.equinox.useradmin/.settings/org.eclipse.jdt.ui.prefs
bundles/org.eclipse.equinox.useradmin/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.useradmin/about.html
bundles/org.eclipse.equinox.useradmin/build.properties
bundles/org.eclipse.equinox.useradmin/plugin.properties
bundles/org.eclipse.equinox.useradmin/src/org/eclipse/equinox/internal/useradmin/Activator.java
bundles/org.eclipse.equinox.useradmin/src/org/eclipse/equinox/internal/useradmin/Authorization.java
bundles/org.eclipse.equinox.useradmin/src/org/eclipse/equinox/internal/useradmin/ExternalMessages.properties
bundles/org.eclipse.equinox.useradmin/src/org/eclipse/equinox/internal/useradmin/Group.java
bundles/org.eclipse.equinox.useradmin/src/org/eclipse/equinox/internal/useradmin/LogMessages.properties
bundles/org.eclipse.equinox.useradmin/src/org/eclipse/equinox/internal/useradmin/LogTracker.java
bundles/org.eclipse.equinox.useradmin/src/org/eclipse/equinox/internal/useradmin/LogTrackerMsg.java
bundles/org.eclipse.equinox.useradmin/src/org/eclipse/equinox/internal/useradmin/Role.java
bundles/org.eclipse.equinox.useradmin/src/org/eclipse/equinox/internal/useradmin/User.java
bundles/org.eclipse.equinox.useradmin/src/org/eclipse/equinox/internal/useradmin/UserAdmin.java
bundles/org.eclipse.equinox.useradmin/src/org/eclipse/equinox/internal/useradmin/UserAdminEventAdapter.java
bundles/org.eclipse.equinox.useradmin/src/org/eclipse/equinox/internal/useradmin/UserAdminEventProducer.java
bundles/org.eclipse.equinox.useradmin/src/org/eclipse/equinox/internal/useradmin/UserAdminHashtable.java
bundles/org.eclipse.equinox.useradmin/src/org/eclipse/equinox/internal/useradmin/UserAdminMsg.java
bundles/org.eclipse.equinox.useradmin/src/org/eclipse/equinox/internal/useradmin/UserAdminStore.java
bundles/org.eclipse.equinox.util/.classpath
bundles/org.eclipse.equinox.util/.cvsignore
bundles/org.eclipse.equinox.util/.project
bundles/org.eclipse.equinox.util/.settings/org.eclipse.jdt.core.prefs
bundles/org.eclipse.equinox.util/.settings/org.eclipse.jdt.ui.prefs
bundles/org.eclipse.equinox.util/.settings/org.eclipse.pde.core.prefs
bundles/org.eclipse.equinox.util/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.util/OSGI-INF/permissions.perm
bundles/org.eclipse.equinox.util/about.html
bundles/org.eclipse.equinox.util/build.properties
bundles/org.eclipse.equinox.util/plugin.properties
bundles/org.eclipse.equinox.util/src/org/eclipse/equinox/internal/util/TracerMap.java
bundles/org.eclipse.equinox.util/src/org/eclipse/equinox/internal/util/UtilActivator.java
bundles/org.eclipse.equinox.util/src/org/eclipse/equinox/internal/util/event/EventThread.java
bundles/org.eclipse.equinox.util/src/org/eclipse/equinox/internal/util/event/Queue.java
bundles/org.eclipse.equinox.util/src/org/eclipse/equinox/internal/util/event/SystemListener.java
bundles/org.eclipse.equinox.util/src/org/eclipse/equinox/internal/util/event/package.html
bundles/org.eclipse.equinox.util/src/org/eclipse/equinox/internal/util/hash/HashIntObjNS.java
bundles/org.eclipse.equinox.util/src/org/eclipse/equinox/internal/util/hash/HashIntObjS.java
bundles/org.eclipse.equinox.util/src/org/eclipse/equinox/internal/util/hash/HashLongObjNS.java
bundles/org.eclipse.equinox.util/src/org/eclipse/equinox/internal/util/hash/HashLongObjS.java
bundles/org.eclipse.equinox.util/src/org/eclipse/equinox/internal/util/hash/HashObjIntNS.java
bundles/org.eclipse.equinox.util/src/org/eclipse/equinox/internal/util/hash/HashObjIntS.java
bundles/org.eclipse.equinox.util/src/org/eclipse/equinox/internal/util/hash/HashObjLongNS.java
bundles/org.eclipse.equinox.util/src/org/eclipse/equinox/internal/util/hash/HashObjLongS.java
bundles/org.eclipse.equinox.util/src/org/eclipse/equinox/internal/util/hash/package.html
bundles/org.eclipse.equinox.util/src/org/eclipse/equinox/internal/util/impl/tpt/ServiceFactoryImpl.java
bundles/org.eclipse.equinox.util/src/org/eclipse/equinox/internal/util/impl/tpt/threadpool/Executor.java
bundles/org.eclipse.equinox.util/src/org/eclipse/equinox/internal/util/impl/tpt/threadpool/Job.java
bundles/org.eclipse.equinox.util/src/org/eclipse/equinox/internal/util/impl/tpt/threadpool/ThreadPoolFactoryImpl.java
bundles/org.eclipse.equinox.util/src/org/eclipse/equinox/internal/util/impl/tpt/threadpool/ThreadPoolManagerImpl.java
bundles/org.eclipse.equinox.util/src/org/eclipse/equinox/internal/util/impl/tpt/timer/TimerFactory.java
bundles/org.eclipse.equinox.util/src/org/eclipse/equinox/internal/util/impl/tpt/timer/TimerImpl.java
bundles/org.eclipse.equinox.util/src/org/eclipse/equinox/internal/util/impl/tpt/timer/TimerQueue.java
bundles/org.eclipse.equinox.util/src/org/eclipse/equinox/internal/util/impl/tpt/timer/TimerQueueNode.java
bundles/org.eclipse.equinox.util/src/org/eclipse/equinox/internal/util/pool/ObjectCreator.java
bundles/org.eclipse.equinox.util/src/org/eclipse/equinox/internal/util/pool/ObjectPool.java
bundles/org.eclipse.equinox.util/src/org/eclipse/equinox/internal/util/pool/package.html
bundles/org.eclipse.equinox.util/src/org/eclipse/equinox/internal/util/ref/Log.java
bundles/org.eclipse.equinox.util/src/org/eclipse/equinox/internal/util/ref/LogInterface.java
bundles/org.eclipse.equinox.util/src/org/eclipse/equinox/internal/util/ref/TimerRef.java
bundles/org.eclipse.equinox.util/src/org/eclipse/equinox/internal/util/ref/package.html
bundles/org.eclipse.equinox.util/src/org/eclipse/equinox/internal/util/security/PrivilegedAction.java
bundles/org.eclipse.equinox.util/src/org/eclipse/equinox/internal/util/security/PrivilegedRunner.java
bundles/org.eclipse.equinox.util/src/org/eclipse/equinox/internal/util/security/SecurityUtil.java
bundles/org.eclipse.equinox.util/src/org/eclipse/equinox/internal/util/security/package.html
bundles/org.eclipse.equinox.util/src/org/eclipse/equinox/internal/util/threadpool/ThreadContext.java
bundles/org.eclipse.equinox.util/src/org/eclipse/equinox/internal/util/threadpool/ThreadPoolFactory.java
bundles/org.eclipse.equinox.util/src/org/eclipse/equinox/internal/util/threadpool/ThreadPoolManager.java
bundles/org.eclipse.equinox.util/src/org/eclipse/equinox/internal/util/threadpool/package.html
bundles/org.eclipse.equinox.util/src/org/eclipse/equinox/internal/util/timer/Timer.java
bundles/org.eclipse.equinox.util/src/org/eclipse/equinox/internal/util/timer/TimerListener.java
bundles/org.eclipse.equinox.util/src/org/eclipse/equinox/internal/util/timer/package.html
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/AspectJWeavingStarter.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
bundles/org.eclipse.equinox.wireadmin/.classpath
bundles/org.eclipse.equinox.wireadmin/.cvsignore
bundles/org.eclipse.equinox.wireadmin/.project
bundles/org.eclipse.equinox.wireadmin/.settings/org.eclipse.jdt.core.prefs
bundles/org.eclipse.equinox.wireadmin/.settings/org.eclipse.jdt.ui.prefs
bundles/org.eclipse.equinox.wireadmin/.settings/org.eclipse.pde.core.prefs
bundles/org.eclipse.equinox.wireadmin/META-INF/MANIFEST.MF
bundles/org.eclipse.equinox.wireadmin/OSGI-INF/permissions.perm
bundles/org.eclipse.equinox.wireadmin/about.html
bundles/org.eclipse.equinox.wireadmin/build.properties
bundles/org.eclipse.equinox.wireadmin/plugin.properties
bundles/org.eclipse.equinox.wireadmin/src/org/eclipse/equinox/internal/wireadmin/Activator.java
bundles/org.eclipse.equinox.wireadmin/src/org/eclipse/equinox/internal/wireadmin/EventDispatcher.java
bundles/org.eclipse.equinox.wireadmin/src/org/eclipse/equinox/internal/wireadmin/NotificationEvent.java
bundles/org.eclipse.equinox.wireadmin/src/org/eclipse/equinox/internal/wireadmin/TracerMap.java
bundles/org.eclipse.equinox.wireadmin/src/org/eclipse/equinox/internal/wireadmin/WireAdminImpl.java
bundles/org.eclipse.equinox.wireadmin/src/org/eclipse/equinox/internal/wireadmin/WireImpl.java
bundles/org.eclipse.equinox.wireadmin/src/org/eclipse/equinox/internal/wireadmin/WireProperties.java
bundles/org.eclipse.equinox.wireadmin/src/org/eclipse/equinox/internal/wireadmin/WireReDispatcher.java
examples/org.eclipse.equinox.server.examples.servletbridge.product/.project
examples/org.eclipse.equinox.server.examples.servletbridge.product/products/server.core.p2.product
examples/org.eclipse.equinox.server.examples.servletbridge.product/products/server.core.product
features/org.eclipse.equinox.compendium.sdk/.project
features/org.eclipse.equinox.compendium.sdk/build.properties
features/org.eclipse.equinox.compendium.sdk/feature.properties
features/org.eclipse.equinox.compendium.sdk/feature.xml
features/org.eclipse.equinox.core.feature/.project
features/org.eclipse.equinox.core.feature/build.properties
features/org.eclipse.equinox.core.feature/feature.properties
features/org.eclipse.equinox.core.feature/feature.xml
features/org.eclipse.equinox.server.core/.project
features/org.eclipse.equinox.server.core/build.properties
features/org.eclipse.equinox.server.core/feature.properties
features/org.eclipse.equinox.server.core/feature.xml
features/org.eclipse.equinox.server.jetty/.project
features/org.eclipse.equinox.server.jetty/build.properties
features/org.eclipse.equinox.server.jetty/feature.properties
features/org.eclipse.equinox.server.jetty/feature.xml
features/org.eclipse.equinox.server.p2/.project
features/org.eclipse.equinox.server.p2/build.properties
features/org.eclipse.equinox.server.p2/feature.properties
features/org.eclipse.equinox.server.p2/feature.xml
features/org.eclipse.equinox.server.servletbridge/.project
features/org.eclipse.equinox.server.servletbridge/build.properties
features/org.eclipse.equinox.server.servletbridge/feature.properties
features/org.eclipse.equinox.server.servletbridge/feature.xml
features/org.eclipse.equinox.server.servletbridge/rootfiles/launch.ini
features/org.eclipse.equinox.server.servletbridge/rootfiles/lib/org.eclipse.equinox.servletbridge_1.2.0.v20100201.jar
features/org.eclipse.equinox.server.servletbridge/rootfiles/web.xml
features/org.eclipse.equinox.server.simple/.project
features/org.eclipse.equinox.server.simple/build.properties
features/org.eclipse.equinox.server.simple/feature.properties
features/org.eclipse.equinox.server.simple/feature.xml
features/org.eclipse.equinox.serverside.sdk/.project
features/org.eclipse.equinox.serverside.sdk/build.properties
features/org.eclipse.equinox.serverside.sdk/feature.properties
features/org.eclipse.equinox.serverside.sdk/feature.xml
features/org.eclipse.equinox.starterkit.product.feature/.project
features/org.eclipse.equinox.starterkit.product.feature/build.properties
features/org.eclipse.equinox.starterkit.product.feature/feature.properties
features/org.eclipse.equinox.starterkit.product.feature/feature.xml
features/org.eclipse.equinox.starterkit.product.feature/product/EclipseRTOSGiStarterKit.product
features/org.eclipse.equinox.starterkit.product.feature/product/p2.inf
features/org.eclipse.equinox.starterkit.product.feature/rt.icns
features/org.eclipse.equinox.starterkit.product.feature/rt.ico
features/org.eclipse.equinox.weaving.sdk/.project
features/org.eclipse.equinox.weaving.sdk/build.properties
features/org.eclipse.equinox.weaving.sdk/feature.properties
features/org.eclipse.equinox.weaving.sdk/feature.xml
Diffstat (limited to 'bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox')
24 files changed, 0 insertions, 2993 deletions
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 ad7ec7c75..000000000 --- a/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/service/weaving/CacheEntry.java +++ /dev/null @@ -1,65 +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; - -/** - * A CacheEntry represents an item that is read (or should have been read) from - * the cache. - * - * A cache entry is the primary communication item between the basic hook - * mechanism and the cache implementation. The cache can tell the hook to skip - * any weaving for the class (in the case the cache knows that the class don't - * need any weaving, e.g. no aspects affect this class) or to use the bytes that - * are read from the cache to define the class in the VM. - * - * @author Martin Lippert - */ -public class CacheEntry { - - private final byte[] cachedBytes; - - private final boolean dontWeave; - - /** - * Creates a new cache entry. This item can tell the basic hook mechanism to - * use the given cached bytes for the class definition or if the original - * class bytes needs weaving or not - * - * @param dontWeave A flag that indicates whether this item needs to be - * woven or not - * @param cachedBytes The bytes for the class read from the cache - */ - public CacheEntry(final boolean dontWeave, final byte[] cachedBytes) { - this.dontWeave = dontWeave; - this.cachedBytes = cachedBytes; - } - - /** - * Tell the hook mechanism to weave a class or not to weave a class - * - * @return true, if the class doesn't need any weaving, otherwise false - */ - public boolean dontWeave() { - return dontWeave; - } - - /** - * Returns the bytes that are read from the cache. These bytes should be - * used for defining the class instead of the original ones. - * - * @return The cached bytes for the class - */ - 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 a1865fb60..000000000 --- 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 f917f2fbe..000000000 --- a/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/service/weaving/ICachingServiceFactory.java +++ /dev/null @@ -1,43 +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; - -/** - * This is the central interface for other bundles to implement when they would - * like to contribute a concrete caching implementation. Bundles should - * implement this interface and register an implementation as an OSGi service - * under this interface. - * - * @author Martin Lippert - */ -public interface ICachingServiceFactory { - - /** - * Create concrete caching service for the given bundle. The caching service - * is then responsible to cache woven bytecode and retrieve those bytecodes - * from the cache. - * - * @param classLoader The classloader if the given bundle - * @param bundle The bundle the caching service should be created for - * @param key A fingerprint that is created by the concrete weavers to - * indicate what the weaving configuration for this bundle is. - * The caching service should be able to handle different keys - * for the same bundle in order not the deliver the wrong cached - * bytes from the cache - * @return The caching service for the given bundle - */ - 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 a1db9ae6b..000000000 --- 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 76c567ec1..000000000 --- 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 ffdc7fda9..000000000 --- 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 Martin Lippert - */ -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 20ec8b78e..000000000 --- a/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/service/weaving/Supplementer.java +++ /dev/null @@ -1,233 +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; - -/** - * A supplementer object is created for every bundle that contains one or many - * of the supplementer headers in its header. - * - * The corresponding supplementer object contains the information which headers - * the bundle defines and which bundles it supplements in the running system. - * - * @author Martin Lippert - */ -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; - - /** - * Creates a supplementer object for the given bundle. - * - * @param bundle The bundle that defines the supplementer headers - * @param bundleHost The host bundle of the supplementer bundle, if the - * bundle is a fragment, otherwise null - * @param supplementBundle The parsed manifest headers defined for - * Eclipse-SupplementBundle - * @param supplementImporter The parsed manifest headers defined for - * Eclipse-SupplementImporter - * @param supplementExporter The parsed manifest headers defined for - * Eclipse-SupplementExporter - */ - 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>(); - } - - /** - * Add a bundle to the list of supplemented bundles - * - * @param supplementedBundle The bundle that is supplemented by this - * supplementer - */ - public void addSupplementedBundle(final Bundle supplementedBundle) { - this.supplementedBundles.add(supplementedBundle); - } - - /** - * Gives information about which bundles are currently supplemented by this - * supplementer - * - * @return The currently supplemented bundles - */ - public Bundle[] getSupplementedBundles() { - return supplementedBundles.toArray(new Bundle[supplementedBundles - .size()]); - } - - /** - * Returns the bundle that defines the supplementer headers (this - * supplementer object belongs to) - * - * @return The bundle object this supplementer belongs to - */ - public Bundle getSupplementerBundle() { - return supplementer; - } - - /** - * Returns the host of the supplementer bundle, if it is a fragment, - * otherwise this returns the same as getSupplementerBundle() - * - * @return The host bundle this supplementer belongs to - */ - public Bundle getSupplementerHost() { - return supplementerHost; - } - - /** - * The symbolic name of the supplementer bundle - * - * @return The symbolic name of the supplementer bundle - */ - public String getSymbolicName() { - return supplementer.getSymbolicName(); - } - - /** - * Provides information about whether a given bundle is supplemented by this - * supplementer or not - * - * @param bundle The bundle that might be supplemented by this supplementer - * @return true, if the bundle is supplemented by this supplementer, - * otherwise false - */ - public boolean isSupplemented(final Bundle bundle) { - return supplementedBundles.contains(bundle); - } - - /** - * Checks if the given export-package header definitions matches the - * supplement-exporter definitions of this supplementer - * - * @param exports The headers to check for matching against this - * supplementer - * @return true, if this supplementer matches against the given - * export-package headers - */ - 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; - } - - /** - * Checks if the given import-package header definitions matches the - * supplement-importer definitions of this supplementer - * - * @param imports The headers to check for matching against this - * supplementer - * @return true, if this supplementer matches against the given - * import-package headers - */ - 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; - } - - /** - * Checks if the given bundle symbolic name definition matches the - * supplement-bundle definition of this supplementer - * - * @param symbolicName The symbolic name of the bundle that shoudl be - * checked - * @return true, if this supplementer matches against the given bundle - * symbolic name - */ - 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; - } - - /** - * Removes the given bundle from the set of supplemented bundles (that are - * supplemented by this supplementer) - * - * @param supplementedBundle The bundle that is no longer supplemented by - * this supplementer - */ - 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 74a8fcd53..000000000 --- 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 a1f36272b..000000000 --- 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 20d50745d..000000000 --- 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 65dca70a9..000000000 --- a/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/adaptors/WeavingAdaptorFactory.java +++ /dev/null @@ -1,297 +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 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.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 ecc67bed4..000000000 --- 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 ad1438dfe..000000000 --- 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 57bcb2439..000000000 --- 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 db49cf62e..000000000 --- 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 d2897b9d1..000000000 --- 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 c2dedf40c..000000000 --- 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 89fdb41ff..000000000 --- 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 1b05a5b39..000000000 --- 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 d089a11dd..000000000 --- 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 4ec862d77..000000000 --- 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 fe5f47fbc..000000000 --- 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 a67deae1b..000000000 --- a/bundles/org.eclipse.equinox.weaving.hook/src/org/eclipse/equinox/weaving/hooks/WeavingHook.java +++ /dev/null @@ -1,245 +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 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 7f029faae..000000000 --- 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; - } - -} |