ServiceFindHook

struct cppmicroservices::ServiceFindHook

Service Find Hook Service.

Bundles registering this service will be called during service find (get service references) operations.

Remark
Implementations of this interface are required to be thread-safe.

Public Functions

virtual ~ServiceFindHook()
virtual void Find(const BundleContext &context, const std::string &name, const std::string &filter, ShrinkableVector<ServiceReferenceBase> &references) = 0

Find hook method.

This method is called during the service find operation (for example, BundleContext::GetServiceReferences<S>()). This method can filter the result of the find operation.

Parameters
  • context: The bundle context of the bundle performing the find operation.
  • name: The class name of the services to find or an empty string to find all services.
  • filter: The filter criteria of the services to find or an empty string for no filter criteria.
  • references: A list of Service References to be returned as a result of the find operation. The implementation of this method may remove service references from the list to prevent the references from being returned to the bundle performing the find operation.