[hibernate-issues] [Hibernate-JIRA] Commented: (HSEARCH-221) Get Lucene Analyzer runtime (indexing)

Hardy Ferentschik (JIRA) noreply at atlassian.com
Fri Nov 21 09:41:16 EST 2008


    [ http://opensource.atlassian.com/projects/hibernate/browse/HSEARCH-221?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=31764#action_31764 ] 

Hardy Ferentschik commented on HSEARCH-221:
-------------------------------------------

Hi, I just would like to revive this thread before implementing a particular solution.
I agree with Emmanuel that the original patch feels too intrusive. On the other hand I am not sure whether the proposed AnalyzerDiscriminator solve the problem in a general case. 
For me the most compelling reason for passing dynamic information into the Analyzer is the multi-language application as discussed in this issue. The proposed AnalyzerDiscriminator solution assumes that the language parameter is part of the the entity to be indexed, but I am wondering if this not too limiting. Maybe the language is given by a user preference or you could imagine an application where the same application is used to serve different countries and the language is determined by the host (myapp.de vs. myapp.se vs. myapp.com) which is used to access the application.

Any thoughts?

> Get Lucene Analyzer runtime (indexing)
> --------------------------------------
>
>                 Key: HSEARCH-221
>                 URL: http://opensource.atlassian.com/projects/hibernate/browse/HSEARCH-221
>             Project: Hibernate Search
>          Issue Type: Improvement
>    Affects Versions: 3.0.1.GA
>            Reporter: Kenneth Christensen
>             Fix For: 3.1.0
>
>         Attachments: AddLuceneWork.java, diff-jms.txt, diff.txt, DocumentBuilder.java, EntityInstanceAnalyzer.java, Flyer.java, Flyer.java, Flyer.java-JMS, hibernate-search-v2.zip, hibernate-search.zip, LuceneWorker.java, TestBean.java
>
>
> I'm writing a multi-language application and I have choose to use Hibernate Search.
> But it looks like Hibernate Search have some limitations in multi-language applications.
> I need to use the SnowballAnalyzer and create the instance at runtime because I only know the language at runtime.
> It really looks like Hibernate Search don't support runtime created analyzers for entity instances.
> I have extended Hibernate Search to support the above issue - maybe you could include the code in Hibernate Search or implement something similarly.
> I really need this feature/improvement :-)
> Please see attached files.
> Flyer - Entity used in test
> TestBean - SessionBean used in test
> org.hibernate.search.backend.impl.lucene.LuceneWorker - Added code to support entity instance analyzer, see performWork(AddLuceneWork work, DirectoryProvider provider) and add(Class entity, Serializable id, Document document, DirectoryProvider provider, Analyzer analyzer).
> org.hibernate.search.backend.AddLuceneWork - Added code to support analyzer.
> org.hibernate.search.engine.DocumentBuilder - Added code to support entity instance analyzer, see addWorkToQueue(Class entityClass, T entity, Serializable id, WorkType workType, List<LuceneWork> queue, SearchFactoryImplementor searchFactoryImplementor).

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://opensource.atlassian.com/projects/hibernate/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        



More information about the hibernate-issues mailing list