Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 464849

Summary: LLTE in CallCompletionSessionProcessor.process (202)
Product: z_Archived Reporter: EPP Error Reports <error-reports-inbox>
Component: RecommendersAssignee: Andreas Sewe <sewe>
Status: CLOSED FIXED QA Contact:
Severity: normal    
Priority: P2 CC: marcel.bruch, sewe
Version: unspecified   
Target Milestone: ---   
Hardware: All   
OS: All   
See Also: https://git.eclipse.org/r/#/c/46711/
Whiteboard:
Bug Depends on: 466909    
Bug Blocks:    

Description EPP Error Reports CLA 2015-04-17 04:07:26 EDT
The following incident was reported via the automated error reporting:

The user provided the following details for this incident:
package com.example.ecl;

import java.util.ArrayList;
import java.util.List;

import org.eclipse.jface.dialogs.Dialog;
import org.eclipse.swt.SWT;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.Text;

public class MyDialog extends Dialog {

	private Text text;

	protected MyDialog(Shell parentShell) {
		super(parentShell);
	}

	@Override
	protected Control createDialogArea(Composite parent) {
		text = new Text(parent, SWT.NONE);
		text.setLayoutData(parent);
		List<String> l = new ArrayList<>();
		l.add(|<content assist here>
		
		return super.createDialogArea(parent);
	}

}


Andreas, can you have a loo?


    code:                   2
    plugin:                 org.eclipse.recommenders.calls.rcp_2.1.14.v20150414-1341
    message:                Proposal matching failed for [METHOD_REF]{completion:getDefaultImages(), declSign:Lorg.eclipse.jface.window.Window;, sign:()Lorg.eclipse.swt.graphics.Image;, declKey:, key:, name:getDefaultImages, replace:[613,613], token:[0,0], relevance:1}.
    fingerprint:            6cea99db
    exception class:        org.eclipse.recommenders.utils.Logs$LogTraceException
    exception message:      -
    number of children:     0
    
    org.eclipse.recommenders.utils.Logs$LogTraceException: null
    at org.eclipse.recommenders.utils.Logs$LogTraceException.newTrace(Logs.java:377)
    at org.eclipse.recommenders.utils.Logs.log(Logs.java:130)
    at org.eclipse.recommenders.internal.calls.rcp.CallCompletionSessionProcessor.process(CallCompletionSessionProcessor.java:202)
    at org.eclipse.recommenders.completion.rcp.processable.IntelligentCompletionProposalComputer.fireProcessProposal(IntelligentCompletionProposalComputer.java:253)
    at org.eclipse.recommenders.completion.rcp.processable.IntelligentCompletionProposalComputer.computeCompletionProposals(IntelligentCompletionProposalComputer.java:148)
    at org.eclipse.jdt.internal.ui.text.java.CompletionProposalComputerDescriptor.computeCompletionProposals(CompletionProposalComputerDescriptor.java:333)
    at org.eclipse.jdt.internal.ui.text.java.CompletionProposalCategory.computeCompletionProposals(CompletionProposalCategory.java:337)
    at org.eclipse.jdt.internal.ui.text.java.ContentAssistProcessor.collectProposals(ContentAssistProcessor.java:322)
    at org.eclipse.jdt.internal.ui.text.java.ContentAssistProcessor.computeCompletionProposals(ContentAssistProcessor.java:279)
    at org.eclipse.jface.text.contentassist.ContentAssistant$5.run(ContentAssistant.java:1904)
    at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
    at org.eclipse.jface.text.contentassist.ContentAssistant.computeCompletionProposals(ContentAssistant.java:1902)
    at org.eclipse.jface.text.contentassist.CompletionProposalPopup.computeProposals(CompletionProposalPopup.java:573)
    at org.eclipse.jface.text.contentassist.CompletionProposalPopup.access$16(CompletionProposalPopup.java:570)
    at org.eclipse.jface.text.contentassist.CompletionProposalPopup$2.run(CompletionProposalPopup.java:505)
    at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
    at org.eclipse.jface.text.contentassist.CompletionProposalPopup.showProposals(CompletionProposalPopup.java:499)
    at org.eclipse.jface.text.contentassist.ContentAssistant.showPossibleCompletions(ContentAssistant.java:1720)
    at org.eclipse.jdt.internal.ui.javaeditor.CompilationUnitEditor$AdaptedSourceViewer.doOperation(CompilationUnitEditor.java:180)
    at org.eclipse.ui.texteditor.ContentAssistAction$1.run(ContentAssistAction.java:82)
    at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
    at org.eclipse.ui.texteditor.ContentAssistAction.run(ContentAssistAction.java:80)
    at org.eclipse.jface.action.Action.runWithEvent(Action.java:473)
    at org.eclipse.jface.commands.ActionHandler.execute(ActionHandler.java:122)
    at org.eclipse.ui.internal.handlers.E4HandlerProxy.execute(E4HandlerProxy.java:90)
    at sun.reflect.GeneratedMethodAccessor65.invoke(null:-1)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:497)
    at org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:56)
    at org.eclipse.e4.core.internal.di.InjectorImpl.invokeUsingClass(InjectorImpl.java:252)
    at org.eclipse.e4.core.internal.di.InjectorImpl.invoke(InjectorImpl.java:234)
    at org.eclipse.e4.core.contexts.ContextInjectionFactory.invoke(ContextInjectionFactory.java:132)
    at org.eclipse.e4.core.commands.internal.HandlerServiceHandler.execute(HandlerServiceHandler.java:152)
    at org.eclipse.core.commands.Command.executeWithChecks(Command.java:493)
    at org.eclipse.core.commands.ParameterizedCommand.executeWithChecks(ParameterizedCommand.java:486)
    at org.eclipse.e4.core.commands.internal.HandlerServiceImpl.executeHandler(HandlerServiceImpl.java:210)
    at org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher.executeCommand(KeyBindingDispatcher.java:286)
    at org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher.press(KeyBindingDispatcher.java:507)
    at org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher.processKeyEvent(KeyBindingDispatcher.java:558)
    at org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher.filterKeySequenceBindings(KeyBindingDispatcher.java:378)
    at org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher.access$0(KeyBindingDispatcher.java:324)
    at org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher$KeyDownFilter.handleEvent(KeyBindingDispatcher.java:86)
    at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
    at org.eclipse.swt.widgets.Display.filterEvent(Display.java:1098)
    at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4198)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1467)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1490)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1475)
    at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1504)
    at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1500)
    at org.eclipse.swt.widgets.Canvas.sendKeyEvent(Canvas.java:496)
    at org.eclipse.swt.widgets.Control.doCommandBySelector(Control.java:1060)
    at org.eclipse.swt.widgets.Display.windowProc(Display.java:5757)
    at org.eclipse.swt.internal.cocoa.OS.objc_msgSend(OS.java:-2)
    at org.eclipse.swt.internal.cocoa.NSResponder.interpretKeyEvents(NSResponder.java:68)
    at org.eclipse.swt.widgets.Composite.keyDown(Composite.java:594)
    at org.eclipse.swt.widgets.Display.windowProc(Display.java:5667)
    at org.eclipse.swt.internal.cocoa.OS.objc_msgSendSuper(OS.java:-2)
    at org.eclipse.swt.widgets.Widget.callSuper(Widget.java:221)
    at org.eclipse.swt.widgets.Widget.windowSendEvent(Widget.java:2105)
    at org.eclipse.swt.widgets.Shell.windowSendEvent(Shell.java:2337)
    at org.eclipse.swt.widgets.Display.windowProc(Display.java:5729)
    at org.eclipse.swt.internal.cocoa.OS.objc_msgSendSuper(OS.java:-2)
    at org.eclipse.swt.widgets.Display.applicationSendEvent(Display.java:5166)
    at org.eclipse.swt.widgets.Display.applicationProc(Display.java:5315)
    at org.eclipse.swt.internal.cocoa.OS.objc_msgSend(OS.java:-2)
    at org.eclipse.swt.internal.cocoa.NSApplication.sendEvent(NSApplication.java:128)
    at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3669)
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$4.run(PartRenderingEngine.java:1124)
    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:337)
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1015)
    at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:156)
    at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:654)
    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:337)
    at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:598)
    at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
    at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:139)
    at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:380)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:235)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(NativeMethodAccessorImpl.java:-2)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:497)
    at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:648)
    at org.eclipse.equinox.launcher.Main.basicRun(Main.java:603)
    at org.eclipse.equinox.launcher.Main.run(Main.java:1465)
   
  

General Information:

    reported-by:      Marcel Bruch (Nightly 20.04)
    anonymous-id:     f8087d7b-9d38-4c73-aeb1-6991603c2a84
    eclipse-build-id: 4.5.0.N20150416-2000
    eclipse-product:  org.eclipse.sdk.ide
    operating system: MacOSX 10.10.3 (x86_64) - cocoa
    jre-version:      1.8.0_40-b25

The following plug-ins were present on the execution stack (*):
    1. org.eclipse.core.commands_3.6.100.N20150416-2000
    2. org.eclipse.core.databinding.observable_1.4.1.N20150416-2000
    3. org.eclipse.core.databinding_1.4.100.N20150416-2000
    4. org.eclipse.core.runtime_3.11.0.N20150416-2000
    5. org.eclipse.e4.core.commands_0.10.2.N20150416-2000
    6. org.eclipse.e4.core.contexts_1.3.100.N20150416-2000
    7. org.eclipse.e4.core.di_1.4.0.N20150416-2000
    8. org.eclipse.e4.ui.bindings_0.10.200.N20150416-2000
    9. org.eclipse.e4.ui.workbench_1.3.0.N20150416-2000
    10. org.eclipse.e4.ui.workbench.swt_0.12.100.N20150416-2000
    11. org.eclipse.equinox.app_1.3.200.N20150416-2000
    12. org.eclipse.equinox.launcher_1.3.0.N20150416-2000
    13. org.eclipse.jdt.ui_3.11.0.N20150416-2000
    14. org.eclipse.jdt_3.11.0.N20150416-2000
    15. org.eclipse.jface_3.11.0.N20150416-2000
    16. org.eclipse.jface.text_3.10.0.N20150416-2000
    17. org.eclipse.recommenders.calls.rcp_2.1.14.v20150414-1341
    18. org.eclipse.recommenders.calls_2.1.14.v20150324-1605
    19. org.eclipse.recommenders.completion.rcp_2.1.14.v20150415-1112
    20. org.eclipse.recommenders.utils_2.1.14.v20150410-1423
    21. org.eclipse.swt_3.104.0.N20150416-2000
    22. org.eclipse.ui_3.107.0.N20150416-2000
    23. org.eclipse.ui.ide.application_1.0.600.N20150416-2000
    24. org.eclipse.ui.ide_3.11.0.N20150416-2000

Please note that:
* Messages, stacktraces, and nested status objects may be shortened.
* Bug fields like status, resolution, and whiteboard are sent
  back to reporters.
* The list of present bundles and their respective versions was
  calculated by package naming heuristics. This may or may not reflect reality.

Other Resources:
* Report: https://dev.eclipse.org/recommenders/committers/confess/#/problems/5530bf0de4b026254ee051e3  
* Manual: https://dev.eclipse.org/recommenders/community/confess/#/guide


Thank you for your assistance.
Your friendly error-reports-inbox.
Comment 1 Andreas Sewe CLA 2015-04-17 10:48:59 EDT
(In reply to Recommenders Error Reports from comment #0)
> The following incident was reported via the automated error reporting:
> 
> The user provided the following details for this incident:
> package com.example.ecl;
> 
> import java.util.ArrayList;
> import java.util.List;
> 
> import org.eclipse.jface.dialogs.Dialog;
> import org.eclipse.swt.SWT;
> import org.eclipse.swt.widgets.Composite;
> import org.eclipse.swt.widgets.Control;
> import org.eclipse.swt.widgets.Shell;
> import org.eclipse.swt.widgets.Text;
> 
> public class MyDialog extends Dialog {
> 
> 	private Text text;
> 
> 	protected MyDialog(Shell parentShell) {
> 		super(parentShell);
> 	}
> 
> 	@Override
> 	protected Control createDialogArea(Composite parent) {
> 		text = new Text(parent, SWT.NONE);
> 		text.setLayoutData(parent);
> 		List<String> l = new ArrayList<>();
> 		l.add(|<content assist here>
> 		
> 		return super.createDialogArea(parent);
> 	}
> 
> }
> 
> Andreas, can you have a loo?

I am afraid I cannot reproduce that, even when using exactly the same SDK nightly [1].

If I trigger Content Assist at the indicated position, I only get two proposals: add(String) and add(int, String) + 4 template proposals.

JDT doesn't even try to propose the static Window.getDefaultImages() method which we couldn't match. And triggering at a different position, i.e., outside the parameter list, shows Window.getDefaultImages() just fine.

I fear we need to fire up the remote debugger, so please don't throw away this test class.

[1] <http://download.eclipse.org/eclipse/downloads/drops4/N20150416-2000/>
Comment 2 Marcel Bruch CLA 2015-04-19 05:44:27 EDT
*** Bug 461391 has been marked as a duplicate of this bug. ***
Comment 3 Marcel Bruch CLA 2015-04-19 05:44:34 EDT
*** Bug 460879 has been marked as a duplicate of this bug. ***
Comment 4 Marcel Bruch CLA 2015-04-19 05:44:43 EDT
*** Bug 460874 has been marked as a duplicate of this bug. ***
Comment 5 Marcel Bruch CLA 2015-04-19 05:44:50 EDT
*** Bug 460878 has been marked as a duplicate of this bug. ***
Comment 6 Marcel Bruch CLA 2015-04-19 05:44:57 EDT
*** Bug 461196 has been marked as a duplicate of this bug. ***
Comment 7 Marcel Bruch CLA 2015-04-19 05:47:11 EDT
Andreas, can you please reserve some time on improving the proposal matching this week? Although not critical it would be great if we could get rid of these error log entries before M7.
Comment 8 Marcel Bruch CLA 2015-04-28 10:08:29 EDT
------
STATUS
------
pluginId            org.eclipse.recommenders.calls.rcp
pluginVersion       2.1.14.v20150423-0635
code                2
severity            4
message             Proposal matching failed for [METHOD_REF]{completion:valueOf(), declSign:Lorg.eclipse.recommenders.apidocs.rcp.ApidocProvider$Status;, sign:(Ljava.lang.String;)Lorg.eclipse.recommenders.apidocs.rcp.ApidocProvider$Status;, declKey:, key:, name:valueOf, replace:[6931,6931], token:[6931,6931], relevance:27}.
fingerprint         d6cc61a5

Exception:org.eclipse.recommenders.utils.Logs$LogTraceException: null
	 at org.eclipse.recommenders.utils.Logs$LogTraceException.newTrace(Logs.java:377)
	 at org.eclipse.recommenders.utils.Logs.log(Logs.java:130)
	 at org.eclipse.recommenders.internal.calls.rcp.CallCompletionSessionProcessor.process(CallCompletionSessionProcessor.java:202)
	 at org.eclipse.recommenders.completion.rcp.processable.IntelligentCompletionProposalComputer.fireProcessProposal(IntelligentCompletionProposalComputer.java:253)
	 at org.eclipse.recommenders.completion.rcp.processable.IntelligentCompletionProposalComputer.computeCompletionProposals(IntelligentCompletionProposalComputer.java:145)
	 at org.eclipse.jdt.internal.ui.text.java.CompletionProposalComputerDescriptor.computeCompletionProposals(CompletionProposalComputerDescriptor.java:333)
	 at org.eclipse.jdt.internal.ui.text.java.CompletionProposalCategory.computeCompletionProposals(CompletionProposalCategory.java:337)
	 at org.eclipse.jdt.internal.ui.text.java.ContentAssistProcessor.collectProposals(ContentAssistProcessor.java:322)
	 at org.eclipse.jdt.internal.ui.text.java.ContentAssistProcessor.computeCompletionProposals(ContentAssistProcessor.java:279)
	 at org.eclipse.jface.text.contentassist.ContentAssistant$5.run(ContentAssistant.java:1904)
	 at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
	 at org.eclipse.jface.text.contentassist.ContentAssistant.computeCompletionProposals(ContentAssistant.java:1902)
	 at org.eclipse.jface.text.contentassist.CompletionProposalPopup.computeProposals(CompletionProposalPopup.java:573)
	 at org.eclipse.jface.text.contentassist.CompletionProposalPopup.access$16(CompletionProposalPopup.java:570)
	 at org.eclipse.jface.text.contentassist.CompletionProposalPopup$2.run(CompletionProposalPopup.java:505)
	 at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
	 at org.eclipse.jface.text.contentassist.CompletionProposalPopup.showProposals(CompletionProposalPopup.java:499)
	 at org.eclipse.jface.text.contentassist.ContentAssistant$2.run(ContentAssistant.java:384)
	 at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
	 at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:136)
	 at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:3997)
	 at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3674)
	 at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$4.run(PartRenderingEngine.java:1112)
	 at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:337)
	 at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:993)
	 at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:156)
	 at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:654)
	 at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:337)
	 at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:598)
	 at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
	 at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:138)
	 at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
	 at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
	 at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
	 at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:380)
	 at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:235)
	 at sun.reflect.NativeMethodAccessorImpl.invoke0(NativeMethodAccessorImpl.java:-2)
	 at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	 at java.lang.reflect.Method.invoke(Method.java:497)
	 at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:648)
	 at org.eclipse.equinox.launcher.Main.basicRun(Main.java:603)
	 at org.eclipse.equinox.launcher.Main.run(Main.java:1465)

------
REPORT
------
anonymousId         f8087d7b-9d38-4c73-aeb1-6991603c2a84
name                Marcel Bruch (M6, Recommenders)
email               marcel.bruch@codetrails.com
comment             
eclipseBuildId      4.5.0.I20150320-0800
eclipseProduct      org.eclipse.epp.package.committers.product
javaRuntimeVersion  1.8.0_40-b25
osgiWs              cocoa
osgiOs              MacOSX
osgiOsVersion       10.10.3
osgiArch            x86_64
logMessage          false
ignoreSimilar       false

-------
BUNDLES
-------
name                org.eclipse.core.databinding.observable
version             1.4.1.v20150311-0218

name                org.eclipse.core.databinding
version             1.4.100.v20150311-0216

name                org.eclipse.core.runtime
version             3.11.0.v20150316-1241

name                org.eclipse.e4.ui.workbench
version             1.3.0.v20150316-1403

name                org.eclipse.e4.ui.workbench.swt
version             0.12.100.v20150316-1403

name                org.eclipse.equinox.app
version             1.3.200.v20130910-1609

name                org.eclipse.equinox.launcher
version             1.3.0.v20140415-2008

name                org.eclipse.jdt.ui
version             3.11.0.v20150316-2042

name                org.eclipse.jdt
version             3.11.0.v20150320-0800

name                org.eclipse.jface.text
version             3.10.0.v20150112-1146

name                org.eclipse.jface
version             3.11.0.v20150313-1544

name                org.eclipse.recommenders.calls.rcp
version             2.1.14.v20150423-0635

name                org.eclipse.recommenders.calls
version             2.1.14.v20150420-1439

name                org.eclipse.recommenders.completion.rcp
version             2.1.14.v20150421-1501

name                org.eclipse.recommenders.utils
version             2.1.14.v20150420-1648

name                org.eclipse.swt
version             3.104.0.v20150319-1901

name                org.eclipse.ui
version             3.107.0.v20150315-0703

name                org.eclipse.ui.ide.application
version             1.0.600.v20150315-1254

name                org.eclipse.ui.ide
version             3.11.0.v20150309-2044
Comment 9 Marcel Bruch CLA 2015-04-28 14:55:00 EDT
Added a workaround for handling completions on unresolved CompletionOnQualifiedNameReference (we do not support this anyways so, I don't see any problem with this).
Comment 10 Marcel Bruch CLA 2015-04-28 15:03:11 EDT
For later reference: A location in code I was able to reproduce it below. Note that Status is a Enum declared as inner class in ApidocProvider and not imported yet. Thus, the completionOnQualifiedNameReference has a ProblemBinding.

JDT completion could handle that to some extent (it proposes methods of the right type) but this is done through a different logic. Our code would need a more thoughtful implementation - which may not make much sense at the moment because we will not work in these situations anyways.

Requesting a review and merge before M7 for further real live testing.

---



package org.eclipse.recommenders.apidocs.rcp;

import org.eclipse.swt.graphics.Image;

public class ApidocProviderDescription {

    private final String name;
    private final Image image;

    public ApidocProviderDescription(String name, Image image) {
        this.name = name;
        this.image = image;
    }

    public String getName() {
    	Status.|<trigger here>
        return name;
    }

    public Image getImage() {
        return image;
    }
}
Comment 11 Marcel Bruch CLA 2015-04-29 06:04:48 EDT
Workaround for CompletionOnQualifiedNameReference on not yet imported types  + test case have been merged. Keeping this bug open for other issues we may find.
Comment 12 Marcel Bruch CLA 2015-05-27 09:16:55 EDT
Tested on a few more examples and wasn't able to reproduce with the current version. Closing now. Reopen if the problem pops up again in later versions.