Class PatchedLBHttpSolrClient.Builder

  • Enclosing class:
    PatchedLBHttpSolrClient

    public static class PatchedLBHttpSolrClient.Builder
    extends org.apache.solr.client.solrj.impl.LBHttpSolrClient.Builder
    • Field Detail

      • baseSolrUrls

        protected final java.util.List<java.lang.String> baseSolrUrls
      • httpSolrClientBuilder

        protected org.apache.solr.client.solrj.impl.HttpSolrClient.Builder httpSolrClientBuilder
      • httpClient

        protected org.apache.http.client.HttpClient httpClient
      • responseParser

        protected org.apache.solr.client.solrj.ResponseParser responseParser
      • connectionTimeoutMillis

        protected java.lang.Integer connectionTimeoutMillis
      • socketTimeoutMillis

        protected java.lang.Integer socketTimeoutMillis
    • Constructor Detail

      • Builder

        public Builder()
    • Method Detail

      • getHttpSolrClientBuilder

        public org.apache.solr.client.solrj.impl.HttpSolrClient.Builder getHttpSolrClientBuilder()
        Overrides:
        getHttpSolrClientBuilder in class org.apache.solr.client.solrj.impl.LBHttpSolrClient.Builder
      • withBaseSolrUrl

        public PatchedLBHttpSolrClient.Builder withBaseSolrUrl​(java.lang.String baseSolrUrl)
        Provide a Solr endpoint to be used when configuring LBHttpSolrClient instances. Method may be called multiple times. All provided values will be used. Two different paths can be specified as a part of the URL: 1) A path pointing directly at a particular core
         SolrClient client = builder.withBaseSolrUrl("http://my-solr-server:8983/solr/core1").build();
         QueryResponse resp = client.query(new SolrQuery("*:*"));
         
        Note that when a core is provided in the base URL, queries and other requests can be made without mentioning the core explicitly. However, the client can only send requests to that core. 2) The path of the root Solr path ("/solr")
         SolrClient client = builder.withBaseSolrUrl("http://my-solr-server:8983/solr").build();
         QueryResponse resp = client.query("core1", new SolrQuery("*:*"));
         
        In this case the client is more flexible and can be used to send requests to any cores. This flexibility though requires that the core is specified on all requests.
        Overrides:
        withBaseSolrUrl in class org.apache.solr.client.solrj.impl.LBHttpSolrClient.Builder
      • withBaseSolrUrls

        public PatchedLBHttpSolrClient.Builder withBaseSolrUrls​(java.lang.String... solrUrls)
        Provide Solr endpoints to be used when configuring LBHttpSolrClient instances. Method may be called multiple times. All provided values will be used. Two different paths can be specified as a part of each URL: 1) A path pointing directly at a particular core
         SolrClient client = builder.withBaseSolrUrls("http://my-solr-server:8983/solr/core1").build();
         QueryResponse resp = client.query(new SolrQuery("*:*"));
         
        Note that when a core is provided in the base URL, queries and other requests can be made without mentioning the core explicitly. However, the client can only send requests to that core. 2) The path of the root Solr path ("/solr")
         SolrClient client = builder.withBaseSolrUrls("http://my-solr-server:8983/solr").build();
         QueryResponse resp = client.query("core1", new SolrQuery("*:*"));
         
        In this case the client is more flexible and can be used to send requests to any cores. This flexibility though requires that the core is specified on all requests.
        Overrides:
        withBaseSolrUrls in class org.apache.solr.client.solrj.impl.LBHttpSolrClient.Builder
      • withHttpSolrClientBuilder

        public PatchedLBHttpSolrClient.Builder withHttpSolrClientBuilder​(org.apache.solr.client.solrj.impl.HttpSolrClient.Builder builder)
        Provides a HttpSolrClient.Builder to be used for building the internally used clients.
        Overrides:
        withHttpSolrClientBuilder in class org.apache.solr.client.solrj.impl.LBHttpSolrClient.Builder
      • build

        public PatchedLBHttpSolrClient build()
        Create a HttpSolrClient based on provided configuration.
        Overrides:
        build in class org.apache.solr.client.solrj.impl.LBHttpSolrClient.Builder