Bug 137213 - Make 'org.eclipse.emf.validation' plugin dynamic-aware
Summary: Make 'org.eclipse.emf.validation' plugin dynamic-aware
Status: VERIFIED FIXED
Alias: None
Product: EMF Services
Classification: Modeling
Component: Validation (show other bugs)
Version: unspecified   Edit
Hardware: PC Windows XP
: P2 enhancement
Target Milestone: ---   Edit
Assignee: Christian Damus CLA
QA Contact:
URL:
Whiteboard: Broader Community
Keywords: plan
Depends on:
Blocks:
 
Reported: 2006-04-18 10:08 EDT by Radomil Dvorak CLA
Modified: 2017-02-24 15:09 EST (History)
2 users (show)

See Also:


Attachments
Handle additions to constraintProviders and constraintBindings extpoints (18.02 KB, patch)
2008-06-20 13:16 EDT, Artem Tikhomirov CLA
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Radomil Dvorak CLA 2006-04-18 10:08:03 EDT
Currently, all constraintProviders, constraintBindings, etc. contributions are kept in a static registry, once initialized.

This can cause problems, for instance in GMF project unit-tests which generate source code of plugins with emf.validation extensions that need to be verified. Any generated plugin loaded after the emf.validation bundle start(BundleContext context) method is called, does not get registered with the validation framework.

A great improvement would be if emf.validation plugin makes use of extension addition/removal tracking mechanism provided by the platform and supports dynamic-awareness (http://wiki.eclipse.org/index.php/FAQ_What_is_a_dynamic_plug-in%3F).
Comment 1 Vishy Ramaswamy CLA 2006-05-31 10:13:10 EDT
This will be part of the 2.0 work. Cannot contain for 1.0
Comment 2 Christian Damus CLA 2006-11-17 16:55:21 EST
Est.: 1w
Comment 3 Christian Damus CLA 2006-12-19 09:57:03 EST
Committers can't contain this enhancement in their schedule; looking for help.
Comment 4 Christian Damus CLA 2007-05-10 10:31:20 EDT
Postponing to the 1.2 release for consideration in the planning process.
Comment 5 Artem Tikhomirov CLA 2008-06-20 13:16:56 EDT
Created attachment 105519 [details]
Handle additions to constraintProviders and constraintBindings extpoints

Rough solution. Handles addition only, as its quite tricky to implement removals without deep understanding of all the internals. Nevertheless, might be reasonable to have even without removals as it still helps scenarios with new bundles being installed.
Comment 6 Christian Damus CLA 2008-06-21 08:35:46 EDT
Thanks, Artem, for the contribution!  I agree that handling additions, at least, is valuable, but I should be able to process removals, too.  I would also want to extend this pattern to the other extension points (e.g., language providers, traversals).
Comment 7 Christian Damus CLA 2008-10-05 18:22:12 EDT
Committed handling of extension additions for all EMF Validation Framework extension points.  Processing removals would require considerable changes to some basic assumptions in the framework, and isn't a very interesting case from a user perspective.  The P2 and Update Manager UIs both make it very difficult to remove plug-ins, and the warning dialog suggesting to re-start is strongly worded.

If somebody is using dynamically-generated bundles in their application, and not simply concerned with software install, then I will need help.
Comment 8 Christian Damus CLA 2008-11-03 11:39:00 EST
Fix available in HEAD: 1.3.0.I200811021725.
Comment 9 Christian Damus CLA 2008-11-24 13:13:37 EST
Restore original target after milestones were deranged.