Replaced the publisher/unpublisher Service attributes by a new LifecycelControler annotation, which can apply to any kind of Services
(service, adapters, or aspect).
A Service can now take control of its component activation/deactivation like this:

@AspectService(ranking=10)
public class MyServiceImpl implements MyService {
       @LifecycleController
       Runnable m_componentActivator;

       @LifecycleController(start=false)
       Runnable m_componentDeactivator;

       void activateMyComponentWheneverIWant() {
          m_componentActivator.run();
       }

       void deactivateMyComponentWheneverIWant() {
       	 m_componentDeactivator.run();
       }
}


git-svn-id: https://svn.apache.org/repos/asf/felix/trunk@987871 13f79535-47bb-0310-9956-ffa450edef68
25 files changed