Hello Andrej,

On 4/10/2013 2:36 PM, Andrej Golcov wrote:
> Hi everyone,
> 
> We are implementing a free-text search plugin as a part
> of  Apache™ Bloodhound. The approach we use is based on AdvancedSearch
> [1] and uses similar approach as TracAdvancedSearchPlugin [2]
> and FullTextSearchPlugin [3] plugins. In short: listening for
> ITicketChangeListener events and updating nonDb free-text-search index.

Interesting indeed.

> However,  there is a problem common for such plugins - renaming of a
> ticket related entity such as Version, Component Type, Severity etc. is
> not covered by the event and the plugin cannot reflect this change in
> its nonDb free-text-search index. 
> 
> As a part of Apache™ Bloodhound Trac fork, we added a
> new IResourceChangeListener interface, which is common for all
> resources (see full code in attached patch).  The main idea of
> the IResourceChangeListener interface is that it is similar to existing
> I*ChangeListener interfaces (existing interfaces are working as before),
> it is common for all resources (resource is sent as parameter) and that
> there is no need to introduce interfaces such as IVersionChangeListener,
> IComponentChangeListener etc. Listener may specificy resource types for
> which it has to be notified via method get_subscribed_resources. What do
> you think about such approach?

Yes, it's nice. The "context" however in the IResourceChangeListener can
be confused with a RenderingContext which is often passed as "context"
as well. Maybe changecontext? or changeinfo?

> 
> The IResourceChangeListener implementation was tested
> in Apache™ Bloodhound for a couple of months and it looks like it is
> stable enough and covers, at least, our requirements. I think that
> support of the IResourceChangeListener interface in Trac can be useful
> for Trac community and would like to suggest this patch for Trac. Please
> find the attached patch rebased against the Trac trunk.
> Is the Trac community interested in applying something
> like IResourceChangeListener into the Trac codebase?

Very much, thanks for thinking about contributing this one back.
You should open a ticket with that patch (against 1.1.2), so that we can
follow the progress of the integration, and discuss this further if
needed (discussion here on trac-dev is welcome as well).

-- Christian

-- 
You received this message because you are subscribed to the Google Groups "Trac 
Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/trac-dev?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to