1 <!DOCTYPE html PUBLIC
"-//W3C//DTD XHTML 1.0 Transitional//EN"
2 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3 <html xmlns=
"http://www.w3.org/1999/xhtml" xml:
lang=
"en" lang=
"en">
5 <meta http-equiv=
"Content-Type" content=
"text/html; charset=utf-8" />
7 Class: Lyricli::Sources::Rdio
9 — Documentation by YARD
0.8.2.1
13 <link rel=
"stylesheet" href=
"../../css/style.css" type=
"text/css" media=
"screen" charset=
"utf-8" />
15 <link rel=
"stylesheet" href=
"../../css/common.css" type=
"text/css" media=
"screen" charset=
"utf-8" />
17 <script type=
"text/javascript" charset=
"utf-8">
18 hasFrames = window.top.frames.main ? true : false;
20 framesUrl = "../../frames.html#!" + escape(window.location.href);
24 <script type=
"text/javascript" charset=
"utf-8" src=
"../../js/jquery.js"></script>
26 <script type=
"text/javascript" charset=
"utf-8" src=
"../../js/app.js"></script>
34 <a href=
"../../_index.html">Index (R)
</a> »
35 <span class='title'
><span class='object_link'
><a href=
"../../Lyricli.html" title=
"Lyricli (module)">Lyricli
</a></span></span> » <span class='title'
><span class='object_link'
><a href=
"../Sources.html" title=
"Lyricli::Sources (module)">Sources
</a></span></span>
37 <span class=
"title">Rdio
</span>
40 <div class=
"noframes"><span class=
"title">(
</span><a href=
"." target=
"_top">no frames
</a><span class=
"title">)
</span></div>
45 <a class=
"full_list_link" id=
"class_list_link"
46 href=
"../../class_list.html">
50 <a class=
"full_list_link" id=
"method_list_link"
51 href=
"../../method_list.html">
55 <a class=
"full_list_link" id=
"file_list_link"
56 href=
"../../file_list.html">
61 <div class=
"clear"></div>
64 <iframe id=
"search_frame"></iframe>
66 <div id=
"content"><h1>Class: Lyricli::Sources::Rdio
74 <dt class=
"r1">Inherits:
</dt>
76 <span class=
"inheritName">Object
</span>
81 <li class=
"next">Lyricli::Sources::Rdio
</li>
84 <a href=
"#" class=
"inheritanceTree">show all
</a>
96 <dt class=
"r2 last">Defined in:
</dt>
97 <dd class=
"r2 last">lib/lyricli/sources/rdio.rb
</dd>
100 <div class=
"clear"></div>
106 <h2>Class Attribute Summary
<small>(
<a href=
"#" class=
"summary_toggle">collapse
</a>)
</small></h2>
110 <span class=
"summary_signature">
112 <a href=
"#name-class_method" title=
"name (class method)">+ (Object)
<strong>name
</strong> </a>
129 <span class=
"summary_desc"><div class='inline'
><p>
130 Returns the value of attribute name.
145 <small>(
<a href=
"#" class=
"summary_toggle">collapse
</a>)
</small>
151 <span class=
"summary_signature">
153 <a href=
"#create_auth_token-class_method" title=
"create_auth_token (class method)">+ (Object)
<strong>create_auth_token
</strong> </a>
167 <span class=
"summary_desc"><div class='inline'
><p>
168 Signs in to rdio with our credentials and requests access for a new auth
177 <span class=
"summary_signature">
179 <a href=
"#enable-class_method" title=
"enable (class method)">+ (Object)
<strong>enable
</strong> </a>
193 <span class=
"summary_desc"><div class='inline'
><p>
194 The enable method should run all of the tasks needed to validate the
203 <span class=
"summary_signature">
205 <a href=
"#reset-class_method" title=
"reset (class method)">+ (Object)
<strong>reset
</strong> </a>
219 <span class=
"summary_desc"><div class='inline'
><p>
220 The reset method resets any configurations it may have.
230 Instance Method Summary
231 <small>(
<a href=
"#" class=
"summary_toggle">collapse
</a>)
</small>
237 <span class=
"summary_signature">
239 <a href=
"#current_track-instance_method" title=
"#current_track (instance method)">- (Hash)
<strong>current_track
</strong> </a>
253 <span class=
"summary_desc"><div class='inline'
><p>
254 The current_track method should return the name of the current artist and
263 <span class=
"summary_signature">
265 <a href=
"#initialize-instance_method" title=
"#initialize (instance method)">- (Rdio)
<strong>initialize
</strong> </a>
272 <span class=
"note title constructor">constructor
</span>
281 <span class=
"summary_desc"><div class='inline'
><p>
282 Instantiates everything it needs to run.
292 <div id=
"constructor_details" class=
"method_details_list">
293 <h2>Constructor Details
</h2>
295 <div class=
"method_details first">
296 <h3 class=
"signature first" id=
"initialize-instance_method">
298 - (
<tt><span class='object_link'
><a href=
"" title=
"Lyricli::Sources::Rdio (class)">Rdio
</a></span></tt>)
<strong>initialize
</strong>
304 </h3><div class=
"docstring">
305 <div class=
"discussion">
307 Instantiates everything it needs to run.
316 </div><table class=
"source_code">
329 <pre class=
"code"><span class=
"info file"># File 'lib/lyricli/sources/rdio.rb', line
27</span>
331 <span class='kw'
>def
</span> <span class='id identifier rubyid_initialize'
>initialize
</span>
332 <span class='ivar'
>@name
</span> <span class='op'
>=
</span> <span class='tstring'
><span class='tstring_beg'
>'
</span><span class='tstring_content'
>rdio
</span><span class='tstring_end'
>'
</span></span>
333 <span class='ivar'
>@config
</span> <span class='op'
>=
</span> <span class='const'
>Configuration
</span><span class='period'
>.
</span><span class='id identifier rubyid_instance'
>instance
</span>
334 <span class='ivar'
>@rdio
</span> <span class='op'
>=
</span> <span class='op'
>::
</span><span class='const'
>Rdio
</span><span class='op'
>::
</span><span class='const'
>SimpleRdio
</span><span class='period'
>.
</span><span class='id identifier rubyid_new'
>new
</span><span class='lparen'
>(
</span><span class='lbracket'
>[
</span><span class='ivar'
>@config
</span><span class='lbracket'
>[
</span><span class='tstring'
><span class='tstring_beg'
>"</span><span class='tstring_content'
>rdio_key
</span><span class='tstring_end'
>"</span></span><span class='rbracket'
>]
</span><span class='comma'
>,
</span> <span class='ivar'
>@config
</span><span class='lbracket'
>[
</span><span class='tstring'
><span class='tstring_beg'
>"</span><span class='tstring_content'
>rdio_secret
</span><span class='tstring_end'
>"</span></span><span class='rbracket'
>]
</span><span class='rbracket'
>]
</span><span class='comma'
>,
</span> <span class='ivar'
>@config
</span><span class='lbracket'
>[
</span><span class='tstring'
><span class='tstring_beg'
>"</span><span class='tstring_content'
>rdio_auth_token
</span><span class='tstring_end'
>"</span></span><span class='rbracket'
>]
</span><span class='rparen'
>)
</span>
335 <span class='kw'
>end
</span></pre>
343 <div id=
"class_attr_details" class=
"attr_details">
344 <h2>Class Attribute Details
</h2>
347 <span id=
"name=-class_method"></span>
348 <div class=
"method_details first">
349 <h3 class=
"signature first" id=
"name-class_method">
351 + (
<tt>Object
</tt>)
<strong>name
</strong>
357 </h3><div class=
"docstring">
358 <div class=
"discussion">
360 Returns the value of attribute name
369 </div><table class=
"source_code">
380 <pre class=
"code"><span class=
"info file"># File 'lib/lyricli/sources/rdio.rb', line
6</span>
382 <span class='kw'
>def
</span> <span class='id identifier rubyid_name'
>name
</span>
383 <span class='ivar'
>@name
</span>
384 <span class='kw'
>end
</span></pre>
393 <div id=
"class_method_details" class=
"method_details_list">
394 <h2>Class Method Details
</h2>
397 <div class=
"method_details first">
398 <h3 class=
"signature first" id=
"create_auth_token-class_method">
400 + (
<tt>Object
</tt>)
<strong>create_auth_token
</strong>
406 </h3><div class=
"docstring">
407 <div class=
"discussion">
409 Signs in to rdio with our credentials and requests access for a new auth
419 </div><table class=
"source_code">
444 <pre class=
"code"><span class=
"info file"># File 'lib/lyricli/sources/rdio.rb', line
51</span>
446 <span class='kw'
>def
</span> <span class='kw'
>self
</span><span class='period'
>.
</span><span class='id identifier rubyid_create_auth_token'
>create_auth_token
</span>
447 <span class='id identifier rubyid_rdio'
>rdio
</span> <span class='op'
>=
</span> <span class='op'
>::
</span><span class='const'
>Rdio
</span><span class='op'
>::
</span><span class='const'
>SimpleRdio
</span><span class='period'
>.
</span><span class='id identifier rubyid_new'
>new
</span><span class='lparen'
>(
</span><span class='lbracket'
>[
</span><span class='ivar'
>@config
</span><span class='lbracket'
>[
</span><span class='tstring'
><span class='tstring_beg'
>"</span><span class='tstring_content'
>rdio_key
</span><span class='tstring_end'
>"</span></span><span class='rbracket'
>]
</span><span class='comma'
>,
</span> <span class='ivar'
>@config
</span><span class='lbracket'
>[
</span><span class='tstring'
><span class='tstring_beg'
>"</span><span class='tstring_content'
>rdio_secret
</span><span class='tstring_end'
>"</span></span><span class='rbracket'
>]
</span><span class='rbracket'
>]
</span><span class='comma'
>,
</span> <span class='ivar'
>@config
</span><span class='lbracket'
>[
</span><span class='tstring'
><span class='tstring_beg'
>"</span><span class='tstring_content'
>rdio_auth_token
</span><span class='tstring_end'
>"</span></span><span class='rbracket'
>]
</span><span class='rparen'
>)
</span>
449 <span class='comment'
># Request Authorization
450 </span> <span class='id identifier rubyid_puts'
>puts
</span> <span class='tstring'
><span class='tstring_beg'
>"</span><span class='tstring_content'
>Follow this URL to authorize lyricli:
</span><span class='tstring_end'
>"</span></span>
451 <span class='id identifier rubyid_auth_url'
>auth_url
</span> <span class='op'
>=
</span> <span class='id identifier rubyid_rdio'
>rdio
</span><span class='period'
>.
</span><span class='id identifier rubyid_begin_authentication'
>begin_authentication
</span><span class='lparen'
>(
</span><span class='tstring'
><span class='tstring_beg'
>'
</span><span class='tstring_content'
>oob
</span><span class='tstring_end'
>'
</span></span><span class='rparen'
>)
</span>
452 <span class='id identifier rubyid_puts'
>puts
</span> <span class='id identifier rubyid_auth_url'
>auth_url
</span>
453 <span class='op'
>::
</span><span class='const'
>Launchy
</span><span class='period'
>.
</span><span class='id identifier rubyid_open'
>open
</span><span class='lparen'
>(
</span><span class='id identifier rubyid_auth_url'
>auth_url
</span><span class='rparen'
>)
</span>
455 <span class='comment'
># Request Code, Obtain Token
456 </span> <span class='id identifier rubyid_print'
>print
</span> <span class='tstring'
><span class='tstring_beg'
>"</span><span class='tstring_content'
>Please type the authorization code:
</span><span class='tstring_end'
>"</span></span>
457 <span class='id identifier rubyid_auth_code'
>auth_code
</span> <span class='op'
>=
</span> <span class='id identifier rubyid_gets'
>gets
</span><span class='period'
>.
</span><span class='id identifier rubyid_chomp'
>chomp
</span>
458 <span class='id identifier rubyid_token'
>token
</span> <span class='op'
>=
</span> <span class='id identifier rubyid_rdio'
>rdio
</span><span class='period'
>.
</span><span class='id identifier rubyid_complete_authentication'
>complete_authentication
</span><span class='lparen'
>(
</span><span class='id identifier rubyid_auth_code'
>auth_code
</span><span class='rparen'
>)
</span>
460 <span class='ivar'
>@config
</span><span class='lbracket'
>[
</span><span class='tstring'
><span class='tstring_beg'
>"</span><span class='tstring_content'
>rdio_auth_token
</span><span class='tstring_end'
>"</span></span><span class='rbracket'
>]
</span> <span class='op'
>=
</span> <span class='id identifier rubyid_token'
>token
</span>
461 <span class='id identifier rubyid_token'
>token
</span>
462 <span class='kw'
>end
</span></pre>
468 <div class=
"method_details ">
469 <h3 class=
"signature " id=
"enable-class_method">
471 + (
<tt>Object
</tt>)
<strong>enable
</strong>
477 </h3><div class=
"docstring">
478 <div class=
"discussion">
480 The enable method should run all of the tasks needed to validate the
481 source. In the case of Rdio it has to authenticate with OAuth.
490 </div><table class=
"source_code">
510 <pre class=
"code"><span class=
"info file"># File 'lib/lyricli/sources/rdio.rb', line
13</span>
512 <span class='kw'
>def
</span> <span class='kw'
>self
</span><span class='period'
>.
</span><span class='id identifier rubyid_enable'
>enable
</span>
513 <span class='comment'
># Validation Code
514 </span> <span class='ivar'
>@config
</span> <span class='op'
>=
</span> <span class='const'
>Configuration
</span><span class='period'
>.
</span><span class='id identifier rubyid_instance'
>instance
</span>
515 <span class='kw'
>unless
</span> <span class='ivar'
>@config
</span><span class='lbracket'
>[
</span><span class='tstring'
><span class='tstring_beg'
>"</span><span class='tstring_content'
>rdio_auth_token
</span><span class='tstring_end'
>"</span></span><span class='rbracket'
>]
</span> <span class='op'
>&&</span> <span class='op'
>!
</span><span class='ivar'
>@config
</span><span class='lbracket'
>[
</span><span class='tstring'
><span class='tstring_beg'
>"</span><span class='tstring_content'
>rdio_auth_token
</span><span class='tstring_end'
>"</span></span><span class='rbracket'
>]
</span><span class='period'
>.
</span><span class='id identifier rubyid_empty?'
>empty?
</span>
516 <span class='id identifier rubyid_create_auth_token'
>create_auth_token
</span>
517 <span class='kw'
>end
</span>
519 <span class='id identifier rubyid_puts'
>puts
</span> <span class='tstring'
><span class='tstring_beg'
>"</span><span class='tstring_content'
>***
</span><span class='tstring_end'
>"</span></span>
520 <span class='id identifier rubyid_puts'
>puts
</span> <span class='tstring'
><span class='tstring_beg'
>"</span><span class='tstring_content'
>Hello, rdio tends to be a bit aggressive and tends to have trouble with other sources. If you're having trouble, you can disable it temporarily. You will not have to reauthenticate.
</span><span class='tstring_end'
>"</span></span>
521 <span class='id identifier rubyid_puts'
>puts
</span> <span class='tstring'
><span class='tstring_beg'
>"</span><span class='tstring_content'
>***
</span><span class='tstring_end'
>"</span></span>
523 <span class='kw'
>end
</span></pre>
529 <div class=
"method_details ">
530 <h3 class=
"signature " id=
"reset-class_method">
532 + (
<tt>Object
</tt>)
<strong>reset
</strong>
538 </h3><div class=
"docstring">
539 <div class=
"discussion">
541 The reset method resets any configurations it may have
550 </div><table class=
"source_code">
562 <pre class=
"code"><span class=
"info file"># File 'lib/lyricli/sources/rdio.rb', line
44</span>
564 <span class='kw'
>def
</span> <span class='kw'
>self
</span><span class='period'
>.
</span><span class='id identifier rubyid_reset'
>reset
</span>
565 <span class='ivar'
>@config
</span> <span class='op'
>=
</span> <span class='const'
>Configuration
</span><span class='period'
>.
</span><span class='id identifier rubyid_instance'
>instance
</span>
566 <span class='ivar'
>@config
</span><span class='period'
>.
</span><span class='id identifier rubyid_delete'
>delete
</span><span class='lparen'
>(
</span><span class='tstring'
><span class='tstring_beg'
>"</span><span class='tstring_content'
>rdio_auth_token
</span><span class='tstring_end'
>"</span></span><span class='rparen'
>)
</span>
567 <span class='kw'
>end
</span></pre>
575 <div id=
"instance_method_details" class=
"method_details_list">
576 <h2>Instance Method Details
</h2>
579 <div class=
"method_details first">
580 <h3 class=
"signature first" id=
"current_track-instance_method">
582 - (
<tt>Hash
</tt>)
<strong>current_track
</strong>
588 </h3><div class=
"docstring">
589 <div class=
"discussion">
591 The current_track method should return the name of the current artist and
600 <p class=
"tag_title">Returns:
</p>
606 <span class='type'
>(
<tt>Hash
</tt>)
</span>
611 <div class='inline'
><p>
612 A hash containing the current `:song` and `:artist`.
620 </div><table class=
"source_code">
634 <pre class=
"code"><span class=
"info file"># File 'lib/lyricli/sources/rdio.rb', line
36</span>
636 <span class='kw'
>def
</span> <span class='id identifier rubyid_current_track'
>current_track
</span>
637 <span class='id identifier rubyid_response'
>response
</span> <span class='op'
>=
</span> <span class='ivar'
>@rdio
</span><span class='period'
>.
</span><span class='id identifier rubyid_call'
>call
</span><span class='lparen'
>(
</span><span class='tstring'
><span class='tstring_beg'
>'
</span><span class='tstring_content'
>currentUser
</span><span class='tstring_end'
>'
</span></span><span class='comma'
>,
</span> <span class='lbrace'
>{
</span><span class='tstring'
><span class='tstring_beg'
>'
</span><span class='tstring_content'
>extras
</span><span class='tstring_end'
>'
</span></span> <span class='op'
>=
></span> <span class='tstring'
><span class='tstring_beg'
>'
</span><span class='tstring_content'
>lastSongPlayed
</span><span class='tstring_end'
>'
</span></span><span class='rbrace'
>}
</span><span class='rparen'
>)
</span>
638 <span class='id identifier rubyid_artist'
>artist
</span> <span class='op'
>=
</span> <span class='id identifier rubyid_response'
>response
</span><span class='lbracket'
>[
</span><span class='tstring'
><span class='tstring_beg'
>"</span><span class='tstring_content'
>result
</span><span class='tstring_end'
>"</span></span><span class='rbracket'
>]
</span><span class='lbracket'
>[
</span><span class='tstring'
><span class='tstring_beg'
>"</span><span class='tstring_content'
>lastSongPlayed
</span><span class='tstring_end'
>"</span></span><span class='rbracket'
>]
</span><span class='lbracket'
>[
</span><span class='tstring'
><span class='tstring_beg'
>"</span><span class='tstring_content'
>artist
</span><span class='tstring_end'
>"</span></span><span class='rbracket'
>]
</span>
639 <span class='id identifier rubyid_song'
>song
</span> <span class='op'
>=
</span> <span class='id identifier rubyid_response'
>response
</span><span class='lbracket'
>[
</span><span class='tstring'
><span class='tstring_beg'
>"</span><span class='tstring_content'
>result
</span><span class='tstring_end'
>"</span></span><span class='rbracket'
>]
</span><span class='lbracket'
>[
</span><span class='tstring'
><span class='tstring_beg'
>"</span><span class='tstring_content'
>lastSongPlayed
</span><span class='tstring_end'
>"</span></span><span class='rbracket'
>]
</span><span class='lbracket'
>[
</span><span class='tstring'
><span class='tstring_beg'
>"</span><span class='tstring_content'
>name
</span><span class='tstring_end'
>"</span></span><span class='rbracket'
>]
</span>
640 <span class='lbrace'
>{
</span><span class='label'
>artist:
</span> <span class='id identifier rubyid_artist'
>artist
</span><span class='comma'
>,
</span> <span class='label'
>song:
</span> <span class='id identifier rubyid_song'
>song
</span><span class='rbrace'
>}
</span>
641 <span class='kw'
>end
</span></pre>
652 Generated on Sat Oct
6 02:
05:
51 2012 by
653 <a href=
"http://yardoc.org" title=
"Yay! A Ruby Documentation Tool" target=
"_parent">yard
</a>
654 0.8.2.1 (ruby-
1.9.2).