Hello!
I'm developing custom field. I need to get all saved values for that field.
It could be direct SQL request or using some service - it doesn't matter.
Is there is some possibility?
Thanks in advance.
I found, that LabelManager do it via
getSearchProvider().search( new SearchRequest().getQuery(), user, new PrefixFieldableHitCollector(issueIndexManager.getIssueSearcher(), field, token, suggestions), filterQuery );
But when I'm trying to do the same, I got empty result :(
My custom field is based on TextCFType and uses com.atlassian.jira.issue.customfields.searchers.TextSearcher. Jira allows to search via this field and return correct results. But when I'm trying to do it programmatically - it doesn't.
I tryed to use com.atlassian.query.Query as first parameter to search function but it also failed.
Here's code that I'm currently debugging:
Set<String> getSuggestions(final User user, final String field, final String query){ suggestions = new TreeSet<String>(); final Query filterQuery = new PrefixQuery(new Term(field, query)); final JqlQueryBuilder jqlQueryBuilder = JqlQueryBuilder.newBuilder(); jqlQueryBuilder.where().customField(10000L).like(query); try { getSearchProvider().search( jqlQueryBuilder.buildQuery(), user, new PrefixFieldableHitCollector( issueIndexManager.getIssueSearcher(), field, query, suggestions ), null ); } catch (SearchException e) { throw new RuntimeException(e); } return suggestions; }
Any help is appreciated.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.