This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 158177

Summary: Support for manual only refresh
Product: editor Reporter: Jaroslav Tulach <jtulach>
Component: Parsing & IndexingAssignee: Vitezslav Stejskal <vstejskal>
Status: RESOLVED FIXED    
Severity: blocker CC: dbalek, dstrupl, issues, mmirilovic, mslama
Priority: P2 Keywords: PERFORMANCE
Version: 6.x   
Hardware: All   
OS: All   
Issue Type: TASK Exception Reporter:
Bug Depends on:    
Bug Blocks: 158865    

Description Jaroslav Tulach 2009-02-09 08:37:32 UTC
Especially refugees from Eclipse often complain about an unusual NetBeans workflow - e.g. after start and in various 
unexpected moments[1] later, the IDE is blocked by refreshing itself and not ready to assist user with whatever the 
user is doing. To help these people and also to evaluate general suitability of this approach we need two things:
1. an hook to allow code injection[2]
2. a module to inject appropriate code (available on autoupdate).
The whole approach has been discussed deeply at scanning meeting[3]
and seems to be technically achievable. Thus this issue exists almost solely for tracking purposes.


[1] As soon as one switches from external application to NetBeans IDE. As soon as misconfigured project is compiled. 
[2] http://wiki.apidesign.org/wiki/CodeInjection
[3] http://wiki.netbeans.org/ScanningTCMeeting
Comment 1 Vitezslav Stejskal 2009-02-13 08:34:51 UTC
I would very like to change this to a TASK and I hope nobody strongly objects. I understand the requirements voiced in
this issue and I agree that they are worth implementing in order to allow further evaluation of the whole concept of
switching off the automatic scanning/indexing. The current plan (after M2 stabilization is over) is to move the indexing
part of Parsing & Indexing API, which has so far been developed in jet-parsing-api clone, to Nb70 trunk. Alongside with
that we will rewrite java indexing to use the new indexing API. Then if all goes well we should be able to provide a
private hook [1] for your module [2]. But we are in absolutely no position to spend resources on developing the module
or evaluating the main concept.
Comment 2 Vitezslav Stejskal 2009-04-17 14:02:09 UTC
I believe we can move forward and start experimenting with this. You can implement IndexingActivityInterceptor and
provide your implementation in the default Lookup. There is also IndexingManager, which provides methods for reindexing
files/roots. You are going to need an implementation dependency on parsing.api module.
Comment 3 mslama 2009-04-21 14:13:36 UTC
*** Issue 162888 has been marked as a duplicate of this issue. ***
Comment 4 Quality Engineering 2009-04-22 08:39:11 UTC
Integrated into 'main-golden', will be available in build *200904220201* on http://bits.netbeans.org/dev/nightly/ (upload may still be in progress)
Changeset: http://hg.netbeans.org/main-golden/rev/d1d2b300b5ac
User: Pavel Flaska <pflaska@netbeans.org>
Log: #158177: Allow to skip file refreshes when property is set. Used by experimental module contrib/scanondemand.