I'd like to have the ability to search artifacts in an SCA domain. The current domain manager app home page shows a search field + button but that's currently not implemented yet.
I suggest the following, which should be easy to implement:
- use Apache Solr to index all text artifacts in contributions
- implement the search function in a new optional module (to not overload the domain manager, which should remain easily embeddable)
- start with a simple text indexing scheme (don't need to develop a structured Solr schema in a first stage, until we better understand the actual usage patterns)
- when a contribution (JAR or folder) is added to a domain, index the artifacts in it
- when a contribution is requested from the domain manager and we get the opportunity to detect that it contribution has changed (that happens when a node starts and requests artifacts from the domain manager for example), add the new content to the index
- every 5/10 mns, list the contributions in the domain, check if they have changed, and add the new content to the index
- initially no need to handle deletes, as it may actually be a good thing to keep all the history indexed, just keep a copy of the indexed content in the index itself or some form or archive.