Interface ILcdCSWQueryHandler

All Known Implementing Classes:
ALcdCSWFilterQueryHandler

public interface ILcdCSWQueryHandler
Validates and executes CSW record queries on an underlying metadata repository. Implementations need to construct and execute one or more internal queries based on a CSW query's filter constraint. The handler also needs to take into account the output format, content and sorting of the resulting metadata records.

See ALcdCSWFilterQueryHandler for an abstract implementation restricted to OGC filter.

Since:
2017.0
  • Method Summary

    Modifier and Type
    Method
    Description
    executeQuery(TLcdCSWQuery aQuery, long aMaxRecords, long aStartPosition, TLcdCSWRecordType aOutputFormat, ILcdRequest aRequest)
    Executes the given query and returns its result.
    boolean
    Returns true if the given query is a valid query, meaning that is is syntactically correct and uses the right property and type names.
  • Method Details

    • validateQuery

      boolean validateQuery(TLcdCSWQuery aQuery, ILcdRequest aRequest) throws TLcdCSWServiceException
      Returns true if the given query is a valid query, meaning that is is syntactically correct and uses the right property and type names.
      Parameters:
      aQuery - the query to validate
      aRequest - the request triggering the query
      Returns:
      true if the given query is a valid query, false otherwise.
      Throws:
      TLcdCSWServiceException - can be thrown to provide more meaningful error messages
    • executeQuery

      Object executeQuery(TLcdCSWQuery aQuery, long aMaxRecords, long aStartPosition, TLcdCSWRecordType aOutputFormat, ILcdRequest aRequest) throws TLcdCSWServiceException
      Executes the given query and returns its result.
      Parameters:
      aQuery - A query to execute
      aMaxRecords - the maximum number of records to return
      aStartPosition - The start position to return queries for
      aOutputFormat - the output format for the record
      aRequest - the request triggering the query
      Returns:
      a result set corresponding to the output format and output schema (for example, TLcdCSWSearchResults with Dublin Core or ISO metadata, or an atom feed
      Throws:
      TLcdCSWServiceException - if the query could not be executed