Bug 117071 MembersOrderPreferenceCache leaking a propertyChangeListener
20051109 org.eclipse.jdt.ui.PreferenceConstants#initializeDefaultValues adds a listener to JDT UI preference store but this is not deleted before shutdown.
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/JavaPlugin.java
initializeRefactoringCreators();
		
		getASTProvider();
		new InitializeAfterLoadJob().schedule();
	}
	/**
	 * Initializes the refactoring instance creators for the JDT refactorings.
	 */
	private static void initializeRefactoringCreators() {
		final RefactoringInstanceFactory factory= RefactoringInstanceFactory.getInstance();
		factory.registerCreator("org.eclipse.jdt.ui.rename.resource", new RenameResourceRefactoringInstanceCreator()); 
		factory.registerCreator("org.eclipse.jdt.ui.rename.compilationunit", new RenameCompilationUnitRefactoringInstanceCreator()); 
		factory.registerCreator("org.eclipse.jdt.ui.rename.enum.constant", new RenameEnumConstRefactoringInstanceCreator()); 
		factory.registerCreator("org.eclipse.jdt.ui.rename.field", new RenameFieldRefactoringInstanceCreator()); 
		factory.registerCreator("org.eclipse.jdt.ui.rename.java.project", new RenameJavaProjectRefactoringInstanceCreator()); 
		factory.registerCreator("org.eclipse.jdt.ui.rename.local.variable", new RenameLocalVariableRefactoringInstanceCreator()); 
		factory.registerCreator("org.eclipse.jdt.ui.rename.method", new RenameMethodRefactoringInstanceCreator()); 
		factory.registerCreator("org.eclipse.jdt.ui.rename.package", new RenamePackageRefactoringInstanceCreator()); 
		factory.registerCreator("org.eclipse.jdt.ui.rename.source.folder", new RenameSourceFolderRefactoringInstanceCreator()); 
		factory.registerCreator("org.eclipse.jdt.ui.rename.type.parameter", new RenameTypeParameterRefactoringInstanceCreator()); 
		factory.registerCreator("org.eclipse.jdt.ui.rename.type", new RenameTypeRefactoringInstanceCreator()); 
	}
	
	 static void initializeAfterLoad(IProgressMonitor monitor) {
		TypeInfoHistory.getInstance().checkConsistency(monitor);
	}
	
	
	private static IPreferenceStore getDeprecatedWorkbenchPreferenceStore() {
		return PlatformUI.getWorkbench().getPreferenceStore();