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 78605 - Wizard framework cannot use Progress API
Summary: Wizard framework cannot use Progress API
Status: RESOLVED FIXED
Alias: None
Product: platform
Classification: Unclassified
Component: Progress (show other bugs)
Version: 5.x
Hardware: All All
: P2 blocker (vote)
Assignee: Milos Kleint
URL:
Keywords: API, API_REVIEW_FAST
Depends on: 34699
Blocks: 58889
  Show dependency tree
 
Reported: 2006-06-20 15:37 UTC by Jiri Rechtacek
Modified: 2008-12-22 16:45 UTC (History)
3 users (show)

See Also:
Issue Type: DEFECT
Exception Reporter:


Attachments
progress api split changes (170.01 KB, patch)
2006-07-24 14:07 UTC, Milos Kleint
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Jiri Rechtacek 2006-06-20 15:37:14 UTC
Wizard framework (an part of Dialogs and Wizards API module) cannot declare
dependency of Progress API because circular depencency. It's blocks issue 58889
(Enhance wizard framework to display progress indication on Finish). I guess it
needs to slip Progress API module to API and implementation module.
Comment 1 Milos Kleint 2006-06-22 09:21:04 UTC
as discussed offline: 
progress depends on org.openide.dialogs and org.openide.windows.
we should use reflection in either wizards or progress to get rid of circular
dependencies.
splitting the progress APIs and impl would mean an incompatible change for the
API users. (as it's users need to declare required token next to the module
dependency.)
Comment 2 Jesse Glick 2006-07-15 14:35:51 UTC
+1 for splitting API from impl. Have API find impl in lookup and include a
trivial implementation if none is found, which would e.g. do nothing or just use
logging to notify progress. Re. compatibility for progress API users, not a big
problem. Even as things stand you can use ModuleAutoDeps. But with issue #34699
you would be able to e.g.

---%<--- core/progress/api/manifest.mf
+OpenIDE-Module-Recommends: org.netbeans.modules.progress.spi.ProgressImpl
---%<---

which would have no impact on users.
Comment 3 Jesse Glick 2006-07-15 14:36:31 UTC
Properly marking deps.
Comment 4 Milos Kleint 2006-07-24 14:06:19 UTC
done the split of progress api and ui. Api now depends on openide/util only.
progress ui has implementation dependency on progress api and progress api uses
the OpenIDE-Modules-Needs token.

increased the version number and updated the apichanges document.

diff attached.
Comment 5 Milos Kleint 2006-07-24 14:07:14 UTC
Created attachment 32144 [details]
progress api split changes
Comment 6 Milos Kleint 2006-07-24 14:18:04 UTC
please review, diff attached.
Comment 7 Jesse Glick 2006-07-26 10:40:30 UTC
BTW please: echo 'diff -u' >> ~/.cvsrc


No need to cast after calling Lookup.gD().lookup(PUIWP.class).


Class name org.netbeans.progress.spi.ProgressUIWorkerProvider does not match
token org.netbeans.spi.progress.ProgressUIWorkerProvider. Which is it?


Delete layer if empty.
Comment 8 Milos Kleint 2006-07-26 10:53:41 UTC
the token should be based on the class. yarda made me change the package name,
but the token got lost on the way.
Comment 9 Milos Kleint 2006-07-28 12:28:16 UTC
thanks for feedback, about to integrate
Comment 10 Milos Kleint 2006-07-28 12:35:42 UTC
integrated in trunk.