Class ServiceTracker.Tracked

java.lang.Object
ServiceTracker<S,T,U>.org.apache.felix.scr.impl.manager.ServiceTracker.AbstractTracked<org.osgi.framework.ServiceReference<S>,T,U>
org.apache.felix.scr.impl.manager.ServiceTracker.Tracked
All Implemented Interfaces:
ExtendedServiceListener<U>
Enclosing class:
ServiceTracker<S,T,U extends org.osgi.framework.ServiceEvent>

private class ServiceTracker.Tracked extends ServiceTracker<S,T,U>.AbstractTracked<org.osgi.framework.ServiceReference<S>,T,U> implements ExtendedServiceListener<U>
Inner class which subclasses AbstractTracked. This class is the ServiceListener object for the tracker.
  • Constructor Details

    • Tracked

      Tracked(AtomicInteger trackingCount)
      Tracked constructor.
      Parameters:
      trackingCount -
  • Method Details

    • serviceChanged

      public final void serviceChanged(U event)
      ServiceListener method for the ServiceTracker class. This method must NOT be synchronized to avoid deadlock potential.
      Specified by:
      serviceChanged in interface ExtendedServiceListener<U extends org.osgi.framework.ServiceEvent>
      Parameters:
      event - ServiceEvent object from the framework.
    • modified

      final int modified()
      Increment the tracking count and tell the tracker there was a modification.
      Overrides:
      modified in class ServiceTracker<S,T,U extends org.osgi.framework.ServiceEvent>.AbstractTracked<org.osgi.framework.ServiceReference<S>,T,U extends org.osgi.framework.ServiceEvent>
    • customizerAdding

      final T customizerAdding(org.osgi.framework.ServiceReference<S> item, U related)
      Call the specific customizer adding method. This method must not be called while synchronized on this object.
      Specified by:
      customizerAdding in class ServiceTracker<S,T,U extends org.osgi.framework.ServiceEvent>.AbstractTracked<org.osgi.framework.ServiceReference<S>,T,U extends org.osgi.framework.ServiceEvent>
      Parameters:
      item - Item to be tracked.
      related - Action related object.
      Returns:
      Customized object for the tracked item or null if the item is not to be tracked.
    • customizerAdded

      final void customizerAdded(org.osgi.framework.ServiceReference<S> item, U related, T object, int trackingCount, int serviceCount)
      Specified by:
      customizerAdded in class ServiceTracker<S,T,U extends org.osgi.framework.ServiceEvent>.AbstractTracked<org.osgi.framework.ServiceReference<S>,T,U extends org.osgi.framework.ServiceEvent>
    • customizerModified

      final void customizerModified(org.osgi.framework.ServiceReference<S> item, U related, T object, int trackingCount)
      Call the specific customizer modified method. This method must not be called while synchronized on this object.
      Specified by:
      customizerModified in class ServiceTracker<S,T,U extends org.osgi.framework.ServiceEvent>.AbstractTracked<org.osgi.framework.ServiceReference<S>,T,U extends org.osgi.framework.ServiceEvent>
      Parameters:
      item - Tracked item.
      related - Action related object.
      object - Customized object for the tracked item.
      trackingCount -
    • customizerRemoved

      final void customizerRemoved(org.osgi.framework.ServiceReference<S> item, U related, T object, int trackingCount)
      Call the specific customizer removed method. This method must not be called while synchronized on this object.
      Specified by:
      customizerRemoved in class ServiceTracker<S,T,U extends org.osgi.framework.ServiceEvent>.AbstractTracked<org.osgi.framework.ServiceReference<S>,T,U extends org.osgi.framework.ServiceEvent>
      Parameters:
      item - Tracked item.
      related - Action related object.
      object - Customized object for the tracked item.
      trackingCount -