Skip to content

Architect Load Order #11

@hhenrichsen

Description

@hhenrichsen

I think this is the load order I want to follow, but we should figure this out so that it works well.

  1. OSGi detects a new/updated module
  2. Load the module's information
  3. Download any required modules (if available)
  4. Download any dependencies
  • If this fails, stop loading.
  1. Notify the module that it's been started and register any modules, managers, etc.

Some things to consider:

  • How we want module overwriting to work, since that's a feature that I'd like to have if possible.
  • Detecting cycles in dependency graphs and refusing to load them.
  • Creating a dependency graph and not loading modules if their dependents aren't available (basically, fail gracefully by removing features until we get into a workable state, then let the user know)

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions