tree f9ffa8d70b72b5c97990b67aecb8607d6911bcb7
parent 105f8cf9cc92bb85ea0b291787e6ee310cc202ef
author cvs2svn <platform-releng-dev@eclipse.org> 1265748687 +0000
committer cvs2svn <platform-releng-dev@eclipse.org> 1265748687 +0000

This commit was manufactured by cvs2svn to create tag 'R3_5_2'.

Sprout from R3_5_maintenance 2010-02-09 20:51:26 UTC Markus Keller <mkeller> 'Bug 302310: org.eclipse.ltk.ui.refactoring isn't signed in the 3.5.2 stream'
Cherrypick from master 2009-08-24 11:06:26 UTC Markus Keller <mkeller> 'Bug 287424: [JUnit] Update license for 4.5':
    org.junit4/about.html
Delete:
    org.eclipse.jdt.junit.core/.settings/org.eclipse.jdt.core.prefs
    org.eclipse.jdt.junit.core/.settings/org.eclipse.jdt.launching.prefs
    org.eclipse.jdt.junit.core/.settings/org.eclipse.jdt.ui.prefs
    org.eclipse.jdt.junit.core/.settings/org.eclipse.pde.prefs
    org.eclipse.jdt.junit.core/META-INF/MANIFEST.MF
    org.eclipse.jdt.junit.core/plugin.properties
    org.eclipse.jdt.junit.core/plugin.xml
    org.eclipse.jdt.junit.core/schema/internal_testKinds.exsd
    org.eclipse.jdt.junit.core/schema/testRunListeners.exsd
    org.eclipse.jdt.junit.core/src/org/eclipse/jdt/internal/junit/BasicElementLabels.java
    org.eclipse.jdt.junit.core/src/org/eclipse/jdt/internal/junit/JUnitCorePlugin.java
    org.eclipse.jdt.junit.core/src/org/eclipse/jdt/internal/junit/JUnitMessages.java
    org.eclipse.jdt.junit.core/src/org/eclipse/jdt/internal/junit/JUnitMessages.properties
    org.eclipse.jdt.junit.core/src/org/eclipse/jdt/internal/junit/JUnitPreferencesConstants.java
    org.eclipse.jdt.junit.core/src/org/eclipse/jdt/internal/junit/JUnitPropertyTester.java
    org.eclipse.jdt.junit.core/src/org/eclipse/jdt/internal/junit/JunitPreferenceInitializer.java
    org.eclipse.jdt.junit.core/src/org/eclipse/jdt/internal/junit/Messages.java
    org.eclipse.jdt.junit.core/src/org/eclipse/jdt/internal/junit/buildpath/BuildPathSupport.java
    org.eclipse.jdt.junit.core/src/org/eclipse/jdt/internal/junit/buildpath/JUnitContainerInitializer.java
    org.eclipse.jdt.junit.core/src/org/eclipse/jdt/internal/junit/buildpath/JUnitHomeInitializer.java
    org.eclipse.jdt.junit.core/src/org/eclipse/jdt/internal/junit/buildpath/P2Utils.java
    org.eclipse.jdt.junit.core/src/org/eclipse/jdt/internal/junit/launcher/ContainerComparator.java
    org.eclipse.jdt.junit.core/src/org/eclipse/jdt/internal/junit/launcher/ITestFinder.java
    org.eclipse.jdt.junit.core/src/org/eclipse/jdt/internal/junit/launcher/ITestKind.java
    org.eclipse.jdt.junit.core/src/org/eclipse/jdt/internal/junit/launcher/JUnit3TestFinder.java
    org.eclipse.jdt.junit.core/src/org/eclipse/jdt/internal/junit/launcher/JUnit4TestFinder.java
    org.eclipse.jdt.junit.core/src/org/eclipse/jdt/internal/junit/launcher/JUnitLaunchConfigurationConstants.java
    org.eclipse.jdt.junit.core/src/org/eclipse/jdt/internal/junit/launcher/JUnitMigrationDelegate.java
    org.eclipse.jdt.junit.core/src/org/eclipse/jdt/internal/junit/launcher/JUnitRuntimeClasspathEntry.java
    org.eclipse.jdt.junit.core/src/org/eclipse/jdt/internal/junit/launcher/TestKind.java
    org.eclipse.jdt.junit.core/src/org/eclipse/jdt/internal/junit/launcher/TestKindRegistry.java
    org.eclipse.jdt.junit.core/src/org/eclipse/jdt/internal/junit/launcher/TestSearchResult.java
    org.eclipse.jdt.junit.core/src/org/eclipse/jdt/internal/junit/model/ITestRunListener2.java
    org.eclipse.jdt.junit.core/src/org/eclipse/jdt/internal/junit/model/ITestRunSessionListener.java
    org.eclipse.jdt.junit.core/src/org/eclipse/jdt/internal/junit/model/ITestSessionListener.java
    org.eclipse.jdt.junit.core/src/org/eclipse/jdt/internal/junit/model/IXMLTags.java
    org.eclipse.jdt.junit.core/src/org/eclipse/jdt/internal/junit/model/JUnitModel.java
    org.eclipse.jdt.junit.core/src/org/eclipse/jdt/internal/junit/model/ModelMessages.java
    org.eclipse.jdt.junit.core/src/org/eclipse/jdt/internal/junit/model/ModelMessages.properties
    org.eclipse.jdt.junit.core/src/org/eclipse/jdt/internal/junit/model/RemoteTestRunnerClient.java
    org.eclipse.jdt.junit.core/src/org/eclipse/jdt/internal/junit/model/TestCaseElement.java
    org.eclipse.jdt.junit.core/src/org/eclipse/jdt/internal/junit/model/TestElement.java
    org.eclipse.jdt.junit.core/src/org/eclipse/jdt/internal/junit/model/TestRoot.java
    org.eclipse.jdt.junit.core/src/org/eclipse/jdt/internal/junit/model/TestRunHandler.java
    org.eclipse.jdt.junit.core/src/org/eclipse/jdt/internal/junit/model/TestRunListenerAdapter.java
    org.eclipse.jdt.junit.core/src/org/eclipse/jdt/internal/junit/model/TestRunSession.java
    org.eclipse.jdt.junit.core/src/org/eclipse/jdt/internal/junit/model/TestRunSessionSerializer.java
    org.eclipse.jdt.junit.core/src/org/eclipse/jdt/internal/junit/model/TestSuiteElement.java
    org.eclipse.jdt.junit.core/src/org/eclipse/jdt/internal/junit/util/IJUnitStatusConstants.java
    org.eclipse.jdt.junit.core/src/org/eclipse/jdt/internal/junit/util/TestSearchEngine.java
    org.eclipse.jdt.junit.core/src/org/eclipse/jdt/junit/ITestRunListener.java
    org.eclipse.jdt.junit.core/src/org/eclipse/jdt/junit/JUnitCore.java
    org.eclipse.jdt.junit.core/src/org/eclipse/jdt/junit/TestRunListener.java
    org.eclipse.jdt.junit.core/src/org/eclipse/jdt/junit/launcher/JUnitLaunchConfigurationDelegate.java
    org.eclipse.jdt.junit.core/src/org/eclipse/jdt/junit/launcher/package.html
    org.eclipse.jdt.junit.core/src/org/eclipse/jdt/junit/model/ITestCaseElement.java
    org.eclipse.jdt.junit.core/src/org/eclipse/jdt/junit/model/ITestElement.java
    org.eclipse.jdt.junit.core/src/org/eclipse/jdt/junit/model/ITestElementContainer.java
    org.eclipse.jdt.junit.core/src/org/eclipse/jdt/junit/model/ITestRunSession.java
    org.eclipse.jdt.junit.core/src/org/eclipse/jdt/junit/model/ITestSuiteElement.java
    org.eclipse.jdt.junit.core/src/org/eclipse/jdt/junit/model/package.html
    org.eclipse.jdt.junit.core/src/org/eclipse/jdt/junit/package.html