Robert Varga created KARAF-5107:
-----------------------------------

             Summary: Allow hooking into the feature installation process
                 Key: KARAF-5107
                 URL: https://issues.apache.org/jira/browse/KARAF-5107
             Project: Karaf
          Issue Type: New Feature
          Components: karaf-feature
    Affects Versions: 4.1.1
            Reporter: Robert Varga


Feature service should expose a way to hook into the feature:install process, 
so components living inside container can understand when a bulk bundle 
operation starts, ends and reaches a major milestone.

This ability is needed to optimize OpenDaylight startup/shutdown procedures, as 
exemplified by https://bugs.opendaylight.org/show_bug.cgi?id=7925 and 
https://bugs.opendaylight.org/show_bug.cgi?id=7927. In these cases we are 
scanning deployed bundles  for well-known file locations as the bundles get 
resolved. These files are then used to compile the effective model of the 
run-time world (which is an expensive operation).

Since there is no way to understand that an install transaction is going on, 
the model is invalidated whenever a bundle is resolved and or stopped, leading 
to multiple compilations (and oftentime failures, as all requirements are not 
yet met) during a single feature:install invocation or framework shutdown.

This requires having callbacks invoked from Deployer.deploy() for:
1) just before any bundle operations are performed
2) once all bundles have been resolved, but not started
3) once the operation completes and before the next bundle movement starts
 



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to