kcrw_api 0.0.2.pre → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/kcrw_api.rb +17 -12
  3. metadata +3 -3
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 0ca86f6d0770bd48fe43bda9b1ca8bbfb7c7b12a
4
- data.tar.gz: 844cc223b399238ac8a9d33f53dec8e7f9c8a62d
3
+ metadata.gz: edfd42868f65a5435cf04b46b92422553e488a1a
4
+ data.tar.gz: fd1335f9e78d5b61e75e68014b8bf31f492ac571
5
5
  SHA512:
6
- metadata.gz: 08e35d6f6352ed83c4eb7a6e7166f9f28b314fd6a4d0bb0a5a168c462eaba541692a90cf809eeae7f715b1facb370c038ddc15b0d7768355df783b61179cf8df
7
- data.tar.gz: 6d1c29f8ab58ab604fef205f25821d5198f76e1b17ed2fa5156afcfa21c7f19c96c6969cbfa4cc0d52cd3aed616819f8ef375e406d80ac120423f4daa3e43366
6
+ metadata.gz: 3cb46c56038c4fd9f7fd10f0c3588de050c9c44dd0c9b478eff07675c73681acd5da8e5dae9d1cb5fb6ce1ea6825610fe8c807755067220ad2c9d2eb981b5080
7
+ data.tar.gz: 3daa1fccf69b6b664f119706bc21009bd217b0eb7166add9e416c1e95210b8a7d184e94e0bfc8d7234327ba3ce316a97967fb9975138b4984362d9877774a8dc
data/lib/kcrw_api.rb CHANGED
@@ -1,23 +1,16 @@
1
1
  require 'date'
2
2
  require 'open-uri'
3
- require 'json'
3
+ require 'json'
4
4
 
5
5
  class KcrwApi
6
6
  BASE = 'https://tracklist-api.kcrw.com/Music/date'.freeze
7
7
 
8
+ attr_reader :tracks
9
+
8
10
  def initialize(date_time)
11
+ raise 'Must be a DateTime object' unless date_time.is_a?(DateTime)
9
12
  @date_time = date_time
10
- end
11
-
12
- def endpoint
13
- "#{BASE}/#{date}?time=#{time}"
14
- end
15
-
16
- def tracks
17
- @contents ||= URI.parse(endpoint).read
18
- JSON.parse(@contents).each do |track|
19
- Track.new(track)
20
- end
13
+ @tracks = get_tracks!
21
14
  end
22
15
 
23
16
  private
@@ -30,6 +23,18 @@ class KcrwApi
30
23
  @date_time.day < 10 ? "0#{@date_time.day}" : @date_time.day
31
24
  end
32
25
 
26
+ def endpoint
27
+ "#{BASE}/#{date}?time=#{time}"
28
+ end
29
+
30
+ def get_tracks!
31
+ @contents ||= URI.parse(endpoint).read
32
+ @tracks = []
33
+ JSON.parse(@contents).each do |track|
34
+ @tracks << Track.new(track)
35
+ end
36
+ end
37
+
33
38
  def hour
34
39
  @date_time.hour < 10 ? "0#{@date_time.hour}" : @date_time.hour
35
40
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: kcrw_api
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2.pre
4
+ version: 0.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Teo Dell'Amico
@@ -33,9 +33,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
33
33
  version: '0'
34
34
  required_rubygems_version: !ruby/object:Gem::Requirement
35
35
  requirements:
36
- - - '>'
36
+ - - '>='
37
37
  - !ruby/object:Gem::Version
38
- version: 1.3.1
38
+ version: '0'
39
39
  requirements: []
40
40
  rubyforge_project:
41
41
  rubygems_version: 2.4.8