/
Pre-Query Plugin

Pre-Query Plugin

Usage

Pre-Query plugins are invoked before a query operation is sent to any of the Sources.  This is an opportunity to take any action on the query, including but not limited to:

  • validation
  • logging
  • auditing
  • optimization
  • security filtering

Failure Behavior

In the event that this Catalog Plugin cannot operate but does not wish to fail the transaction, a PluginExecutionException will be thrown.  For any other Exceptions, the Catalog will "fail safe" and the Operation will be cancelled.  If processing is to be explicitly stopped, a StopProcessingException will be thrown.

Invocation

Pre-Query plugins are invoked serially, prioritized by descending OSGi service ranking.  That is, the plugin with the highest service ranking will be executed first. 

The output of a Pre-Query plugin is sent to the next Pre-Query plugin, until all have executed and the query operation is sent to the requested Source.