>
> Both are alternative yard providers if I understand correctly. You can
> either run solr using an external server or use the solr classes
> inside the stanbol JVM.
>
In principle correct. However the SolrProvider is no Yard
implementation. There is only a singe SolrYard implementation that
requires a org.apache.solr.client.solrj.SolrServer instance. The
SolrProvider is just responsible of providing this SolrServer
instance.
>
> So we could have entityhub/yard/providers with solr and embeddedsolr
> as subfolders instead. But I would rather have them all grouped
> together in the same OSGi bundle unless Rupert has a technical reason
> to avoid this.

The embeddedSolrServer requires all the Solr and Lucene dependencies
but Users that do not use an embedded Solr server do not need all this
stuff (~3MB jar's).

I would have preferred to keep all the stuff needed to use remote
SolrServer within the SolrYard bundle and only move the
EmbeddedSolrServer stuff to an own bundle, but that was not possible
because of an cyclic build dependency (The unit tests of the SolrYard
use an EmbeddedSolrServer and the EmbeddedSolrServer does implement
the SolrProvider interface and would therefore has an dependency to
the SolrYard bundle).

So in my opinion there are only two possibilities:
 (1) creating three bundles (SolrYard, SolrProvider (interface
definition and implementaion for remote SolrServer) and
EmbeddedSolrProvider)
 (2) move everything into the SolrYard bundle (and add the ~3MB Solr
and Lucene dependencies to it).

best
Rupert


-- 
| Rupert Westenthaler                            [email protected]
| Bodenlehenstraße 11                             ++43-699-11108907
| A-5500 Bischofshofen

Reply via email to