Class: Spaceship::Tunes::Availability

Inherits:
TunesBase show all
Defined in:
spaceship/lib/spaceship/tunes/availability.rb

Instance Attribute Summary collapse

Attributes inherited from Base

#client, #raw_data

Class Method Summary collapse

Methods inherited from TunesBase

client

Methods inherited from Base

attr_accessor, attr_mapping, attributes, #attributes, factory, #initialize, #inspect, mapping_module, method_missing, set_client, #setup, #to_s

Constructor Details

This class inherits a constructor from Spaceship::Base

Instance Attribute Details

#include_future_territoriesBool

Returns Are future territories included?.

Returns:

  • (Bool)

    Are future territories included?



7
8
9
# File 'spaceship/lib/spaceship/tunes/availability.rb', line 7

def include_future_territories
  @include_future_territories
end

#territoriesArray of Spaceship::Tunes::Territory objects

Returns A list of the territories.

Returns:



10
11
12
# File 'spaceship/lib/spaceship/tunes/availability.rb', line 10

def territories
  @territories
end

Class Method Details

.from_territories(territories = [], params = {}) ⇒ Object

Create a new object based on a set of territories.

Parameters:

  • territories (Array of String or Spaceship::Tunes::Territory objects) (defaults to: [])

    : A list of the territories

  • params (Hash) (defaults to: {})

    : Optional parameters (include_future_territories (Bool, default: true) Are future territories included?)



19
20
21
22
23
24
25
26
27
28
29
30
# File 'spaceship/lib/spaceship/tunes/availability.rb', line 19

def self.from_territories(territories = [], params = {})
  obj = self.new
  # Detect if the territories attribute is an array of Strings and convert to Territories
  obj.territories =
    if territories[0].kind_of?(String)
      territories.map { |territory| Spaceship::Tunes::Territory.from_code(territory) }
    else
      territories
    end
  obj.include_future_territories = params.fetch(:include_future_territories, true)
  return obj
end