I am making a .NET desktop application (WinForms+Local PostgreSQL Server) for managing sales in a small store.
I wish to integrate Lucene search facilities into the ‘Product Search’ module of my software. Are there any good patterns for integrating such Information Retrieval Libraries into existing applications?
Note : The application is still in development and I can always modify the architecture to integrate Lucene.
Note : I know how to use Lucene and have created a simple demo app to test it’s capabilities. I am only looking for patterns that integrate such search functionality into Desktop Applications.
Note : Also the main requirement of the integration is to enable the user to quickly search for products/brands/etc and provide a google autocomplete’esque system in the UI.
The main question that comes around is how you manage your index. It’s up to you whether you update it periodically or realtime – and this comes down to performance – how much stuff you’re putting in there and how often.
As for “patterns” – hmm, add the library, make calls to create and update your index, and then write the UI to search it 🙂