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.

View | Details | Raw Unified | Return to bug 146852
Collapse All | Expand All

(-)a/projectimport.eclipse.core/src/org/netbeans/modules/projectimport/eclipse/core/ProjectOpenHookImpl.java (-15 / +1 lines)
Lines 40-70 Link Here
40
package org.netbeans.modules.projectimport.eclipse.core;
40
package org.netbeans.modules.projectimport.eclipse.core;
41
41
42
import java.util.concurrent.ExecutionException;
42
import java.util.concurrent.ExecutionException;
43
import java.util.logging.Logger;
44
import org.netbeans.api.project.Project;
45
import org.netbeans.api.project.ui.OpenProjects;
43
import org.netbeans.api.project.ui.OpenProjects;
46
import org.netbeans.spi.project.ui.ProjectOpenedHook;
44
import org.netbeans.spi.project.ui.ProjectOpenedHook;
47
import org.openide.util.Exceptions;
45
import org.openide.util.Exceptions;
48
import org.openide.util.RequestProcessor;
46
import org.openide.util.RequestProcessor;
49
47
50
/**
51
 *
52
 */
53
public class ProjectOpenHookImpl extends ProjectOpenedHook{
48
public class ProjectOpenHookImpl extends ProjectOpenedHook{
54
49
55
    private static final RequestProcessor PROJ_OPEN_HOOK_RESYNCHRONIZER = new RequestProcessor("Eclipse.Resynchronizer"); // NOI18N
50
    private static final RequestProcessor PROJ_OPEN_HOOK_RESYNCHRONIZER = new RequestProcessor("Eclipse.Resynchronizer"); // NOI18N
56
    private static RequestProcessor.Task currentTask;
51
    private static RequestProcessor.Task currentTask;
57
    
52
    
58
    private UpgradableProject upgradable;
53
    public ProjectOpenHookImpl() {}
59
    private Project project;
60
    
61
    private static final Logger LOG =
62
            Logger.getLogger(ProjectOpenHookImpl.class.getName());
63
    
64
    public ProjectOpenHookImpl(Project project, UpgradableProject upgradable) {
65
        this.upgradable = upgradable;
66
        this.project = project;
67
    }
68
    
54
    
69
    @Override
55
    @Override
70
    protected synchronized void projectOpened() {
56
    protected synchronized void projectOpened() {
(-)a/projectimport.eclipse.core/src/org/netbeans/modules/projectimport/eclipse/core/spi/UpgradableProjectLookupProvider.java (-4 / +15 lines)
Lines 40-61 Link Here
40
package org.netbeans.modules.projectimport.eclipse.core.spi;
40
package org.netbeans.modules.projectimport.eclipse.core.spi;
41
41
42
import org.netbeans.api.project.Project;
42
import org.netbeans.api.project.Project;
43
import org.netbeans.api.project.ProjectUtils;
43
import org.netbeans.modules.projectimport.eclipse.core.ProjectOpenHookImpl;
44
import org.netbeans.modules.projectimport.eclipse.core.ProjectOpenHookImpl;
44
import org.netbeans.modules.projectimport.eclipse.core.UpgradableProject;
45
import org.netbeans.modules.projectimport.eclipse.core.UpgradableProject;
45
import org.netbeans.spi.project.LookupProvider;
46
import org.netbeans.spi.project.LookupProvider;
46
import org.openide.util.Lookup;
47
import org.openide.util.Lookup;
47
import org.openide.util.lookup.Lookups;
48
import org.openide.util.lookup.Lookups;
48
49
49
// registered separately in j2se and web modules, but could use @LookupProvider.Registration
50
// registered separately in j2se and web modules, otherwise could use @LookupProvider.Registration
50
final public class UpgradableProjectLookupProvider implements LookupProvider {
51
final public class UpgradableProjectLookupProvider implements LookupProvider {
51
52
52
    public Lookup createAdditionalLookup(Lookup baseContext) {
53
    public Lookup createAdditionalLookup(Lookup baseContext) {
53
        Project p = baseContext.lookup(Project.class);
54
        Project p = baseContext.lookup(Project.class);
54
        assert p != null;
55
        assert p != null;
55
        UpgradableProject up = new UpgradableProject(p);
56
        if (ProjectUtils.getPreferences(p, UpgradableProjectLookupProvider.class, true).
57
                get("project", null) == null) { // NOI18N
58
            // Shortcut, the normal case:
59
            return Lookup.EMPTY;
60
        } else {
61
            // Keep as separate method to try to delay class initialization:
62
            return upgradeLookup(p);
63
        }
64
    }
65
66
    private static Lookup upgradeLookup(Project p) {
56
        return Lookups.fixed(
67
        return Lookups.fixed(
57
            up,
68
            new UpgradableProject(p),
58
            new ProjectOpenHookImpl(p, up));
69
            new ProjectOpenHookImpl());
59
    }
70
    }
60
71
61
}
72
}

Return to bug 146852