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>
102 <h2>Overview
</h2><div class=
"docstring">
103 <div class=
"discussion">
105 This is the Source for rdio
118 <h2>Class Attribute Summary
<small>(
<a href=
"#" class=
"summary_toggle">collapse
</a>)
</small></h2>
122 <span class=
"summary_signature">
124 <a href=
"#name-class_method" title=
"name (class method)">+ (Object)
<strong>name
</strong> </a>
141 <span class=
"summary_desc"><div class='inline'
><p>
142 Returns the value of attribute name.
157 <small>(
<a href=
"#" class=
"summary_toggle">collapse
</a>)
</small>
163 <span class=
"summary_signature">
165 <a href=
"#create_auth_token-class_method" title=
"create_auth_token (class method)">+ (Object)
<strong>create_auth_token
</strong> </a>
179 <span class=
"summary_desc"><div class='inline'
><p>
180 Signs in to rdio with our credentials and requests access for a new auth
189 <span class=
"summary_signature">
191 <a href=
"#enable-class_method" title=
"enable (class method)">+ (Object)
<strong>enable
</strong> </a>
205 <span class=
"summary_desc"><div class='inline'
><p>
206 The enable method should run all of the tasks needed to validate the
215 <span class=
"summary_signature">
217 <a href=
"#reset-class_method" title=
"reset (class method)">+ (Object)
<strong>reset
</strong> </a>
231 <span class=
"summary_desc"><div class='inline'
><p>
232 The reset method resets any configurations it may have.
242 Instance Method Summary
243 <small>(
<a href=
"#" class=
"summary_toggle">collapse
</a>)
</small>
249 <span class=
"summary_signature">
251 <a href=
"#current_track-instance_method" title=
"#current_track (instance method)">- (Hash)
<strong>current_track
</strong> </a>
265 <span class=
"summary_desc"><div class='inline'
><p>
266 The current_track method should return the name of the current artist and
275 <span class=
"summary_signature">
277 <a href=
"#initialize-instance_method" title=
"#initialize (instance method)">- (Rdio)
<strong>initialize
</strong> </a>
284 <span class=
"note title constructor">constructor
</span>
293 <span class=
"summary_desc"><div class='inline'
><p>
294 Instantiates everything it needs to run.
304 <div id=
"constructor_details" class=
"method_details_list">
305 <h2>Constructor Details
</h2>
307 <div class=
"method_details first">
308 <h3 class=
"signature first" id=
"initialize-instance_method">
310 - (
<tt><span class='object_link'
><a href=
"" title=
"Lyricli::Sources::Rdio (class)">Rdio
</a></span></tt>)
<strong>initialize
</strong>
316 </h3><div class=
"docstring">
317 <div class=
"discussion">
319 Instantiates everything it needs to run.
328 </div><table class=
"source_code">
341 <pre class=
"code"><span class=
"info file"># File 'lib/lyricli/sources/rdio.rb', line
29</span>
343 <span class='kw'
>def
</span> <span class='id identifier rubyid_initialize'
>initialize
</span>
344 <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>
345 <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>
346 <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>
347 <span class='kw'
>end
</span></pre>
355 <div id=
"class_attr_details" class=
"attr_details">
356 <h2>Class Attribute Details
</h2>
359 <span id=
"name=-class_method"></span>
360 <div class=
"method_details first">
361 <h3 class=
"signature first" id=
"name-class_method">
363 + (
<tt>Object
</tt>)
<strong>name
</strong>
369 </h3><div class=
"docstring">
370 <div class=
"discussion">
372 Returns the value of attribute name
381 </div><table class=
"source_code">
392 <pre class=
"code"><span class=
"info file"># File 'lib/lyricli/sources/rdio.rb', line
8</span>
394 <span class='kw'
>def
</span> <span class='id identifier rubyid_name'
>name
</span>
395 <span class='ivar'
>@name
</span>
396 <span class='kw'
>end
</span></pre>
405 <div id=
"class_method_details" class=
"method_details_list">
406 <h2>Class Method Details
</h2>
409 <div class=
"method_details first">
410 <h3 class=
"signature first" id=
"create_auth_token-class_method">
412 + (
<tt>Object
</tt>)
<strong>create_auth_token
</strong>
418 </h3><div class=
"docstring">
419 <div class=
"discussion">
421 Signs in to rdio with our credentials and requests access for a new auth
431 </div><table class=
"source_code">
456 <pre class=
"code"><span class=
"info file"># File 'lib/lyricli/sources/rdio.rb', line
54</span>
458 <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>
459 <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>
461 <span class='comment'
># Request Authorization
462 </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>
463 <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>
464 <span class='id identifier rubyid_puts'
>puts
</span> <span class='id identifier rubyid_auth_url'
>auth_url
</span>
465 <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>
467 <span class='comment'
># Request Code, Obtain Token
468 </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>
469 <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>
470 <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>
472 <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>
473 <span class='id identifier rubyid_token'
>token
</span>
474 <span class='kw'
>end
</span></pre>
480 <div class=
"method_details ">
481 <h3 class=
"signature " id=
"enable-class_method">
483 + (
<tt>Object
</tt>)
<strong>enable
</strong>
489 </h3><div class=
"docstring">
490 <div class=
"discussion">
492 The enable method should run all of the tasks needed to validate the
493 source. In the case of Rdio it has to authenticate with OAuth.
502 </div><table class=
"source_code">
522 <pre class=
"code"><span class=
"info file"># File 'lib/lyricli/sources/rdio.rb', line
15</span>
524 <span class='kw'
>def
</span> <span class='kw'
>self
</span><span class='period'
>.
</span><span class='id identifier rubyid_enable'
>enable
</span>
525 <span class='comment'
># Validation Code
526 </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>
527 <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>
528 <span class='id identifier rubyid_create_auth_token'
>create_auth_token
</span>
529 <span class='kw'
>end
</span>
531 <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>
532 <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>
533 <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>
535 <span class='kw'
>end
</span></pre>
541 <div class=
"method_details ">
542 <h3 class=
"signature " id=
"reset-class_method">
544 + (
<tt>Object
</tt>)
<strong>reset
</strong>
550 </h3><div class=
"docstring">
551 <div class=
"discussion">
553 The reset method resets any configurations it may have
562 </div><table class=
"source_code">
574 <pre class=
"code"><span class=
"info file"># File 'lib/lyricli/sources/rdio.rb', line
47</span>
576 <span class='kw'
>def
</span> <span class='kw'
>self
</span><span class='period'
>.
</span><span class='id identifier rubyid_reset'
>reset
</span>
577 <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>
578 <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>
579 <span class='kw'
>end
</span></pre>
587 <div id=
"instance_method_details" class=
"method_details_list">
588 <h2>Instance Method Details
</h2>
591 <div class=
"method_details first">
592 <h3 class=
"signature first" id=
"current_track-instance_method">
594 - (
<tt>Hash
</tt>)
<strong>current_track
</strong>
600 </h3><div class=
"docstring">
601 <div class=
"discussion">
603 The current_track method should return the name of the current artist and
612 <p class=
"tag_title">Returns:
</p>
618 <span class='type'
>(
<tt>Hash
</tt>)
</span>
623 <div class='inline'
><p>
624 A hash containing the current `:song` and `:artist`.
632 </div><table class=
"source_code">
646 <pre class=
"code"><span class=
"info file"># File 'lib/lyricli/sources/rdio.rb', line
39</span>
648 <span class='kw'
>def
</span> <span class='id identifier rubyid_current_track'
>current_track
</span>
649 <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>
650 <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>
651 <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>
652 <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>
653 <span class='kw'
>end
</span></pre>
664 Generated on Sat Oct
6 02:
34:
27 2012 by
665 <a href=
"http://yardoc.org" title=
"Yay! A Ruby Documentation Tool" target=
"_parent">yard
</a>
666 0.8.2.1 (ruby-
1.9.2).