NAME
Kernel::System::DocumentSearch::Filter – Implements a filter backend for document search.
DESCRIPTION
This class implements an abstraction layer for filter modules, that are able to provide form schemata for the frontend, as well as the conversion of filters to be used in Elasticsearch queries.
PUBLIC INTERFACE
has UserID
The UserID
of the authenticated agent.
has Request
Request parameters that include the form data or the applied filters to be converted.
has DocumentTypeBase
Instantiated document search base class.
has AppliedFilters
Contains the filter field names, that are already applied.
has Fields
The instantiated filter field modules, that provide the functions to generate the form schemata or convert applied filters.
FormSchema
Generates and returns the form schema for the frontend. On the initial request, this method returns a filter selection, that results in more detailed schemata, related to the selected filters.
Apply
Converts a set of applied filters to a structure, that can be used in Elasticsearch queries.
PRIVATE INTERFACE
_MetaFields
Returns filter field schemata, that are necessary for every single form of a filter field.