Bug 6050 Avoid references to preference pages
Preference pages are optional. It should be possible to add and remove them from the code without further impact on the system. I.e. preference pages should not be used as accessors to preference settings. (See JavaCompletionProcessor)
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/java/JavaCompletionProcessor.java
fExperimentalCollector.reset(viewer, offset, unit.getJavaProject(), unit);
					Point selection= viewer.getSelectedRange();
					if (selection.y > 0)
						fExperimentalCollector.setReplacementLength(selection.y);
					
					unit.codeComplete(offset, fExperimentalCollector);
				}
			} catch (JavaModelException x) {
				Shell shell= viewer.getTextWidget().getShell();
				ErrorDialog.openError(shell, JavaTextMessages.getString("CompletionProcessor.error.accessing.title"), JavaTextMessages.getString("CompletionProcessor.error.accessing.message"), x.getStatus()); 
			}				
			results= fExperimentalCollector.getResults();
		} else {
			try {
				if (unit != null) {
	
					fCollector.reset(offset, unit.getJavaProject(), unit);
					Point selection= viewer.getSelectedRange();
					if (selection.y > 0)
						fCollector.setReplacementLength(selection.y);
					
					unit.codeComplete(offset, fCollector);
				}
			} catch (JavaModelException x) {
				Shell shell= viewer.getTextWidget().getShell();
				ErrorDialog.openError(shell, JavaTextMessages.getString("CompletionProcessor.error.accessing.title"), JavaTextMessages.getString("CompletionProcessor.error.accessing.message"), x.getStatus()); 
			}
			
			results= fCollector.getResults();
		}