|Constructor and Description|
|Modifier and Type||Method and Description|
This method allows an indexer the opportunity to modify the provided Lucene document (by reference) such that it will contain fields that are relevant for searching and storage of the portion of the issue that the FieldIndexer handles.
This method is used to determine if the indexer is relevant for the provided issue.
compareTo, equals, hashCode, indexDateField, indexDependentEntities, indexFoldedKeyword, indexKeyword, indexKeywords, indexKeywordWithDefault, indexKeywordWithDefault, indexLocalDateField, indexLongAsKeyword, indexLongAsPaddedKeywordWithDefault, indexLongAsPaddedKeywordWithDefault, indexText, indexTextForSorting
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
public SecurityIndexer(FieldVisibilityManager fieldVisibilityManager)
public String getId()
public String getDocumentFieldId()
Documentas a result of a successful call to the
FieldIndexer.addIndex(Document, Issue, CustomFieldPrefetchedData)method.
public boolean isFieldVisibleAndInScope(Issue issue)
All these checks should take into account the
IssueContext as defined by
the passed in issue.
If this method returns false then the FieldIndexer, when performing addIndex, should make sure to make the
indexed values have an Indexed type of
The result of this method is used to determine the correct values that should be returned when performing an empty search.
public void addIndex(org.apache.lucene.document.Document doc, Issue issue)
FieldIndexer.isFieldVisibleAndInScope(com.atlassian.jira.issue.Issue) returns false then
this method should create fields that have an Indexed type of
This allows us to store the value in the index but renders its value unsearchable.
If, for example, the indexer handles indexing an issues summary then this indexer will add a field to the document that represents the stored and searchable summary of the issue.
Note that trying to index very large (i.e. larger than ~32 kB) fields as StringFields or DocValues will result in them being removed to prevent the indexing operation from crashing. This is a limitation of how Lucene stores terms and DocValues.
doc- the lucene document that should be modified by adding relevant fields to.
issue- the issue that contains the data that will be indexed and which can be used to determine the project/issue type context that will allow you to determine if we should add the value as searchable or unsearchable.
Copyright © 2002-2022 Atlassian. All Rights Reserved.