[ 
https://issues.apache.org/jira/browse/SOLR-17161?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18036575#comment-18036575
 ] 

David Smiley commented on SOLR-17161:
-------------------------------------

So far I'm keeping CloudHttp2SolrClient as a viable option, which chooses the 
Jetty impl if it's on the classpath via reflection, otherwise falling back to 
the JDK impl.  So you can choose that or CloudJettySolrClient, which basically 
just subclasses it.  Maybe I'm chickening out in the face of a big switchover 
but we can certainly do that immediately afterwards or ~now (JDK needs an 
option too).

LBHttp2SolrClient is mostly code for requestAsync, and BTW that is only used by 
HttpShardHandler (not CloudSolrClient).  And it only has like one line that is 
truly dependent on Http2SolrClient/HttpJettySolrClient (JDK doesn't support it 
with the custom URL option that it needs).  With that in mind, it's tempting to 
call this thing LBAsyncSolrClient, since that is its value-add.  It's very 
plausible to imagine a future where it supports the JDK client too.  Push the 
Builder & ctor down to LBSolrClient, making it easy to create an LBSolrClient 
with either JDK or Jetty clients.

HttpClientBuilderFactory was once maybe reasonably named but today, definitely 
not.  I propose renaming to SolrClientCustomizer, making it SolrClient generic, 
and not implement AutoCloseable.  Then it need not go to the solrj-jetty 
module.  I've done that work already in the PR, except for the rename.

> Separate out a solrj-jetty artifact (10.0)
> ------------------------------------------
>
>                 Key: SOLR-17161
>                 URL: https://issues.apache.org/jira/browse/SOLR-17161
>             Project: Solr
>          Issue Type: Sub-task
>          Components: clients - java
>            Reporter: Jan Høydahl
>            Assignee: David Smiley
>            Priority: Blocker
>              Labels: pull-request-available
>             Fix For: 10.0
>
>          Time Spent: 20m
>  Remaining Estimate: 0h
>
> Given we have a native JDK based client in SOLR-599, we can separate out all 
> {{Http2SolrClient}} and freiends with their jetty-client dependencies into a 
> separate artifact {{{}solrj-jetty{}}}.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to