@Internal public class MultiClauseDecoratorContextFactory extends Object implements ClauseContextFactory
ClauseContextFactory
to ensure that:
context(k in (a, b, c)) <=> context(k = a or k = b or k = c) context(k not in (a, b, c)) <=> context(k != a and k != b and k != c)
It does this by intercepting calls to getClauseContext(com.atlassian.jira.user.ApplicationUser, com.atlassian.query.clause.TerminalClause)
with a terminal clause that contains the Operator.IN
or Operator.NOT_IN
operator and converts it into equivalent multiple calls to the delegate factory.
Modifier and Type | Class and Description |
---|---|
static class |
MultiClauseDecoratorContextFactory.Factory
Factory to create a
MultiClauseDecoratorContextFactory given a
ClauseContextFactory to wrap. |
Constructor and Description |
---|
MultiClauseDecoratorContextFactory(JqlOperandResolver jqlOperandResolver,
ClauseContextFactory delegate) |
MultiClauseDecoratorContextFactory(JqlOperandResolver jqlOperandResolver,
ClauseContextFactory delegate,
ContextSetUtil contextSetUtil) |
Modifier and Type | Method and Description |
---|---|
ClauseContext |
getClauseContext(ApplicationUser searcher,
TerminalClause terminalClause)
Generates a clause context for the associated handler.
|
public MultiClauseDecoratorContextFactory(JqlOperandResolver jqlOperandResolver, ClauseContextFactory delegate)
public MultiClauseDecoratorContextFactory(JqlOperandResolver jqlOperandResolver, ClauseContextFactory delegate, ContextSetUtil contextSetUtil)
public final ClauseContext getClauseContext(ApplicationUser searcher, TerminalClause terminalClause)
ClauseContextFactory
getClauseContext
in interface ClauseContextFactory
searcher
- the user who is performing the searchterminalClause
- the clause for which this factory is generating a context.Copyright © 2002-2024 Atlassian. All Rights Reserved.