Lucene search with Confluence.
This shot provides a short hint on how to use labels in aAdding labels to a Confluence search using SearchQueryParameters seems straightforward:
final SearchQueryParameters searchQueryParams =
new SearchQueryParameters(queryString);
searchQueryParams.setLabels(
Collections.singleton("mylabel"));
Unfortunately this search does not match documents labelled with mylabel
.
After some searching the solution adding the labels manually to the Lucene search works:
String queryStringWithLabel =
"labelText:\"mylabel\" AND (" + queryString + ')';
final SearchQueryParameters searchQueryParams =
new SearchQueryParameters(queryStringWithLabel);
But what I should have done instead is adding the "global" prefix to my label like this:
final SearchQueryParameters searchQueryParams =
new SearchQueryParameters(queryString);
searchQueryParams.setLabels(
Collections.singleton("global:mylabel");
Conclusion
The API's intended solution is not always obvious at first sight. Often the API documentation could give hint. But if it doesn't it is just a couple of working hours away ... Hope this post will reduce the working time for you!
:-)