> * I'm using wt=JSON rather then XML. (It maps to a hash easier)
Heh... I quickly checked out the code, but didn't see where you were parsing 
the code, or where the JSONObject class referenced is.

Anyway, if you want the *best* JSON parser on the planet, check out
http://www.nabble.com/Apache-Lab-proposal%3A-noggit-tf2701405.html#a7532843
http://svn.apache.org/repos/asf/labs/noggit/
:-)
I haven't had a chance to do the writing side, or the "create full object 
graph" part, but the parser is screaming fast.


I'm using a slightly modified version of the json.org code.  It stores
things in a LinkedHashMap (to maintain order) and formats dates
explicitly.

http://svn.lapnap.net/solr/solrj/src/org/apache/solr/util/json/

I just had a quick look at noggit.  It looks interesting.  If I
understand it correctly, noggit is to XPP as the json.org code is to
DOM


> * handles multiple ContentStreams using multi-part form upload
Will a client need to do that?  I had thought a browser would be the only one 
using multi-part


I don't know if it will *need* to do it - but I think the client API
should be as close to the RequestHandler API as possible.  Since (in
SOLR-104) the server side accepts Iterable<ContentStream>, the client
should send Iterable<ContentStream>.  With commons http-client,
sending multi-part data is almost equivolent to sending form data.


> * You can define and automatically build a solr document with annotations
Sounds cool

> * Includes a first draft for a HibernateEventListener.
Sounds *very* cool... it should go in a separate contrib eventually.


Yes, it is a single class - quite small really - but has 8MB of
required .jar files to compile and test it!  When it is more stable
and i have some time, i'll seperate it into two projects.

- - - - -

The big API question/style i'm struggling with is

SolrResponse rsp = client.process( req );
 vs
SolrResponse rsp = req.execute( client );  // execute may not be the right word

The first one is more natural, and is how things are actually
processed.  The second one allows eliminates the need for lots of
casting:

SolrQueryResponse rsp = (SolrQueryResponse)client.process( req );
vs
SolrQueryResponse rsp = queryRequest.execute( client );

Any thoughts?

Reply via email to