Sha256: 6ece9cc0bc7a403627ed9f7c6357603f8be3f6b2df2d192eeb8233bd02e1eef7

Contents?: true

Size: 934 Bytes

Versions: 4

Compression:

Stored size: 934 Bytes

Contents

require 'uri'
require 'redis'
require 'multi_json'

require 'active_support/concern'

require 'soulmate/helpers'
require 'soulmate/base'
require 'soulmate/matcher'
require 'soulmate/loader'

require 'soulmate_rails/model_additions'
require 'soulmate_rails/railtie' if defined? Rails

module Soulmate

  extend self

  MIN_COMPLETE = 2
  DEFAULT_STOP_WORDS = ["vs", "at", "the"]

  def redis=(server)
    if server.is_a?(String)
      @redis = nil
      @redis_url = server
    else
      @redis = server
    end

    redis
  end

  def redis
    @redis ||= (
      url = URI(@redis_url || ENV["REDIS_URL"] || "redis://127.0.0.1:6379/0")

      ::Redis.new({
        :host => url.host,
        :port => url.port,
        :db => url.path[1..-1],
        :password => url.password
      })
    )
  end

  def stop_words
    @stop_words ||= DEFAULT_STOP_WORDS
  end

  def stop_words=(arr)
    @stop_words = Array(arr).flatten
  end

end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
soulmate_rails-0.3.0 lib/soulmate_rails.rb
soulmate_rails-0.2.1 lib/soulmate_rails.rb
soulmate_rails-0.2.1.beta lib/soulmate_rails.rb
soulmate_rails-0.2.0.alpha lib/soulmate_rails.rb