X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=case-study%2Fjdt-after%2Fui%2Forg%2Feclipse%2Fjdt%2Finternal%2Fui%2Ftext%2Fjavadoc%2FLegacyJavadocCompletionProposalComputer.java;fp=case-study%2Fjdt-after%2Fui%2Forg%2Feclipse%2Fjdt%2Finternal%2Fui%2Ftext%2Fjavadoc%2FLegacyJavadocCompletionProposalComputer.java;h=6226624ee0288b2dcee03089ab49a9ef2030da42;hb=1b2798f607d741df30e5197f427381cbff326adc;hp=0000000000000000000000000000000000000000;hpb=246231e4bd9b24345490f369747c0549ca308c4d;p=ifi-stolz-refaktor.git diff --git a/case-study/jdt-after/ui/org/eclipse/jdt/internal/ui/text/javadoc/LegacyJavadocCompletionProposalComputer.java b/case-study/jdt-after/ui/org/eclipse/jdt/internal/ui/text/javadoc/LegacyJavadocCompletionProposalComputer.java new file mode 100644 index 00000000..6226624e --- /dev/null +++ b/case-study/jdt-after/ui/org/eclipse/jdt/internal/ui/text/javadoc/LegacyJavadocCompletionProposalComputer.java @@ -0,0 +1,121 @@ +/******************************************************************************* + * Copyright (c) 2000, 2011 IBM Corporation and others. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * IBM Corporation - initial API and implementation + *******************************************************************************/ +package org.eclipse.jdt.internal.ui.text.javadoc; + + +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; + +import org.eclipse.core.runtime.CoreException; +import org.eclipse.core.runtime.IConfigurationElement; +import org.eclipse.core.runtime.IExtensionRegistry; +import org.eclipse.core.runtime.IProgressMonitor; +import org.eclipse.core.runtime.Platform; + +import org.eclipse.jface.text.contentassist.ICompletionProposal; +import org.eclipse.jface.text.contentassist.IContextInformation; + +import org.eclipse.jdt.ui.JavaUI; +import org.eclipse.jdt.ui.text.java.ContentAssistInvocationContext; +import org.eclipse.jdt.ui.text.java.IJavaCompletionProposalComputer; +import org.eclipse.jdt.ui.text.java.IJavadocCompletionProcessor; +import org.eclipse.jdt.ui.text.java.JavaContentAssistInvocationContext; + +import org.eclipse.jdt.internal.ui.JavaPlugin; + +/** + * Java doc completion processor using contributed IJavaDocCompletionProcessor's + * to evaluate proposals. + * + * @since 3.2 + */ +public class LegacyJavadocCompletionProposalComputer implements IJavaCompletionProposalComputer { + + private static final String PROCESSOR_CONTRIBUTION_ID= "javadocCompletionProcessor"; //$NON-NLS-1$ + + private IJavadocCompletionProcessor[] fSubProcessors; + + public String fErrorMessage; + + public LegacyJavadocCompletionProposalComputer() { + fSubProcessors= null; + } + + + public IJavadocCompletionProcessor[] getContributedProcessors() { + if (fSubProcessors == null) { + try { + IExtensionRegistry registry= Platform.getExtensionRegistry(); + IConfigurationElement[] elements= registry.getConfigurationElementsFor(JavaUI.ID_PLUGIN, PROCESSOR_CONTRIBUTION_ID); + IJavadocCompletionProcessor[] result= new IJavadocCompletionProcessor[elements.length]; + for (int i= 0; i < elements.length; i++) { + result[i]= (IJavadocCompletionProcessor) elements[i].createExecutableExtension("class"); //$NON-NLS-1$ + } + fSubProcessors= result; + } catch (CoreException e) { + JavaPlugin.log(e); + fSubProcessors= new IJavadocCompletionProcessor[0]; + } + } + return fSubProcessors; + } + + /* + * @see org.eclipse.jface.text.contentassist.ICompletionProposalComputer#computeContextInformation(org.eclipse.jface.text.contentassist.TextContentAssistInvocationContext, org.eclipse.core.runtime.IProgressMonitor) + */ + public List computeContextInformation(ContentAssistInvocationContext context, IProgressMonitor monitor) { + if (context instanceof JavaContentAssistInvocationContext) { + JavaContentAssistInvocationContext javaContext= (JavaContentAssistInvocationContext) context; + + ArrayList result= javaContext.generated_4287750919896565599(this); + return result; + } + return Collections.emptyList(); + } + + + /* + * @see org.eclipse.jface.text.contentassist.ICompletionProposalComputer#computeCompletionProposals(org.eclipse.jface.text.contentassist.TextContentAssistInvocationContext, org.eclipse.core.runtime.IProgressMonitor) + */ + public List computeCompletionProposals(ContentAssistInvocationContext context, IProgressMonitor monitor) { + if (context instanceof JavadocContentAssistInvocationContext) { + JavadocContentAssistInvocationContext javaContext= (JavadocContentAssistInvocationContext) context; + + ArrayList result= javaContext.generated_8004475765966742722(this); + return result; + } + return Collections.emptyList(); + } + + + /* + * @see org.eclipse.jface.text.contentassist.ICompletionProposalComputer#getErrorMessage() + */ + public String getErrorMessage() { + return fErrorMessage; + } + + + /* + * @see org.eclipse.jdt.ui.text.java.IJavaCompletionProposalComputer#sessionStarted() + */ + public void sessionStarted() { + } + + + /* + * @see org.eclipse.jdt.ui.text.java.IJavaCompletionProposalComputer#sessionEnded() + */ + public void sessionEnded() { + fErrorMessage= null; + } +}