org.apache.felix.ipojo.util

## Interface TrackerCustomizer

All Known Implementing Classes:
  ComponentFactory, HandlerManagerFactory, ServiceReferenceManager, Tracker

    public interface TrackerCustomizer

Tracker Customizer.

Author:
  Felix Project Team

### Method Summary

All Methods Instance Methods Abstract Methods
`void` `addedService(org.osgi.framework.ServiceReference reference)` A service tracked by the Tracker object has been added in the list.
`boolean` `addingService(org.osgi.framework.ServiceReference reference)` A service is being added to the Tracker object.
`void` `modifiedService(org.osgi.framework.ServiceReference reference, java.lang.Object service)` A service tracked by the Tracker object has been modified.
`void` `removedService(org.osgi.framework.ServiceReference reference, java.lang.Object service)` A service tracked by the Tracker object has been removed.

### Method Detail

#### addingService

    boolean addingService(org.osgi.framework.ServiceReference reference)

A service is being added to the Tracker object. This method is called before a service which matched the search parameters of the Tracker object is added to it. This method should return the service object to be tracked for this ServiceReference object. If this method returns `true`, the service object becomes available from the `Tracker.getService()` and `Tracker.getServices()` methods. However notice that the service is still not accessible at that time.

Parameters:
  `reference` - the Reference to service being added to the Tracker object.
Returns:
  `true` if the service reference must be tracked. `false` ff the service reference must be ignored (un-tracked)

#### addedService

    void addedService(org.osgi.framework.ServiceReference reference)

A service tracked by the Tracker object has been added in the list. This method is called when a service has been added in the managed list (after addingService) and if the service has not disappeared before during the callback. In this method, the service object is accessible from the `Tracker.getService()` and `Tracker.getServices()` method.

Parameters:
  `reference` - the added reference.

#### modifiedService

    void modifiedService(org.osgi.framework.ServiceReference reference,
                         java.lang.Object service)

A service tracked by the Tracker object has been modified. This method is called when a service tracked by the Tracker has its properties modified.

Parameters:
  `reference` - the reference to service that has been modified.
  `service` - The service object for the modified service.

#### removedService

    void removedService(org.osgi.framework.ServiceReference reference,
                        java.lang.Object service)

A service tracked by the Tracker object has been removed. This method is called when a tracked service is no longer being tracked by the Tracker object. Notice that some OSGi implementations does not support getting the service object from the bundle context in this method. The cached (given) object must be used.

Parameters:
  `reference` - the reference to service that has been removed.
  `service` - The service object for the removed service.