1   package com.atlassian.user.search.query;
2   
3   import java.util.List;
4   
5   /**
6    * Allows for the boolean conjunction of {@link Query} objects with an AND or OR parameter.
7    *
8    * For example, the results of query1 could be ANDED with query2 on the condition that their equality.
9    */
10  
11  public interface BooleanQuery extends Query
12  {
13      public static final String AND = "&";
14      public static final String OR = "|";
15  
16      /**
17       * It is impossible for isAND() and isOR() to both return true or false.
18       *
19       * @return true if the clause is set to AND the two queries.
20       */
21      boolean isAND();
22  
23      /**
24       * @return true if the clause is set to OR the two queries
25       */
26      boolean isOR();
27  
28      List<Query> getQueries();
29  }