com.trackstudio.kernel.manager
Class IndexManager

java.lang.Object
  extended by com.trackstudio.kernel.manager.KernelManager
      extended by com.trackstudio.kernel.manager.IndexManager

public class IndexManager
extends KernelManager

Класс IndexManager содержит методы для работы с индексами Lucene


Nested Class Summary
static class IndexManager.FoundItem
          Вспомогательный класс, используемый для хранения результатов поиска
protected  class IndexManager.Reindexer
           
 
Field Summary
static java.lang.String ATTACHMENTINDEXDIR
           
static org.apache.lucene.search.highlight.SimpleHTMLFormatter formatter
           
protected  boolean indexExists
           
static int LUCENE_FULLTEXT_SEARCH_LIMIT
           
static int LUCENE_MAX_VALUE
           
static int LUCENE_SIMILAR_SEARCH_LIMIT
           
static java.lang.String SCMINDEXDIR
           
static java.lang.String SKIPFLAG
           
static java.lang.String[] SPECIALCHAR
           
static java.lang.String[] SPECIALCHARREPLACE
           
static java.lang.String TASKINDEXDIR
           
static java.lang.String USERINDEXDIR
           
 
Fields inherited from class com.trackstudio.kernel.manager.KernelManager
hu
 
Method Summary
 void addIndexSCMReference(java.util.Map<CommitListItem,java.util.List<java.lang.String>> addCollAll, java.lang.String SCMconnectionName)
          Добавляет новые коммиты в индекс
 java.lang.String checkLuceneCharacter(java.lang.String s)
          Заменяет символы, которые являются "опасными" для хранения в индексе люцена на их безопасные варианты
 void deleteAttachment(java.lang.String attachmentId)
          Удаляет прилоежнный файл из индекса
 void deleteTask(java.lang.String taskId)
          Удаляет задачу из индекса
 void deleteUser(java.lang.String userId)
          Удаляет пользователя из индекса
protected static IndexManager getInstance()
          Возвращает экземпляр текущего класса
 java.util.List<Pair> getPathList(java.lang.String str)
          Возвращает список путей из одного общего (происходит его разделение)
 EggBasket<java.lang.String,java.lang.String> getReferencedTasksForTask(java.lang.String taskId)
          Возвращает список задач, которые ссылаются на указанную задачу
 EggBasket<java.lang.String,java.lang.String> getReferencedTasksForUser(java.lang.String userId)
          Возвращает список задач, которые ссылаются на указанного пользователя
 EggBasket<java.lang.String,java.lang.String> getReferencedUsersForTask(java.lang.String taskId)
          Возвращает список пользователей, которые ссылаются на указанную задачу
 EggBasket<java.lang.String,java.lang.String> getReferencedUsersForUser(java.lang.String userId)
          Возвращает список пользователей, которые ссылаются на указанного пользователя
 java.lang.String getSCMlastCommit(java.lang.String SCMconnectionName)
          Возвращает последний коммит
 java.util.List<CommitListItem> getSCMreferenceByNumber(java.lang.String taskNum, java.lang.String SCMconnectionName)
          Возвращает список коммитов для указанной задачи
 java.util.List<CommitListItem> getSCMReferences(java.lang.String SCMconnectionName)
          Возвращает коммиты для соединения
 void index()
          Метод производит индексацию данных для TS
 void indexAttachment(java.lang.String attachmentId)
          Индексирует указанный прилоежнный файл
 void indexSCM(java.util.Map<CommitListItem,java.util.List<java.lang.String>> commits, java.lang.String SCMconnectionName)
          Индексирует данные SCM
 void indexSCMlastCommit(java.lang.String SCMconnectionName, java.lang.String lastCommit)
          Инлексирует последний коммит
 void indexTask(java.lang.String taskId)
          Индексирует указанную задачу
 void indexUser(java.lang.String userId)
          Индексирует указанного пользователя
 boolean isSCMReferenceExist(java.lang.Object word, java.lang.String connectionName)
          Проверяет существование SCM-ссылки
 void reIndexAttachment(java.lang.String attachmentId)
          Производит переиндексацию прилоежнныхфайлов
 void reIndexTask(java.lang.String taskId)
          Производит переиндексацию задачи
 void reIndexUser(java.lang.String userId)
          Производит переиндексацию пользователя
 java.util.HashMap<java.lang.String,java.lang.Float> search(org.apache.lucene.search.Searcher searcher, org.apache.lucene.analysis.Analyzer analyzer, java.lang.String searchString, java.lang.String id, java.util.HashMap<java.lang.String,java.lang.Float> list, float boost)
          Ищет задачи в индексе
 java.util.HashMap<java.lang.String,IndexManager.FoundItem> searchAttachments(java.lang.String keyword)
          Ищет прилоежнные файлы по ключевому слову
 java.util.HashMap<java.lang.String,IndexManager.FoundItem> searchTasks(java.lang.String keyword)
          Ищет задачи по ключевому слову
 java.util.HashMap<java.lang.String,IndexManager.FoundItem> searchUsers(java.lang.String keyword)
          Ищет пользователей по ключевому слову
 
Methods inherited from class com.trackstudio.kernel.manager.KernelManager
getAcl, getAttachment, getBookmark, getCategory, getFilter, getFind, getIndex, getLicense, getLongText, getMailImport, getMessage, getPlugin, getPrstatus, getRegistration, getReport, getStep, getTask, getTemplate, getTSInfo, getUdf, getUser, getWorkflow
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

TASKINDEXDIR

public static final java.lang.String TASKINDEXDIR
See Also:
Constant Field Values

USERINDEXDIR

public static final java.lang.String USERINDEXDIR
See Also:
Constant Field Values

ATTACHMENTINDEXDIR

public static final java.lang.String ATTACHMENTINDEXDIR
See Also:
Constant Field Values

SCMINDEXDIR

public static final java.lang.String SCMINDEXDIR
See Also:
Constant Field Values

SKIPFLAG

public static final java.lang.String SKIPFLAG
See Also:
Constant Field Values

SPECIALCHAR

public static final java.lang.String[] SPECIALCHAR

SPECIALCHARREPLACE

public static final java.lang.String[] SPECIALCHARREPLACE

LUCENE_MAX_VALUE

public static final int LUCENE_MAX_VALUE
See Also:
Constant Field Values

LUCENE_FULLTEXT_SEARCH_LIMIT

public static final int LUCENE_FULLTEXT_SEARCH_LIMIT
See Also:
Constant Field Values

LUCENE_SIMILAR_SEARCH_LIMIT

public static final int LUCENE_SIMILAR_SEARCH_LIMIT
See Also:
Constant Field Values

formatter

public static org.apache.lucene.search.highlight.SimpleHTMLFormatter formatter

indexExists

protected boolean indexExists
Method Detail

getInstance

protected static IndexManager getInstance()
Возвращает экземпляр текущего класса

Returns:
Экземпляр IndexManager

index

public void index()
           throws GranException
Метод производит индексацию данных для TS

Throws:
GranException - при необходимости

indexSCM

public void indexSCM(java.util.Map<CommitListItem,java.util.List<java.lang.String>> commits,
                     java.lang.String SCMconnectionName)
              throws GranException
Индексирует данные SCM

Parameters:
commits - Индексируемые коммиты
SCMconnectionName - Название индексируемого соединения
Throws:
GranException - при необходимости

searchTasks

public java.util.HashMap<java.lang.String,IndexManager.FoundItem> searchTasks(java.lang.String keyword)
                                                                       throws GranException
Ищет задачи по ключевому слову

Parameters:
keyword - ключевое слово
Returns:
Карта найденных задач
Throws:
GranException - пр инеобходимости
See Also:
IndexManager.FoundItem

searchUsers

public java.util.HashMap<java.lang.String,IndexManager.FoundItem> searchUsers(java.lang.String keyword)
                                                                       throws GranException
Ищет пользователей по ключевому слову

Parameters:
keyword - ключевое слово
Returns:
Карта найденных пользователей
Throws:
GranException - пр инеобходимости
See Also:
IndexManager.FoundItem

searchAttachments

public java.util.HashMap<java.lang.String,IndexManager.FoundItem> searchAttachments(java.lang.String keyword)
                                                                             throws GranException
Ищет прилоежнные файлы по ключевому слову

Parameters:
keyword - ключевое слово
Returns:
Карта найденных прилоежнных файлов
Throws:
GranException - пр инеобходимости
See Also:
IndexManager.FoundItem

reIndexTask

public void reIndexTask(java.lang.String taskId)
                 throws GranException
Производит переиндексацию задачи

Parameters:
taskId - ID задачи, которую переиндексируем
Throws:
GranException - при необходимости

reIndexUser

public void reIndexUser(java.lang.String userId)
                 throws GranException
Производит переиндексацию пользователя

Parameters:
userId - ID пользователя, которого переиндексируем
Throws:
GranException - при необходимости

reIndexAttachment

public void reIndexAttachment(java.lang.String attachmentId)
                       throws GranException
Производит переиндексацию прилоежнныхфайлов

Parameters:
attachmentId - ID прилоежнного файла, который переиндексируем
Throws:
GranException - при необходимости

addIndexSCMReference

public void addIndexSCMReference(java.util.Map<CommitListItem,java.util.List<java.lang.String>> addCollAll,
                                 java.lang.String SCMconnectionName)
                          throws GranException
Добавляет новые коммиты в индекс

Parameters:
addCollAll - Добавляемые коммиты
SCMconnectionName - Название соединения
Throws:
GranException - при необходимости

indexTask

public void indexTask(java.lang.String taskId)
               throws GranException
Индексирует указанную задачу

Parameters:
taskId - ID индексируемой задачи
Throws:
GranException - при необходимости

indexUser

public void indexUser(java.lang.String userId)
               throws GranException
Индексирует указанного пользователя

Parameters:
userId - ID индексируемого пользователя
Throws:
GranException - при необходимости

indexAttachment

public void indexAttachment(java.lang.String attachmentId)
                     throws GranException
Индексирует указанный прилоежнный файл

Parameters:
attachmentId - ID индексируемого фыйла
Throws:
GranException - при необходимости

indexSCMlastCommit

public void indexSCMlastCommit(java.lang.String SCMconnectionName,
                               java.lang.String lastCommit)
                        throws GranException
Инлексирует последний коммит

Parameters:
SCMconnectionName - Название индексируемого соединения
lastCommit - Последний коммит
Throws:
GranException - при необходимости

deleteTask

public void deleteTask(java.lang.String taskId)
                throws GranException
Удаляет задачу из индекса

Parameters:
taskId - ID удаляемой задачи
Throws:
GranException - при необходимости

deleteUser

public void deleteUser(java.lang.String userId)
                throws GranException
Удаляет пользователя из индекса

Parameters:
userId - ID удаляемого пользователя
Throws:
GranException - при необходимости

deleteAttachment

public void deleteAttachment(java.lang.String attachmentId)
                      throws GranException
Удаляет прилоежнный файл из индекса

Parameters:
attachmentId - ID удаляемого файла
Throws:
GranException - пр необхзодимости

isSCMReferenceExist

public boolean isSCMReferenceExist(java.lang.Object word,
                                   java.lang.String connectionName)
                            throws GranException
Проверяет существование SCM-ссылки

Parameters:
word - Слово
connectionName - Название соединения
Returns:
TRUE/FALSE
Throws:
GranException - при необходимости

getSCMlastCommit

public java.lang.String getSCMlastCommit(java.lang.String SCMconnectionName)
                                  throws GranException
Возвращает последний коммит

Parameters:
SCMconnectionName - Навзание соединение, для которого возвращается коммит
Returns:
Последний коммит
Throws:
GranException - при необходмиости

getSCMReferences

public java.util.List<CommitListItem> getSCMReferences(java.lang.String SCMconnectionName)
                                                throws GranException
Возвращает коммиты для соединения

Parameters:
SCMconnectionName - Навзание соединения
Returns:
список коммитов
Throws:
GranException - при необходимости
See Also:
CommitListItem

getPathList

public java.util.List<Pair> getPathList(java.lang.String str)
Возвращает список путей из одного общего (происходит его разделение)

Parameters:
str - Исходная строка
Returns:
список путей
See Also:
Pair

getSCMreferenceByNumber

public java.util.List<CommitListItem> getSCMreferenceByNumber(java.lang.String taskNum,
                                                              java.lang.String SCMconnectionName)
                                                       throws GranException
Возвращает список коммитов для указанной задачи

Parameters:
taskNum - Номер задачи
SCMconnectionName - Название соединения
Returns:
список коммитов
Throws:
GranException - при необходимости
See Also:
CommitListItem

getReferencedTasksForTask

public EggBasket<java.lang.String,java.lang.String> getReferencedTasksForTask(java.lang.String taskId)
                                                                       throws GranException
Возвращает список задач, которые ссылаются на указанную задачу

Parameters:
taskId - ID задачи
Returns:
список задач
Throws:
GranException - при необходимости
See Also:
EggBasket

getReferencedUsersForTask

public EggBasket<java.lang.String,java.lang.String> getReferencedUsersForTask(java.lang.String taskId)
                                                                       throws GranException
Возвращает список пользователей, которые ссылаются на указанную задачу

Parameters:
taskId - ID задачи
Returns:
список задач
Throws:
GranException - при необходимости
See Also:
EggBasket

getReferencedTasksForUser

public EggBasket<java.lang.String,java.lang.String> getReferencedTasksForUser(java.lang.String userId)
                                                                       throws GranException
Возвращает список задач, которые ссылаются на указанного пользователя

Parameters:
userId - ID пользователя
Returns:
список задач
Throws:
GranException - при необходимости
See Also:
EggBasket

getReferencedUsersForUser

public EggBasket<java.lang.String,java.lang.String> getReferencedUsersForUser(java.lang.String userId)
                                                                       throws GranException
Возвращает список пользователей, которые ссылаются на указанного пользователя

Parameters:
userId - ID пользователя
Returns:
список задач
Throws:
GranException - при необходимости
See Also:
EggBasket

checkLuceneCharacter

public java.lang.String checkLuceneCharacter(java.lang.String s)
                                      throws GranException
Заменяет символы, которые являются "опасными" для хранения в индексе люцена на их безопасные варианты

Parameters:
s - Исходная строка
Returns:
"Безопасная" строка
Throws:
GranException - при необходимости

search

public java.util.HashMap<java.lang.String,java.lang.Float> search(org.apache.lucene.search.Searcher searcher,
                                                                  org.apache.lucene.analysis.Analyzer analyzer,
                                                                  java.lang.String searchString,
                                                                  java.lang.String id,
                                                                  java.util.HashMap<java.lang.String,java.lang.Float> list,
                                                                  float boost)
                                                           throws java.lang.Exception
Ищет задачи в индексе

Parameters:
searcher - searcher
analyzer - analyzer
searchString - Искомая строка
id - ID задачи
list - Список результатов
boost - уровень
Returns:
Катра рельзатов поиска
Throws:
java.lang.Exception - при необходимости


Copyright © 2002-2009 TrackStudio, Ltd. All Rights Reserved.