]> git.r.bdr.sh - rbdr/lyricli.rb/blame_incremental - doc/Lyricli/Sources/Rdio.html
Integrates iTunes source
[rbdr/lyricli.rb] / doc / Lyricli / Sources / Rdio.html
... / ...
CommitLineData
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">
4 <head>
5 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
6<title>
7 Class: Lyricli::Sources::Rdio
8
9 &mdash; Documentation by YARD 0.8.1
10
11</title>
12
13 <link rel="stylesheet" href="../../css/style.css" type="text/css" media="screen" charset="utf-8" />
14
15 <link rel="stylesheet" href="../../css/common.css" type="text/css" media="screen" charset="utf-8" />
16
17<script type="text/javascript" charset="utf-8">
18 hasFrames = window.top.frames.main ? true : false;
19 relpath = '../../';
20 framesUrl = "../../frames.html#!" + escape(window.location.href);
21</script>
22
23
24 <script type="text/javascript" charset="utf-8" src="../../js/jquery.js"></script>
25
26 <script type="text/javascript" charset="utf-8" src="../../js/app.js"></script>
27
28
29 </head>
30 <body>
31 <div id="header">
32 <div id="menu">
33
34 <a href="../../_index.html">Index (R)</a> &raquo;
35 <span class='title'><span class='object_link'><a href="../../Lyricli.html" title="Lyricli (module)">Lyricli</a></span></span> &raquo; <span class='title'><span class='object_link'><a href="../Sources.html" title="Lyricli::Sources (module)">Sources</a></span></span>
36 &raquo;
37 <span class="title">Rdio</span>
38
39
40 <div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div>
41</div>
42
43 <div id="search">
44
45 <a class="full_list_link" id="class_list_link"
46 href="../../class_list.html">
47 Class List
48 </a>
49
50 <a class="full_list_link" id="method_list_link"
51 href="../../method_list.html">
52 Method List
53 </a>
54
55 <a class="full_list_link" id="file_list_link"
56 href="../../file_list.html">
57 File List
58 </a>
59
60</div>
61 <div class="clear"></div>
62 </div>
63
64 <iframe id="search_frame"></iframe>
65
66 <div id="content"><h1>Class: Lyricli::Sources::Rdio
67
68
69
70</h1>
71
72<dl class="box">
73
74 <dt class="r1">Inherits:</dt>
75 <dd class="r1">
76 <span class="inheritName">Object</span>
77
78 <ul class="fullTree">
79 <li>Object</li>
80
81 <li class="next">Lyricli::Sources::Rdio</li>
82
83 </ul>
84 <a href="#" class="inheritanceTree">show all</a>
85
86 </dd>
87
88
89
90
91
92
93
94
95
96 <dt class="r2 last">Defined in:</dt>
97 <dd class="r2 last">lib/lyricli/sources/rdio.rb</dd>
98
99</dl>
100<div class="clear"></div>
101
102
103
104
105
106 <h2>Class Attribute Summary <small>(<a href="#" class="summary_toggle">collapse</a>)</small></h2>
107 <ul class="summary">
108
109 <li class="public ">
110 <span class="summary_signature">
111
112 <a href="#name-class_method" title="name (class method)">+ (Object) <strong>name</strong> </a>
113
114
115
116 </span>
117
118
119
120
121
122
123
124
125
126
127
128
129 <span class="summary_desc"><div class='inline'><p>
130Returns the value of attribute name.
131</p>
132</div></span>
133
134</li>
135
136
137 </ul>
138
139
140
141
142
143 <h2>
144 Class Method Summary
145 <small>(<a href="#" class="summary_toggle">collapse</a>)</small>
146 </h2>
147
148 <ul class="summary">
149
150 <li class="public ">
151 <span class="summary_signature">
152
153 <a href="#create_auth_token-class_method" title="create_auth_token (class method)">+ (Object) <strong>create_auth_token</strong> </a>
154
155
156
157 </span>
158
159
160
161
162
163
164
165
166
167 <span class="summary_desc"><div class='inline'><p>
168Signs in to rdio with our credentials and requests access for a new auth
169token.
170</p>
171</div></span>
172
173</li>
174
175
176 <li class="public ">
177 <span class="summary_signature">
178
179 <a href="#enable-class_method" title="enable (class method)">+ (Object) <strong>enable</strong> </a>
180
181
182
183 </span>
184
185
186
187
188
189
190
191
192
193 <span class="summary_desc"><div class='inline'><p>
194The enable method should run all of the tasks needed to validate the
195source.
196</p>
197</div></span>
198
199</li>
200
201
202 <li class="public ">
203 <span class="summary_signature">
204
205 <a href="#reset-class_method" title="reset (class method)">+ (Object) <strong>reset</strong> </a>
206
207
208
209 </span>
210
211
212
213
214
215
216
217
218
219 <span class="summary_desc"><div class='inline'><p>
220The reset method resets any configurations it may have.
221</p>
222</div></span>
223
224</li>
225
226
227 </ul>
228
229 <h2>
230 Instance Method Summary
231 <small>(<a href="#" class="summary_toggle">collapse</a>)</small>
232 </h2>
233
234 <ul class="summary">
235
236 <li class="public ">
237 <span class="summary_signature">
238
239 <a href="#current_track-instance_method" title="#current_track (instance method)">- (Hash) <strong>current_track</strong> </a>
240
241
242
243 </span>
244
245
246
247
248
249
250
251
252
253 <span class="summary_desc"><div class='inline'><p>
254The current_track method should return the name of the current artist and
255song.
256</p>
257</div></span>
258
259</li>
260
261
262 <li class="public ">
263 <span class="summary_signature">
264
265 <a href="#initialize-instance_method" title="#initialize (instance method)">- (Rdio) <strong>initialize</strong> </a>
266
267
268
269 </span>
270
271
272 <span class="note title constructor">constructor</span>
273
274
275
276
277
278
279
280
281 <span class="summary_desc"><div class='inline'><p>
282Instantiates everything it needs to run.
283</p>
284</div></span>
285
286</li>
287
288
289 </ul>
290
291
292<div id="constructor_details" class="method_details_list">
293 <h2>Constructor Details</h2>
294
295 <div class="method_details first">
296 <h3 class="signature first" id="initialize-instance_method">
297
298 - (<tt><span class='object_link'><a href="" title="Lyricli::Sources::Rdio (class)">Rdio</a></span></tt>) <strong>initialize</strong>
299
300
301
302
303
304</h3><div class="docstring">
305 <div class="discussion">
306 <p>
307Instantiates everything it needs to run.
308</p>
309
310
311 </div>
312</div>
313<div class="tags">
314
315
316</div><table class="source_code">
317 <tr>
318 <td>
319 <pre class="lines">
320
321
32223
32324
32425
32526
32627</pre>
327 </td>
328 <td>
329 <pre class="code"><span class="info file"># File 'lib/lyricli/sources/rdio.rb', line 23</span>
330
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'>Lyricli</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='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'>&quot;</span><span class='tstring_content'>rdio_key</span><span class='tstring_end'>&quot;</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'>&quot;</span><span class='tstring_content'>rdio_secret</span><span class='tstring_end'>&quot;</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'>&quot;</span><span class='tstring_content'>rdio_auth_token</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span><span class='rparen'>)</span>
335<span class='kw'>end</span></pre>
336 </td>
337 </tr>
338</table>
339</div>
340
341</div>
342
343 <div id="class_attr_details" class="attr_details">
344 <h2>Class Attribute Details</h2>
345
346
347 <span id="name=-class_method"></span>
348 <span id="name-class_method"></span>
349 <div class="method_details first">
350 <h3 class="signature first" id="name-class_method">
351
352 + (<tt>Object</tt>) <strong>name</strong>
353
354
355
356
357
358</h3><div class="docstring">
359 <div class="discussion">
360 <p>
361Returns the value of attribute name
362</p>
363
364
365 </div>
366</div>
367<div class="tags">
368
369
370</div><table class="source_code">
371 <tr>
372 <td>
373 <pre class="lines">
374
375
3766
3777
3788</pre>
379 </td>
380 <td>
381 <pre class="code"><span class="info file"># File 'lib/lyricli/sources/rdio.rb', line 6</span>
382
383<span class='kw'>def</span> <span class='id identifier rubyid_name'>name</span>
384 <span class='ivar'>@name</span>
385<span class='kw'>end</span></pre>
386 </td>
387 </tr>
388</table>
389</div>
390
391 </div>
392
393
394 <div id="class_method_details" class="method_details_list">
395 <h2>Class Method Details</h2>
396
397
398 <div class="method_details first">
399 <h3 class="signature first" id="create_auth_token-class_method">
400
401 + (<tt>Object</tt>) <strong>create_auth_token</strong>
402
403
404
405
406
407</h3><div class="docstring">
408 <div class="discussion">
409 <p>
410Signs in to rdio with our credentials and requests access for a new auth
411token.
412</p>
413
414
415 </div>
416</div>
417<div class="tags">
418
419
420</div><table class="source_code">
421 <tr>
422 <td>
423 <pre class="lines">
424
425
42646
42747
42848
42949
43050
43151
43252
43353
43454
43555
43656
43757
43858
43959
44060
44161
44262</pre>
443 </td>
444 <td>
445 <pre class="code"><span class="info file"># File 'lib/lyricli/sources/rdio.rb', line 46</span>
446
447<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>
448 <span class='ivar'>@rdio</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'>&quot;</span><span class='tstring_content'>rdio_key</span><span class='tstring_end'>&quot;</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'>&quot;</span><span class='tstring_content'>rdio_secret</span><span class='tstring_end'>&quot;</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'>&quot;</span><span class='tstring_content'>rdio_auth_token</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span><span class='rparen'>)</span>
449
450 <span class='comment'># Request Authorization
451</span> <span class='id identifier rubyid_puts'>puts</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Follow this URL to authorize lyricli:</span><span class='tstring_end'>&quot;</span></span>
452 <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>
453 <span class='id identifier rubyid_puts'>puts</span> <span class='id identifier rubyid_auth_url'>auth_url</span>
454 <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
456 <span class='comment'># Request Code, Obtain Token
457</span> <span class='id identifier rubyid_print'>print</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Please type the authorization code: </span><span class='tstring_end'>&quot;</span></span>
458 <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>
459 <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
461 <span class='ivar'>@config</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>rdio_auth_token</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_token'>token</span>
462 <span class='id identifier rubyid_token'>token</span>
463<span class='kw'>end</span></pre>
464 </td>
465 </tr>
466</table>
467</div>
468
469 <div class="method_details ">
470 <h3 class="signature " id="enable-class_method">
471
472 + (<tt>Object</tt>) <strong>enable</strong>
473
474
475
476
477
478</h3><div class="docstring">
479 <div class="discussion">
480 <p>
481The enable method should run all of the tasks needed to validate the
482source. In the case of Rdio it has to authenticate with OAuth.
483</p>
484
485
486 </div>
487</div>
488<div class="tags">
489
490
491</div><table class="source_code">
492 <tr>
493 <td>
494 <pre class="lines">
495
496
49713
49814
49915
50016
50117
50218
50319
50420</pre>
505 </td>
506 <td>
507 <pre class="code"><span class="info file"># File 'lib/lyricli/sources/rdio.rb', line 13</span>
508
509<span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_enable'>enable</span>
510 <span class='comment'># Validation Code
511</span> <span class='ivar'>@config</span> <span class='op'>=</span> <span class='const'>Lyricli</span><span class='op'>::</span><span class='const'>Configuration</span><span class='period'>.</span><span class='id identifier rubyid_instance'>instance</span>
512 <span class='kw'>unless</span> <span class='ivar'>@config</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>rdio_auth_token</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span> <span class='op'>&amp;&amp;</span> <span class='op'>!</span><span class='ivar'>@config</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>rdio_auth_token</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_empty?'>empty?</span>
513 <span class='id identifier rubyid_create_auth_token'>create_auth_token</span>
514 <span class='kw'>end</span>
515
516<span class='kw'>end</span></pre>
517 </td>
518 </tr>
519</table>
520</div>
521
522 <div class="method_details ">
523 <h3 class="signature " id="reset-class_method">
524
525 + (<tt>Object</tt>) <strong>reset</strong>
526
527
528
529
530
531</h3><div class="docstring">
532 <div class="discussion">
533 <p>
534The reset method resets any configurations it may have
535</p>
536
537
538 </div>
539</div>
540<div class="tags">
541
542
543</div><table class="source_code">
544 <tr>
545 <td>
546 <pre class="lines">
547
548
54940
55041
55142</pre>
552 </td>
553 <td>
554 <pre class="code"><span class="info file"># File 'lib/lyricli/sources/rdio.rb', line 40</span>
555
556<span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_reset'>reset</span>
557 <span class='comment'># Reset Code
558</span><span class='kw'>end</span></pre>
559 </td>
560 </tr>
561</table>
562</div>
563
564 </div>
565
566 <div id="instance_method_details" class="method_details_list">
567 <h2>Instance Method Details</h2>
568
569
570 <div class="method_details first">
571 <h3 class="signature first" id="current_track-instance_method">
572
573 - (<tt>Hash</tt>) <strong>current_track</strong>
574
575
576
577
578
579</h3><div class="docstring">
580 <div class="discussion">
581 <p>
582The current_track method should return the name of the current artist and
583song.
584</p>
585
586
587 </div>
588</div>
589<div class="tags">
590
591<p class="tag_title">Returns:</p>
592<ul class="return">
593
594 <li>
595
596
597 <span class='type'>(<tt>Hash</tt>)</span>
598
599
600
601 &mdash;
602 <div class='inline'><p>
603A hash containing the current `:song` and `:artist`.
604</p>
605</div>
606
607 </li>
608
609</ul>
610
611</div><table class="source_code">
612 <tr>
613 <td>
614 <pre class="lines">
615
616
61732
61833
61934
62035
62136
62237</pre>
623 </td>
624 <td>
625 <pre class="code"><span class="info file"># File 'lib/lyricli/sources/rdio.rb', line 32</span>
626
627<span class='kw'>def</span> <span class='id identifier rubyid_current_track'>current_track</span>
628 <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'>=&gt;</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>
629 <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'>&quot;</span><span class='tstring_content'>result</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>lastSongPlayed</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>artist</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span>
630 <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'>&quot;</span><span class='tstring_content'>result</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>lastSongPlayed</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>name</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span>
631 <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>
632<span class='kw'>end</span></pre>
633 </td>
634 </tr>
635</table>
636</div>
637
638 </div>
639
640</div>
641
642 <div id="footer">
643 Generated on Fri Oct 5 22:31:14 2012 by
644 <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
645 0.8.1 (ruby-1.9.2).
646</div>
647
648 </body>
649</html>