public interface

ShareQueryFactory

com.atlassian.jira.sharing.type.ShareQueryFactory<S extends com.atlassian.jira.sharing.search.ShareTypeSearchParameter>
Known Indirect Subclasses

Class Overview

Create the indexed field and then query terms to find entities that have permissions related to a particular ShareType.

Summary

Public Methods
Field getField(SharedEntity entity, SharePermission permission)
Get the Field we will later search for.
Query getQuery(ShareTypeSearchParameter parameter)
Get the search query for all shares shares that match the passed parameter.
Query getQuery(ShareTypeSearchParameter parameter, ApplicationUser user)
Get the search query for the shares that can be seen by the passed user for the passed parameter.
Term[] getTerms(ApplicationUser user)
Get the search terms for the shares that can be seen by the passed user.

Public Methods

public Field getField (SharedEntity entity, SharePermission permission)

Get the Field we will later search for.

Returns
  • the field so we can add it to the index

public Query getQuery (ShareTypeSearchParameter parameter)

Get the search query for all shares shares that match the passed parameter. Used by the system to match all entities that match the parameter, for instance when deleting Group, Project or Role.

Parameters
parameter the parameters for the search.
Returns
  • an array of Terms. It may be empty but never null.

public Query getQuery (ShareTypeSearchParameter parameter, ApplicationUser user)

Get the search query for the shares that can be seen by the passed user for the passed parameter. Used when the user has specified something to search for.

Parameters
parameter the parameters for the search.
user the user to perform the search on behalf of.
Returns
  • an array of Terms. It may be empty but never null.

public Term[] getTerms (ApplicationUser user)

Get the search terms for the shares that can be seen by the passed user.

Parameters
user the user to perform the search on behalf of.
Returns
  • an array of Terms. It may be empty but never null.