Interface ExecutorServiceSupplierObserver

All Known Implementing Classes:
ExecutorServiceMetricsObserver

public interface ExecutorServiceSupplierObserver
Behavior for observers of the various executor service suppliers.

This component identifies suppliers to observers using:

  • the supplier itself,
  • the supplier category (scheduled, server, ad-hoc), and
  • the index of this supplier among suppliers in the same category.
Further, executor services furnished by the suppliers are identified to observers using:
  • the executor service itself, and
  • the index of the executor service among those from the same supplier.
The consuming observers can use this identifying information however makes sense for them.
  • Method Details

    • registerSupplier

      ExecutorServiceSupplierObserver.SupplierObserverContext registerSupplier(Supplier<? extends ExecutorService> supplier, int supplierIndex, String supplierCategory)
      Makes a supplier known to the observer and returns a supplier context for the supplier to use for future interactions with the observer.
      Parameters:
      supplier - the executor service supplier registering with the observer
      supplierIndex - unique index across suppliers with the same name
      supplierCategory - supplier category for this supplier
      Returns:
      the SupplierObserverContext for the supplier
    • registerSupplier

      ExecutorServiceSupplierObserver.SupplierObserverContext registerSupplier(Supplier<? extends ExecutorService> supplier, int supplierIndex, String supplierCategory, List<ExecutorServiceSupplierObserver.MethodInvocation> methodInvocations)
      Makes a supplier known to the observer and returns a supplier context for the supplier to use for future interactions with the observer, using the ExecutorServiceSupplierObserver.MethodInvocation abstraction for invoking methods to obtain metric values.
      Parameters:
      supplier - the executor service supplier registering with the observer
      supplierIndex - unique index across suppliers with the same name
      supplierCategory - the category of supplier registering (e.g., scheduled, server, thread-pool)
      methodInvocations - method invocation information for retrieving interesting information from the supplier's executor services
      Returns:
      the SupplierObserverContext for the supplier