public class

QuerySerializer

extends Object
java.lang.Object
   ↳ com.atlassian.confluence.search.v2.QuerySerializer

Class Overview

Note: Query serialization and deserialization does not work for all possible permutations of query parts at the moment. For instance, BooleanQuery will not work. You should not use the QuerySerializer in it's current guise.

Responsible for converting SearchQueries to and from their String form.

Summary

Public Constructors
QuerySerializer(QueryFactory queryFactory)
Construct a new query serializer
Public Methods
static String queryToString(SearchQuery query)
Convert a SearchQuery into a string form that can be transported over the wire, saved, and so on
SearchQuery stringToQuery(String s)
Convert a string-form query back into object form.
Protected Methods
static String escape(String s)
Escape any double-quote in a string with a backslash, and any backslash with a second backslash.
[Expand]
Inherited Methods
From class java.lang.Object

Public Constructors

public QuerySerializer (QueryFactory queryFactory)

Construct a new query serializer

Parameters
queryFactory the factory to convert SearchQuery string keys back into query objects

Public Methods

public static String queryToString (SearchQuery query)

Convert a SearchQuery into a string form that can be transported over the wire, saved, and so on

Parameters
query the query to convert
Returns
  • a string form of that query

public SearchQuery stringToQuery (String s)

Convert a string-form query back into object form. If the string is not a valid query an exception will be thrown. This will always be caused by one of two things: the string was generated incorrectly manually (i.e. not by the serializer), or some SearchQuery plugin that was used during query generation is no longer available.

All clients of the serializer must be able to recover from both of the above circumstances safely.

Parameters
s the string to convert
Returns
  • the SearchQuery that corresponds to the string provided
Throws
InvalidQueryException if the string could not be converted successfully

Protected Methods

protected static String escape (String s)

Escape any double-quote in a string with a backslash, and any backslash with a second backslash.

Parameters
s the string to quote
Returns
  • the escaped string