Module: Sunspot::Configuration

Defined in:
lib/sunspot/configuration.rb

Overview

The Sunspot::Configuration module provides a factory method for Sunspot configuration objects. Available properties are:

Sunspot.config.http_client

The client to use for HTTP communication with Solr. Available options are :net_http, which is the default and uses Ruby’s built-in pure-Ruby HTTP library; and :curb, which uses Ruby’s libcurl bindings and requires installation of the ‘curb’ gem.

Sunspot.config.xml_builder

The library use to build XML messages sent to Solr. As of this writing the options are :builder and :libxml - the latter is faster but less portable, as it is native code. Check the documentation for RSolr::Message::Adapter for more information.

Sunspot.config.solr.url

The URL at which to connect to Solr (default: ‘localhost:8983/solr’)

Sunspot.config.pagination.default_per_page

Solr always paginates its results. This sets Sunspot’s default result count per page if it is not explicitly specified in the query.

Class Method Summary collapse

Class Method Details

.buildObject

Factory method to build configuration instances.

Returns

LightConfig::Configuration

new configuration instance with defaults



30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
# File 'lib/sunspot/configuration.rb', line 30

def build #:nodoc:
  LightConfig.build do
    http_client :net_http
    xml_builder :builder

    solr do
      url 'http://127.0.0.1:8983/solr'
    end
    master_solr do
      url nil
    end
    pagination do
      default_per_page 30
    end
  end
end

.solr_default_configuration_locationObject

Location for the default solr configuration files, required for bootstrapping a new solr installation

Returns

String

Directory with default solr config files



54
55
56
# File 'lib/sunspot/configuration.rb', line 54

def solr_default_configuration_location
  File.join( File.dirname(__FILE__), '../../solr/solr/conf' )
end