Class: NicoQuery::Object::Movie

Inherits:
Object
  • Object
show all
Defined in:
lib/nicoquery/object/movie.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(video_id_or_thread_id) ⇒ Movie

Returns a new instance of Movie.



57
58
59
60
61
62
63
64
65
66
# File 'lib/nicoquery/object/movie.rb', line 57

def initialize(video_id_or_thread_id)
  @source = {}
  @response = {}

  if video_id_or_thread_id.to_s.match(/sm|nm/)
    @video_id = video_id_or_thread_id
  else
    @thread_id = video_id_or_thread_id
  end
end

Instance Attribute Details

#video_idObject (readonly)

Returns the value of attribute video_id.



10
11
12
# File 'lib/nicoquery/object/movie.rb', line 10

def video_id
  @video_id
end

Instance Method Details

#available?Boolean

Returns:

  • (Boolean)


68
69
70
# File 'lib/nicoquery/object/movie.rb', line 68

def available?
  [exist?, !deleted?].all?
end

#community?Boolean

Returns:

  • (Boolean)


72
73
74
75
76
77
# File 'lib/nicoquery/object/movie.rb', line 72

def community?
  unless @source[:video_array].present?
    get_and_set_video_array_source
  end
  @source[:video_array].community?
end

#deleted?Boolean

Returns:

  • (Boolean)


79
80
81
82
83
84
# File 'lib/nicoquery/object/movie.rb', line 79

def deleted?
  unless @source[:getthumbinfo].present?
    get_and_set_getthumbinfo_source
  end
  @source[:getthumbinfo].deleted?
end

#exist?Boolean

Returns:

  • (Boolean)


86
87
88
89
90
91
# File 'lib/nicoquery/object/movie.rb', line 86

def exist?
  unless @source[:getthumbinfo].present?
    get_and_set_getthumbinfo_source
  end
  @source[:getthumbinfo].exist?
end

#get_and_set_getthumbinfo_sourceObject



109
110
111
112
# File 'lib/nicoquery/object/movie.rb', line 109

def get_and_set_getthumbinfo_source
  @response[:getthumbinfo] = (NicoQuery::Api::GetThumbInfo.new(@video_id || @thread_id)).get
  set_getthumbinfo_source(NicoQuery::ObjectMapper::GetThumbInfo.new @response[:getthumbinfo][:body])
end

#get_and_set_video_array_sourceObject



114
115
116
117
118
# File 'lib/nicoquery/object/movie.rb', line 114

def get_and_set_video_array_source
  @response[:video_array] = (NicoQuery::Api::VideoArray.new([@video_id || @thread_id])).get
  parsed = (NicoQuery::ObjectMapper::VideoArray.new @response[:video_array][:body])
  set_video_array_source parsed.movies[0]
end

#set_getthumbinfo_source(source_object) ⇒ Object



93
94
95
# File 'lib/nicoquery/object/movie.rb', line 93

def set_getthumbinfo_source(source_object)
  @source[:getthumbinfo] ||= source_object
end

#set_mylist_rss_source(source_object) ⇒ Object



97
98
99
# File 'lib/nicoquery/object/movie.rb', line 97

def set_mylist_rss_source(source_object)
  @source[:mylist_rss] ||= source_object
end

#set_tag_search_rss_source(source_object) ⇒ Object



101
102
103
# File 'lib/nicoquery/object/movie.rb', line 101

def set_tag_search_rss_source(source_object)
  @source[:tag_search_rss] ||= source_object
end

#set_video_array_source(source_object) ⇒ Object



105
106
107
# File 'lib/nicoquery/object/movie.rb', line 105

def set_video_array_source(source_object)
  @source[:video_array] ||= source_object
end