> Subject: Re: [SolrJ Clients] RequestWriter VS BinaryRequestWriter > To: [email protected] > From: [email protected] > Date: Thu, 5 Nov 2015 08:41:16 -0700 > > On 11/5/2015 4:30 AM, Alessandro Benedetti wrote: > > Hi guys, > > I was taking a look to the implementation details to understand how > > Solr requests are written by SolrJ APIs. > > The interesting classes are : > > > > /org.apache.solr.client.solrj.request.RequestWriter/ > > > > /org.apache.solr.client.solrj.impl.BinaryRequestWriter/( wrong package ? ) > > Even though RequestWriter is not written as an actual interface, and is > itself an implementation, you can think of it as an interface. > BinaryRequestWriter is a very specific implementation, which is why it > is in a package that includes "impl." > > RequestWriter should probably be an interface or an abstract class (like > SolrClient), with an XML and a binary implementation. > > I believe that there is one primary reason that HttpSolrClient is still > using the XML request writer and that RequestWriter is still an actual > implementation rather than abstract class or an interface: Inertia. > The HTTP client has been available for users for a very long time. Even > though the chances of causing a problem with existing user programs by > switching the default writer is very small, it's much safer and easier > to leave it at XML. Martini> the conflict is over the /update endpoint which for 3.x and lower versions is always XML Martini> so if you have one active 3.x server you have no choice but to retain XML RequestWriterMartini> good point shawn > > We had an opportunity with the 5.0 release to make some of these > changes, but a new major release has so much activity that it is easy to > lose track of desired fixes, especially when the existing version works > perfectly. The Cloud client is using binary because it is a newer > implementation and did not have years of history with XML to worry about. > > I think that these changes should be made in trunk, so they will be > there in 6.0 when that version is released. > > Thanks, > Shawn > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [email protected] > For additional commands, e-mail: [email protected] >
