org.olat.search.service.indexer
Interface Indexer

All Known Implementing Classes:
AbstractIndexer, BCCourseNodeIndexer, BlogRepositoryIndexer, ContextHelpIndexer, CourseIndexer, CPCourseNodeIndexer, FeedRepositoryIndexer, FOCourseNodeIndexer, FolderIndexer, ForumIndexer, GlossaryRepositoryIndexer, GroupFolderIndexer, GroupForumIndexer, GroupIndexer, GroupWikiIndexer, IdentityIndexer, ImsCPRepositoryIndexer, MainIndexer, PodcastRepositoryIndexer, ProfileIndexer, ProjectBrokerCourseNodeIndexer, PublicFolderIndexer, RepositoryIndexer, ScormCourseNodeIndexer, ScormRepositoryIndexer, SharedFolderRepositoryIndexer, SPCourseNodeIndexer, TACourseNodeIndexer, WikiCourseNodeIndexer, WikiRepositoryIndexer

public interface Indexer

Common interface for all indexers. Used to go over the whole data-structre during indexing. Used to check access-control for result-list.

Author:
Christian Guretzki

Method Summary
 boolean checkAccess(ContextEntry contextEntry, BusinessControl businessControl, Identity identity, Roles roles)
          Check access for certain business-control (resourceUrl) and user with roles.
 void doIndex(SearchResourceContext searchResourceContext, java.lang.Object parentObject, OlatFullIndexer indexer)
          Do index the part of an indexer.
 java.lang.String getSupportedTypeName()
           
 

Method Detail

doIndex

void doIndex(SearchResourceContext searchResourceContext,
             java.lang.Object parentObject,
             OlatFullIndexer indexer)
             throws java.io.IOException,
                    java.lang.InterruptedException
Do index the part of an indexer.

Parameters:
searchResourceContext - Current search-resource-context is used to build resouceUrl of an index-element.
indexerObject - Index parent object. Each indexer must cast to the known type e.g. BusinessGroup.
indexer - Callback object to add documents to the index.
Throws:
java.io.IOException - Can not write index file.
java.lang.InterruptedException - Indexing is interrupted

checkAccess

boolean checkAccess(ContextEntry contextEntry,
                    BusinessControl businessControl,
                    Identity identity,
                    Roles roles)
Check access for certain business-control (resourceUrl) and user with roles.

Parameters:
contextEntry -
businessControl -
identity -
roles -
Returns:

getSupportedTypeName

java.lang.String getSupportedTypeName()
Returns:
The indexer supports this type name. E.g. ORES_TOOLFOLDER.getResourceableTypeName()