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 103106 - Force to call first the ProjectOpenedHook specified in project type
Summary: Force to call first the ProjectOpenedHook specified in project type
Status: RESOLVED FIXED
Alias: None
Product: projects
Classification: Unclassified
Component: Generic Infrastructure (show other bugs)
Version: 6.x
Hardware: All All
: P3 blocker (vote)
Assignee: Milos Kleint
URL:
Keywords: API, API_REVIEW_FAST
Depends on: 104492
Blocks:
  Show dependency tree
 
Reported: 2007-05-02 10:39 UTC by Milan Kuchtiak
Modified: 2007-05-23 22:12 UTC (History)
0 users

See Also:
Issue Type: DEFECT
Exception Reporter:


Attachments
api change (6.43 KB, patch)
2007-05-03 13:05 UTC, Milos Kleint
Details | Diff
complete change upgrading all basic project types. (20.56 KB, patch)
2007-05-03 13:07 UTC, Milos Kleint
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Milan Kuchtiak 2007-05-02 10:39:38 UTC
Currently there is no guarantee that ProjectOpenedHook:projectOpen specified in
particular project type is called before ProjectOpenedHook specified in another
modules.
Comment 1 Milos Kleint 2007-05-03 13:05:10 UTC
Created attachment 42094 [details]
api change
Comment 2 Milos Kleint 2007-05-03 13:07:18 UTC
Created attachment 42095 [details]
complete change upgrading all basic project types.
Comment 3 Milos Kleint 2007-05-03 13:13:57 UTC
please review this api change:

in order to force the projectOpenedHook from the project type to be always the
first one to be notified, I introduced a new LookupMerger implementation, that
is available through the UILookupMergerSupport factory method. It takes the
primary ProjectOpenedHook as parameter and masks all other instances added from
3rd party LookupProviders, enforcing the primary one to be called first. 

The diff includes changes to all major project types. Project types not using
the new feature will still get all hooks called but in undefined order (as of now)

Comment 4 Milos Kleint 2007-05-09 13:47:30 UTC
thanks for the review, I will commit tomorrow.
Comment 5 Milos Kleint 2007-05-10 08:57:32 UTC
integrated in trunk.


IDE:-------------------------------------------------
IDE: [5/10/07 9:56 AM] Committing started
Checking in j2ee/ejbjarproject/nbproject/project.xml;
/cvs/j2ee/ejbjarproject/nbproject/project.xml,v  <--  project.xml
new revision: 1.40; previous revision: 1.39
done
Checking in j2ee/clientproject/nbproject/project.xml;
/cvs/j2ee/clientproject/nbproject/project.xml,v  <--  project.xml
new revision: 1.12; previous revision: 1.11
done
Checking in
apisupport/project/src/org/netbeans/modules/apisupport/project/NbModuleProject.java;
/cvs/apisupport/project/src/org/netbeans/modules/apisupport/project/NbModuleProject.java,v
 <--  NbModuleProject.java
new revision: 1.154; previous revision: 1.153
done
Checking in java/j2seproject/nbproject/project.xml;
/cvs/java/j2seproject/nbproject/project.xml,v  <--  project.xml
new revision: 1.51; previous revision: 1.50
done
Checking in
j2ee/archiveproject/src/org/netbeans/modules/j2ee/archive/project/ArchiveProject.java;
/cvs/j2ee/archiveproject/src/org/netbeans/modules/j2ee/archive/project/ArchiveProject.java,v
 <--  ArchiveProject.java
new revision: 1.4; previous revision: 1.3
done
Checking in
apisupport/project/src/org/netbeans/modules/apisupport/project/suite/SuiteProject.java;
/cvs/apisupport/project/src/org/netbeans/modules/apisupport/project/suite/SuiteProject.java,v
 <--  SuiteProject.java
new revision: 1.36; previous revision: 1.35
done
Checking in j2ee/archiveproject/nbproject/project.xml;
/cvs/j2ee/archiveproject/nbproject/project.xml,v  <--  project.xml
new revision: 1.6; previous revision: 1.5
done
Checking in web/project/nbproject/project.xml;
/cvs/web/project/nbproject/project.xml,v  <--  project.xml
new revision: 1.64; previous revision: 1.63
done
Checking in
java/j2seproject/src/org/netbeans/modules/java/j2seproject/J2SEProject.java;
/cvs/java/j2seproject/src/org/netbeans/modules/java/j2seproject/J2SEProject.java,v
 <--  J2SEProject.java
new revision: 1.90; previous revision: 1.89
done
Checking in web/project/src/org/netbeans/modules/web/project/WebProject.java;
/cvs/web/project/src/org/netbeans/modules/web/project/WebProject.java,v  <-- 
WebProject.java
new revision: 1.119; previous revision: 1.118
done
Checking in j2ee/earproject/nbproject/project.xml;
/cvs/j2ee/earproject/nbproject/project.xml,v  <--  project.xml
new revision: 1.28; previous revision: 1.27
done
Checking in
j2ee/earproject/src/org/netbeans/modules/j2ee/earproject/EarProject.java;
/cvs/j2ee/earproject/src/org/netbeans/modules/j2ee/earproject/EarProject.java,v
 <--  EarProject.java
new revision: 1.32; previous revision: 1.31
done
Checking in projects/projectuiapi/nbproject/project.properties;
/cvs/projects/projectuiapi/nbproject/project.properties,v  <--  project.properties
new revision: 1.32; previous revision: 1.31
done
Checking in apisupport/project/nbproject/project.xml;
/cvs/apisupport/project/nbproject/project.xml,v  <--  project.xml
new revision: 1.53; previous revision: 1.52
done
Checking in projects/projectuiapi/apichanges.xml;
/cvs/projects/projectuiapi/apichanges.xml,v  <--  apichanges.xml
new revision: 1.32; previous revision: 1.31
done
Checking in
j2ee/ejbjarproject/src/org/netbeans/modules/j2ee/ejbjarproject/EjbJarProject.java;
/cvs/j2ee/ejbjarproject/src/org/netbeans/modules/j2ee/ejbjarproject/EjbJarProject.java,v
 <--  EjbJarProject.java
new revision: 1.67; previous revision: 1.66
done
Checking in
projects/projectuiapi/src/org/netbeans/spi/project/ui/support/UILookupMergerSupport.java;
/cvs/projects/projectuiapi/src/org/netbeans/spi/project/ui/support/UILookupMergerSupport.java,v
 <--  UILookupMergerSupport.java
new revision: 1.3; previous revision: 1.2
done
Checking in
j2ee/clientproject/src/org/netbeans/modules/j2ee/clientproject/AppClientProject.java;
/cvs/j2ee/clientproject/src/org/netbeans/modules/j2ee/clientproject/AppClientProject.java,v
 <--  AppClientProject.java
new revision: 1.8; previous revision: 1.7
done
IDE: [5/10/07 9:57 AM] Committing finished