Inject classes in a component instance field.
 The following injections are currently performed, depending on the type of the
 field this annotation is applied on:
 
 - BundleContext: the bundle context of the bundle
 
- DependencyManager: the dependency manager instance
 
- Component: the component instance of the dependency manager
 
 
Usage Examples
 
 
 
 @Component
 class X implements Z {
     @Inject
     BundleContext bundleContext;
   
     @Inject
     Component component;
     
     @Inject
     DependencyManager manager;
   
     OtherService otherService;
   
     @Init
     void init() {
         System.out.println("Bundle Context: " + bundleContext);
         System.out.println("Manager: " + manager);
         
         // Use DM API for defining an extra service dependency
         componnent.add(manager.createServiceDependency()
                               .setService(OtherService.class)
                               .setRequired(true)
                               .setInstanceBound(true));
     }
     
     @Start
     void start() {
         System.out.println("OtherService: " + otherService);
     }
 }