Module: Filter8

Defined in:
lib/filter8.rb,
lib/filter8/client.rb,
lib/filter8/result.rb,
lib/filter8/request.rb,
lib/filter8/exception.rb

Defined Under Namespace

Classes: Client, Configuration, Exception, Request, Result

Constant Summary collapse

BLACKLIST_FILTER =
:blacklist
CHARACTERS_FILTER =
:characters
EMAILS =
:emails
PHONE_NUMBERS_FILTER =
:phoneNumbers
URLS_FILTER =
:urls
WORDS_FILTER =
:words
AVAILABLE_FILTERS =
[BLACKLIST_FILTER, CHARACTERS_FILTER, EMAILS, PHONE_NUMBERS_FILTER, URLS_FILTER, WORDS_FILTER]
FILTER_PARAMS =
{
  BLACKLIST_FILTER => [:enabled, :locale, :tag, :severity], 
  CHARACTERS_FILTER => [:character],
  PHONE_NUMBERS_FILTER => [:maximumMatchLength, :minimumMatchLength, :separatorPenalty, :spacePenalty, :wordPenalty],
  WORDS_FILTER => [:word]
}

Class Attribute Summary collapse

Class Method Summary collapse

Class Attribute Details

.configurationObject

Returns the value of attribute configuration.



29
30
31
# File 'lib/filter8.rb', line 29

def configuration
  @configuration
end

Class Method Details

.configure {|configuration| ... } ⇒ Object

Yields:



32
33
34
35
# File 'lib/filter8.rb', line 32

def self.configure
  self.configuration ||= Configuration.new
  yield(configuration)
end

.filter(content, options = {}) ⇒ Object



37
38
39
40
41
42
43
44
45
# File 'lib/filter8.rb', line 37

def self.filter(content, options = {})
  raise Exception.new "Configure Filter8-module before using" if(Filter8.configuration.nil?)
  %i(api_key api_secret).each do |attribute|
    raise Exception.new "Configure 'attribute' first" if(Filter8.configuration.send(attribute).nil?)
  end

  client = Filter8::Client.new(api_key: Filter8.configuration.api_key, api_secret: Filter8.configuration.api_secret)
  client.send_request(Filter8::Request.new(content, options))
end