class GnipApi::PowerTrack::Rules

  1. lib/gnip_api/power_track/rules.rb
Superclass: Object

Public Instance methods

construct_rules (rules)

Parses an array of GnipApi::PowerTrack::Rule objects to the necesary JSON format for the endpoint

[show source]
# File lib/gnip_api/power_track/rules.rb, line 45
def construct_rules rules
  parsed_rules = {:rules => []}
  rules.each do |rule|
    parsed_rules[:rules] << rule.attributes
  end
  parsed_rules.to_json
end
create (rules)

Creates the specified rule. Parameters:

[show source]
# File lib/gnip_api/power_track/rules.rb, line 17
def create rules
  raise ArgumentError.new('No rules provided') if rules.nil? || rules.empty?
  request = create_post_request(construct_rules(rules))
  response = fetch_data(request)
  return true if response.nil?
  return GnipApi::JsonParser.new.parse(response)
end
delete (rules)

Deletes the specified rule. Parameters:

[show source]
# File lib/gnip_api/power_track/rules.rb, line 27
def delete rules
  raise ArgumentError.new('No rules provided') if rules.nil? || rules.empty?
  request = create_delete_request(construct_rules(rules))
  response = fetch_data(request)
  return true if response.nil?
  return GnipApi::JsonParser.new.parse(response)
end
list ()

Returns an array of defined rules

[show source]
# File lib/gnip_api/power_track/rules.rb, line 9
def list
  request = create_get_request
  rules = fetch_data(request)
  parse_rules(rules)
end
parse_rules (data)
[show source]
# File lib/gnip_api/power_track/rules.rb, line 53
def parse_rules data
  parsed_data = GnipApi::JsonParser.new.parse(data)
  parsed_data['rules'].map{|rule| GnipApi::PowerTrack::Rule.new(:value => rule['value'], :tag => rule['tag'], :id => rule['id'])}
end
validate (rules)
[show source]
# File lib/gnip_api/power_track/rules.rb, line 35
def validate rules
  raise ArgumentError.new('No rules provided') if rules.nil? || rules.empty?
  request = create_validation_request(construct_rules(rules))
  response = fetch_data(request)
  return true if response.nil?
  return GnipApi::JsonParser.new.parse(response)
end