spreaker 0.1.2 → 0.1.4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ac9756a540c15f32192e0c9fd337f5cb5bb313eca9150af1a8e92bfce517dee4
4
- data.tar.gz: 49f7be9a209734fdc0d578eae351613e46f67234fa82f1ecdb6e24825cd43d2b
3
+ metadata.gz: 4123aa73cb7d7e4e381208caa8f65e836edc3544a61b61aee1ca076a05e29d01
4
+ data.tar.gz: 7911f4fe6f2de0e51ec4c1f202639a44f11032e3fb35d91869c948df27030ef6
5
5
  SHA512:
6
- metadata.gz: c52b86673feb420fb8addab80e9253ae36aebeacc2cccf98905d210778f633b800194ca05551ab3cf9d84dd3b45af0c14502f319951a4f6fb555b2b225d091fc
7
- data.tar.gz: 4ca27911c3981a8e33140f558716aa75c57e81f8c945c2a1b46b498c7f59d22f03010efe8e5c18bf7e58d08f6afda861dab3a725b4e0647b4b0ed2b7a53bdbfd
6
+ metadata.gz: 8373430e56d162142846309b9bb69aab61ad445b2d56a8a14e40b960d946db0d89bb4e90cc0065f9e396768d41712b5ad434399ebb3f090c503fd6808b874499
7
+ data.tar.gz: c95ad7b21b8195ea2ffab879a6cf51944f3d147c2b775190c297c6a7c118593564be5073718692997077bdaa2020131632452413404f3fb0dcc918cadadd09e4
@@ -41,22 +41,31 @@ module Spreaker
41
41
 
42
42
  def episodes(show:)
43
43
  response = connection.get("/v2/shows/#{show.id}/episodes").body
44
- JSON.parse(response)["response"]["items"].map do |episode|
45
- Spreaker::Show.new(properties: episode)
44
+ response_hash = JSON.parse(response)
45
+ episode_list = response_hash["response"]["items"].map do |episode|
46
+ Spreaker::Episode.new(properties: episode)
47
+ end
48
+ while(response_hash.dig("response", "next_url").present? && response_hash["response"]["items"].any?)
49
+ response = connection.get(response_hash["response"]["next_url"]).body
50
+ response_hash = JSON.parse(response)
51
+ episode_list += response_hash["response"]["items"].map do |episode|
52
+ Spreaker::Episode.new(properties: episode)
53
+ end
46
54
  end
55
+ episode_list
47
56
  end
48
57
 
49
58
  def update_episode(id:, properties:)
50
- response = connection.post("/v2/episodes/#{id}") do |req|
51
- req.body = URI.encode_www_form(properties)
59
+ begin
60
+ response = connection.post("/v2/episodes/#{id}") do |req|
61
+ req.body = URI.encode_www_form(properties)
62
+ end
63
+ properties = JSON.parse(response.body)['response']['episode']
64
+ Spreaker::Episode.new(properties: properties)
65
+ rescue JSON::ParserError => e
66
+ ap response.body
67
+ raise e
52
68
  end
53
- properties = JSON.parse(response.body)["response"]["episode"]
54
- Spreaker::Episode.new(properties: properties)
55
- end
56
-
57
- def file_size(episode:)
58
- response = connection.head(episode.playback_url)
59
- response.headers["Content-Length"]
60
69
  end
61
70
  end
62
71
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Spreaker
4
- VERSION = "0.1.2"
4
+ VERSION = "0.1.4"
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: spreaker
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.1.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Charles Max Wood
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-03-21 00:00:00.000000000 Z
11
+ date: 2024-04-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday