module AlgoliaSearch::Configuration

Public Class Methods

new() click to toggle source
# File lib/algoliasearch/configuration.rb, line 3
def initialize
  @client = nil
end

Public Instance Methods

client() click to toggle source
# File lib/algoliasearch/configuration.rb, line 16
def client
  if @client.nil?
    setup_client
  end

  @client
end
configuration() click to toggle source
# File lib/algoliasearch/configuration.rb, line 7
def configuration
  @@configuration || raise(NotConfigured, "Please configure AlgoliaSearch. Set AlgoliaSearch.configuration = {application_id: 'YOUR_APPLICATION_ID', api_key: 'YOUR_API_KEY'}")
end
configuration=(configuration) click to toggle source
# File lib/algoliasearch/configuration.rb, line 11
def configuration=(configuration)
  @@configuration = default_configuration
                      .merge(configuration)
end
default_configuration() click to toggle source
# File lib/algoliasearch/configuration.rb, line 37
def default_configuration
  {
    queue_name: 'algoliasearch'
  }
end
setup_client() click to toggle source
# File lib/algoliasearch/configuration.rb, line 24
def setup_client
  @client = Algolia::SearchClient.create(
    @@configuration[:application_id],
    @@configuration[:api_key],
    {
      user_agent_segments: [
        "Algolia for Rails (#{AlgoliaSearch::VERSION})",
        "Rails (#{defined?(::Rails::VERSION::STRING) ? ::Rails::VERSION::STRING : 'unknown'})",
        @@configuration[:append_to_user_agent]
      ].compact
    })
end