zype 0.10.0 → 0.11.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/zype/client.rb +1 -1
- data/lib/zype/models/base/videos.rb +50 -0
- data/lib/zype/models/segments.rb +7 -0
- data/lib/zype/models/subtitle_playlists.rb +1 -11
- data/lib/zype.rb +1 -0
- metadata +3 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7199fcef0cba518a656b3556b0351b7390e5816b685ea5b4af8dfd2b4386911d
|
4
|
+
data.tar.gz: ec53fee1915a8e77dff8b022a5b7a1957c7dffa8081808b764bfbff80320825b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b322e552e741a5967eef6135bd63420b46614af1a7eda5b18ba1f6c322f1cd99f7293c7221b65b781ee73aeca02aa40ef80634dd0197c4a707676f652be22cb8
|
7
|
+
data.tar.gz: ad10fd3649ae7a42d046aca34faa5b6f2678ca0e3b9537fcc26a837db56d70a7d0a9f4e5cf011024f60dd20f845a19b55e9aa1d5e9ad5467ff89675e2c7c110b
|
data/lib/zype/client.rb
CHANGED
@@ -20,7 +20,7 @@ module Zype
|
|
20
20
|
|
21
21
|
# Automatically converts all files in lib/zype/models to be used as methods
|
22
22
|
class << self
|
23
|
-
Dir["lib/zype/models
|
23
|
+
Dir["lib/zype/models/*.rb"].each do |file|
|
24
24
|
model = file[/.*\/(.*?).rb$/, 1]
|
25
25
|
define_method model do
|
26
26
|
constant = model.split("_").map { |s| s.capitalize }.join("")
|
@@ -0,0 +1,50 @@
|
|
1
|
+
module Zype
|
2
|
+
module Base
|
3
|
+
# Any videos nested routes will inherit from this class
|
4
|
+
class Videos < Zype::BaseModel
|
5
|
+
# Returns all objects for given class
|
6
|
+
#
|
7
|
+
# @param video_id [String] the ID of the video
|
8
|
+
# @return [Array<Hash>] the objects returned from the API
|
9
|
+
def all(video_id:)
|
10
|
+
client.execute(method: :get, path: "/videos/#{video_id}/#{path}")
|
11
|
+
end
|
12
|
+
|
13
|
+
# Returns object matching ID
|
14
|
+
#
|
15
|
+
# @param video_id [String] the ID of the video
|
16
|
+
# @param id [String] the ID of the object
|
17
|
+
# @return [Hash] the object returned from the API
|
18
|
+
def find(video_id:, id:)
|
19
|
+
client.execute(method: :get, path: "/videos/#{video_id}/#{path}/#{id}")
|
20
|
+
end
|
21
|
+
|
22
|
+
# Creates a new object via the API.
|
23
|
+
#
|
24
|
+
# @param video_id [String] ID of the video to assign to the object
|
25
|
+
# @param params [Hash] the properties of the object
|
26
|
+
# @return [Hash] the newly created object
|
27
|
+
def create(video_id:, params:)
|
28
|
+
client.execute(method: :post, path: "/videos/#{video_id}/#{path}", params: params)
|
29
|
+
end
|
30
|
+
|
31
|
+
# Updates an existing object via the API
|
32
|
+
#
|
33
|
+
# @param id [String] the ID of the object
|
34
|
+
# @param params [Hash] the properties to be updated
|
35
|
+
# @return [Hash] the updated object
|
36
|
+
def update(video_id:, id:, params:)
|
37
|
+
client.execute(method: :put, path: "/videos/#{video_id}/#{path}/#{id}", params: params)
|
38
|
+
end
|
39
|
+
|
40
|
+
# Deletes an existing object via the API
|
41
|
+
#
|
42
|
+
# @param video_id [String] the ID of the video
|
43
|
+
# @param id [String] the ID of the object
|
44
|
+
# @return [Hash] the deleted object
|
45
|
+
def delete(video_id:, id:)
|
46
|
+
client.execute(method: :delete, path: "/videos/#{video_id}/#{path}/#{id}")
|
47
|
+
end
|
48
|
+
end
|
49
|
+
end
|
50
|
+
end
|
@@ -5,23 +5,13 @@ module Zype
|
|
5
5
|
# Read more at https://docs.zype.com/v1.0/reference#subtitle-playlists
|
6
6
|
#
|
7
7
|
# @since 0.7.0
|
8
|
-
class SubtitlePlaylists < Zype::
|
8
|
+
class SubtitlePlaylists < Zype::Base::Videos
|
9
9
|
%i[all find update].each do |mtd|
|
10
10
|
send(:define_method, mtd) do
|
11
11
|
raise NoMethodError
|
12
12
|
end
|
13
13
|
end
|
14
14
|
|
15
|
-
# Creates a new subtitle via the API.
|
16
|
-
# Files must be hosted and be accessible with a URL
|
17
|
-
#
|
18
|
-
# @param video_id [String] ID of the video to assign to the subtitle
|
19
|
-
# @param params [Hash] the properties of the subtitle
|
20
|
-
# @return [Hash] the newly created subtitle
|
21
|
-
def create(video_id:, params:)
|
22
|
-
client.execute(method: :post, path: "/videos/#{video_id}/subtitle_playlists", params: params)
|
23
|
-
end
|
24
|
-
|
25
15
|
# Deletes an existing subtitle via the API
|
26
16
|
#
|
27
17
|
# @param language [String] language of the playlist - must be full name - not code
|
data/lib/zype.rb
CHANGED
@@ -4,6 +4,7 @@ require './lib/zype/client.rb'
|
|
4
4
|
require './lib/zype/client/player_client.rb'
|
5
5
|
require './lib/zype/client/api_client.rb'
|
6
6
|
require './lib/zype/base_model.rb'
|
7
|
+
Dir[File.join(__dir__, '../lib/zype/models/base', '*.rb')].each { |file| require file }
|
7
8
|
Dir[File.join(__dir__, '../lib/zype/models', '*.rb')].each { |file| require file }
|
8
9
|
|
9
10
|
module Zype
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: zype
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.11.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Zype
|
@@ -65,6 +65,7 @@ files:
|
|
65
65
|
- lib/zype/client/player_client.rb
|
66
66
|
- lib/zype/configuration.rb
|
67
67
|
- lib/zype/models/apps.rb
|
68
|
+
- lib/zype/models/base/videos.rb
|
68
69
|
- lib/zype/models/categories.rb
|
69
70
|
- lib/zype/models/device_categories.rb
|
70
71
|
- lib/zype/models/devices.rb
|
@@ -76,6 +77,7 @@ files:
|
|
76
77
|
- lib/zype/models/players.rb
|
77
78
|
- lib/zype/models/playlists.rb
|
78
79
|
- lib/zype/models/program_guides.rb
|
80
|
+
- lib/zype/models/segments.rb
|
79
81
|
- lib/zype/models/subtitle_playlists.rb
|
80
82
|
- lib/zype/models/subtitles.rb
|
81
83
|
- lib/zype/models/videos.rb
|