@PublicApi public interface

ClauseHandler

com.atlassian.jira.jql.ClauseHandler
Known Indirect Subclasses

@PublicApi

This interface is designed for plugins to consume (call its methods).

Clients of @PublicApi can expect that programs compiled against a given version will remain binary compatible with later versions of the @PublicApi as per each product's API policy as long as the client does not implement/extend @PublicApi interfaces or classes (refer to each product's API policy for the exact guarantee---usually binary compatibility is guaranteed at least across minor versions).

Note: since @PublicApi interfaces and classes are not designed to be implemented or extended by clients, we may perform certain types of binary-incompatible changes to these classes and interfaces, but these will not affect well-behaved clients that do not extend/implement these types (in general, only classes and interfaces annotated with @PublicSpi are safe to extend/implement).

Class Overview

A container for all the objects needed to process a Jql clause.

Summary

Public Methods
ClauseContextFactory getClauseContextFactory()
@ExperimentalSpi @Nonnull DbClauseQueryFactory getDbClauseFactory()
ClauseQueryFactory getFactory()
ClauseInformation getInformation()
ClausePermissionHandler getPermissionHandler()
ClauseValidator getValidator()
@ExperimentalSpi boolean isDbQueryCapable()
This is an interim SPI method until all searching is fully handled by the database.

Public Methods

public ClauseContextFactory getClauseContextFactory ()

Returns
  • a clause context factory that will be able to generate the clause context

@ExperimentalSpi @Nonnull public DbClauseQueryFactory getDbClauseFactory ()

Returns
  • a factory that can create a SQL clause query factory.

public ClauseQueryFactory getFactory ()

Returns
  • a factory that can create a lucene query for the clause.

public ClauseInformation getInformation ()

Returns
  • an object that contains some static naming information (clause names, field id, index id) about the clause handler and its associations.

public ClausePermissionHandler getPermissionHandler ()

Returns
  • a permission handler that will check the users who is executing the queries permission to include the clause.

public ClauseValidator getValidator ()

Returns
  • a validator that will inspect the clause and return any validation errors it encounters.

@ExperimentalSpi public boolean isDbQueryCapable ()

This is an interim SPI method until all searching is fully handled by the database. Implementations of ClauseHandler should implement this and return true when they add support for returning a DBClauseQueryFactory

Returns
  • true if this handler can generate a clause for a database backed search