Interface IndexCreator

All Known Implementing Classes:
AbstractIndexCreator, JarFileContentsIndexCreator, MavenArchetypeArtifactInfoIndexCreator, MavenPluginArtifactInfoIndexCreator, MinimalArtifactInfoIndexCreator, OsgiArtifactIndexCreator

public interface IndexCreator
An index creator is responsible for storing and reading data to and from Lucene index.
Author:
Jason van Zyl
See Also:
  • Method Details

    • getId

      String getId()
      Returns IndexCreator ID, that has to be unique across all existing creators.
      Returns:
    • getCreatorDependencies

      List<String> getCreatorDependencies()
      Returns list of IndexCreator IDs that this creator depends on. Needed to perform a topological sort on IndexCreators to guarantee proper ordering of them, as some IndexCreators might rely on informations already extracted by some other IndexCreator.
      Returns:
    • getIndexerFields

      Collection<IndexerField> getIndexerFields()
      Returns the indexer fields that this IndexCreator introduces to index.
      Returns:
    • populateArtifactInfo

      void populateArtifactInfo(ArtifactContext artifactContext) throws IOException
      Populate an ArtifactContext with information about corresponding artifact.
      Throws:
      IOException
    • updateDocument

      void updateDocument(ArtifactInfo artifactInfo, org.apache.lucene.document.Document document)
      Update Lucene Document from a given ArtifactInfo.
    • updateArtifactInfo

      boolean updateArtifactInfo(org.apache.lucene.document.Document document, ArtifactInfo artifactInfo)
      Update an ArtifactInfo from given Lucene Document.
      Returns:
      true is artifact info has been updated