Class: Yt::Models::Claim
- Inherits:
-
Base
- Object
- Base
- Yt::Models::Claim
- Defined in:
- lib/yt/models/claim.rb
Overview
Provides methods to interact with YouTube ContentID claims.
Instance Attribute Summary collapse
-
#auth ⇒ Object
readonly
Returns the value of attribute auth.
-
#claim_history ⇒ Yt::Collections::ClaimHistories
readonly
The claim’s history.
-
#data ⇒ Object
readonly
Returns the value of attribute data.
Instance Method Summary collapse
-
#active? ⇒ Boolean
Whether the claim is active.
-
#appealed? ⇒ Boolean
Whether the claim is appealed.
-
#asset ⇒ Yt::Models::Asset
The asset of the claim.
-
#asset_id ⇒ String
The unique YouTube asset ID that identifies the asset associated with the claim.
-
#audio? ⇒ Boolean
Whether the claim covers only the audio.
-
#audiovisual? ⇒ Boolean
Whether the claim covers both audio and video.
-
#block_outside_ownership? ⇒ Boolean
Return whether the video should be blocked where not explicitly owned.
-
#content_type ⇒ String
Returns the audiovisual portion of the claimed content.
-
#created_at ⇒ Time
The date and time that the claim was created.
-
#delete ⇒ Boolean
Soft-deletes the claim.
-
#disputed? ⇒ Boolean
Whether the claim is disputed.
-
#has_unknown_status? ⇒ Boolean
Whether the claim status is unknown.
-
#id ⇒ String
The ID that YouTube assigns and uses to uniquely identify the claim.
-
#inactive? ⇒ Boolean
Whether the claim is inactive.
-
#initialize(options = {}) ⇒ Claim
constructor
A new instance of Claim.
-
#match_reference_id ⇒ String
The unique ID that YouTube uses to identify the reference that generated the match.
-
#pending? ⇒ Boolean
Whether the claim is pending.
-
#potential? ⇒ Boolean
Whether the claim is potential.
-
#source ⇒ String
The source of the claim.
-
#status ⇒ String
Returns the claim’s status.
-
#takedown? ⇒ Boolean
Whether the claim is takedown.
-
#third_party? ⇒ Boolean
Whether a third party created the claim.
-
#video? ⇒ Boolean
Whether the claim covers only the video.
-
#video_id ⇒ String
The unique YouTube video ID that identifies the video associated with the claim.
Constructor Details
#initialize(options = {}) ⇒ Claim
Returns a new instance of Claim.
10 11 12 13 14 15 |
# File 'lib/yt/models/claim.rb', line 10 def initialize( = {}) @data = [:data] @id = [:id] @auth = [:auth] @asset = [:asset] if [:asset] end |
Instance Attribute Details
#auth ⇒ Object (readonly)
Returns the value of attribute auth.
8 9 10 |
# File 'lib/yt/models/claim.rb', line 8 def auth @auth end |
#claim_history ⇒ Yt::Collections::ClaimHistories (readonly)
Returns the claim’s history.
19 |
# File 'lib/yt/models/claim.rb', line 19 has_one :claim_history |
#data ⇒ Object (readonly)
Returns the value of attribute data.
8 9 10 |
# File 'lib/yt/models/claim.rb', line 8 def data @data end |
Instance Method Details
#active? ⇒ Boolean
Returns whether the claim is active.
56 57 58 |
# File 'lib/yt/models/claim.rb', line 56 def active? status == 'active' end |
#appealed? ⇒ Boolean
Returns whether the claim is appealed.
61 62 63 |
# File 'lib/yt/models/claim.rb', line 61 def appealed? status == 'appealed' end |
#asset ⇒ Yt::Models::Asset
Returns the asset of the claim.
123 124 125 |
# File 'lib/yt/models/claim.rb', line 123 def asset @asset end |
#asset_id ⇒ String
Returns the unique YouTube asset ID that identifies the asset associated with the claim.
38 |
# File 'lib/yt/models/claim.rb', line 38 has_attribute :asset_id |
#audio? ⇒ Boolean
Returns whether the claim covers only the audio.
103 104 105 |
# File 'lib/yt/models/claim.rb', line 103 def audio? content_type == 'audio' end |
#audiovisual? ⇒ Boolean
Returns whether the claim covers both audio and video.
113 114 115 |
# File 'lib/yt/models/claim.rb', line 113 def audiovisual? content_type == 'audiovisual' end |
#block_outside_ownership? ⇒ Boolean
Return whether the video should be blocked where not explicitly owned.
146 |
# File 'lib/yt/models/claim.rb', line 146 has_attribute :block_outside_ownership?, from: :block_outside_ownership |
#content_type ⇒ String
Returns the audiovisual portion of the claimed content.
100 |
# File 'lib/yt/models/claim.rb', line 100 has_attribute :content_type |
#created_at ⇒ Time
Returns the date and time that the claim was created.
128 |
# File 'lib/yt/models/claim.rb', line 128 has_attribute :created_at, type: Time, from: :time_created |
#delete ⇒ Boolean
YouTube API does not provide a delete
method for the Asset resource, but only an update
method. Updating the status
of a Asset to “inactive” can be considered a soft-deletion.
Soft-deletes the claim.
26 27 28 29 30 |
# File 'lib/yt/models/claim.rb', line 26 def delete body = {status: :inactive} do_patch(body: body) {|data| @data = data} inactive? end |
#disputed? ⇒ Boolean
Returns whether the claim is disputed.
66 67 68 |
# File 'lib/yt/models/claim.rb', line 66 def disputed? status == 'disputed' end |
#has_unknown_status? ⇒ Boolean
Returns whether the claim status is unknown.
91 92 93 |
# File 'lib/yt/models/claim.rb', line 91 def has_unknown_status? status == 'unknown' end |
#id ⇒ String
Returns the ID that YouTube assigns and uses to uniquely identify the claim.
34 |
# File 'lib/yt/models/claim.rb', line 34 has_attribute :id |
#inactive? ⇒ Boolean
Returns whether the claim is inactive.
71 72 73 |
# File 'lib/yt/models/claim.rb', line 71 def inactive? status == 'inactive' end |
#match_reference_id ⇒ String
Returns The unique ID that YouTube uses to identify the reference that generated the match.
150 151 152 |
# File 'lib/yt/models/claim.rb', line 150 has_attribute :match_reference_id, from: :match_info do |match_info| (match_info || {})['referenceId'] end |
#pending? ⇒ Boolean
Returns whether the claim is pending.
76 77 78 |
# File 'lib/yt/models/claim.rb', line 76 def pending? status == 'pending' end |
#potential? ⇒ Boolean
Returns whether the claim is potential.
81 82 83 |
# File 'lib/yt/models/claim.rb', line 81 def potential? status == 'potential' end |
#source ⇒ String
Returns the source of the claim.
118 119 120 |
# File 'lib/yt/models/claim.rb', line 118 def source @data.fetch('origin', {})['source'] end |
#status ⇒ String
When updating a claim, you can update its status from active to inactive to effectively release the claim, but the API does not support other updates to a claim’s status.
Returns the claim’s status.
53 |
# File 'lib/yt/models/claim.rb', line 53 has_attribute :status |
#takedown? ⇒ Boolean
Returns whether the claim is takedown.
86 87 88 |
# File 'lib/yt/models/claim.rb', line 86 def takedown? status == 'takedown' end |
#third_party? ⇒ Boolean
Returns whether a third party created the claim.
131 132 133 |
# File 'lib/yt/models/claim.rb', line 131 has_attribute :third_party?, from: :third_party_claim do |value| value == true end |
#video? ⇒ Boolean
Returns whether the claim covers only the video.
108 109 110 |
# File 'lib/yt/models/claim.rb', line 108 def video? content_type == 'video' end |
#video_id ⇒ String
Returns the unique YouTube video ID that identifies the video associated with the claim.
42 |
# File 'lib/yt/models/claim.rb', line 42 has_attribute :video_id |