google-authsub 0.0.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (69) hide show
  1. data/.gitignore +1 -0
  2. data/MIT-LICENSE +20 -0
  3. data/README +98 -0
  4. data/Rakefile +19 -0
  5. data/VERSION +1 -0
  6. data/coverage/-Library-Ruby-Gems-1_8-gems-FakeWeb-1_1_2-lib-fake_net_http_rb.html +679 -0
  7. data/coverage/-Library-Ruby-Gems-1_8-gems-FakeWeb-1_1_2-lib-fake_web_rb.html +843 -0
  8. data/coverage/-Library-Ruby-Gems-1_8-gems-rcov-0_8_1_2_0-lib-rcov_rb.html +1598 -0
  9. data/coverage/index.html +360 -0
  10. data/coverage/lib-googleauthsub_rb.html +877 -0
  11. data/coverage/spec-googleauthsub_spec_rb.html +950 -0
  12. data/coverage/spec-spec_helper_rb.html +640 -0
  13. data/doc/classes/AuthEchoServlet.html +152 -0
  14. data/doc/classes/AuthEchoServlet.src/M000001.html +20 -0
  15. data/doc/classes/AuthEchoServlet.src/M000002.html +18 -0
  16. data/doc/classes/GData/AuthSubError.html +139 -0
  17. data/doc/classes/GData/AuthSubError.src/M000019.html +18 -0
  18. data/doc/classes/GData/Error.html +111 -0
  19. data/doc/classes/GData/GoogleAuthSub.html +521 -0
  20. data/doc/classes/GData/GoogleAuthSub.src/M000001.html +29 -0
  21. data/doc/classes/GData/GoogleAuthSub.src/M000002.html +22 -0
  22. data/doc/classes/GData/GoogleAuthSub.src/M000003.html +29 -0
  23. data/doc/classes/GData/GoogleAuthSub.src/M000004.html +22 -0
  24. data/doc/classes/GData/GoogleAuthSub.src/M000005.html +24 -0
  25. data/doc/classes/GData/GoogleAuthSub.src/M000006.html +19 -0
  26. data/doc/classes/GData/GoogleAuthSub.src/M000007.html +18 -0
  27. data/doc/classes/GData/GoogleAuthSub.src/M000008.html +18 -0
  28. data/doc/classes/GData/GoogleAuthSub.src/M000009.html +24 -0
  29. data/doc/classes/GData/GoogleAuthSub.src/M000010.html +25 -0
  30. data/doc/classes/GData/GoogleAuthSub.src/M000011.html +30 -0
  31. data/doc/classes/GData/GoogleAuthSub.src/M000012.html +18 -0
  32. data/doc/classes/GData/GoogleAuthSub.src/M000013.html +18 -0
  33. data/doc/classes/GData/GoogleAuthSub.src/M000014.html +18 -0
  34. data/doc/classes/GData/GoogleAuthSub.src/M000015.html +18 -0
  35. data/doc/classes/GData/GoogleAuthSub.src/M000016.html +20 -0
  36. data/doc/classes/GData/GoogleAuthSub.src/M000017.html +20 -0
  37. data/doc/classes/GData/GoogleAuthSub.src/M000018.html +19 -0
  38. data/doc/classes/GData.html +162 -0
  39. data/doc/created.rid +1 -0
  40. data/doc/files/googleauthsub_rb.html +140 -0
  41. data/doc/files/lib/googleauthsub_rb.html +140 -0
  42. data/doc/files/spec/googleauthsub_spec_rb.html +146 -0
  43. data/doc/files/spec/googleresponder_rb.html +121 -0
  44. data/doc/files/spec/spec_helper_rb.html +149 -0
  45. data/doc/fr_class_index.html +31 -0
  46. data/doc/fr_file_index.html +30 -0
  47. data/doc/fr_method_index.html +45 -0
  48. data/doc/index.html +24 -0
  49. data/doc/rdoc-style.css +208 -0
  50. data/google-authsub-0.0.2.gem +0 -0
  51. data/google-authsub-0.0.3.gem +0 -0
  52. data/google-authsub.gemspec +109 -0
  53. data/lib/googleauthsub.rb +271 -0
  54. data/live test/authsub_test.html +40 -0
  55. data/live test/gastest.rb +90 -0
  56. data/spec/googleauthsub_spec.rb +350 -0
  57. data/spec/googleresponder.rb +26 -0
  58. data/spec/mock responses/bad_token_info.txt +11 -0
  59. data/spec/mock responses/calendar.txt +11 -0
  60. data/spec/mock responses/revoke_token.txt +7 -0
  61. data/spec/mock responses/revoked_token.txt +17 -0
  62. data/spec/mock responses/session_token.txt +9 -0
  63. data/spec/mock responses/token_info.txt +11 -0
  64. data/spec/mock responses/unauthorized.txt +18 -0
  65. data/spec/mock_certs/test_private_key.pem +15 -0
  66. data/spec/mock_certs/test_public_key.pem +6 -0
  67. data/spec/spec_helper.rb +30 -0
  68. data/spec/spec_opts +7 -0
  69. metadata +125 -0
@@ -0,0 +1,29 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>set_private_key (GData::GoogleAuthSub)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File googleauthsub.rb, line 52</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">set_private_key</span>(<span class="ruby-identifier">key</span>)
15
+ <span class="ruby-keyword kw">case</span> <span class="ruby-identifier">key</span>
16
+ <span class="ruby-keyword kw">when</span> <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">PKey</span><span class="ruby-operator">::</span><span class="ruby-constant">RSA</span>
17
+ <span class="ruby-ivar">@@pkey</span> = <span class="ruby-identifier">key</span>
18
+ <span class="ruby-keyword kw">when</span> <span class="ruby-constant">File</span>
19
+ <span class="ruby-comment cmt"># Read key from a PEM file.</span>
20
+ <span class="ruby-ivar">@@pkey</span> = <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">PKey</span><span class="ruby-operator">::</span><span class="ruby-constant">RSA</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">key</span>.<span class="ruby-identifier">read</span>)
21
+ <span class="ruby-keyword kw">when</span> <span class="ruby-constant">String</span>
22
+ <span class="ruby-comment cmt"># Get key from a PEM in the form of a string.</span>
23
+ <span class="ruby-ivar">@@pkey</span> = <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">PKey</span><span class="ruby-operator">::</span><span class="ruby-constant">RSA</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">key</span>)
24
+ <span class="ruby-keyword kw">else</span>
25
+ <span class="ruby-identifier">raise</span> <span class="ruby-node">&quot;Private Key in wrong format. Require IO, String or OpenSSL::Pkey::RSA, got #{key.class}&quot;</span>
26
+ <span class="ruby-keyword kw">end</span>
27
+ <span class="ruby-keyword kw">end</span></pre>
28
+ </body>
29
+ </html>
@@ -0,0 +1,22 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>new (GData::GoogleAuthSub)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File googleauthsub.rb, line 75</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">opts</span> = {})
15
+ <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">next_url</span> = <span class="ruby-identifier">opts</span>[<span class="ruby-identifier">:next_url</span>] <span class="ruby-operator">||</span> <span class="ruby-value str">''</span>
16
+ <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">scope</span> = <span class="ruby-identifier">opts</span>[<span class="ruby-identifier">:scope_url</span>] <span class="ruby-operator">||</span> <span class="ruby-value str">''</span>
17
+ <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">session</span> = <span class="ruby-identifier">opts</span>[<span class="ruby-identifier">:session</span>] <span class="ruby-operator">||</span> <span class="ruby-keyword kw">false</span>
18
+ <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">secure</span> = <span class="ruby-identifier">opts</span>[<span class="ruby-identifier">:secure</span>] <span class="ruby-operator">||</span> <span class="ruby-keyword kw">false</span>
19
+ <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">sigalg</span> = <span class="ruby-value str">&quot;rsa-sha1&quot;</span>
20
+ <span class="ruby-keyword kw">end</span></pre>
21
+ </body>
22
+ </html>
@@ -0,0 +1,29 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>set_private_key (GData::GoogleAuthSub)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File lib/googleauthsub.rb, line 63</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">set_private_key</span>(<span class="ruby-identifier">key</span>)
15
+ <span class="ruby-keyword kw">case</span> <span class="ruby-identifier">key</span>
16
+ <span class="ruby-keyword kw">when</span> <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">PKey</span><span class="ruby-operator">::</span><span class="ruby-constant">RSA</span>
17
+ <span class="ruby-ivar">@@pkey</span> = <span class="ruby-identifier">key</span>
18
+ <span class="ruby-keyword kw">when</span> <span class="ruby-constant">File</span>
19
+ <span class="ruby-comment cmt"># Read key from a PEM file.</span>
20
+ <span class="ruby-ivar">@@pkey</span> = <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">PKey</span><span class="ruby-operator">::</span><span class="ruby-constant">RSA</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">key</span>.<span class="ruby-identifier">read</span>)
21
+ <span class="ruby-keyword kw">when</span> <span class="ruby-constant">String</span>
22
+ <span class="ruby-comment cmt"># Get key from a PEM in the form of a string.</span>
23
+ <span class="ruby-ivar">@@pkey</span> = <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">PKey</span><span class="ruby-operator">::</span><span class="ruby-constant">RSA</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">key</span>)
24
+ <span class="ruby-keyword kw">else</span>
25
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">AuthSubError</span>, <span class="ruby-node">&quot;Private Key in wrong format. Require IO, String or OpenSSL::Pkey::RSA, got #{key.class}&quot;</span>
26
+ <span class="ruby-keyword kw">end</span>
27
+ <span class="ruby-keyword kw">end</span></pre>
28
+ </body>
29
+ </html>
@@ -0,0 +1,22 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>new (GData::GoogleAuthSub)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File lib/googleauthsub.rb, line 86</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">opts</span> = {})
15
+ <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">next_url</span> = <span class="ruby-identifier">opts</span>[<span class="ruby-identifier">:next_url</span>] <span class="ruby-operator">||</span> <span class="ruby-value str">''</span>
16
+ <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">scope</span> = <span class="ruby-identifier">opts</span>[<span class="ruby-identifier">:scope_url</span>] <span class="ruby-operator">||</span> <span class="ruby-value str">''</span>
17
+ <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">session</span> = <span class="ruby-identifier">opts</span>[<span class="ruby-identifier">:session</span>] <span class="ruby-operator">||</span> <span class="ruby-keyword kw">false</span>
18
+ <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">secure</span> = <span class="ruby-identifier">opts</span>[<span class="ruby-identifier">:secure</span>] <span class="ruby-operator">||</span> <span class="ruby-keyword kw">false</span>
19
+ <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">sigalg</span> = <span class="ruby-identifier">opts</span>[<span class="ruby-identifier">:sigalg</span>] <span class="ruby-operator">||</span> <span class="ruby-value str">&quot;rsa-sha1&quot;</span>
20
+ <span class="ruby-keyword kw">end</span></pre>
21
+ </body>
22
+ </html>
@@ -0,0 +1,24 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>request_url (GData::GoogleAuthSub)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File lib/googleauthsub.rb, line 95</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">request_url</span>
15
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">AuthSubError</span>, <span class="ruby-node">&quot;Invalid next URL: #{@next_url}&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-operator">!</span><span class="ruby-identifier">full_url?</span>(<span class="ruby-ivar">@next_url</span>)
16
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">AuthSubError</span>, <span class="ruby-node">&quot;Invalid scope URL: #{@scope}&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-operator">!</span><span class="ruby-identifier">full_url?</span>(<span class="ruby-ivar">@scope</span>)
17
+
18
+ <span class="ruby-identifier">query</span> = <span class="ruby-value str">&quot;next=&quot;</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-ivar">@next_url</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">&quot;&amp;scope=&quot;</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-ivar">@scope</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">&quot;&amp;session=&quot;</span><span class="ruby-operator">&lt;&lt;</span>
19
+ (<span class="ruby-identifier">session_token?</span> <span class="ruby-value">? </span><span class="ruby-value str">'1'</span> <span class="ruby-operator">:</span> <span class="ruby-value str">'0'</span>)<span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">&quot;&amp;secure=&quot;</span><span class="ruby-operator">&lt;&lt;</span> (<span class="ruby-identifier">secure_token?</span> <span class="ruby-value">? </span><span class="ruby-value str">'1'</span> <span class="ruby-operator">:</span> <span class="ruby-value str">'0'</span>)
20
+ <span class="ruby-identifier">query</span> = <span class="ruby-constant">URI</span>.<span class="ruby-identifier">encode</span>(<span class="ruby-identifier">query</span>)
21
+ <span class="ruby-constant">URI</span><span class="ruby-operator">::</span><span class="ruby-constant">HTTPS</span>.<span class="ruby-identifier">build</span>({<span class="ruby-identifier">:host</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-constant">GOOGLE_HOST_URL</span>, <span class="ruby-identifier">:path</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-constant">GOOGLE_AUTHSUB_REQUEST_PATH</span>, <span class="ruby-identifier">:query</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">query</span> })
22
+ <span class="ruby-keyword kw">end</span></pre>
23
+ </body>
24
+ </html>
@@ -0,0 +1,19 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>receive_token (GData::GoogleAuthSub)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File lib/googleauthsub.rb, line 113</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">receive_token</span>(<span class="ruby-identifier">url</span>)
15
+ <span class="ruby-identifier">q</span> = <span class="ruby-identifier">url</span>.<span class="ruby-identifier">query</span>.<span class="ruby-identifier">match</span>(<span class="ruby-regexp re">/Token=(.*)/</span>)
16
+ <span class="ruby-ivar">@token</span> = <span class="ruby-identifier">q</span>[<span class="ruby-value">1</span>] <span class="ruby-keyword kw">if</span> <span class="ruby-operator">!</span><span class="ruby-identifier">q</span>.<span class="ruby-identifier">nil?</span>
17
+ <span class="ruby-keyword kw">end</span></pre>
18
+ </body>
19
+ </html>
@@ -0,0 +1,18 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>session_token? (GData::GoogleAuthSub)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File lib/googleauthsub.rb, line 119</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">session_token?</span>
15
+ <span class="ruby-identifier">session</span> <span class="ruby-operator">==</span> <span class="ruby-keyword kw">true</span>
16
+ <span class="ruby-keyword kw">end</span></pre>
17
+ </body>
18
+ </html>
@@ -0,0 +1,18 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>secure_token? (GData::GoogleAuthSub)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File lib/googleauthsub.rb, line 124</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">secure_token?</span>
15
+ <span class="ruby-identifier">secure</span> <span class="ruby-operator">==</span> <span class="ruby-keyword kw">true</span>
16
+ <span class="ruby-keyword kw">end</span></pre>
17
+ </body>
18
+ </html>
@@ -0,0 +1,24 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>session_token (GData::GoogleAuthSub)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File lib/googleauthsub.rb, line 131</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">session_token</span>
15
+ <span class="ruby-identifier">url</span> = <span class="ruby-constant">URI</span><span class="ruby-operator">::</span><span class="ruby-constant">HTTPS</span>.<span class="ruby-identifier">build</span>({<span class="ruby-identifier">:host</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-constant">GOOGLE_HOST_URL</span>,
16
+ <span class="ruby-identifier">:path</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-constant">GOOGLE_AUTHSUB_SESSION_TOKEN_PATH</span>})
17
+ <span class="ruby-keyword kw">begin</span>
18
+ <span class="ruby-ivar">@token</span> = <span class="ruby-identifier">get</span>(<span class="ruby-identifier">url</span>).<span class="ruby-identifier">body</span>.<span class="ruby-identifier">match</span>(<span class="ruby-regexp re">/^Token=(.*)$/</span>)[<span class="ruby-value">1</span>]
19
+ <span class="ruby-keyword kw">rescue</span>
20
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">AuthSubError</span>, <span class="ruby-value str">&quot;Invalid session token response.&quot;</span>
21
+ <span class="ruby-keyword kw">end</span>
22
+ <span class="ruby-keyword kw">end</span></pre>
23
+ </body>
24
+ </html>
@@ -0,0 +1,25 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>revoke_token (GData::GoogleAuthSub)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File lib/googleauthsub.rb, line 145</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">revoke_token</span>
15
+ <span class="ruby-identifier">url</span> = <span class="ruby-constant">URI</span><span class="ruby-operator">::</span><span class="ruby-constant">HTTPS</span>.<span class="ruby-identifier">build</span>({<span class="ruby-identifier">:host=</span><span class="ruby-operator">&gt;</span><span class="ruby-constant">GOOGLE_HOST_URL</span>,
16
+ <span class="ruby-identifier">:path</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-constant">GOOGLE_AUTHSUB_REVOKE_PATH</span>})
17
+ <span class="ruby-keyword kw">begin</span>
18
+ <span class="ruby-identifier">get</span>(<span class="ruby-identifier">url</span>)
19
+ <span class="ruby-keyword kw">true</span>
20
+ <span class="ruby-keyword kw">rescue</span>
21
+ <span class="ruby-keyword kw">false</span>
22
+ <span class="ruby-keyword kw">end</span>
23
+ <span class="ruby-keyword kw">end</span></pre>
24
+ </body>
25
+ </html>
@@ -0,0 +1,30 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>token_info (GData::GoogleAuthSub)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File lib/googleauthsub.rb, line 159</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">token_info</span>
15
+ <span class="ruby-identifier">url</span> = <span class="ruby-constant">URI</span><span class="ruby-operator">::</span><span class="ruby-constant">HTTPS</span>.<span class="ruby-identifier">build</span>({<span class="ruby-identifier">:host=</span><span class="ruby-operator">&gt;</span><span class="ruby-constant">GOOGLE_HOST_URL</span>,
16
+ <span class="ruby-identifier">:path</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-constant">GOOGLE_AUTHSUB_TOKEN_INFO_PATH</span>})
17
+ <span class="ruby-identifier">response</span> = <span class="ruby-identifier">get</span>(<span class="ruby-identifier">url</span>)
18
+ <span class="ruby-identifier">info</span> = <span class="ruby-constant">Hash</span>.<span class="ruby-identifier">new</span>
19
+ <span class="ruby-keyword kw">begin</span>
20
+ <span class="ruby-identifier">info</span>[<span class="ruby-identifier">:target</span>] = <span class="ruby-identifier">response</span>.<span class="ruby-identifier">body</span>.<span class="ruby-identifier">match</span>(<span class="ruby-regexp re">/^Target=(.*)$/</span>)[<span class="ruby-value">1</span>]
21
+ <span class="ruby-identifier">info</span>[<span class="ruby-identifier">:scope</span>] = <span class="ruby-identifier">response</span>.<span class="ruby-identifier">body</span>.<span class="ruby-identifier">match</span>(<span class="ruby-regexp re">/^Scope=(.*)$/</span>)[<span class="ruby-value">1</span>]
22
+ <span class="ruby-identifier">info</span>[<span class="ruby-identifier">:secure</span>] = (<span class="ruby-identifier">response</span>.<span class="ruby-identifier">body</span>.<span class="ruby-identifier">match</span>(<span class="ruby-regexp re">/^Secure=(.*)$/</span>)[<span class="ruby-value">1</span>].<span class="ruby-identifier">downcase</span> <span class="ruby-operator">==</span> <span class="ruby-value str">'true'</span>)
23
+ <span class="ruby-keyword kw">rescue</span>
24
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">AuthSubError</span>, <span class="ruby-value str">&quot;Google Authsub Error: invalid token info packet received.&quot;</span>
25
+ <span class="ruby-keyword kw">end</span>
26
+
27
+ <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">info</span>
28
+ <span class="ruby-keyword kw">end</span></pre>
29
+ </body>
30
+ </html>
@@ -0,0 +1,18 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>get (GData::GoogleAuthSub)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File lib/googleauthsub.rb, line 178</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">get</span>(<span class="ruby-identifier">url</span>)
15
+ <span class="ruby-identifier">authsub_http_request</span>(<span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">HTTP</span><span class="ruby-operator">::</span><span class="ruby-constant">Get</span>,<span class="ruby-identifier">url</span>)
16
+ <span class="ruby-keyword kw">end</span></pre>
17
+ </body>
18
+ </html>
@@ -0,0 +1,18 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>post (GData::GoogleAuthSub)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File lib/googleauthsub.rb, line 184</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">post</span>(<span class="ruby-identifier">url</span>)
15
+ <span class="ruby-identifier">authsub_http_request</span>(<span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">HTTP</span><span class="ruby-operator">::</span><span class="ruby-constant">Post</span>,<span class="ruby-identifier">url</span>)
16
+ <span class="ruby-keyword kw">end</span></pre>
17
+ </body>
18
+ </html>
@@ -0,0 +1,18 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>put (GData::GoogleAuthSub)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File lib/googleauthsub.rb, line 191</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">put</span>(<span class="ruby-identifier">url</span>)
15
+ <span class="ruby-identifier">authsub_http_request</span>(<span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">HTTP</span><span class="ruby-operator">::</span><span class="ruby-constant">Put</span>,<span class="ruby-identifier">url</span>)
16
+ <span class="ruby-keyword kw">end</span></pre>
17
+ </body>
18
+ </html>
@@ -0,0 +1,18 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>delete (GData::GoogleAuthSub)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File lib/googleauthsub.rb, line 198</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">delete</span>(<span class="ruby-identifier">url</span>)
15
+ <span class="ruby-identifier">authsub_http_request</span>(<span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">HTTP</span><span class="ruby-operator">::</span><span class="ruby-constant">Delete</span>,<span class="ruby-identifier">url</span>)
16
+ <span class="ruby-keyword kw">end</span></pre>
17
+ </body>
18
+ </html>
@@ -0,0 +1,20 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>auth_header (GData::GoogleAuthSub)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File spec/spec_helper.rb, line 25</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">auth_header</span>(<span class="ruby-identifier">method</span>, <span class="ruby-identifier">url</span>)
15
+ <span class="ruby-identifier">url</span> = <span class="ruby-constant">URI</span>.<span class="ruby-identifier">parse</span>(<span class="ruby-identifier">url</span>)
16
+ <span class="ruby-identifier">request</span> = <span class="ruby-identifier">method</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">url</span>.<span class="ruby-identifier">path</span>)
17
+ <span class="ruby-identifier">authorization_header</span>(<span class="ruby-identifier">request</span>, <span class="ruby-identifier">url</span>)
18
+ <span class="ruby-keyword kw">end</span></pre>
19
+ </body>
20
+ </html>
@@ -0,0 +1,20 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>auth_data (GData::GoogleAuthSub)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File spec/spec_helper.rb, line 32</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">auth_data</span>(<span class="ruby-identifier">method</span>,<span class="ruby-identifier">url</span>)
15
+ <span class="ruby-identifier">url</span> = <span class="ruby-constant">URI</span>.<span class="ruby-identifier">parse</span>(<span class="ruby-identifier">url</span>)
16
+ <span class="ruby-identifier">request</span> = <span class="ruby-identifier">method</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">url</span>.<span class="ruby-identifier">path</span>)
17
+ <span class="ruby-identifier">authorization_data</span>(<span class="ruby-identifier">request</span>,<span class="ruby-identifier">url</span>)
18
+ <span class="ruby-keyword kw">end</span></pre>
19
+ </body>
20
+ </html>
@@ -0,0 +1,19 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>sig (GData::GoogleAuthSub)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File spec/spec_helper.rb, line 39</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">sig</span>(<span class="ruby-identifier">header</span>)
15
+ <span class="ruby-identifier">s</span> = <span class="ruby-identifier">header</span>.<span class="ruby-identifier">match</span>(<span class="ruby-regexp re">/^.*sig=&quot;(.*)&quot;/</span><span class="ruby-identifier">m</span>)
16
+ <span class="ruby-identifier">s</span>[<span class="ruby-value">1</span>] <span class="ruby-keyword kw">if</span> <span class="ruby-operator">!</span><span class="ruby-identifier">s</span>.<span class="ruby-identifier">nil?</span>
17
+ <span class="ruby-keyword kw">end</span></pre>
18
+ </body>
19
+ </html>
@@ -0,0 +1,162 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
7
+ <head>
8
+ <title>Module: GData</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <meta http-equiv="Content-Script-Type" content="text/javascript" />
11
+ <link rel="stylesheet" href=".././rdoc-style.css" type="text/css" media="screen" />
12
+ <script type="text/javascript">
13
+ // <![CDATA[
14
+
15
+ function popupCode( url ) {
16
+ window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
17
+ }
18
+
19
+ function toggleCode( id ) {
20
+ if ( document.getElementById )
21
+ elem = document.getElementById( id );
22
+ else if ( document.all )
23
+ elem = eval( "document.all." + id );
24
+ else
25
+ return false;
26
+
27
+ elemStyle = elem.style;
28
+
29
+ if ( elemStyle.display != "block" ) {
30
+ elemStyle.display = "block"
31
+ } else {
32
+ elemStyle.display = "none"
33
+ }
34
+
35
+ return true;
36
+ }
37
+
38
+ // Make codeblocks hidden by default
39
+ document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
40
+
41
+ // ]]>
42
+ </script>
43
+
44
+ </head>
45
+ <body>
46
+
47
+
48
+
49
+ <div id="classHeader">
50
+ <table class="header-table">
51
+ <tr class="top-aligned-row">
52
+ <td><strong>Module</strong></td>
53
+ <td class="class-name-in-header">GData</td>
54
+ </tr>
55
+ <tr class="top-aligned-row">
56
+ <td><strong>In:</strong></td>
57
+ <td>
58
+ <a href="../files/lib/googleauthsub_rb.html">
59
+ lib/googleauthsub.rb
60
+ </a>
61
+ <br />
62
+ <a href="../files/spec/spec_helper_rb.html">
63
+ spec/spec_helper.rb
64
+ </a>
65
+ <br />
66
+ </td>
67
+ </tr>
68
+
69
+ </table>
70
+ </div>
71
+ <!-- banner header -->
72
+
73
+ <div id="bodyContent">
74
+
75
+
76
+
77
+ <div id="contextContent">
78
+
79
+ <div id="description">
80
+ <p>
81
+ Note: The module declared here may change depending on what other
82
+ developers are using
83
+ </p>
84
+
85
+ </div>
86
+
87
+
88
+ </div>
89
+
90
+
91
+ </div>
92
+
93
+
94
+ <!-- if includes -->
95
+
96
+ <div id="section">
97
+
98
+ <div id="class-list">
99
+ <h3 class="section-bar">Classes and Modules</h3>
100
+
101
+ Class <a href="GData/AuthSubError.html" class="link">GData::AuthSubError</a><br />
102
+ Class <a href="GData/Error.html" class="link">GData::Error</a><br />
103
+ Class <a href="GData/GoogleAuthSub.html" class="link">GData::GoogleAuthSub</a><br />
104
+
105
+ </div>
106
+
107
+ <div id="constants-list">
108
+ <h3 class="section-bar">Constants</h3>
109
+
110
+ <div class="name-list">
111
+ <table summary="Constants">
112
+ <tr class="top-aligned-row context-row">
113
+ <td class="context-item-name">GOOGLE_HOST_URL</td>
114
+ <td>=</td>
115
+ <td class="context-item-value">&quot;www.google.com&quot;</td>
116
+ </tr>
117
+ <tr class="top-aligned-row context-row">
118
+ <td class="context-item-name">GOOGLE_AUTHSUB_BASE_PATH</td>
119
+ <td>=</td>
120
+ <td class="context-item-value">&quot;/accounts&quot;</td>
121
+ </tr>
122
+ <tr class="top-aligned-row context-row">
123
+ <td class="context-item-name">GOOGLE_AUTHSUB_REQUEST_PATH</td>
124
+ <td>=</td>
125
+ <td class="context-item-value">GOOGLE_AUTHSUB_BASE_PATH + &quot;/AuthSubRequest&quot;</td>
126
+ </tr>
127
+ <tr class="top-aligned-row context-row">
128
+ <td class="context-item-name">GOOGLE_AUTHSUB_SESSION_TOKEN_PATH</td>
129
+ <td>=</td>
130
+ <td class="context-item-value">GOOGLE_AUTHSUB_BASE_PATH + &quot;/AuthSubSessionToken&quot;</td>
131
+ </tr>
132
+ <tr class="top-aligned-row context-row">
133
+ <td class="context-item-name">GOOGLE_AUTHSUB_REVOKE_PATH</td>
134
+ <td>=</td>
135
+ <td class="context-item-value">GOOGLE_AUTHSUB_BASE_PATH + &quot;/AuthSubRevokeToken&quot;</td>
136
+ </tr>
137
+ <tr class="top-aligned-row context-row">
138
+ <td class="context-item-name">GOOGLE_AUTHSUB_TOKEN_INFO_PATH</td>
139
+ <td>=</td>
140
+ <td class="context-item-value">GOOGLE_AUTHSUB_BASE_PATH + &quot;/AuthSubTokenInfo&quot;</td>
141
+ </tr>
142
+ </table>
143
+ </div>
144
+ </div>
145
+
146
+
147
+
148
+
149
+
150
+
151
+ <!-- if method_list -->
152
+
153
+
154
+ </div>
155
+
156
+
157
+ <div id="validator-badges">
158
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
159
+ </div>
160
+
161
+ </body>
162
+ </html>