Class: PiratebayApi

Inherits:
Object
  • Object
show all
Defined in:
lib/piratebay_api.rb,
lib/piratebay_api/version.rb

Constant Summary collapse

VERSION =
'0.1.6'

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(service = :pirate_bay, search_term = nil, url, category) ⇒ PiratebayApi

Returns a new instance of PiratebayApi.



20
21
22
23
24
25
26
27
# File 'lib/piratebay_api.rb', line 20

def initialize(service=:pirate_bay, search_term=nil, url, category)
  @service = service
  @search_term = search_term
  @base_url = url
  @category = category

  @results = search if @search_term
end

Instance Attribute Details

#categoryObject

Returns the value of attribute category.



18
19
20
# File 'lib/piratebay_api.rb', line 18

def category
  @category
end

#resultsObject

Returns the value of attribute results.



18
19
20
# File 'lib/piratebay_api.rb', line 18

def results
  @results
end

#search_termObject

Returns the value of attribute search_term.



18
19
20
# File 'lib/piratebay_api.rb', line 18

def search_term
  @search_term
end

#serviceObject

Returns the value of attribute service.



18
19
20
# File 'lib/piratebay_api.rb', line 18

def service
  @service
end

Instance Method Details

#searchObject



29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
# File 'lib/piratebay_api.rb', line 29

def search
  if @service == :all
    results = []
    results << PirateBay::Search.new(@search_term, @category, @base_url).execute
    results = results.flatten.sort_by { |sort| -(sort.seeds) }
  else
    case @service
      when :pirate_bay
        handler = PirateBay::Search.new(@search_term, @category, @base_url)
      else
        raise 'You must select a valid service provider'
    end

    results = handler.execute
  end
  @results = results
end