[
https://issues.apache.org/jira/browse/ISIS-383?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Dan Haywood updated ISIS-383:
-----------------------------
Fix Version/s: (was: 3.0.0)
1.16.0
> Integrate Apache Lucene or ElasticSearch (nb: recommend this is an isisaddon
> rather than built-in)
> --------------------------------------------------------------------------------------------------
>
> Key: ISIS-383
> URL: https://issues.apache.org/jira/browse/ISIS-383
> Project: Isis
> Issue Type: New Feature
> Components: Core
> Affects Versions: core-1.1.0
> Reporter: Dan Haywood
> Fix For: 1.16.0
>
> Attachments: isis-lucene.zip
>
>
> Isis is most often used with its JDO integration, a fairly conventional ORM.
> Searching for existing domain objects therefore requires a query to be
> defined. But sometimes users want to just search for any object (like
> searching the web). This ticket is to integrate Isis so that its domain
> objects can be indexed by Lucene and thus provide a generic search capability.
> As of 1.10.0 this could be implemented using a subscriber:
> {code}
> @DomainService(nature=DOMAIN)
> public class LuceneSubscriber extends AbstractSubscriber {
> @Subscribe public void on(ObjectPersistingEvent ev) { ... }
> @Subscribe public void on(ObjectUpdatingEvent ev) { ... }
> @Subscribe public void on(ObjectRemovingEvent ev) { ... }
> }
> {code}
> Then one would also provide some sort of repository to query the Lucene
> datastore:
> {code}
> @DomainService(nature=DOMAIN)
> public class LuceneRepository {
> @Action(semantics=SAFE)
> List<Object> find(String text) { ... }
> }
> {code}
> There is also an attachment to this ticket, based on an earlier spike by
> Maurizio. Note that that was done before the subscribers were available.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)