Sha256: 4e813f13732326d54df45aa046b3a8143973c40a1d176e88dc61e99d0ba62ddd

Contents?: true

Size: 956 Bytes

Versions: 2

Compression:

Stored size: 956 Bytes

Contents

require "detect_language/version"
require "detect_language/errors"
require "detect_language/configuration"
require "detect_language/client"

module DetectLanguage
  class << self
    attr_writer :configuration

    def configure
      yield(configuration)
    end

    # The configuration object.
    # @see DetectLanguage.configure
    def configuration
      @configuration ||= Configuration.new
    end

    def client
      Thread.current[:detect_language_client] ||= Client.new(configuration)
    end

    def detect(data)
      key = data.is_a?(Array) ? 'q[]' : 'q'
      result = client.post(:detect, key => data)
      result['data']['detections']
    end

    def simple_detect(text)
      detections = detect(text)

      if detections.empty?
        nil
      else
        detections[0]['language']
      end
    end

    def user_status
      client.get('user/status')
    end

    def languages
      client.get('languages')
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
detect_language-1.1.2 lib/detect_language.rb
detect_language-1.1.1 lib/detect_language.rb