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 +4 -4
- data/lib/spreaker/client.rb +20 -11
- data/lib/spreaker/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4123aa73cb7d7e4e381208caa8f65e836edc3544a61b61aee1ca076a05e29d01
|
4
|
+
data.tar.gz: 7911f4fe6f2de0e51ec4c1f202639a44f11032e3fb35d91869c948df27030ef6
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8373430e56d162142846309b9bb69aab61ad445b2d56a8a14e40b960d946db0d89bb4e90cc0065f9e396768d41712b5ad434399ebb3f090c503fd6808b874499
|
7
|
+
data.tar.gz: c95ad7b21b8195ea2ffab879a6cf51944f3d147c2b775190c297c6a7c118593564be5073718692997077bdaa2020131632452413404f3fb0dcc918cadadd09e4
|
data/lib/spreaker/client.rb
CHANGED
@@ -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)
|
45
|
-
|
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
|
-
|
51
|
-
|
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
|
data/lib/spreaker/version.rb
CHANGED
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.
|
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
|
11
|
+
date: 2024-04-03 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: faraday
|