Class BindingTracker<T>

java.lang.Object
org.osgi.util.tracker.ServiceTracker<T,ServiceBinding<T>>
org.eclipse.sisu.osgi.BindingTracker<T>
All Implemented Interfaces:
org.osgi.util.tracker.ServiceTrackerCustomizer<T,ServiceBinding<T>>

final class BindingTracker<T> extends org.osgi.util.tracker.ServiceTracker<T,ServiceBinding<T>>
Tracker of ServiceBindings from the OSGi service registry.
  • Field Details

    • subscribers

      private final Collection<BindingSubscriber<T>> subscribers
    • clazzName

      private final String clazzName
    • maxRank

      private final int maxRank
    • isOpen

      private boolean isOpen
  • Constructor Details

    • BindingTracker

      BindingTracker(org.osgi.framework.BundleContext context, int maxRank, String clazzName)
  • Method Details

    • subscribe

      public void subscribe(BindingSubscriber<T> subscriber)
    • unsubscribe

      public void unsubscribe(BindingSubscriber<T> subscriber)
    • addingService

      public ServiceBinding<T> addingService(org.osgi.framework.ServiceReference<T> reference)
      Specified by:
      addingService in interface org.osgi.util.tracker.ServiceTrackerCustomizer<T,ServiceBinding<T>>
      Overrides:
      addingService in class org.osgi.util.tracker.ServiceTracker<T,ServiceBinding<T>>
    • removedService

      public void removedService(org.osgi.framework.ServiceReference<T> reference, ServiceBinding<T> binding)
      Specified by:
      removedService in interface org.osgi.util.tracker.ServiceTrackerCustomizer<T,ServiceBinding<T>>
      Overrides:
      removedService in class org.osgi.util.tracker.ServiceTracker<T,ServiceBinding<T>>
    • openIfNecessary

      private void openIfNecessary()
    • closeIfNecessary

      private void closeIfNecessary()