Ticket #351 (closed Defect: fixed)
Transitive service dependencies didn't work
Reported by: | jri | Owned by: | jri |
---|---|---|---|
Priority: | Major | Milestone: | Release 4.1 |
Component: | DeepaMehta Standard Distribution | Version: | 4.0.12 |
Keywords: | Cc: | dgf, Malte | |
Complexity: | 3 | Area: | |
Module: | deepamehta-core |
Description
If e.g. plugin A relies on plugin B's service and plugin B relies on plugin C's service this can happen: B's service arrives prematurely at A while C is not yet arrived at B. When A now uses B a NullPointerException? might occur.
Note: this is already solved on dgf's branch. Merging it should be sufficient.
Change History
comment:2 Changed 12 years ago by Jörg Richter
Core: fix transitive service dependencies (#351).
A plugin resgisters its own service only after all depending services became available.
See ticket 351.
comment:3 Changed 12 years ago by Jörg Richter
Core fix: ALL_PLUGINS_ACTIVE is fired once (#351).
It does not happen anymore that CoreEvent?.ALL_PLUGINS_ACTIVE is fired more than once.
All PluginManager? access is properly synchronized.
See ticket 351.