mirror of
https://github.com/mistergibson/gxg-framework.git
synced 2026-10-19 04:49:44 -07:00
Initial Commit
This commit is contained in:
parent
3215e21a8a
commit
4bb9f2f2ea
189 changed files with 135079 additions and 2 deletions
1120
doc/GxG/Networking/FtpClient.html
Normal file
1120
doc/GxG/Networking/FtpClient.html
Normal file
File diff suppressed because it is too large
Load diff
848
doc/GxG/Networking/HttpClient.html
Normal file
848
doc/GxG/Networking/HttpClient.html
Normal file
|
|
@ -0,0 +1,848 @@
|
|||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
|
||||
<title>class GxG::Networking::HttpClient - RDoc Documentation</title>
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "../../";
|
||||
var index_rel_prefix = "../../";
|
||||
</script>
|
||||
|
||||
<script src="../../js/navigation.js" defer></script>
|
||||
<script src="../../js/search.js" defer></script>
|
||||
<script src="../../js/search_index.js" defer></script>
|
||||
<script src="../../js/searcher.js" defer></script>
|
||||
<script src="../../js/darkfish.js" defer></script>
|
||||
|
||||
<link href="../../css/fonts.css" rel="stylesheet">
|
||||
<link href="../../css/rdoc.css" rel="stylesheet">
|
||||
|
||||
|
||||
|
||||
<body id="top" role="document" class="class">
|
||||
<nav role="navigation">
|
||||
<div id="project-navigation">
|
||||
<div id="home-section" role="region" title="Quick navigation" class="nav-section">
|
||||
<h2>
|
||||
<a href="../../index.html" rel="home">Home</a>
|
||||
</h2>
|
||||
|
||||
<div id="table-of-contents-navigation">
|
||||
<a href="../../table_of_contents.html#pages">Pages</a>
|
||||
<a href="../../table_of_contents.html#classes">Classes</a>
|
||||
<a href="../../table_of_contents.html#methods">Methods</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="search-section" role="search" class="project-section initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<div id="search-field-wrapper">
|
||||
<input id="search-field" role="combobox" aria-label="Search"
|
||||
aria-autocomplete="list" aria-controls="search-results"
|
||||
type="text" name="search" placeholder="Search" spellcheck="false"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</div>
|
||||
|
||||
<ul id="search-results" aria-label="Search Results"
|
||||
aria-busy="false" aria-expanded="false"
|
||||
aria-atomic="false" class="initially-hidden"></ul>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
<div id="parent-class-section" class="nav-section">
|
||||
<h3>Parent</h3>
|
||||
|
||||
|
||||
<p class="link"><a href="../../Object.html">Object</a>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<div id="method-list-section" class="nav-section">
|
||||
<h3>Methods</h3>
|
||||
|
||||
<ul class="link-list" role="directory">
|
||||
|
||||
<li ><a href="#method-c-new">::new</a>
|
||||
|
||||
<li ><a href="#method-i-clear_cache">#clear_cache</a>
|
||||
|
||||
<li ><a href="#method-i-cookies">#cookies</a>
|
||||
|
||||
<li ><a href="#method-i-delete">#delete</a>
|
||||
|
||||
<li ><a href="#method-i-get">#get</a>
|
||||
|
||||
<li ><a href="#method-i-post">#post</a>
|
||||
|
||||
<li ><a href="#method-i-put">#put</a>
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<main role="main" aria-labelledby="class-GxG::Networking::HttpClient">
|
||||
<h1 id="class-GxG::Networking::HttpClient" class="class">
|
||||
class GxG::Networking::HttpClient
|
||||
</h1>
|
||||
|
||||
<section class="description">
|
||||
|
||||
</section>
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="public-class-5Buntitled-5D-method-details" class="method-section">
|
||||
<header>
|
||||
<h3>Public Class Methods</h3>
|
||||
</header>
|
||||
|
||||
|
||||
<div id="method-c-new" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">new</span><span
|
||||
class="method-args">()</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="new-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 5228</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">initialize</span>()
|
||||
<span class="ruby-ivar">@cookie</span> = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-keyword">self</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
</section>
|
||||
|
||||
<section id="public-instance-5Buntitled-5D-method-details" class="method-section">
|
||||
<header>
|
||||
<h3>Public Instance Methods</h3>
|
||||
</header>
|
||||
|
||||
|
||||
<div id="method-i-clear_cache" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">clear_cache</span><span
|
||||
class="method-args">()</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="clear_cache-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 5233</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">clear_cache</span>()
|
||||
<span class="ruby-ivar">@cookie</span> = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-keyword">true</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-cookies" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">cookies</span><span
|
||||
class="method-args">()</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="cookies-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 5238</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">cookies</span>()
|
||||
<span class="ruby-ivar">@cookie</span>.<span class="ruby-identifier">clone</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-delete" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">delete</span><span
|
||||
class="method-args">(the_url=nil, options={})</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="delete-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 5635</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">delete</span>(<span class="ruby-identifier">the_url</span>=<span class="ruby-keyword">nil</span>, <span class="ruby-identifier">options</span>={})
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">false</span>
|
||||
<span class="ruby-keyword">begin</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">options</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Hash</span>)
|
||||
<span class="ruby-identifier">options</span> = {}
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">scheme</span>.<span class="ruby-identifier">downcase</span> <span class="ruby-operator">==</span> <span class="ruby-string">"https"</span>
|
||||
<span class="ruby-identifier">options</span>[<span class="ruby-value">:use_ssl</span>] = <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">is_any?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">URI</span><span class="ruby-operator">::</span><span class="ruby-constant">HTTP</span>, <span class="ruby-operator">::</span><span class="ruby-constant">URI</span><span class="ruby-operator">::</span><span class="ruby-constant">HTTPS</span>)
|
||||
<span class="ruby-identifier">client_parameters</span> = [(<span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">hostname</span>), (<span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">port</span>)]
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:proxy</span>].<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">URI</span><span class="ruby-operator">::</span><span class="ruby-constant">Generic</span>)
|
||||
<span class="ruby-identifier">client_parameters</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:proxy</span>].<span class="ruby-identifier">host</span>
|
||||
<span class="ruby-identifier">client_parameters</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:proxy</span>].<span class="ruby-identifier">port</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:proxy</span>].<span class="ruby-identifier">user</span> <span class="ruby-operator">&&</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:proxy</span>].<span class="ruby-identifier">password</span>
|
||||
<span class="ruby-identifier">client_parameters</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:proxy</span>].<span class="ruby-identifier">user</span>
|
||||
<span class="ruby-identifier">client_parameters</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:proxy</span>].<span class="ruby-identifier">password</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">client_parameters</span> <span class="ruby-operator"><<</span> <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-identifier">client_parameters</span> <span class="ruby-operator"><<</span> <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">client_parameters</span> <span class="ruby-operator"><<</span> <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-identifier">client_parameters</span> <span class="ruby-operator"><<</span> <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-identifier">client_parameters</span> <span class="ruby-operator"><<</span> <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-identifier">client_parameters</span> <span class="ruby-operator"><<</span> <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>.<span class="ruby-identifier">keys</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span>
|
||||
<span class="ruby-identifier">client_parameters</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">options</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">server</span> = <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">HTTP</span>.<span class="ruby-identifier">start</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">client_parameters</span>)
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:pem_file</span>].<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">String</span>)
|
||||
<span class="ruby-identifier">pem_file</span> = <span class="ruby-operator">::</span><span class="ruby-constant">File</span>.<span class="ruby-identifier">read</span>(<span class="ruby-identifier">options</span>[<span class="ruby-value">:pem_file</span>])
|
||||
<span class="ruby-identifier">server</span>.<span class="ruby-identifier">use_ssl</span> = <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-identifier">server</span>.<span class="ruby-identifier">cert</span> = <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">X509</span><span class="ruby-operator">::</span><span class="ruby-constant">Certificate</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">pem_file</span>)
|
||||
<span class="ruby-identifier">server</span>.<span class="ruby-identifier">key</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">pem_file</span>, <span class="ruby-identifier">options</span>[<span class="ruby-value">:pem_password</span>])
|
||||
<span class="ruby-identifier">server</span>.<span class="ruby-identifier">verify_mode</span> = <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">SSL</span><span class="ruby-operator">::</span><span class="ruby-constant">VERIFY_PEER</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@cookie</span>
|
||||
<span class="ruby-identifier">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">new</span>(<span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">request_uri</span>, {<span class="ruby-string">'Cookie'</span> <span class="ruby-operator">=></span> <span class="ruby-ivar">@cookie</span>})
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">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">new</span>(<span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">request_uri</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> (<span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">user</span> <span class="ruby-operator">&&</span> <span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">password</span>)
|
||||
<span class="ruby-comment"># basic auth</span>
|
||||
<span class="ruby-identifier">request</span>.<span class="ruby-identifier">basic_auth</span>(<span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">user</span>, <span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">password</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">response</span> = <span class="ruby-identifier">server</span>.<span class="ruby-identifier">request</span>(<span class="ruby-identifier">request</span>)
|
||||
<span class="ruby-identifier">response_code</span> = <span class="ruby-identifier">response</span>.<span class="ruby-identifier">code</span>.<span class="ruby-identifier">to_i</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:follow_redirects</span>]
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">response_code</span> <span class="ruby-operator">>=</span> <span class="ruby-value">300</span> <span class="ruby-operator">&&</span> <span class="ruby-identifier">response_code</span> <span class="ruby-operator"><</span> <span class="ruby-value">400</span>
|
||||
<span class="ruby-comment"># Process Redirect</span>
|
||||
<span class="ruby-identifier">redirect_count</span> = <span class="ruby-value">1</span>
|
||||
<span class="ruby-identifier">location</span> = <span class="ruby-identifier">response</span>[<span class="ruby-string">'location'</span>]
|
||||
<span class="ruby-keyword">while</span> <span class="ruby-identifier">location</span> <span class="ruby-keyword">do</span>
|
||||
<span class="ruby-comment">#</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@cookie</span>
|
||||
<span class="ruby-identifier">redirect_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">new</span>(<span class="ruby-identifier">location</span>, {<span class="ruby-string">'Cookie'</span> <span class="ruby-operator">=></span> <span class="ruby-ivar">@cookie</span>})
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">redirect_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">new</span>(<span class="ruby-identifier">location</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">redirect_response</span> = <span class="ruby-identifier">server</span>.<span class="ruby-identifier">request</span>(<span class="ruby-identifier">redirect_request</span>)
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">redirect_response</span>.<span class="ruby-identifier">code</span>.<span class="ruby-identifier">to_i</span> <span class="ruby-operator">==</span> <span class="ruby-value">200</span>
|
||||
<span class="ruby-identifier">response</span> = <span class="ruby-identifier">redirect_response</span>
|
||||
<span class="ruby-identifier">response_code</span> = <span class="ruby-value">200</span>
|
||||
<span class="ruby-keyword">break</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">redirect_response</span>[<span class="ruby-string">'location'</span>]
|
||||
<span class="ruby-identifier">redirect_count</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">redirect_count</span> <span class="ruby-operator">></span> <span class="ruby-value">9</span>
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">Exception</span>, <span class="ruby-string">"Circular redirect chain suspected (10 or more redirects)"</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">response_code</span> = <span class="ruby-identifier">redirect_response</span>.<span class="ruby-identifier">code</span>.<span class="ruby-identifier">to_i</span>
|
||||
<span class="ruby-identifier">location</span> = <span class="ruby-identifier">redirect_response</span>[<span class="ruby-string">'location'</span>]
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-keyword">break</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-comment">#</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">response</span>.<span class="ruby-identifier">code</span>.<span class="ruby-identifier">to_i</span> <span class="ruby-operator">==</span> <span class="ruby-value">200</span>
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">Exception</span>, <span class="ruby-node">"Error occured: Code #{response.code}"</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">Exception</span>, <span class="ruby-string">"You MUST provide a valid HTTP URI"</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>
|
||||
<span class="ruby-identifier">log_error</span>({<span class="ruby-value">:error</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>, <span class="ruby-value">:parameters</span> <span class="ruby-operator">=></span> {<span class="ruby-value">:url</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_url</span>, <span class="ruby-value">:options</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">options</span>}})
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">result</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-get" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">get</span><span
|
||||
class="method-args">(the_url=nil, options={:follow_redirects => true})</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="get-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 5242</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">get</span>(<span class="ruby-identifier">the_url</span>=<span class="ruby-keyword">nil</span>, <span class="ruby-identifier">options</span>={<span class="ruby-value">:follow_redirects</span> <span class="ruby-operator">=></span> <span class="ruby-keyword">true</span>})
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-keyword">begin</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">is_any?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">URI</span><span class="ruby-operator">::</span><span class="ruby-constant">HTTP</span>, <span class="ruby-operator">::</span><span class="ruby-constant">URI</span><span class="ruby-operator">::</span><span class="ruby-constant">HTTPS</span>)
|
||||
<span class="ruby-identifier">the_url</span> = <span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">dup</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:query</span>].<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Hash</span>)
|
||||
<span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">query</span> = <span class="ruby-operator">::</span><span class="ruby-constant">URI</span>.<span class="ruby-identifier">encode_www_form</span>(<span class="ruby-identifier">options</span>[<span class="ruby-value">:query</span>])
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:follow_redirects</span>] <span class="ruby-operator">==</span> <span class="ruby-keyword">false</span>
|
||||
<span class="ruby-identifier">options</span>.<span class="ruby-identifier">merge</span>({<span class="ruby-value">:follow_redirects</span> <span class="ruby-operator">=></span> <span class="ruby-keyword">true</span>})
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-comment">#</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">scheme</span>.<span class="ruby-identifier">downcase</span> <span class="ruby-operator">==</span> <span class="ruby-string">"https"</span>
|
||||
<span class="ruby-identifier">options</span>[<span class="ruby-value">:use_ssl</span>] = <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-comment"># sets following values by its accessor.</span>
|
||||
<span class="ruby-comment"># The keys are ca_file, ca_path, cert, cert_store, ciphers,</span>
|
||||
<span class="ruby-comment"># close_on_empty_response, key, open_timeout, read_timeout, ssl_timeout,</span>
|
||||
<span class="ruby-comment"># ssl_version, use_ssl, verify_callback, verify_depth and verify_mode.</span>
|
||||
<span class="ruby-comment"># If you set :use_ssl as true, you can use https and default value of</span>
|
||||
<span class="ruby-comment"># verify_mode is set as OpenSSL::SSL::VERIFY_PEER.</span>
|
||||
<span class="ruby-identifier">client_parameters</span> = [(<span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">hostname</span>), (<span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">port</span>)]
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:proxy</span>].<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">URI</span><span class="ruby-operator">::</span><span class="ruby-constant">Generic</span>)
|
||||
<span class="ruby-identifier">client_parameters</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:proxy</span>].<span class="ruby-identifier">host</span>
|
||||
<span class="ruby-identifier">client_parameters</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:proxy</span>].<span class="ruby-identifier">port</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:proxy</span>].<span class="ruby-identifier">user</span> <span class="ruby-operator">&&</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:proxy</span>].<span class="ruby-identifier">password</span>
|
||||
<span class="ruby-identifier">client_parameters</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:proxy</span>].<span class="ruby-identifier">user</span>
|
||||
<span class="ruby-identifier">client_parameters</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:proxy</span>].<span class="ruby-identifier">password</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">client_parameters</span> <span class="ruby-operator"><<</span> <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-identifier">client_parameters</span> <span class="ruby-operator"><<</span> <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">client_parameters</span> <span class="ruby-operator"><<</span> <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-identifier">client_parameters</span> <span class="ruby-operator"><<</span> <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-identifier">client_parameters</span> <span class="ruby-operator"><<</span> <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-identifier">client_parameters</span> <span class="ruby-operator"><<</span> <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>.<span class="ruby-identifier">keys</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span>
|
||||
<span class="ruby-identifier">client_parameters</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">options</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">client</span> = <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">HTTP</span>.<span class="ruby-identifier">start</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">client_parameters</span>)
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:pem_file</span>].<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">String</span>)
|
||||
<span class="ruby-identifier">pem_file</span> = <span class="ruby-operator">::</span><span class="ruby-constant">File</span>.<span class="ruby-identifier">read</span>(<span class="ruby-identifier">options</span>[<span class="ruby-value">:pem_file</span>])
|
||||
<span class="ruby-identifier">client</span>.<span class="ruby-identifier">use_ssl</span> = <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-identifier">client</span>.<span class="ruby-identifier">cert</span> = <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">X509</span><span class="ruby-operator">::</span><span class="ruby-constant">Certificate</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">pem_file</span>)
|
||||
<span class="ruby-identifier">client</span>.<span class="ruby-identifier">key</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">pem_file</span>, <span class="ruby-identifier">options</span>[<span class="ruby-value">:pem_password</span>])
|
||||
<span class="ruby-identifier">client</span>.<span class="ruby-identifier">verify_mode</span> = <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">SSL</span><span class="ruby-operator">::</span><span class="ruby-constant">VERIFY_PEER</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@cookie</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:header</span>].<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Hash</span>)
|
||||
<span class="ruby-identifier">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">new</span>(<span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">request_uri</span>, {<span class="ruby-string">'Cookie'</span> <span class="ruby-operator">=></span> <span class="ruby-ivar">@cookie</span>}.<span class="ruby-identifier">merge</span>(<span class="ruby-identifier">options</span>[<span class="ruby-value">:header</span>]))
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">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">new</span>(<span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">request_uri</span>, {<span class="ruby-string">'Cookie'</span> <span class="ruby-operator">=></span> <span class="ruby-ivar">@cookie</span>})
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:header</span>].<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Hash</span>)
|
||||
<span class="ruby-identifier">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">new</span>(<span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">request_uri</span>, <span class="ruby-identifier">options</span>[<span class="ruby-value">:header</span>])
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">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">new</span>(<span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">request_uri</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> (<span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">user</span> <span class="ruby-operator">&&</span> <span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">password</span>)
|
||||
<span class="ruby-comment"># basic auth</span>
|
||||
<span class="ruby-identifier">request</span>.<span class="ruby-identifier">basic_auth</span>(<span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">user</span>, <span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">password</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">response</span> = <span class="ruby-identifier">client</span>.<span class="ruby-identifier">request</span>(<span class="ruby-identifier">request</span>)
|
||||
<span class="ruby-ivar">@cookie</span> = <span class="ruby-identifier">response</span>.<span class="ruby-identifier">response</span>[<span class="ruby-string">'set-cookie'</span>]
|
||||
<span class="ruby-identifier">response_code</span> = <span class="ruby-identifier">response</span>.<span class="ruby-identifier">code</span>.<span class="ruby-identifier">to_i</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:follow_redirects</span>]
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">response_code</span> <span class="ruby-operator">>=</span> <span class="ruby-value">300</span> <span class="ruby-operator">&&</span> <span class="ruby-identifier">response_code</span> <span class="ruby-operator"><</span> <span class="ruby-value">400</span>
|
||||
<span class="ruby-comment"># Process Redirect</span>
|
||||
<span class="ruby-identifier">redirect_count</span> = <span class="ruby-value">1</span>
|
||||
<span class="ruby-identifier">location</span> = <span class="ruby-identifier">response</span>[<span class="ruby-string">'location'</span>]
|
||||
<span class="ruby-keyword">while</span> <span class="ruby-identifier">location</span> <span class="ruby-keyword">do</span>
|
||||
<span class="ruby-comment">#</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@cookie</span>
|
||||
<span class="ruby-identifier">redirect_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">new</span>(<span class="ruby-identifier">location</span>, {<span class="ruby-string">'Cookie'</span> <span class="ruby-operator">=></span> <span class="ruby-ivar">@cookie</span>})
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">redirect_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">new</span>(<span class="ruby-identifier">location</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">redirect_response</span> = <span class="ruby-identifier">client</span>.<span class="ruby-identifier">request</span>(<span class="ruby-identifier">redirect_request</span>)
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">redirect_response</span>.<span class="ruby-identifier">code</span>.<span class="ruby-identifier">to_i</span> <span class="ruby-operator">==</span> <span class="ruby-value">200</span>
|
||||
<span class="ruby-identifier">response</span> = <span class="ruby-identifier">redirect_response</span>
|
||||
<span class="ruby-identifier">response_code</span> = <span class="ruby-value">200</span>
|
||||
<span class="ruby-ivar">@cookie</span> = <span class="ruby-identifier">response</span>.<span class="ruby-identifier">response</span>[<span class="ruby-string">'set-cookie'</span>]
|
||||
<span class="ruby-keyword">break</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">redirect_response</span>[<span class="ruby-string">'location'</span>]
|
||||
<span class="ruby-ivar">@cookie</span> = <span class="ruby-identifier">redirect_response</span>.<span class="ruby-identifier">response</span>[<span class="ruby-string">'set-cookie'</span>]
|
||||
<span class="ruby-identifier">redirect_count</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">redirect_count</span> <span class="ruby-operator">></span> <span class="ruby-value">9</span>
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">Exception</span>, <span class="ruby-string">"Circular redirect chain suspected (10 or more redirects)"</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">response_code</span> = <span class="ruby-identifier">redirect_response</span>.<span class="ruby-identifier">code</span>.<span class="ruby-identifier">to_i</span>
|
||||
<span class="ruby-identifier">location</span> = <span class="ruby-identifier">redirect_response</span>[<span class="ruby-string">'location'</span>]
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-keyword">break</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-comment">#</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:save_as</span>].<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">String</span>)
|
||||
<span class="ruby-operator">::</span><span class="ruby-constant">File</span>.<span class="ruby-identifier">open</span>(<span class="ruby-identifier">options</span>[<span class="ruby-value">:save_as</span>].<span class="ruby-identifier">to_s</span>, <span class="ruby-string">'w'</span>, <span class="ruby-value">0644</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">the_io</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">response</span>.<span class="ruby-identifier">read_body</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">data_chunk</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">the_io</span>.<span class="ruby-identifier">write</span>(<span class="ruby-identifier">data_chunk</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-comment"># Return open file handle r/w to saved file.</span>
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-operator">::</span><span class="ruby-constant">File</span>.<span class="ruby-identifier">open</span>(<span class="ruby-identifier">the_io</span>.<span class="ruby-identifier">path</span>, <span class="ruby-string">"w+"</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:stream_to</span>].<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">GxG</span><span class="ruby-operator">::</span><span class="ruby-constant">Database</span><span class="ruby-operator">::</span><span class="ruby-constant">PersistedArray</span>)
|
||||
<span class="ruby-identifier">the_accumulator</span> = <span class="ruby-identifier">options</span>[<span class="ruby-value">:stream_to</span>]
|
||||
<span class="ruby-identifier">buffer</span> = <span class="ruby-operator">::</span><span class="ruby-constant">GxG</span><span class="ruby-operator">::</span><span class="ruby-constant">ByteArray</span>.<span class="ruby-identifier">new</span>
|
||||
<span class="ruby-identifier">response</span>.<span class="ruby-identifier">read_body</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">data_chunk</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">chunk_ranges</span> = <span class="ruby-operator">::</span><span class="ruby-constant">GxG</span>.<span class="ruby-identifier">apportioned_ranges</span>(<span class="ruby-identifier">data_chunk</span>.<span class="ruby-identifier">bytesize</span>,<span class="ruby-value">65536</span>)
|
||||
<span class="ruby-identifier">chunk_ranges</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">the_range</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-keyword">if</span> (<span class="ruby-identifier">buffer</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">data_chunk</span>[(<span class="ruby-identifier">the_range</span>)].<span class="ruby-identifier">bytesize</span>) <span class="ruby-operator"><=</span> <span class="ruby-value">65536</span>
|
||||
<span class="ruby-identifier">buffer</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">data_chunk</span>[(<span class="ruby-identifier">the_range</span>)]
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">buffer</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">==</span> <span class="ruby-value">65536</span>
|
||||
<span class="ruby-identifier">the_accumulator</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">buffer</span>.<span class="ruby-identifier">clone</span>
|
||||
<span class="ruby-identifier">the_accumulator</span>[(<span class="ruby-identifier">the_accumulator</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">-</span> <span class="ruby-value">1</span>)].<span class="ruby-identifier">unload</span>
|
||||
<span class="ruby-identifier">buffer</span>.<span class="ruby-identifier">clear</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">the_size</span> = <span class="ruby-identifier">buffer</span>.<span class="ruby-identifier">size</span>
|
||||
<span class="ruby-identifier">buffer</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">data_chunk</span>[(<span class="ruby-identifier">the_range</span>)][(<span class="ruby-value">0</span><span class="ruby-operator">..</span>((<span class="ruby-value">65536</span> <span class="ruby-operator">-</span> <span class="ruby-identifier">the_size</span>) <span class="ruby-operator">-</span> <span class="ruby-value">1</span>))]
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">buffer</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">==</span> <span class="ruby-value">65536</span>
|
||||
<span class="ruby-identifier">the_accumulator</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">buffer</span>.<span class="ruby-identifier">clone</span>
|
||||
<span class="ruby-identifier">the_accumulator</span>[(<span class="ruby-identifier">the_accumulator</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">-</span> <span class="ruby-value">1</span>)].<span class="ruby-identifier">unload</span>
|
||||
<span class="ruby-identifier">buffer</span>.<span class="ruby-identifier">clear</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">buffer</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">data_chunk</span>[(<span class="ruby-identifier">the_range</span>)][((<span class="ruby-value">65536</span> <span class="ruby-operator">-</span> <span class="ruby-identifier">the_size</span>)<span class="ruby-operator">..</span><span class="ruby-value">-1</span>)]
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-comment">#</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">buffer</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span>
|
||||
<span class="ruby-identifier">the_accumulator</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">buffer</span>.<span class="ruby-identifier">clone</span>
|
||||
<span class="ruby-identifier">the_accumulator</span>[(<span class="ruby-identifier">the_accumulator</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">-</span> <span class="ruby-value">1</span>)].<span class="ruby-identifier">unload</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">response_code</span> <span class="ruby-operator">==</span> <span class="ruby-value">200</span> <span class="ruby-operator">&&</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:save_as</span>] <span class="ruby-operator">==</span> <span class="ruby-keyword">nil</span> <span class="ruby-operator">&&</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:stream_to</span>] <span class="ruby-operator">==</span> <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-comment"># Process response</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:raw_response</span>]
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-identifier">response</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:to_ruby</span>] <span class="ruby-operator">==</span> <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-identifier">response_hash</span> = {}
|
||||
<span class="ruby-identifier">response_hash</span> = <span class="ruby-identifier">response</span>.<span class="ruby-identifier">to_hash</span>.<span class="ruby-identifier">process</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">entry</span>, <span class="ruby-identifier">the_key</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_key</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Symbol</span>)
|
||||
<span class="ruby-identifier">entry</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">returns</span>({<span class="ruby-value">:new_selector</span> <span class="ruby-operator">=></span> (<span class="ruby-identifier">the_key</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">to_sym</span>), <span class="ruby-value">:result</span> <span class="ruby-operator">=></span> (<span class="ruby-identifier">entry</span>)})
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">response_hash</span>[<span class="ruby-value">:header</span>] = <span class="ruby-identifier">response</span>.<span class="ruby-identifier">header</span>
|
||||
<span class="ruby-comment">#</span>
|
||||
<span class="ruby-identifier">body_text</span> = (<span class="ruby-identifier">response</span>.<span class="ruby-identifier">body</span>.<span class="ruby-identifier">transcode</span>({<span class="ruby-value">:replace</span> <span class="ruby-operator">=></span> <span class="ruby-string">"."</span>},<span class="ruby-operator">::</span><span class="ruby-constant">Encoding</span><span class="ruby-operator">::</span><span class="ruby-constant">UTF_8</span>))
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">body_text</span>.<span class="ruby-identifier">xml?</span>()
|
||||
<span class="ruby-identifier">response_hash</span>[<span class="ruby-value">:body</span>] = <span class="ruby-identifier">body_text</span>.<span class="ruby-identifier">from_xml</span>()
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">body_text</span>.<span class="ruby-identifier">html?</span>()
|
||||
<span class="ruby-identifier">response_hash</span>[<span class="ruby-value">:body</span>] = <span class="ruby-identifier">body_text</span>.<span class="ruby-identifier">from_html</span>()
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">Exception</span>, <span class="ruby-string">"Failed to retrieve either XML or HTML as data."</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-comment">#</span>
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-identifier">response_hash</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-comment"># Default output:</span>
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-identifier">response</span>.<span class="ruby-identifier">body</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:save_as</span>]
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">Exception</span>, <span class="ruby-node">"Error occured: Code #{response.code}"</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">Exception</span>, <span class="ruby-string">"You MUST provide a valid HTTP URI"</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>
|
||||
<span class="ruby-identifier">log_error</span>({<span class="ruby-value">:error</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>, <span class="ruby-value">:parameters</span> <span class="ruby-operator">=></span> {<span class="ruby-value">:url</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_url</span>, <span class="ruby-value">:options</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">options</span>}})
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">result</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-post" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">post</span><span
|
||||
class="method-args">(the_url=nil, form_data=nil, options={})</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="post-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 5534</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">post</span>(<span class="ruby-identifier">the_url</span>=<span class="ruby-keyword">nil</span>, <span class="ruby-identifier">form_data</span>=<span class="ruby-keyword">nil</span>, <span class="ruby-identifier">options</span>={})
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">false</span>
|
||||
<span class="ruby-keyword">begin</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">options</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Hash</span>)
|
||||
<span class="ruby-identifier">options</span> = {}
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">scheme</span>.<span class="ruby-identifier">downcase</span> <span class="ruby-operator">==</span> <span class="ruby-string">"https"</span>
|
||||
<span class="ruby-identifier">options</span>[<span class="ruby-value">:use_ssl</span>] = <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">is_any?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">URI</span><span class="ruby-operator">::</span><span class="ruby-constant">HTTP</span>, <span class="ruby-operator">::</span><span class="ruby-constant">URI</span><span class="ruby-operator">::</span><span class="ruby-constant">HTTPS</span>)
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">form_data</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Hash</span>)
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">Exception</span>, <span class="ruby-string">"You MUST provide valid form data (in the form of a Hash)"</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">client_parameters</span> = [(<span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">hostname</span>), (<span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">port</span>)]
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:proxy</span>].<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">URI</span><span class="ruby-operator">::</span><span class="ruby-constant">Generic</span>)
|
||||
<span class="ruby-identifier">client_parameters</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:proxy</span>].<span class="ruby-identifier">host</span>
|
||||
<span class="ruby-identifier">client_parameters</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:proxy</span>].<span class="ruby-identifier">port</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:proxy</span>].<span class="ruby-identifier">user</span> <span class="ruby-operator">&&</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:proxy</span>].<span class="ruby-identifier">password</span>
|
||||
<span class="ruby-identifier">client_parameters</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:proxy</span>].<span class="ruby-identifier">user</span>
|
||||
<span class="ruby-identifier">client_parameters</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:proxy</span>].<span class="ruby-identifier">password</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">client_parameters</span> <span class="ruby-operator"><<</span> <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-identifier">client_parameters</span> <span class="ruby-operator"><<</span> <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">client_parameters</span> <span class="ruby-operator"><<</span> <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-identifier">client_parameters</span> <span class="ruby-operator"><<</span> <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-identifier">client_parameters</span> <span class="ruby-operator"><<</span> <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-identifier">client_parameters</span> <span class="ruby-operator"><<</span> <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>.<span class="ruby-identifier">keys</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span>
|
||||
<span class="ruby-identifier">client_parameters</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">options</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">server</span> = <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">HTTP</span>.<span class="ruby-identifier">start</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">client_parameters</span>)
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:pem_file</span>].<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">String</span>)
|
||||
<span class="ruby-identifier">pem_file</span> = <span class="ruby-operator">::</span><span class="ruby-constant">File</span>.<span class="ruby-identifier">read</span>(<span class="ruby-identifier">options</span>[<span class="ruby-value">:pem_file</span>])
|
||||
<span class="ruby-identifier">server</span>.<span class="ruby-identifier">use_ssl</span> = <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-identifier">server</span>.<span class="ruby-identifier">cert</span> = <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">X509</span><span class="ruby-operator">::</span><span class="ruby-constant">Certificate</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">pem_file</span>)
|
||||
<span class="ruby-identifier">server</span>.<span class="ruby-identifier">key</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">pem_file</span>, <span class="ruby-identifier">options</span>[<span class="ruby-value">:pem_password</span>])
|
||||
<span class="ruby-identifier">server</span>.<span class="ruby-identifier">verify_mode</span> = <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">SSL</span><span class="ruby-operator">::</span><span class="ruby-constant">VERIFY_PEER</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@cookie</span>
|
||||
<span class="ruby-identifier">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">new</span>(<span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">request_uri</span>, {<span class="ruby-string">'Cookie'</span> <span class="ruby-operator">=></span> <span class="ruby-ivar">@cookie</span>})
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">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">new</span>(<span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">request_uri</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> (<span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">user</span> <span class="ruby-operator">&&</span> <span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">password</span>)
|
||||
<span class="ruby-comment"># basic auth</span>
|
||||
<span class="ruby-identifier">request</span>.<span class="ruby-identifier">basic_auth</span>(<span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">user</span>, <span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">password</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">request</span>.<span class="ruby-identifier">set_form_data</span>(<span class="ruby-identifier">form_data</span>)
|
||||
<span class="ruby-identifier">response</span> = <span class="ruby-identifier">server</span>.<span class="ruby-identifier">request</span>(<span class="ruby-identifier">request</span>)
|
||||
<span class="ruby-identifier">response_code</span> = <span class="ruby-identifier">response</span>.<span class="ruby-identifier">code</span>.<span class="ruby-identifier">to_i</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:follow_redirects</span>]
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">response_code</span> <span class="ruby-operator">>=</span> <span class="ruby-value">300</span> <span class="ruby-operator">&&</span> <span class="ruby-identifier">response_code</span> <span class="ruby-operator"><</span> <span class="ruby-value">400</span>
|
||||
<span class="ruby-comment"># Process Redirect</span>
|
||||
<span class="ruby-identifier">redirect_count</span> = <span class="ruby-value">1</span>
|
||||
<span class="ruby-identifier">location</span> = <span class="ruby-identifier">response</span>[<span class="ruby-string">'location'</span>]
|
||||
<span class="ruby-keyword">while</span> <span class="ruby-identifier">location</span> <span class="ruby-keyword">do</span>
|
||||
<span class="ruby-comment">#</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@cookie</span>
|
||||
<span class="ruby-identifier">redirect_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">new</span>(<span class="ruby-identifier">location</span>, {<span class="ruby-string">'Cookie'</span> <span class="ruby-operator">=></span> <span class="ruby-ivar">@cookie</span>})
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">redirect_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">new</span>(<span class="ruby-identifier">location</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">redirect_request</span>.<span class="ruby-identifier">set_form_data</span>(<span class="ruby-identifier">form_data</span>)
|
||||
<span class="ruby-identifier">redirect_response</span> = <span class="ruby-identifier">server</span>.<span class="ruby-identifier">request</span>(<span class="ruby-identifier">redirect_request</span>)
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">redirect_response</span>.<span class="ruby-identifier">code</span>.<span class="ruby-identifier">to_i</span> <span class="ruby-operator">==</span> <span class="ruby-value">200</span>
|
||||
<span class="ruby-identifier">response</span> = <span class="ruby-identifier">redirect_response</span>
|
||||
<span class="ruby-identifier">response_code</span> = <span class="ruby-value">200</span>
|
||||
<span class="ruby-keyword">break</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">redirect_response</span>[<span class="ruby-string">'location'</span>]
|
||||
<span class="ruby-identifier">redirect_count</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">redirect_count</span> <span class="ruby-operator">></span> <span class="ruby-value">9</span>
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">Exception</span>, <span class="ruby-string">"Circular redirect chain suspected (10 or more redirects)"</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">response_code</span> = <span class="ruby-identifier">redirect_response</span>.<span class="ruby-identifier">code</span>.<span class="ruby-identifier">to_i</span>
|
||||
<span class="ruby-identifier">location</span> = <span class="ruby-identifier">redirect_response</span>[<span class="ruby-string">'location'</span>]
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-keyword">break</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-comment">#</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">response</span>.<span class="ruby-identifier">code</span>.<span class="ruby-identifier">to_i</span> <span class="ruby-operator">==</span> <span class="ruby-value">200</span>
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">Exception</span>, <span class="ruby-node">"Error occured: Code #{response.code}"</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">Exception</span>, <span class="ruby-string">"You MUST provide a valid HTTP URI"</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>
|
||||
<span class="ruby-identifier">log_error</span>({<span class="ruby-value">:error</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>, <span class="ruby-value">:parameters</span> <span class="ruby-operator">=></span> {<span class="ruby-value">:url</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_url</span>, <span class="ruby-value">:form_data</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">form_data</span>, <span class="ruby-value">:options</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">options</span>}})
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">result</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-put" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">put</span><span
|
||||
class="method-args">(the_url=nil, data=nil, options={})</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="put-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 5433</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">put</span>(<span class="ruby-identifier">the_url</span>=<span class="ruby-keyword">nil</span>, <span class="ruby-identifier">data</span>=<span class="ruby-keyword">nil</span>, <span class="ruby-identifier">options</span>={})
|
||||
<span class="ruby-comment">#</span>
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">false</span>
|
||||
<span class="ruby-keyword">begin</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">options</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Hash</span>)
|
||||
<span class="ruby-identifier">options</span> = {}
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">scheme</span>.<span class="ruby-identifier">downcase</span> <span class="ruby-operator">==</span> <span class="ruby-string">"https"</span>
|
||||
<span class="ruby-identifier">options</span>[<span class="ruby-value">:use_ssl</span>] = <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">is_any?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">URI</span><span class="ruby-operator">::</span><span class="ruby-constant">HTTP</span>, <span class="ruby-operator">::</span><span class="ruby-constant">URI</span><span class="ruby-operator">::</span><span class="ruby-constant">HTTPS</span>)
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">data</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">String</span>)
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">Exception</span>, <span class="ruby-string">"You MUST provide valid PUT data (in the form of a String: 'parameter = value')"</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">client_parameters</span> = [(<span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">hostname</span>), (<span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">port</span>)]
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:proxy</span>].<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">URI</span><span class="ruby-operator">::</span><span class="ruby-constant">Generic</span>)
|
||||
<span class="ruby-identifier">client_parameters</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:proxy</span>].<span class="ruby-identifier">host</span>
|
||||
<span class="ruby-identifier">client_parameters</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:proxy</span>].<span class="ruby-identifier">port</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:proxy</span>].<span class="ruby-identifier">user</span> <span class="ruby-operator">&&</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:proxy</span>].<span class="ruby-identifier">password</span>
|
||||
<span class="ruby-identifier">client_parameters</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:proxy</span>].<span class="ruby-identifier">user</span>
|
||||
<span class="ruby-identifier">client_parameters</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:proxy</span>].<span class="ruby-identifier">password</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">client_parameters</span> <span class="ruby-operator"><<</span> <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-identifier">client_parameters</span> <span class="ruby-operator"><<</span> <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">client_parameters</span> <span class="ruby-operator"><<</span> <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-identifier">client_parameters</span> <span class="ruby-operator"><<</span> <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-identifier">client_parameters</span> <span class="ruby-operator"><<</span> <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-identifier">client_parameters</span> <span class="ruby-operator"><<</span> <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>.<span class="ruby-identifier">keys</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span>
|
||||
<span class="ruby-identifier">client_parameters</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">options</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">server</span> = <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">HTTP</span>.<span class="ruby-identifier">start</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">client_parameters</span>)
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:pem_file</span>].<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">String</span>)
|
||||
<span class="ruby-identifier">pem_file</span> = <span class="ruby-operator">::</span><span class="ruby-constant">File</span>.<span class="ruby-identifier">read</span>(<span class="ruby-identifier">options</span>[<span class="ruby-value">:pem_file</span>])
|
||||
<span class="ruby-identifier">server</span>.<span class="ruby-identifier">use_ssl</span> = <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-identifier">server</span>.<span class="ruby-identifier">cert</span> = <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">X509</span><span class="ruby-operator">::</span><span class="ruby-constant">Certificate</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">pem_file</span>)
|
||||
<span class="ruby-identifier">server</span>.<span class="ruby-identifier">key</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">pem_file</span>, <span class="ruby-identifier">options</span>[<span class="ruby-value">:pem_password</span>])
|
||||
<span class="ruby-identifier">server</span>.<span class="ruby-identifier">verify_mode</span> = <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">SSL</span><span class="ruby-operator">::</span><span class="ruby-constant">VERIFY_PEER</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-comment">#</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@cookie</span>
|
||||
<span class="ruby-identifier">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">new</span>(<span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">request_uri</span>,<span class="ruby-identifier">data</span>, {<span class="ruby-string">'Cookie'</span> <span class="ruby-operator">=></span> <span class="ruby-ivar">@cookie</span>})
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">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">new</span>(<span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">request_uri</span>,<span class="ruby-identifier">data</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> (<span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">user</span> <span class="ruby-operator">&&</span> <span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">password</span>)
|
||||
<span class="ruby-comment"># basic auth</span>
|
||||
<span class="ruby-identifier">request</span>.<span class="ruby-identifier">basic_auth</span>(<span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">user</span>, <span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">password</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">response</span> = <span class="ruby-identifier">server</span>.<span class="ruby-identifier">request</span>(<span class="ruby-identifier">request</span>)
|
||||
<span class="ruby-identifier">response_code</span> = <span class="ruby-identifier">response</span>.<span class="ruby-identifier">code</span>.<span class="ruby-identifier">to_i</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:follow_redirects</span>]
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">response_code</span> <span class="ruby-operator">>=</span> <span class="ruby-value">300</span> <span class="ruby-operator">&&</span> <span class="ruby-identifier">response_code</span> <span class="ruby-operator"><</span> <span class="ruby-value">400</span>
|
||||
<span class="ruby-comment"># Process Redirect</span>
|
||||
<span class="ruby-identifier">redirect_count</span> = <span class="ruby-value">1</span>
|
||||
<span class="ruby-identifier">location</span> = <span class="ruby-identifier">response</span>[<span class="ruby-string">'location'</span>]
|
||||
<span class="ruby-keyword">while</span> <span class="ruby-identifier">location</span> <span class="ruby-keyword">do</span>
|
||||
<span class="ruby-comment">#</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@cookie</span>
|
||||
<span class="ruby-identifier">redirect_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">new</span>(<span class="ruby-identifier">location</span>, {<span class="ruby-string">'Cookie'</span> <span class="ruby-operator">=></span> <span class="ruby-ivar">@cookie</span>})
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">redirect_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">new</span>(<span class="ruby-identifier">location</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">redirect_response</span> = <span class="ruby-identifier">server</span>.<span class="ruby-identifier">request</span>(<span class="ruby-identifier">redirect_request</span>)
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">redirect_response</span>.<span class="ruby-identifier">code</span>.<span class="ruby-identifier">to_i</span> <span class="ruby-operator">==</span> <span class="ruby-value">200</span>
|
||||
<span class="ruby-identifier">response</span> = <span class="ruby-identifier">redirect_response</span>
|
||||
<span class="ruby-identifier">response_code</span> = <span class="ruby-value">200</span>
|
||||
<span class="ruby-keyword">break</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">redirect_response</span>[<span class="ruby-string">'location'</span>]
|
||||
<span class="ruby-identifier">redirect_count</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">redirect_count</span> <span class="ruby-operator">></span> <span class="ruby-value">9</span>
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">Exception</span>, <span class="ruby-string">"Circular redirect chain suspected (10 or more redirects)"</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">response_code</span> = <span class="ruby-identifier">redirect_response</span>.<span class="ruby-identifier">code</span>.<span class="ruby-identifier">to_i</span>
|
||||
<span class="ruby-identifier">location</span> = <span class="ruby-identifier">redirect_response</span>[<span class="ruby-string">'location'</span>]
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-keyword">break</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-comment">#</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">response</span>.<span class="ruby-identifier">code</span>.<span class="ruby-identifier">to_i</span> <span class="ruby-operator">==</span> <span class="ruby-value">200</span>
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">Exception</span>, <span class="ruby-node">"Error occured: Code #{response.code}"</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">Exception</span>, <span class="ruby-string">"You MUST provide a valid HTTP URI"</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>
|
||||
<span class="ruby-identifier">log_error</span>({<span class="ruby-value">:error</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>, <span class="ruby-value">:parameters</span> <span class="ruby-operator">=></span> {<span class="ruby-value">:url</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_url</span>, <span class="ruby-value">:form_data</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">data</span>, <span class="ruby-value">:options</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">options</span>}})
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">result</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
</section>
|
||||
|
||||
</section>
|
||||
</main>
|
||||
|
||||
|
||||
<footer id="validator-badges" role="contentinfo">
|
||||
<p><a href="https://validator.w3.org/check/referer">Validate</a>
|
||||
<p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.1.2.
|
||||
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
|
||||
</footer>
|
||||
|
||||
374
doc/GxG/Networking/HttpsClient.html
Normal file
374
doc/GxG/Networking/HttpsClient.html
Normal file
|
|
@ -0,0 +1,374 @@
|
|||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
|
||||
<title>class GxG::Networking::HttpsClient - RDoc Documentation</title>
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "../../";
|
||||
var index_rel_prefix = "../../";
|
||||
</script>
|
||||
|
||||
<script src="../../js/navigation.js" defer></script>
|
||||
<script src="../../js/search.js" defer></script>
|
||||
<script src="../../js/search_index.js" defer></script>
|
||||
<script src="../../js/searcher.js" defer></script>
|
||||
<script src="../../js/darkfish.js" defer></script>
|
||||
|
||||
<link href="../../css/fonts.css" rel="stylesheet">
|
||||
<link href="../../css/rdoc.css" rel="stylesheet">
|
||||
|
||||
|
||||
|
||||
<body id="top" role="document" class="class">
|
||||
<nav role="navigation">
|
||||
<div id="project-navigation">
|
||||
<div id="home-section" role="region" title="Quick navigation" class="nav-section">
|
||||
<h2>
|
||||
<a href="../../index.html" rel="home">Home</a>
|
||||
</h2>
|
||||
|
||||
<div id="table-of-contents-navigation">
|
||||
<a href="../../table_of_contents.html#pages">Pages</a>
|
||||
<a href="../../table_of_contents.html#classes">Classes</a>
|
||||
<a href="../../table_of_contents.html#methods">Methods</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="search-section" role="search" class="project-section initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<div id="search-field-wrapper">
|
||||
<input id="search-field" role="combobox" aria-label="Search"
|
||||
aria-autocomplete="list" aria-controls="search-results"
|
||||
type="text" name="search" placeholder="Search" spellcheck="false"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</div>
|
||||
|
||||
<ul id="search-results" aria-label="Search Results"
|
||||
aria-busy="false" aria-expanded="false"
|
||||
aria-atomic="false" class="initially-hidden"></ul>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
<div id="parent-class-section" class="nav-section">
|
||||
<h3>Parent</h3>
|
||||
|
||||
|
||||
<p class="link"><a href="../../Object.html">Object</a>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<div id="method-list-section" class="nav-section">
|
||||
<h3>Methods</h3>
|
||||
|
||||
<ul class="link-list" role="directory">
|
||||
|
||||
<li ><a href="#method-c-new">::new</a>
|
||||
|
||||
<li ><a href="#method-i-clear_cache">#clear_cache</a>
|
||||
|
||||
<li ><a href="#method-i-cookies">#cookies</a>
|
||||
|
||||
<li ><a href="#method-i-delete">#delete</a>
|
||||
|
||||
<li ><a href="#method-i-get">#get</a>
|
||||
|
||||
<li ><a href="#method-i-post">#post</a>
|
||||
|
||||
<li ><a href="#method-i-put">#put</a>
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<main role="main" aria-labelledby="class-GxG::Networking::HttpsClient">
|
||||
<h1 id="class-GxG::Networking::HttpsClient" class="class">
|
||||
class GxG::Networking::HttpsClient
|
||||
</h1>
|
||||
|
||||
<section class="description">
|
||||
|
||||
</section>
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="public-class-5Buntitled-5D-method-details" class="method-section">
|
||||
<header>
|
||||
<h3>Public Class Methods</h3>
|
||||
</header>
|
||||
|
||||
|
||||
<div id="method-c-new" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">new</span><span
|
||||
class="method-args">()</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="new-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 5733</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">initialize</span>()
|
||||
<span class="ruby-ivar">@client</span> = <span class="ruby-operator">::</span><span class="ruby-constant">GxG</span><span class="ruby-operator">::</span><span class="ruby-constant">Networking</span><span class="ruby-operator">::</span><span class="ruby-constant">HttpClient</span>.<span class="ruby-identifier">new</span>
|
||||
<span class="ruby-keyword">self</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
</section>
|
||||
|
||||
<section id="public-instance-5Buntitled-5D-method-details" class="method-section">
|
||||
<header>
|
||||
<h3>Public Instance Methods</h3>
|
||||
</header>
|
||||
|
||||
|
||||
<div id="method-i-clear_cache" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">clear_cache</span><span
|
||||
class="method-args">()</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="clear_cache-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 5742</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">clear_cache</span>()
|
||||
<span class="ruby-ivar">@client</span>.<span class="ruby-identifier">clear_cache</span>()
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-cookies" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">cookies</span><span
|
||||
class="method-args">()</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="cookies-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 5738</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">cookies</span>()
|
||||
<span class="ruby-ivar">@client</span>.<span class="ruby-identifier">cookies</span>()
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-delete" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">delete</span><span
|
||||
class="method-args">(the_url=nil, options={})</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="delete-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 5755</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">delete</span>(<span class="ruby-identifier">the_url</span>=<span class="ruby-keyword">nil</span>, <span class="ruby-identifier">options</span>={})
|
||||
<span class="ruby-ivar">@client</span>.<span class="ruby-identifier">post</span>(<span class="ruby-identifier">the_url</span>,<span class="ruby-identifier">options</span>)
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-get" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">get</span><span
|
||||
class="method-args">(the_url=nil, options={:follow_redirects => true, :use_ssl => true})</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="get-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 5746</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">get</span>(<span class="ruby-identifier">the_url</span>=<span class="ruby-keyword">nil</span>, <span class="ruby-identifier">options</span>={<span class="ruby-value">:follow_redirects</span> <span class="ruby-operator">=></span> <span class="ruby-keyword">true</span>, <span class="ruby-value">:use_ssl</span> <span class="ruby-operator">=></span> <span class="ruby-keyword">true</span>})
|
||||
<span class="ruby-ivar">@client</span>.<span class="ruby-identifier">get</span>(<span class="ruby-identifier">the_url</span>,<span class="ruby-identifier">options</span>)
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-post" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">post</span><span
|
||||
class="method-args">(the_url=nil, form_data=nil, options={})</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="post-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 5752</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">post</span>(<span class="ruby-identifier">the_url</span>=<span class="ruby-keyword">nil</span>, <span class="ruby-identifier">form_data</span>=<span class="ruby-keyword">nil</span>, <span class="ruby-identifier">options</span>={})
|
||||
<span class="ruby-ivar">@client</span>.<span class="ruby-identifier">post</span>(<span class="ruby-identifier">the_url</span>,<span class="ruby-identifier">form_data</span>,<span class="ruby-identifier">options</span>)
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-put" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">put</span><span
|
||||
class="method-args">(the_url=nil, data=nil, options={})</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="put-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 5749</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">put</span>(<span class="ruby-identifier">the_url</span>=<span class="ruby-keyword">nil</span>, <span class="ruby-identifier">data</span>=<span class="ruby-keyword">nil</span>, <span class="ruby-identifier">options</span>={})
|
||||
<span class="ruby-ivar">@client</span>.<span class="ruby-identifier">put</span>(<span class="ruby-identifier">the_url</span>,<span class="ruby-identifier">data</span>,<span class="ruby-identifier">options</span>)
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
</section>
|
||||
|
||||
</section>
|
||||
</main>
|
||||
|
||||
|
||||
<footer id="validator-badges" role="contentinfo">
|
||||
<p><a href="https://validator.w3.org/check/referer">Validate</a>
|
||||
<p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.1.2.
|
||||
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
|
||||
</footer>
|
||||
|
||||
378
doc/GxG/Networking/HttpsClientWithPem.html
Normal file
378
doc/GxG/Networking/HttpsClientWithPem.html
Normal file
|
|
@ -0,0 +1,378 @@
|
|||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
|
||||
<title>class GxG::Networking::HttpsClientWithPem - RDoc Documentation</title>
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "../../";
|
||||
var index_rel_prefix = "../../";
|
||||
</script>
|
||||
|
||||
<script src="../../js/navigation.js" defer></script>
|
||||
<script src="../../js/search.js" defer></script>
|
||||
<script src="../../js/search_index.js" defer></script>
|
||||
<script src="../../js/searcher.js" defer></script>
|
||||
<script src="../../js/darkfish.js" defer></script>
|
||||
|
||||
<link href="../../css/fonts.css" rel="stylesheet">
|
||||
<link href="../../css/rdoc.css" rel="stylesheet">
|
||||
|
||||
|
||||
|
||||
<body id="top" role="document" class="class">
|
||||
<nav role="navigation">
|
||||
<div id="project-navigation">
|
||||
<div id="home-section" role="region" title="Quick navigation" class="nav-section">
|
||||
<h2>
|
||||
<a href="../../index.html" rel="home">Home</a>
|
||||
</h2>
|
||||
|
||||
<div id="table-of-contents-navigation">
|
||||
<a href="../../table_of_contents.html#pages">Pages</a>
|
||||
<a href="../../table_of_contents.html#classes">Classes</a>
|
||||
<a href="../../table_of_contents.html#methods">Methods</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="search-section" role="search" class="project-section initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<div id="search-field-wrapper">
|
||||
<input id="search-field" role="combobox" aria-label="Search"
|
||||
aria-autocomplete="list" aria-controls="search-results"
|
||||
type="text" name="search" placeholder="Search" spellcheck="false"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</div>
|
||||
|
||||
<ul id="search-results" aria-label="Search Results"
|
||||
aria-busy="false" aria-expanded="false"
|
||||
aria-atomic="false" class="initially-hidden"></ul>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
<div id="parent-class-section" class="nav-section">
|
||||
<h3>Parent</h3>
|
||||
|
||||
|
||||
<p class="link"><a href="../../Object.html">Object</a>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<div id="method-list-section" class="nav-section">
|
||||
<h3>Methods</h3>
|
||||
|
||||
<ul class="link-list" role="directory">
|
||||
|
||||
<li ><a href="#method-c-new">::new</a>
|
||||
|
||||
<li ><a href="#method-i-clear_cache">#clear_cache</a>
|
||||
|
||||
<li ><a href="#method-i-cookies">#cookies</a>
|
||||
|
||||
<li ><a href="#method-i-delete">#delete</a>
|
||||
|
||||
<li ><a href="#method-i-get">#get</a>
|
||||
|
||||
<li ><a href="#method-i-post">#post</a>
|
||||
|
||||
<li ><a href="#method-i-put">#put</a>
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<main role="main" aria-labelledby="class-GxG::Networking::HttpsClientWithPem">
|
||||
<h1 id="class-GxG::Networking::HttpsClientWithPem" class="class">
|
||||
class GxG::Networking::HttpsClientWithPem
|
||||
</h1>
|
||||
|
||||
<section class="description">
|
||||
|
||||
</section>
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="public-class-5Buntitled-5D-method-details" class="method-section">
|
||||
<header>
|
||||
<h3>Public Class Methods</h3>
|
||||
</header>
|
||||
|
||||
|
||||
<div id="method-c-new" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">new</span><span
|
||||
class="method-args">(pem_file_path=nil)</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="new-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 5761</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">initialize</span>(<span class="ruby-identifier">pem_file_path</span>=<span class="ruby-keyword">nil</span>)
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">pem_file_path</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">String</span>)
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">"You MUST provide a path to your PEM file (as a String)."</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-ivar">@pem_path</span> = <span class="ruby-identifier">pem_file_path</span>
|
||||
<span class="ruby-ivar">@client</span> = <span class="ruby-operator">::</span><span class="ruby-constant">GxG</span><span class="ruby-operator">::</span><span class="ruby-constant">Networking</span><span class="ruby-operator">::</span><span class="ruby-constant">HttpClient</span>.<span class="ruby-identifier">new</span>()
|
||||
<span class="ruby-keyword">self</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
</section>
|
||||
|
||||
<section id="public-instance-5Buntitled-5D-method-details" class="method-section">
|
||||
<header>
|
||||
<h3>Public Instance Methods</h3>
|
||||
</header>
|
||||
|
||||
|
||||
<div id="method-i-clear_cache" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">clear_cache</span><span
|
||||
class="method-args">()</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="clear_cache-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 5774</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">clear_cache</span>()
|
||||
<span class="ruby-ivar">@client</span>.<span class="ruby-identifier">clear_cache</span>()
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-cookies" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">cookies</span><span
|
||||
class="method-args">()</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="cookies-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 5770</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">cookies</span>()
|
||||
<span class="ruby-ivar">@client</span>.<span class="ruby-identifier">cookies</span>()
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-delete" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">delete</span><span
|
||||
class="method-args">(the_url=nil, options={:follow_symlinks => true})</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="delete-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 5787</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">delete</span>(<span class="ruby-identifier">the_url</span>=<span class="ruby-keyword">nil</span>, <span class="ruby-identifier">options</span>={<span class="ruby-value">:follow_symlinks</span> <span class="ruby-operator">=></span> <span class="ruby-keyword">true</span>})
|
||||
<span class="ruby-ivar">@client</span>.<span class="ruby-identifier">delete</span>(<span class="ruby-identifier">the_url</span>,<span class="ruby-identifier">options</span>.<span class="ruby-identifier">merge</span>({<span class="ruby-value">:use_ssl</span> <span class="ruby-operator">=></span> <span class="ruby-keyword">true</span>, <span class="ruby-value">:pem_file</span> <span class="ruby-operator">=></span> <span class="ruby-ivar">@pem_path</span>}))
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-get" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">get</span><span
|
||||
class="method-args">(the_url=nil, options={:follow_symlinks => true})</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="get-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 5778</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">get</span>(<span class="ruby-identifier">the_url</span>=<span class="ruby-keyword">nil</span>, <span class="ruby-identifier">options</span>={<span class="ruby-value">:follow_symlinks</span> <span class="ruby-operator">=></span> <span class="ruby-keyword">true</span>})
|
||||
<span class="ruby-ivar">@client</span>.<span class="ruby-identifier">get</span>(<span class="ruby-identifier">the_url</span>,<span class="ruby-identifier">options</span>.<span class="ruby-identifier">merge</span>({<span class="ruby-value">:use_ssl</span> <span class="ruby-operator">=></span> <span class="ruby-keyword">true</span>, <span class="ruby-value">:pem_file</span> <span class="ruby-operator">=></span> <span class="ruby-ivar">@pem_path</span>}))
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-post" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">post</span><span
|
||||
class="method-args">(the_url=nil, form_data=nil, options={:follow_symlinks => true})</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="post-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 5784</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">post</span>(<span class="ruby-identifier">the_url</span>=<span class="ruby-keyword">nil</span>, <span class="ruby-identifier">form_data</span>=<span class="ruby-keyword">nil</span>, <span class="ruby-identifier">options</span>={<span class="ruby-value">:follow_symlinks</span> <span class="ruby-operator">=></span> <span class="ruby-keyword">true</span>})
|
||||
<span class="ruby-ivar">@client</span>.<span class="ruby-identifier">post</span>(<span class="ruby-identifier">the_url</span>,<span class="ruby-identifier">form_data</span>,<span class="ruby-identifier">options</span>.<span class="ruby-identifier">merge</span>({<span class="ruby-value">:use_ssl</span> <span class="ruby-operator">=></span> <span class="ruby-keyword">true</span>, <span class="ruby-value">:pem_file</span> <span class="ruby-operator">=></span> <span class="ruby-ivar">@pem_path</span>}))
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-put" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">put</span><span
|
||||
class="method-args">(the_url=nil, data=nil, options={:follow_symlinks => true})</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="put-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 5781</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">put</span>(<span class="ruby-identifier">the_url</span>=<span class="ruby-keyword">nil</span>, <span class="ruby-identifier">data</span>=<span class="ruby-keyword">nil</span>, <span class="ruby-identifier">options</span>={<span class="ruby-value">:follow_symlinks</span> <span class="ruby-operator">=></span> <span class="ruby-keyword">true</span>})
|
||||
<span class="ruby-ivar">@client</span>.<span class="ruby-identifier">put</span>(<span class="ruby-identifier">the_url</span>,<span class="ruby-identifier">data</span>,<span class="ruby-identifier">options</span>.<span class="ruby-identifier">merge</span>({<span class="ruby-value">:use_ssl</span> <span class="ruby-operator">=></span> <span class="ruby-keyword">true</span>, <span class="ruby-value">:pem_file</span> <span class="ruby-operator">=></span> <span class="ruby-ivar">@pem_path</span>}))
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
</section>
|
||||
|
||||
</section>
|
||||
</main>
|
||||
|
||||
|
||||
<footer id="validator-badges" role="contentinfo">
|
||||
<p><a href="https://validator.w3.org/check/referer">Validate</a>
|
||||
<p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.1.2.
|
||||
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
|
||||
</footer>
|
||||
|
||||
1965
doc/GxG/Networking/ImapClient.html
Normal file
1965
doc/GxG/Networking/ImapClient.html
Normal file
File diff suppressed because it is too large
Load diff
448
doc/GxG/Networking/Pop3Client.html
Normal file
448
doc/GxG/Networking/Pop3Client.html
Normal file
|
|
@ -0,0 +1,448 @@
|
|||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
|
||||
<title>class GxG::Networking::Pop3Client - RDoc Documentation</title>
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "../../";
|
||||
var index_rel_prefix = "../../";
|
||||
</script>
|
||||
|
||||
<script src="../../js/navigation.js" defer></script>
|
||||
<script src="../../js/search.js" defer></script>
|
||||
<script src="../../js/search_index.js" defer></script>
|
||||
<script src="../../js/searcher.js" defer></script>
|
||||
<script src="../../js/darkfish.js" defer></script>
|
||||
|
||||
<link href="../../css/fonts.css" rel="stylesheet">
|
||||
<link href="../../css/rdoc.css" rel="stylesheet">
|
||||
|
||||
|
||||
|
||||
<body id="top" role="document" class="class">
|
||||
<nav role="navigation">
|
||||
<div id="project-navigation">
|
||||
<div id="home-section" role="region" title="Quick navigation" class="nav-section">
|
||||
<h2>
|
||||
<a href="../../index.html" rel="home">Home</a>
|
||||
</h2>
|
||||
|
||||
<div id="table-of-contents-navigation">
|
||||
<a href="../../table_of_contents.html#pages">Pages</a>
|
||||
<a href="../../table_of_contents.html#classes">Classes</a>
|
||||
<a href="../../table_of_contents.html#methods">Methods</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="search-section" role="search" class="project-section initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<div id="search-field-wrapper">
|
||||
<input id="search-field" role="combobox" aria-label="Search"
|
||||
aria-autocomplete="list" aria-controls="search-results"
|
||||
type="text" name="search" placeholder="Search" spellcheck="false"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</div>
|
||||
|
||||
<ul id="search-results" aria-label="Search Results"
|
||||
aria-busy="false" aria-expanded="false"
|
||||
aria-atomic="false" class="initially-hidden"></ul>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
<div id="parent-class-section" class="nav-section">
|
||||
<h3>Parent</h3>
|
||||
|
||||
|
||||
<p class="link"><a href="../../Object.html">Object</a>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<div id="method-list-section" class="nav-section">
|
||||
<h3>Methods</h3>
|
||||
|
||||
<ul class="link-list" role="directory">
|
||||
|
||||
<li ><a href="#method-c-new">::new</a>
|
||||
|
||||
<li ><a href="#method-i-login">#login</a>
|
||||
|
||||
<li ><a href="#method-i-logout">#logout</a>
|
||||
|
||||
<li ><a href="#method-i-message_count">#message_count</a>
|
||||
|
||||
<li ><a href="#method-i-retrieve_messages">#retrieve_messages</a>
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<main role="main" aria-labelledby="class-GxG::Networking::Pop3Client">
|
||||
<h1 id="class-GxG::Networking::Pop3Client" class="class">
|
||||
class GxG::Networking::Pop3Client
|
||||
</h1>
|
||||
|
||||
<section class="description">
|
||||
|
||||
<p>POP3 Classes:</p>
|
||||
|
||||
</section>
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="public-class-5Buntitled-5D-method-details" class="method-section">
|
||||
<header>
|
||||
<h3>Public Class Methods</h3>
|
||||
</header>
|
||||
|
||||
|
||||
<div id="method-c-new" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">new</span><span
|
||||
class="method-args">(host=nil,port=nil,options={})</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="new-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 1626</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">initialize</span>(<span class="ruby-identifier">host</span>=<span class="ruby-keyword">nil</span>,<span class="ruby-identifier">port</span>=<span class="ruby-keyword">nil</span>,<span class="ruby-identifier">options</span>={})
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">port</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Hash</span>)
|
||||
<span class="ruby-identifier">options</span> = <span class="ruby-identifier">port</span>
|
||||
<span class="ruby-identifier">port</span> = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-ivar">@user</span> = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-ivar">@password</span> = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-ivar">@client</span> = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-ivar">@host</span> = <span class="ruby-identifier">host</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-ivar">@host</span>
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">"You MUST provide a HOST, like this: <host>,(<port>),(<options>)"</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:use_ssl</span>] <span class="ruby-operator">==</span> <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-ivar">@port</span> = (<span class="ruby-identifier">port</span> <span class="ruby-operator">||</span> <span class="ruby-value">995</span>)
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-ivar">@port</span> = (<span class="ruby-identifier">port</span> <span class="ruby-operator">||</span> <span class="ruby-value">110</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-ivar">@client</span> = <span class="ruby-operator">::</span><span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">POP3</span>.<span class="ruby-identifier">new</span>(<span class="ruby-ivar">@host</span>, <span class="ruby-ivar">@port</span>, (<span class="ruby-identifier">options</span>[<span class="ruby-value">:use_apop</span>] <span class="ruby-operator">||</span> <span class="ruby-keyword">false</span>))
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:use_ssl</span>] <span class="ruby-operator">==</span> <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:ignore_ssl_errors</span>] <span class="ruby-operator">==</span> <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-ivar">@client</span>.<span class="ruby-identifier">enable_ssl</span>(<span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">SSL</span><span class="ruby-operator">::</span><span class="ruby-constant">VERIFY_NONE</span>)
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-ivar">@client</span>.<span class="ruby-identifier">enable_ssl</span>(<span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">SSL</span><span class="ruby-operator">::</span><span class="ruby-constant">VERIFY_PEER</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-comment">#</span>
|
||||
<span class="ruby-keyword">self</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
</section>
|
||||
|
||||
<section id="public-instance-5Buntitled-5D-method-details" class="method-section">
|
||||
<header>
|
||||
<h3>Public Instance Methods</h3>
|
||||
</header>
|
||||
|
||||
|
||||
<div id="method-i-login" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">login</span><span
|
||||
class="method-args">(user_id=nil,password=nil,options={})</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="login-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 1655</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">login</span>(<span class="ruby-identifier">user_id</span>=<span class="ruby-keyword">nil</span>,<span class="ruby-identifier">password</span>=<span class="ruby-keyword">nil</span>,<span class="ruby-identifier">options</span>={})
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@client</span>
|
||||
<span class="ruby-ivar">@user</span> = <span class="ruby-identifier">user_id</span>
|
||||
<span class="ruby-ivar">@password</span> = <span class="ruby-identifier">password</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-ivar">@password</span>
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">"You MUST provide a PASSWORD, like this: <user_id>,<password>,(<options>)"</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-ivar">@client</span>.<span class="ruby-identifier">start</span>(<span class="ruby-ivar">@user</span>, <span class="ruby-ivar">@password</span>)
|
||||
<span class="ruby-keyword">true</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-keyword">false</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-comment">#</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-logout" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">logout</span><span
|
||||
class="method-args">()</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="logout-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 1670</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">logout</span>()
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@client</span>
|
||||
<span class="ruby-ivar">@client</span>.<span class="ruby-identifier">finish</span>
|
||||
<span class="ruby-ivar">@client</span> = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-keyword">true</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-message_count" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">message_count</span><span
|
||||
class="method-args">()</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="message_count-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 1678</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">message_count</span>()
|
||||
<span class="ruby-comment"># Return the number of emails on the server.</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@client</span>
|
||||
<span class="ruby-ivar">@client</span>.<span class="ruby-identifier">n_mails</span>()
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-value">0</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-retrieve_messages" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">retrieve_messages</span><span
|
||||
class="method-args">(options={:read_only=>false},&block)</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="retrieve_messages-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 1687</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">retrieve_messages</span>(<span class="ruby-identifier">options</span>={<span class="ruby-value">:read_only</span><span class="ruby-operator">=></span><span class="ruby-keyword">false</span>},<span class="ruby-operator">&</span><span class="ruby-identifier">block</span>)
|
||||
<span class="ruby-identifier">result</span> = []
|
||||
<span class="ruby-keyword">begin</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@client</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@client</span>.<span class="ruby-identifier">started?</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@client</span>.<span class="ruby-identifier">active?</span>
|
||||
<span class="ruby-identifier">parse_message</span> = <span class="ruby-constant">Proc</span>.<span class="ruby-identifier">new</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">the_raw_message</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">header</span> = {}
|
||||
<span class="ruby-identifier">body</span> = []
|
||||
<span class="ruby-identifier">attachments</span> = []
|
||||
<span class="ruby-identifier">parser</span> = <span class="ruby-operator">::</span><span class="ruby-constant">Mail</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">the_raw_message</span>.<span class="ruby-identifier">pop</span>)
|
||||
<span class="ruby-identifier">parser</span>.<span class="ruby-identifier">header_fields</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">field</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">the_key</span> = <span class="ruby-identifier">field</span>.<span class="ruby-identifier">name</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">to_sym</span>
|
||||
<span class="ruby-identifier">the_data</span> = <span class="ruby-identifier">field</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">transcode</span>({<span class="ruby-value">:replace</span> <span class="ruby-operator">=></span> <span class="ruby-string">"."</span>},<span class="ruby-operator">::</span><span class="ruby-constant">Encoding</span><span class="ruby-operator">::</span><span class="ruby-constant">UTF_8</span>)
|
||||
<span class="ruby-identifier">the_data</span>.<span class="ruby-identifier">gsub!</span>(<span class="ruby-string">" "</span>,<span class="ruby-string">""</span>)
|
||||
<span class="ruby-identifier">the_data</span>.<span class="ruby-identifier">gsub!</span>(<span class="ruby-string">" "</span>,<span class="ruby-string">""</span>)
|
||||
<span class="ruby-identifier">the_data</span>.<span class="ruby-identifier">gsub!</span>(<span class="ruby-string">" "</span>,<span class="ruby-string">""</span>)
|
||||
<span class="ruby-identifier">the_data</span>.<span class="ruby-identifier">gsub!</span>(<span class="ruby-string">"\r\n"</span>,<span class="ruby-string">""</span>)
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">header</span>[(<span class="ruby-identifier">the_key</span>)]
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">header</span>[(<span class="ruby-identifier">the_key</span>)].<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Array</span>)
|
||||
<span class="ruby-identifier">header</span>[(<span class="ruby-identifier">the_key</span>)] = [(<span class="ruby-identifier">header</span>[(<span class="ruby-identifier">the_key</span>)])]
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">header</span>[(<span class="ruby-identifier">the_key</span>)] <span class="ruby-operator"><<</span> <span class="ruby-identifier">the_data</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">header</span>[(<span class="ruby-identifier">the_key</span>)] = <span class="ruby-identifier">the_data</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">parser</span>.<span class="ruby-identifier">multipart?</span>
|
||||
<span class="ruby-identifier">link_db</span> = []
|
||||
<span class="ruby-identifier">body</span> <span class="ruby-operator"><<</span> {<span class="ruby-value">:preamble</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">parser</span>.<span class="ruby-identifier">body</span>.<span class="ruby-identifier">preamble</span>}
|
||||
<span class="ruby-identifier">parser</span>.<span class="ruby-identifier">parts</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">part</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">part</span>.<span class="ruby-identifier">multipart?</span>
|
||||
<span class="ruby-identifier">link_db</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">part</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">part</span>.<span class="ruby-identifier">attachment?</span>
|
||||
<span class="ruby-identifier">attachments</span> <span class="ruby-operator"><<</span> {<span class="ruby-value">:content_type</span> <span class="ruby-operator">=></span> {<span class="ruby-value">:type</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">part</span>.<span class="ruby-identifier">mime_type</span>, <span class="ruby-value">:parameters</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">part</span>.<span class="ruby-identifier">content_type_parameters</span>}, <span class="ruby-value">:filename</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">part</span>.<span class="ruby-identifier">filename</span>, <span class="ruby-value">:path</span> <span class="ruby-operator">=></span> <span class="ruby-keyword">nil</span>, <span class="ruby-value">:content</span> <span class="ruby-operator">=></span> <span class="ruby-operator">::</span><span class="ruby-constant">GxG</span><span class="ruby-operator">::</span><span class="ruby-constant">ByteArray</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">part</span>.<span class="ruby-identifier">decoded</span>)}
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">body</span> <span class="ruby-operator"><<</span> {<span class="ruby-value">:content_type</span> <span class="ruby-operator">=></span> {<span class="ruby-value">:type</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">part</span>.<span class="ruby-identifier">mime_type</span>, <span class="ruby-value">:parameters</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">part</span>.<span class="ruby-identifier">content_type_parameters</span>}, <span class="ruby-value">:content</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">part</span>.<span class="ruby-identifier">body</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">transcode</span>({<span class="ruby-value">:replace</span> <span class="ruby-operator">=></span> <span class="ruby-string">"."</span>},<span class="ruby-operator">::</span><span class="ruby-constant">Encoding</span><span class="ruby-operator">::</span><span class="ruby-constant">UTF_8</span>)}
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">while</span> <span class="ruby-identifier">link_db</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span> <span class="ruby-keyword">do</span>
|
||||
<span class="ruby-identifier">part</span> = <span class="ruby-identifier">link_db</span>.<span class="ruby-identifier">shift</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">part</span>.<span class="ruby-identifier">multipart?</span>
|
||||
<span class="ruby-identifier">part</span>.<span class="ruby-identifier">parts</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">the_sub_part</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">link_db</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">the_sub_part</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">part</span>.<span class="ruby-identifier">attachment?</span>
|
||||
<span class="ruby-identifier">attachments</span> <span class="ruby-operator"><<</span> {<span class="ruby-value">:content_type</span> <span class="ruby-operator">=></span> {<span class="ruby-value">:type</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">part</span>.<span class="ruby-identifier">mime_type</span>, <span class="ruby-value">:parameters</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">part</span>.<span class="ruby-identifier">content_type_parameters</span>}, <span class="ruby-value">:filename</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">part</span>.<span class="ruby-identifier">filename</span>, <span class="ruby-value">:path</span> <span class="ruby-operator">=></span> <span class="ruby-keyword">nil</span>, <span class="ruby-value">:content</span> <span class="ruby-operator">=></span> <span class="ruby-operator">::</span><span class="ruby-constant">GxG</span><span class="ruby-operator">::</span><span class="ruby-constant">ByteArray</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">part</span>.<span class="ruby-identifier">decoded</span>)}
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">body</span> <span class="ruby-operator"><<</span> {<span class="ruby-value">:content_type</span> <span class="ruby-operator">=></span> {<span class="ruby-value">:type</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">part</span>.<span class="ruby-identifier">mime_type</span>, <span class="ruby-value">:parameters</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">part</span>.<span class="ruby-identifier">content_type_parameters</span>}, <span class="ruby-value">:content</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">part</span>.<span class="ruby-identifier">body</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">transcode</span>({<span class="ruby-value">:replace</span> <span class="ruby-operator">=></span> <span class="ruby-string">"."</span>},<span class="ruby-operator">::</span><span class="ruby-constant">Encoding</span><span class="ruby-operator">::</span><span class="ruby-constant">UTF_8</span>)}
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">body</span> <span class="ruby-operator"><<</span> {<span class="ruby-value">:epilogue</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">parser</span>.<span class="ruby-identifier">body</span>.<span class="ruby-identifier">epilogue</span>}
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">body</span> <span class="ruby-operator"><<</span> {<span class="ruby-value">:preamble</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">parser</span>.<span class="ruby-identifier">body</span>.<span class="ruby-identifier">preamble</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">transcode</span>({<span class="ruby-value">:replace</span> <span class="ruby-operator">=></span> <span class="ruby-string">"."</span>},<span class="ruby-operator">::</span><span class="ruby-constant">Encoding</span><span class="ruby-operator">::</span><span class="ruby-constant">UTF_8</span>)}
|
||||
<span class="ruby-identifier">mime_type</span> = <span class="ruby-string">"text/plain"</span>
|
||||
<span class="ruby-identifier">parameters</span> = {<span class="ruby-string">"charset"</span> <span class="ruby-operator">=></span> <span class="ruby-string">"UTF-8"</span>}
|
||||
<span class="ruby-identifier">body_text</span> = <span class="ruby-identifier">parser</span>.<span class="ruby-identifier">body</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">transcode</span>({<span class="ruby-value">:replace</span> <span class="ruby-operator">=></span> <span class="ruby-string">"."</span>},<span class="ruby-operator">::</span><span class="ruby-constant">Encoding</span><span class="ruby-operator">::</span><span class="ruby-constant">UTF_8</span>)
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">body_text</span>.<span class="ruby-identifier">xml?</span>
|
||||
<span class="ruby-identifier">mime_type</span> = <span class="ruby-string">"text/xml"</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">body_text</span>.<span class="ruby-identifier">html?</span>
|
||||
<span class="ruby-identifier">mime_type</span> = <span class="ruby-string">"text/html"</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">body</span> <span class="ruby-operator"><<</span> {<span class="ruby-value">:content_type</span> <span class="ruby-operator">=></span> {<span class="ruby-value">:type</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">mime_type</span>, <span class="ruby-value">:parameters</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">parameters</span>}, <span class="ruby-value">:content</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">body_text</span>}
|
||||
<span class="ruby-identifier">body</span> <span class="ruby-operator"><<</span> {<span class="ruby-value">:epilogue</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">parser</span>.<span class="ruby-identifier">body</span>.<span class="ruby-identifier">epilogueto_s</span>.<span class="ruby-identifier">transcode</span>({<span class="ruby-value">:replace</span> <span class="ruby-operator">=></span> <span class="ruby-string">"."</span>},<span class="ruby-operator">::</span><span class="ruby-constant">Encoding</span><span class="ruby-operator">::</span><span class="ruby-constant">UTF_8</span>)}
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">gxg_message</span> = <span class="ruby-identifier">new_message</span>
|
||||
<span class="ruby-identifier">gxg_message</span>[<span class="ruby-value">:sender</span>] = <span class="ruby-identifier">parser</span>.<span class="ruby-identifier">from</span>
|
||||
<span class="ruby-identifier">gxg_message</span>[<span class="ruby-value">:id</span>] = <span class="ruby-identifier">parser</span>.<span class="ruby-identifier">message_id</span>
|
||||
<span class="ruby-identifier">gxg_message</span>[<span class="ruby-value">:to</span>] = <span class="ruby-identifier">parser</span>.<span class="ruby-identifier">to</span>
|
||||
<span class="ruby-identifier">gxg_message</span>[<span class="ruby-value">:cc</span>] = <span class="ruby-identifier">parser</span>.<span class="ruby-identifier">cc</span>
|
||||
<span class="ruby-identifier">gxg_message</span>[<span class="ruby-value">:bcc</span>] = <span class="ruby-identifier">parser</span>.<span class="ruby-identifier">bcc</span>
|
||||
<span class="ruby-identifier">gxg_message</span>[<span class="ruby-value">:subject</span>] = <span class="ruby-identifier">parser</span>.<span class="ruby-identifier">subject</span>
|
||||
<span class="ruby-identifier">gxg_message</span>[<span class="ruby-value">:date</span>] = <span class="ruby-identifier">parser</span>.<span class="ruby-identifier">date</span>
|
||||
<span class="ruby-identifier">gxg_message</span>[<span class="ruby-value">:header</span>] = <span class="ruby-identifier">header</span>
|
||||
<span class="ruby-identifier">gxg_message</span>[<span class="ruby-value">:body</span>] = <span class="ruby-identifier">body</span>
|
||||
<span class="ruby-identifier">gxg_message</span>[<span class="ruby-value">:attachments</span>] = <span class="ruby-identifier">attachments</span>
|
||||
<span class="ruby-identifier">gxg_message</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-ivar">@client</span>.<span class="ruby-identifier">each_mail</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">raw_message</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">block</span>.<span class="ruby-identifier">respond_to?</span>(<span class="ruby-value">:call</span>)
|
||||
<span class="ruby-identifier">block</span>.<span class="ruby-identifier">call</span>(<span class="ruby-identifier">parse_message</span>.<span class="ruby-identifier">call</span>(<span class="ruby-identifier">raw_message</span>))
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">result</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">parse_message</span>.<span class="ruby-identifier">call</span>(<span class="ruby-identifier">raw_message</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:read_only</span>] <span class="ruby-operator">==</span> <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-identifier">raw_message</span>.<span class="ruby-identifier">delete</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>
|
||||
<span class="ruby-identifier">log_error</span>({<span class="ruby-value">:error</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>, <span class="ruby-value">:parameters</span> <span class="ruby-operator">=></span> {}})
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">result</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
</section>
|
||||
|
||||
</section>
|
||||
</main>
|
||||
|
||||
|
||||
<footer id="validator-badges" role="contentinfo">
|
||||
<p><a href="https://validator.w3.org/check/referer">Validate</a>
|
||||
<p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.1.2.
|
||||
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
|
||||
</footer>
|
||||
|
||||
638
doc/GxG/Networking/RestClient.html
Normal file
638
doc/GxG/Networking/RestClient.html
Normal file
|
|
@ -0,0 +1,638 @@
|
|||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
|
||||
<title>class GxG::Networking::RestClient - RDoc Documentation</title>
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "../../";
|
||||
var index_rel_prefix = "../../";
|
||||
</script>
|
||||
|
||||
<script src="../../js/navigation.js" defer></script>
|
||||
<script src="../../js/search.js" defer></script>
|
||||
<script src="../../js/search_index.js" defer></script>
|
||||
<script src="../../js/searcher.js" defer></script>
|
||||
<script src="../../js/darkfish.js" defer></script>
|
||||
|
||||
<link href="../../css/fonts.css" rel="stylesheet">
|
||||
<link href="../../css/rdoc.css" rel="stylesheet">
|
||||
|
||||
|
||||
|
||||
<body id="top" role="document" class="class">
|
||||
<nav role="navigation">
|
||||
<div id="project-navigation">
|
||||
<div id="home-section" role="region" title="Quick navigation" class="nav-section">
|
||||
<h2>
|
||||
<a href="../../index.html" rel="home">Home</a>
|
||||
</h2>
|
||||
|
||||
<div id="table-of-contents-navigation">
|
||||
<a href="../../table_of_contents.html#pages">Pages</a>
|
||||
<a href="../../table_of_contents.html#classes">Classes</a>
|
||||
<a href="../../table_of_contents.html#methods">Methods</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="search-section" role="search" class="project-section initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<div id="search-field-wrapper">
|
||||
<input id="search-field" role="combobox" aria-label="Search"
|
||||
aria-autocomplete="list" aria-controls="search-results"
|
||||
type="text" name="search" placeholder="Search" spellcheck="false"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</div>
|
||||
|
||||
<ul id="search-results" aria-label="Search Results"
|
||||
aria-busy="false" aria-expanded="false"
|
||||
aria-atomic="false" class="initially-hidden"></ul>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
<div id="parent-class-section" class="nav-section">
|
||||
<h3>Parent</h3>
|
||||
|
||||
|
||||
<p class="link"><a href="../../Object.html">Object</a>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<div id="method-list-section" class="nav-section">
|
||||
<h3>Methods</h3>
|
||||
|
||||
<ul class="link-list" role="directory">
|
||||
|
||||
<li ><a href="#method-c-clear_system_proxy">::clear_system_proxy</a>
|
||||
|
||||
<li ><a href="#method-c-set_system_proxy">::set_system_proxy</a>
|
||||
|
||||
<li ><a href="#method-i-clear_cache">#clear_cache</a>
|
||||
|
||||
<li ><a href="#method-i-delete">#delete</a>
|
||||
|
||||
<li ><a href="#method-i-get">#get</a>
|
||||
|
||||
<li ><a href="#method-i-intitialize">#intitialize</a>
|
||||
|
||||
<li ><a href="#method-i-post">#post</a>
|
||||
|
||||
<li ><a href="#method-i-put">#put</a>
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<main role="main" aria-labelledby="class-GxG::Networking::RestClient">
|
||||
<h1 id="class-GxG::Networking::RestClient" class="class">
|
||||
class GxG::Networking::RestClient
|
||||
</h1>
|
||||
|
||||
<section class="description">
|
||||
|
||||
<p>REST Classes:</p>
|
||||
|
||||
</section>
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="public-class-5Buntitled-5D-method-details" class="method-section">
|
||||
<header>
|
||||
<h3>Public Class Methods</h3>
|
||||
</header>
|
||||
|
||||
|
||||
<div id="method-c-clear_system_proxy" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">clear_system_proxy</span><span
|
||||
class="method-args">()</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="clear_system_proxy-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 1807</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier ruby-title">clear_system_proxy</span>()
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">false</span>
|
||||
<span class="ruby-keyword">begin</span>
|
||||
<span class="ruby-operator">::</span><span class="ruby-constant">RestClient</span>.<span class="ruby-identifier">proxy</span> = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>
|
||||
<span class="ruby-identifier">log_error</span>({<span class="ruby-value">:error</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>, <span class="ruby-value">:parameters</span> <span class="ruby-operator">=></span> {}})
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">result</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-c-set_system_proxy" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">set_system_proxy</span><span
|
||||
class="method-args">(the_url=nil)</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="set_system_proxy-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 1793</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier ruby-title">set_system_proxy</span>(<span class="ruby-identifier">the_url</span>=<span class="ruby-keyword">nil</span>)
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">false</span>
|
||||
<span class="ruby-keyword">begin</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">URI</span><span class="ruby-operator">::</span><span class="ruby-constant">Generic</span>)
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">"You MUST provide a valid proxy URI."</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-operator">::</span><span class="ruby-constant">RestClient</span>.<span class="ruby-identifier">proxy</span> = <span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">to_s</span>
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>
|
||||
<span class="ruby-identifier">log_error</span>({<span class="ruby-value">:error</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>, <span class="ruby-value">:parameters</span> <span class="ruby-operator">=></span> {<span class="ruby-value">:url</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_url</span>}})
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">result</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
</section>
|
||||
|
||||
<section id="public-instance-5Buntitled-5D-method-details" class="method-section">
|
||||
<header>
|
||||
<h3>Public Instance Methods</h3>
|
||||
</header>
|
||||
|
||||
|
||||
<div id="method-i-clear_cache" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">clear_cache</span><span
|
||||
class="method-args">()</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="clear_cache-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 1828</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">clear_cache</span>()
|
||||
<span class="ruby-ivar">@cookies</span> = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-keyword">true</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-delete" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">delete</span><span
|
||||
class="method-args">(the_url=nil, options={}, &block)</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="delete-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 2019</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">delete</span>(<span class="ruby-identifier">the_url</span>=<span class="ruby-keyword">nil</span>, <span class="ruby-identifier">options</span>={}, <span class="ruby-operator">&</span><span class="ruby-identifier">block</span>)
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">false</span>
|
||||
<span class="ruby-keyword">begin</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">URI</span><span class="ruby-operator">::</span><span class="ruby-constant">Generic</span>)
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">"You MUST provide a valid URI."</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">options</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Hash</span>)
|
||||
<span class="ruby-identifier">options</span> = {}
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">header_options</span> = (<span class="ruby-identifier">options</span>[<span class="ruby-value">:header_options</span>] <span class="ruby-operator">||</span> {}).<span class="ruby-identifier">merge</span>({<span class="ruby-value">:accept</span> <span class="ruby-operator">=></span> <span class="ruby-value">:json</span>})
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@cookies</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">header_options</span>[<span class="ruby-value">:cookies</span>]
|
||||
<span class="ruby-identifier">header_options</span>[<span class="ruby-value">:cookies</span>] = <span class="ruby-ivar">@cookies</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:pem_file</span>]
|
||||
<span class="ruby-identifier">pem_data</span> = <span class="ruby-operator">::</span><span class="ruby-constant">File</span>.<span class="ruby-identifier">read</span>(<span class="ruby-identifier">options</span>[<span class="ruby-value">:pem_file</span>])
|
||||
<span class="ruby-identifier">header_options</span> = <span class="ruby-identifier">header_options</span>.<span class="ruby-identifier">merge</span>({<span class="ruby-value">:ssl_client_cert</span> <span class="ruby-operator">=></span> <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">X509</span><span class="ruby-operator">::</span><span class="ruby-constant">Certificate</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">pem_data</span>), <span class="ruby-value">:ssl_client_key</span> <span class="ruby-operator">=></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">pem_data</span>, <span class="ruby-identifier">options</span>[<span class="ruby-value">:pem_password</span>]), <span class="ruby-value">:verify_ssl</span> <span class="ruby-operator">=></span> <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">SSL</span><span class="ruby-operator">::</span><span class="ruby-constant">VERIFY_PEER</span>})
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:proxy</span>].<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">URI</span><span class="ruby-operator">::</span><span class="ruby-constant">Generic</span>)
|
||||
<span class="ruby-identifier">header_options</span>[<span class="ruby-value">:proxy</span>] = <span class="ruby-identifier">options</span>[<span class="ruby-value">:proxy</span>]
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">response</span> = <span class="ruby-operator">::</span><span class="ruby-constant">RestClient</span>.<span class="ruby-identifier">delete</span>(<span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">to_s</span>, <span class="ruby-identifier">header_options</span>, <span class="ruby-operator">&</span><span class="ruby-identifier">block</span>)
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:raw_response</span>] <span class="ruby-operator">==</span> <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-identifier">response</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>
|
||||
<span class="ruby-identifier">log_error</span>({<span class="ruby-value">:error</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>, <span class="ruby-value">:parameters</span> <span class="ruby-operator">=></span> {<span class="ruby-value">:url</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_url</span>, <span class="ruby-value">:options</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">options</span>}})
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">result</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-get" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">get</span><span
|
||||
class="method-args">(the_url=nil, options={}, &block)</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="get-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 1833</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">get</span>(<span class="ruby-identifier">the_url</span>=<span class="ruby-keyword">nil</span>, <span class="ruby-identifier">options</span>={}, <span class="ruby-operator">&</span><span class="ruby-identifier">block</span>)
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-keyword">begin</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">URI</span><span class="ruby-operator">::</span><span class="ruby-constant">Generic</span>)
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">"You MUST provide a valid URI."</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">options</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Hash</span>)
|
||||
<span class="ruby-identifier">options</span> = {}
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">header_options</span> = (<span class="ruby-identifier">options</span>[<span class="ruby-value">:header_options</span>] <span class="ruby-operator">||</span> {}).<span class="ruby-identifier">merge</span>({<span class="ruby-value">:accept</span> <span class="ruby-operator">=></span> <span class="ruby-value">:json</span>})
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@cookies</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">header_options</span>[<span class="ruby-value">:cookies</span>]
|
||||
<span class="ruby-identifier">header_options</span>[<span class="ruby-value">:cookies</span>] = <span class="ruby-ivar">@cookies</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:pem_file</span>]
|
||||
<span class="ruby-identifier">pem_data</span> = <span class="ruby-operator">::</span><span class="ruby-constant">File</span>.<span class="ruby-identifier">read</span>(<span class="ruby-identifier">options</span>[<span class="ruby-value">:pem_file</span>])
|
||||
<span class="ruby-identifier">header_options</span> = <span class="ruby-identifier">header_options</span>.<span class="ruby-identifier">merge</span>({<span class="ruby-value">:ssl_client_cert</span> <span class="ruby-operator">=></span> <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">X509</span><span class="ruby-operator">::</span><span class="ruby-constant">Certificate</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">pem_data</span>), <span class="ruby-value">:ssl_client_key</span> <span class="ruby-operator">=></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">pem_data</span>, <span class="ruby-identifier">options</span>[<span class="ruby-value">:pem_password</span>]), <span class="ruby-value">:verify_ssl</span> <span class="ruby-operator">=></span> <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">SSL</span><span class="ruby-operator">::</span><span class="ruby-constant">VERIFY_PEER</span>})
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:proxy</span>].<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">URI</span><span class="ruby-operator">::</span><span class="ruby-constant">Generic</span>)
|
||||
<span class="ruby-identifier">header_options</span>[<span class="ruby-value">:proxy</span>] = <span class="ruby-identifier">options</span>[<span class="ruby-value">:proxy</span>]
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:save_as</span>].<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">String</span>)
|
||||
<span class="ruby-identifier">client</span> = <span class="ruby-operator">::</span><span class="ruby-constant">GxG</span><span class="ruby-operator">::</span><span class="ruby-constant">Networking</span><span class="ruby-operator">::</span><span class="ruby-constant">HttpClient</span>.<span class="ruby-identifier">new</span>
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-identifier">client</span>.<span class="ruby-identifier">get</span>(<span class="ruby-identifier">the_url</span>, {<span class="ruby-value">:save_as</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:save_as</span>], <span class="ruby-value">:proxy</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:proxy</span>]})
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:parameters</span>].<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Hash</span>)
|
||||
<span class="ruby-identifier">response</span> = <span class="ruby-operator">::</span><span class="ruby-constant">RestClient</span>.<span class="ruby-identifier">get</span>(<span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">to_s</span>, <span class="ruby-identifier">header_options</span>.<span class="ruby-identifier">merge</span>({<span class="ruby-value">:params</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:parameters</span>]}), <span class="ruby-operator">&</span><span class="ruby-identifier">block</span>)
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">response</span> = <span class="ruby-operator">::</span><span class="ruby-constant">RestClient</span>.<span class="ruby-identifier">get</span>(<span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">to_s</span>, <span class="ruby-identifier">header_options</span>, <span class="ruby-operator">&</span><span class="ruby-identifier">block</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-comment">#</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-ivar">@cookies</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">response</span>.<span class="ruby-identifier">cookies</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Hash</span>)
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">response</span>.<span class="ruby-identifier">cookies</span>.<span class="ruby-identifier">keys</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span>
|
||||
<span class="ruby-ivar">@cookies</span> = <span class="ruby-identifier">response</span>.<span class="ruby-identifier">cookies</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:raw_response</span>] <span class="ruby-operator">==</span> <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-identifier">response</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">the_data</span> = <span class="ruby-identifier">response</span>.<span class="ruby-identifier">body</span>.<span class="ruby-identifier">to_s</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_data</span>.<span class="ruby-identifier">base64?</span>
|
||||
<span class="ruby-identifier">the_data</span> = <span class="ruby-identifier">the_data</span>.<span class="ruby-identifier">decode64</span>()
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_data</span>.<span class="ruby-identifier">json?</span>
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-identifier">the_data</span>.<span class="ruby-identifier">from_json</span>()
|
||||
<span class="ruby-comment"># post-process value strings for DateTime, etc patterns and parse to ruby instances.</span>
|
||||
<span class="ruby-comment"># post-process - symbolize keys</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_data</span>.<span class="ruby-identifier">xml?</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:xml_simple</span>] <span class="ruby-operator">==</span> <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-identifier">the_data</span>.<span class="ruby-identifier">from_xml_simple</span>()
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-identifier">the_data</span>.<span class="ruby-identifier">from_xml</span>()
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_data</span>.<span class="ruby-identifier">html?</span>
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-identifier">the_data</span>.<span class="ruby-identifier">from_html</span>()
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-identifier">the_data</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>
|
||||
<span class="ruby-identifier">log_error</span>({<span class="ruby-value">:error</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>, <span class="ruby-value">:parameters</span> <span class="ruby-operator">=></span> {<span class="ruby-value">:url</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_url</span>, <span class="ruby-value">:options</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">options</span>}})
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">result</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-intitialize" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">intitialize</span><span
|
||||
class="method-args">()</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="intitialize-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 1818</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">intitialize</span>()
|
||||
<span class="ruby-comment"># REST Servers to test with:</span>
|
||||
<span class="ruby-comment"># http://services.groupkt.com/country/get/all</span>
|
||||
<span class="ruby-comment"># http://services.groupkt.com/state/get/{countryCode}/all</span>
|
||||
<span class="ruby-comment"># https://httpbin.org/get</span>
|
||||
<span class="ruby-comment">#</span>
|
||||
<span class="ruby-ivar">@cookies</span> = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-keyword">self</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-post" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">post</span><span
|
||||
class="method-args">(the_url=nil, form_data=nil, options={}, &block)</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="post-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 1968</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">post</span>(<span class="ruby-identifier">the_url</span>=<span class="ruby-keyword">nil</span>, <span class="ruby-identifier">form_data</span>=<span class="ruby-keyword">nil</span>, <span class="ruby-identifier">options</span>={}, <span class="ruby-operator">&</span><span class="ruby-identifier">block</span>)
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">false</span>
|
||||
<span class="ruby-keyword">begin</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">URI</span><span class="ruby-operator">::</span><span class="ruby-constant">Generic</span>)
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">"You MUST provide a valid URI."</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">form_data</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Hash</span>)
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">Exception</span>, <span class="ruby-string">"You MUST provide valid form data (in the form of a Hash)."</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">options</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Hash</span>)
|
||||
<span class="ruby-identifier">options</span> = {}
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">header_options</span> = (<span class="ruby-identifier">options</span>[<span class="ruby-value">:header_options</span>] <span class="ruby-operator">||</span> {}).<span class="ruby-identifier">merge</span>({<span class="ruby-value">:accept</span> <span class="ruby-operator">=></span> <span class="ruby-value">:json</span>})
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@cookies</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">header_options</span>[<span class="ruby-value">:cookies</span>]
|
||||
<span class="ruby-identifier">header_options</span>[<span class="ruby-value">:cookies</span>] = <span class="ruby-ivar">@cookies</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:pem_file</span>]
|
||||
<span class="ruby-identifier">pem_data</span> = <span class="ruby-operator">::</span><span class="ruby-constant">File</span>.<span class="ruby-identifier">read</span>(<span class="ruby-identifier">options</span>[<span class="ruby-value">:pem_file</span>])
|
||||
<span class="ruby-identifier">header_options</span> = <span class="ruby-identifier">header_options</span>.<span class="ruby-identifier">merge</span>({<span class="ruby-value">:ssl_client_cert</span> <span class="ruby-operator">=></span> <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">X509</span><span class="ruby-operator">::</span><span class="ruby-constant">Certificate</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">pem_data</span>), <span class="ruby-value">:ssl_client_key</span> <span class="ruby-operator">=></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">pem_data</span>, <span class="ruby-identifier">options</span>[<span class="ruby-value">:pem_password</span>]), <span class="ruby-value">:verify_ssl</span> <span class="ruby-operator">=></span> <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">SSL</span><span class="ruby-operator">::</span><span class="ruby-constant">VERIFY_PEER</span>})
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:proxy</span>].<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">URI</span><span class="ruby-operator">::</span><span class="ruby-constant">Generic</span>)
|
||||
<span class="ruby-identifier">header_options</span>[<span class="ruby-value">:proxy</span>] = <span class="ruby-identifier">options</span>[<span class="ruby-value">:proxy</span>]
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:upload_file</span>].<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">String</span>)
|
||||
<span class="ruby-identifier">form_data</span>[<span class="ruby-value">:file</span>] = <span class="ruby-operator">::</span><span class="ruby-constant">File</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">options</span>[<span class="ruby-value">:upload_file</span>], <span class="ruby-string">"rb"</span>)
|
||||
<span class="ruby-identifier">form_data</span>[<span class="ruby-value">:multipart</span>] = <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">form_data</span>.<span class="ruby-identifier">each_pair</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">the_key</span>, <span class="ruby-identifier">the_value</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_value</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">String</span>)
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_value</span>.<span class="ruby-identifier">valid_path?</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-operator">::</span><span class="ruby-constant">File</span>.<span class="ruby-identifier">exist?</span>(<span class="ruby-identifier">the_value</span>)
|
||||
<span class="ruby-identifier">form_data</span>[(<span class="ruby-identifier">the_key</span>)] = <span class="ruby-operator">::</span><span class="ruby-constant">File</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">the_value</span>, <span class="ruby-string">"rb"</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">response</span> = <span class="ruby-operator">::</span><span class="ruby-constant">RestClient</span>.<span class="ruby-identifier">post</span>(<span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">to_s</span>, <span class="ruby-identifier">form_data</span>, <span class="ruby-identifier">header_options</span>, <span class="ruby-operator">&</span><span class="ruby-identifier">block</span>)
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:raw_response</span>] <span class="ruby-operator">==</span> <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-identifier">response</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>
|
||||
<span class="ruby-identifier">log_error</span>({<span class="ruby-value">:error</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>, <span class="ruby-value">:parameters</span> <span class="ruby-operator">=></span> {<span class="ruby-value">:url</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_url</span>, <span class="ruby-value">:options</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">options</span>}})
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">result</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-put" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">put</span><span
|
||||
class="method-args">(the_url=nil, data=nil, options={}, &block)</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="put-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 1906</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">put</span>(<span class="ruby-identifier">the_url</span>=<span class="ruby-keyword">nil</span>, <span class="ruby-identifier">data</span>=<span class="ruby-keyword">nil</span>, <span class="ruby-identifier">options</span>={}, <span class="ruby-operator">&</span><span class="ruby-identifier">block</span>)
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">false</span>
|
||||
<span class="ruby-keyword">begin</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">URI</span><span class="ruby-operator">::</span><span class="ruby-constant">Generic</span>)
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">"You MUST provide a valid URI."</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">data</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Hash</span>)
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">Exception</span>, <span class="ruby-string">"You MUST provide data to PUT to the server (in the form of a Hash)."</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">options</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Hash</span>)
|
||||
<span class="ruby-identifier">options</span> = {}
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">header_options</span> = (<span class="ruby-identifier">options</span>[<span class="ruby-value">:header_options</span>] <span class="ruby-operator">||</span> {}).<span class="ruby-identifier">merge</span>({<span class="ruby-value">:accept</span> <span class="ruby-operator">=></span> <span class="ruby-value">:json</span>})
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@cookies</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">header_options</span>[<span class="ruby-value">:cookies</span>]
|
||||
<span class="ruby-identifier">header_options</span>[<span class="ruby-value">:cookies</span>] = <span class="ruby-ivar">@cookies</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:pem_file</span>]
|
||||
<span class="ruby-identifier">pem_data</span> = <span class="ruby-operator">::</span><span class="ruby-constant">File</span>.<span class="ruby-identifier">read</span>(<span class="ruby-identifier">options</span>[<span class="ruby-value">:pem_file</span>])
|
||||
<span class="ruby-identifier">header_options</span> = <span class="ruby-identifier">header_options</span>.<span class="ruby-identifier">merge</span>({<span class="ruby-value">:ssl_client_cert</span> <span class="ruby-operator">=></span> <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">X509</span><span class="ruby-operator">::</span><span class="ruby-constant">Certificate</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">pem_data</span>), <span class="ruby-value">:ssl_client_key</span> <span class="ruby-operator">=></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">pem_data</span>, <span class="ruby-identifier">options</span>[<span class="ruby-value">:pem_password</span>]), <span class="ruby-value">:verify_ssl</span> <span class="ruby-operator">=></span> <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">SSL</span><span class="ruby-operator">::</span><span class="ruby-constant">VERIFY_PEER</span>})
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:proxy</span>].<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">URI</span><span class="ruby-operator">::</span><span class="ruby-constant">Generic</span>)
|
||||
<span class="ruby-identifier">header_options</span>[<span class="ruby-value">:proxy</span>] = <span class="ruby-identifier">options</span>[<span class="ruby-value">:proxy</span>]
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:to_json</span>]
|
||||
<span class="ruby-identifier">data</span> = <span class="ruby-identifier">data</span>.<span class="ruby-identifier">to_json</span>()
|
||||
<span class="ruby-identifier">header_options</span>[<span class="ruby-value">:content_type</span>] = <span class="ruby-value">:json</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:upload_file</span>].<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">String</span>)
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:upload_file</span>].<span class="ruby-identifier">valid_path?</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-operator">::</span><span class="ruby-constant">File</span>.<span class="ruby-identifier">exist?</span>(<span class="ruby-identifier">options</span>[<span class="ruby-value">:upload_file</span>])
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-node">"File does not exist: #{options[:upload_file].inspect}"</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">data</span>[(<span class="ruby-operator">::</span><span class="ruby-constant">Celluloid</span><span class="ruby-operator">::</span><span class="ruby-constant">UUID</span><span class="ruby-operator">::</span><span class="ruby-identifier">random_generate</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">to_sym</span>)] = <span class="ruby-operator">::</span><span class="ruby-constant">File</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">options</span>[<span class="ruby-value">:upload_file</span>], <span class="ruby-string">"rb"</span>)
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">"You MUST provide a valid path String if you use the :upload_file option."</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">data</span>.<span class="ruby-identifier">each_pair</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">the_key</span>, <span class="ruby-identifier">the_value</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_value</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">String</span>)
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_value</span>.<span class="ruby-identifier">valid_path?</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-operator">::</span><span class="ruby-constant">File</span>.<span class="ruby-identifier">exist?</span>(<span class="ruby-identifier">the_value</span>)
|
||||
<span class="ruby-identifier">data</span>[(<span class="ruby-identifier">the_key</span>)] = <span class="ruby-operator">::</span><span class="ruby-constant">File</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">the_value</span>, <span class="ruby-string">"rb"</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">response</span> = <span class="ruby-operator">::</span><span class="ruby-constant">RestClient</span>.<span class="ruby-identifier">put</span>(<span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">to_s</span>, <span class="ruby-identifier">data</span>, <span class="ruby-identifier">header_options</span>, <span class="ruby-operator">&</span><span class="ruby-identifier">block</span>)
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:raw_response</span>] <span class="ruby-operator">==</span> <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-identifier">response</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>
|
||||
<span class="ruby-identifier">log_error</span>({<span class="ruby-value">:error</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>, <span class="ruby-value">:parameters</span> <span class="ruby-operator">=></span> {<span class="ruby-value">:url</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_url</span>, <span class="ruby-value">:options</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">options</span>}})
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">result</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
</section>
|
||||
|
||||
</section>
|
||||
</main>
|
||||
|
||||
|
||||
<footer id="validator-badges" role="contentinfo">
|
||||
<p><a href="https://validator.w3.org/check/referer">Validate</a>
|
||||
<p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.1.2.
|
||||
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
|
||||
</footer>
|
||||
|
||||
1145
doc/GxG/Networking/SftpClient.html
Normal file
1145
doc/GxG/Networking/SftpClient.html
Normal file
File diff suppressed because it is too large
Load diff
625
doc/GxG/Networking/SmtpClient.html
Normal file
625
doc/GxG/Networking/SmtpClient.html
Normal file
|
|
@ -0,0 +1,625 @@
|
|||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
|
||||
<title>class GxG::Networking::SmtpClient - RDoc Documentation</title>
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "../../";
|
||||
var index_rel_prefix = "../../";
|
||||
</script>
|
||||
|
||||
<script src="../../js/navigation.js" defer></script>
|
||||
<script src="../../js/search.js" defer></script>
|
||||
<script src="../../js/search_index.js" defer></script>
|
||||
<script src="../../js/searcher.js" defer></script>
|
||||
<script src="../../js/darkfish.js" defer></script>
|
||||
|
||||
<link href="../../css/fonts.css" rel="stylesheet">
|
||||
<link href="../../css/rdoc.css" rel="stylesheet">
|
||||
|
||||
|
||||
|
||||
<body id="top" role="document" class="class">
|
||||
<nav role="navigation">
|
||||
<div id="project-navigation">
|
||||
<div id="home-section" role="region" title="Quick navigation" class="nav-section">
|
||||
<h2>
|
||||
<a href="../../index.html" rel="home">Home</a>
|
||||
</h2>
|
||||
|
||||
<div id="table-of-contents-navigation">
|
||||
<a href="../../table_of_contents.html#pages">Pages</a>
|
||||
<a href="../../table_of_contents.html#classes">Classes</a>
|
||||
<a href="../../table_of_contents.html#methods">Methods</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="search-section" role="search" class="project-section initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<div id="search-field-wrapper">
|
||||
<input id="search-field" role="combobox" aria-label="Search"
|
||||
aria-autocomplete="list" aria-controls="search-results"
|
||||
type="text" name="search" placeholder="Search" spellcheck="false"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</div>
|
||||
|
||||
<ul id="search-results" aria-label="Search Results"
|
||||
aria-busy="false" aria-expanded="false"
|
||||
aria-atomic="false" class="initially-hidden"></ul>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
<div id="parent-class-section" class="nav-section">
|
||||
<h3>Parent</h3>
|
||||
|
||||
|
||||
<p class="link"><a href="../../Object.html">Object</a>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<div id="method-list-section" class="nav-section">
|
||||
<h3>Methods</h3>
|
||||
|
||||
<ul class="link-list" role="directory">
|
||||
|
||||
<li ><a href="#method-c-new">::new</a>
|
||||
|
||||
<li ><a href="#method-i-attachment_template">#attachment_template</a>
|
||||
|
||||
<li ><a href="#method-i-host">#host</a>
|
||||
|
||||
<li ><a href="#method-i-login">#login</a>
|
||||
|
||||
<li ><a href="#method-i-logout">#logout</a>
|
||||
|
||||
<li ><a href="#method-i-message_template">#message_template</a>
|
||||
|
||||
<li ><a href="#method-i-port">#port</a>
|
||||
|
||||
<li ><a href="#method-i-send_message">#send_message</a>
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<main role="main" aria-labelledby="class-GxG::Networking::SmtpClient">
|
||||
<h1 id="class-GxG::Networking::SmtpClient" class="class">
|
||||
class GxG::Networking::SmtpClient
|
||||
</h1>
|
||||
|
||||
<section class="description">
|
||||
|
||||
<p>SMTP Classes:</p>
|
||||
|
||||
</section>
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="public-class-5Buntitled-5D-method-details" class="method-section">
|
||||
<header>
|
||||
<h3>Public Class Methods</h3>
|
||||
</header>
|
||||
|
||||
|
||||
<div id="method-c-new" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">new</span><span
|
||||
class="method-args">(host=nil,port=nil,options={})</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="new-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 1375</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">initialize</span>(<span class="ruby-identifier">host</span>=<span class="ruby-keyword">nil</span>,<span class="ruby-identifier">port</span>=<span class="ruby-keyword">nil</span>,<span class="ruby-identifier">options</span>={})
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">port</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Hash</span>)
|
||||
<span class="ruby-identifier">options</span> = <span class="ruby-identifier">port</span>
|
||||
<span class="ruby-identifier">port</span> = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-ivar">@user</span> = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-ivar">@password</span> = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-ivar">@client</span> = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-ivar">@host</span> = <span class="ruby-identifier">host</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-ivar">@host</span>
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">"You MUST provide a HOST, like this: <host>,(<port>),(<options>)"</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:use_ssl</span>] <span class="ruby-operator">==</span> <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-ivar">@port</span> = (<span class="ruby-identifier">port</span> <span class="ruby-operator">||</span> <span class="ruby-value">465</span>)
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:ssl_method</span>]
|
||||
<span class="ruby-comment"># Valid: [:TLSv1, :TLSv1_server, :TLSv1_client, :TLSv1_1, :TLSv1_1_server, :TLSv1_1_client, :TLSv1_2, :TLSv1_2_server, :TLSv1_2_client, :SSLv23, :SSLv23_server, :SSLv23_client]</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">SSL</span><span class="ruby-operator">::</span><span class="ruby-constant">SSLContext</span><span class="ruby-operator">::</span><span class="ruby-constant">METHODS</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">options</span>[<span class="ruby-value">:ssl_method</span>])
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-node">"Encryption method #{options[:ssl_method].inspect} is not valid. Choose one of these: #{OpenSSL::SSL::SSLContext::METHODS.inspect}"</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">openssl_context</span> = <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">SSL</span><span class="ruby-operator">::</span><span class="ruby-constant">SSLContext</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">options</span>[<span class="ruby-value">:ssl_method</span>])
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">openssl_context</span> = <span class="ruby-operator">::</span><span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SMTP</span>.<span class="ruby-identifier">default_ssl_context</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:ignore_ssl_errors</span>] <span class="ruby-operator">==</span> <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-identifier">openssl_context</span>.<span class="ruby-identifier">verify_mode</span> = <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">SSL</span><span class="ruby-operator">::</span><span class="ruby-constant">VERIFY_NONE</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">openssl_context</span>.<span class="ruby-identifier">verify_mode</span> = <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">SSL</span><span class="ruby-operator">::</span><span class="ruby-constant">VERIFY_PEER</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-ivar">@port</span> = (<span class="ruby-identifier">port</span> <span class="ruby-operator">||</span> <span class="ruby-value">25</span>)
|
||||
<span class="ruby-identifier">openssl_context</span> = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-ivar">@client</span> = <span class="ruby-operator">::</span><span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SMTP</span>.<span class="ruby-identifier">new</span>(<span class="ruby-ivar">@host</span>, <span class="ruby-ivar">@port</span>)
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">openssl_context</span>
|
||||
<span class="ruby-ivar">@client</span>.<span class="ruby-identifier">enable_ssl</span>(<span class="ruby-identifier">openssl_context</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-comment">#</span>
|
||||
<span class="ruby-keyword">self</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
</section>
|
||||
|
||||
<section id="public-instance-5Buntitled-5D-method-details" class="method-section">
|
||||
<header>
|
||||
<h3>Public Instance Methods</h3>
|
||||
</header>
|
||||
|
||||
|
||||
<div id="method-i-attachment_template" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">attachment_template</span><span
|
||||
class="method-args">(the_path="", content_parameters={"name" => ""})</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="attachment_template-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 1472</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">attachment_template</span>(<span class="ruby-identifier">the_path</span>=<span class="ruby-string">""</span>, <span class="ruby-identifier">content_parameters</span>={<span class="ruby-string">"name"</span> <span class="ruby-operator">=></span> <span class="ruby-string">""</span>})
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-keyword">begin</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">the_path</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">valid_path?</span>
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">"You MUST provide a valid file system path to the file."</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">content_parameters</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Hash</span>)
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">"You MUST provide content_parameters as a Hash."</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">content_parameters</span>[<span class="ruby-string">"name"</span>].<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span>
|
||||
<span class="ruby-identifier">content_parameters</span>[<span class="ruby-string">"name"</span>] = <span class="ruby-operator">::</span><span class="ruby-constant">File</span>.<span class="ruby-identifier">basename</span>(<span class="ruby-identifier">the_path</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">discovered_mime</span> = <span class="ruby-operator">::</span><span class="ruby-constant">MimeMagic</span>.<span class="ruby-identifier">by_magic</span>(<span class="ruby-operator">::</span><span class="ruby-constant">File</span>.<span class="ruby-identifier">open</span>(<span class="ruby-identifier">the_path</span>,<span class="ruby-string">"rb"</span>))
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">discovered_mime</span>
|
||||
<span class="ruby-identifier">discovered_mime</span> = <span class="ruby-identifier">discovered_mime</span>.<span class="ruby-identifier">type</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">discovered_mime</span> = <span class="ruby-string">"application/octet-stream"</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">result</span> = {<span class="ruby-value">:content_type</span> <span class="ruby-operator">=></span> {<span class="ruby-value">:type</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">discovered_mime</span>, <span class="ruby-value">:parameters</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">content_parameters</span>}, <span class="ruby-value">:filename</span> <span class="ruby-operator">=></span> (<span class="ruby-operator">::</span><span class="ruby-constant">File</span>.<span class="ruby-identifier">basename</span>(<span class="ruby-identifier">the_path</span>)), <span class="ruby-value">:path</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_path</span>, <span class="ruby-value">:content</span> <span class="ruby-operator">=></span> <span class="ruby-operator">::</span><span class="ruby-constant">GxG</span><span class="ruby-operator">::</span><span class="ruby-constant">ByteArray</span>.<span class="ruby-identifier">new</span>}
|
||||
<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>
|
||||
<span class="ruby-identifier">log_error</span>({<span class="ruby-value">:error</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>, <span class="ruby-value">:parameters</span> <span class="ruby-operator">=></span> {<span class="ruby-value">:path</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_path</span>, <span class="ruby-value">:content_parameters</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">content_parameters</span>}})
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">result</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-host" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">host</span><span
|
||||
class="method-args">()</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="host-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 1415</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">host</span>()
|
||||
<span class="ruby-ivar">@host</span>.<span class="ruby-identifier">clone</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-login" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">login</span><span
|
||||
class="method-args">(user_id=nil,password=nil,authentication_method=:plain)</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="login-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 1423</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">login</span>(<span class="ruby-identifier">user_id</span>=<span class="ruby-keyword">nil</span>,<span class="ruby-identifier">password</span>=<span class="ruby-keyword">nil</span>,<span class="ruby-identifier">authentication_method</span>=<span class="ruby-value">:plain</span>)
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">false</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@client</span>
|
||||
<span class="ruby-keyword">begin</span>
|
||||
<span class="ruby-ivar">@user</span> = <span class="ruby-identifier">user_id</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-ivar">@user</span>
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">"You MUST provide a USER id, like this: <user_id>,<password/oauth-token>,(<options>)"</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-ivar">@password</span> = <span class="ruby-identifier">password</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-ivar">@password</span>
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">"You MUST provide a PASSWORD/OAUTH-TOKEN, like this: <user_id>,<password/oauth-token>,(<options>)"</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-ivar">@client</span>.<span class="ruby-identifier">started?</span>
|
||||
<span class="ruby-keyword">unless</span> [<span class="ruby-value">:plain</span>, <span class="ruby-value">:login</span>, <span class="ruby-value">:cram_md5</span>, <span class="ruby-value">:oauth2</span>].<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">authentication_method</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">to_sym</span>)
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-node">"Authentication method #{authentication_method.inspect} is invalid. Choose one of these: [:plain, :login, :cram_md5, :oauth2]"</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-comment"># Internal cosmetics for interface consistency.</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">authentication_method</span> <span class="ruby-operator">==</span> <span class="ruby-value">:oauth2</span>
|
||||
<span class="ruby-identifier">authentication_method</span> = <span class="ruby-value">:xoauth2</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-ivar">@client</span>.<span class="ruby-identifier">start</span>(<span class="ruby-ivar">@host</span>, <span class="ruby-ivar">@user</span>, <span class="ruby-ivar">@password</span>, <span class="ruby-identifier">authentication_method</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>
|
||||
<span class="ruby-comment"># Internal cosmetics for interface consistency.</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">authentication_method</span> <span class="ruby-operator">==</span> <span class="ruby-value">:xoauth2</span>
|
||||
<span class="ruby-identifier">authentication_method</span> = <span class="ruby-value">:oauth2</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">log_error</span>({<span class="ruby-value">:error</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>, <span class="ruby-value">:parameters</span> <span class="ruby-operator">=></span> {<span class="ruby-value">:user</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">user_id</span>, <span class="ruby-value">:authentication</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">authentication_method</span>}})
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">result</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-logout" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">logout</span><span
|
||||
class="method-args">()</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="logout-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 1457</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">logout</span>()
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@client</span>
|
||||
<span class="ruby-keyword">begin</span>
|
||||
<span class="ruby-ivar">@client</span>.<span class="ruby-identifier">finish</span>
|
||||
<span class="ruby-ivar">@client</span> = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-keyword">true</span>
|
||||
<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>
|
||||
<span class="ruby-identifier">log_error</span>({<span class="ruby-value">:error</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>, <span class="ruby-value">:parameters</span> <span class="ruby-operator">=></span> {}})
|
||||
<span class="ruby-keyword">false</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-keyword">false</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-message_template" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">message_template</span><span
|
||||
class="method-args">(mime_type="text/plain", content_parameters={"charset"=>"UTF-8"})</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="message_template-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 1497</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">message_template</span>(<span class="ruby-identifier">mime_type</span>=<span class="ruby-string">"text/plain"</span>, <span class="ruby-identifier">content_parameters</span>={<span class="ruby-string">"charset"</span><span class="ruby-operator">=></span><span class="ruby-string">"UTF-8"</span>})
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-keyword">begin</span>
|
||||
<span class="ruby-keyword">unless</span> [<span class="ruby-string">'text/plain'</span>, <span class="ruby-string">'text/html'</span>, <span class="ruby-string">'text/xhtml'</span>, <span class="ruby-string">'text/xml'</span>].<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">mime_type</span>.<span class="ruby-identifier">to_s</span>)
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">"Content Type specified was invalid. Choose one of these: ['text/plain', 'text/html', 'text/xhtml', 'text/xml']"</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">content_parameters</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Hash</span>)
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">"You MUST provide content_parameters as a Hash."</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">gxg_message</span> = <span class="ruby-identifier">new_message</span>
|
||||
<span class="ruby-identifier">gxg_message</span>[<span class="ruby-value">:sender</span>] = <span class="ruby-string">""</span>
|
||||
<span class="ruby-identifier">gxg_message</span>[<span class="ruby-value">:id</span>] = <span class="ruby-node">"<#{gxg_message[:id].to_s}@#{::Socket.gethostname}.mail>"</span>
|
||||
<span class="ruby-identifier">gxg_message</span>[<span class="ruby-value">:to</span>] = <span class="ruby-string">""</span>
|
||||
<span class="ruby-identifier">gxg_message</span>[<span class="ruby-value">:cc</span>] = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-identifier">gxg_message</span>[<span class="ruby-value">:bcc</span>] = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-identifier">gxg_message</span>[<span class="ruby-value">:subject</span>] = <span class="ruby-string">""</span>
|
||||
<span class="ruby-identifier">gxg_message</span>[<span class="ruby-value">:date</span>] = <span class="ruby-operator">::</span><span class="ruby-constant">DateTime</span>.<span class="ruby-identifier">now</span>
|
||||
<span class="ruby-identifier">gxg_message</span>[<span class="ruby-value">:header</span>] = {}
|
||||
<span class="ruby-identifier">gxg_message</span>[<span class="ruby-value">:body</span>] = [{<span class="ruby-value">:prologue</span> <span class="ruby-operator">=></span> <span class="ruby-string">""</span>},{<span class="ruby-value">:content_type</span> <span class="ruby-operator">=></span> {<span class="ruby-value">:type</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">mime_type</span>.<span class="ruby-identifier">to_s</span>, <span class="ruby-value">:parameters</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">content_parameters</span>}, <span class="ruby-value">:content</span> <span class="ruby-operator">=></span> <span class="ruby-string">""</span>},{<span class="ruby-value">:epilogue</span> <span class="ruby-operator">=></span> <span class="ruby-string">""</span>}]
|
||||
<span class="ruby-identifier">gxg_message</span>[<span class="ruby-value">:attachments</span>] = []
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-identifier">gxg_message</span>
|
||||
<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>
|
||||
<span class="ruby-identifier">log_error</span>({<span class="ruby-value">:error</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>, <span class="ruby-value">:parameters</span> <span class="ruby-operator">=></span> {<span class="ruby-value">:content_type</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">mime_type</span>, <span class="ruby-value">:content_parameters</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">content_parameters</span>}})
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">result</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-port" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">port</span><span
|
||||
class="method-args">()</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="port-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 1419</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">port</span>()
|
||||
<span class="ruby-ivar">@port</span>.<span class="ruby-identifier">clone</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-send_message" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">send_message</span><span
|
||||
class="method-args">(gxg_message=nil)</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="send_message-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 1524</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">send_message</span>(<span class="ruby-identifier">gxg_message</span>=<span class="ruby-keyword">nil</span>)
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">false</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@client</span>
|
||||
<span class="ruby-keyword">begin</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-ivar">@client</span>.<span class="ruby-identifier">started?</span>
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">Exception</span>, <span class="ruby-string">"SMTP session not started yet."</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">gxg_message</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">GxG</span><span class="ruby-operator">::</span><span class="ruby-constant">Events</span><span class="ruby-operator">::</span><span class="ruby-constant">Message</span>)
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">"You MUST provide a valid message object of class ::GxG::Events::Message. Suggested: <SmtpClient>.message_template(<Mime-Type-String>)"</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-comment"># Build suitable mail message</span>
|
||||
<span class="ruby-identifier">message</span> = <span class="ruby-constant">Mail</span>.<span class="ruby-identifier">new</span>
|
||||
<span class="ruby-identifier">the_fields</span> = []
|
||||
<span class="ruby-identifier">gxg_message</span>[<span class="ruby-value">:header</span>].<span class="ruby-identifier">each_pair</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">the_key</span>, <span class="ruby-identifier">the_value</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_value</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Array</span>)
|
||||
<span class="ruby-identifier">the_value</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">the_field_value</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">the_fields</span> <span class="ruby-operator"><<</span> <span class="ruby-node">"#{the_key.to_s}: #{the_field_value.to_s}"</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">the_fields</span> <span class="ruby-operator"><<</span> <span class="ruby-node">"#{the_key.to_s}: #{the_value.to_s}"</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">message</span>.<span class="ruby-identifier">header</span> = <span class="ruby-identifier">the_fields</span>.<span class="ruby-identifier">join</span>(<span class="ruby-string">"\r\n"</span>)
|
||||
<span class="ruby-identifier">message</span>.<span class="ruby-identifier">from</span> = <span class="ruby-identifier">gxg_message</span>[<span class="ruby-value">:sender</span>]
|
||||
<span class="ruby-identifier">message</span>.<span class="ruby-identifier">reply_to</span> = <span class="ruby-identifier">gxg_message</span>[<span class="ruby-value">:sender</span>]
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">gxg_message</span>[<span class="ruby-value">:id</span>].<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-string">"@"</span>)
|
||||
<span class="ruby-identifier">message</span>.<span class="ruby-identifier">message_id</span> = <span class="ruby-identifier">gxg_message</span>[<span class="ruby-value">:id</span>].<span class="ruby-identifier">to_s</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">message</span>.<span class="ruby-identifier">message_id</span> = <span class="ruby-node">"<#{gxg_message[:id].to_s}@#{::Socket.gethostname}.mail>"</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">message</span>.<span class="ruby-identifier">to</span> = <span class="ruby-identifier">gxg_message</span>[<span class="ruby-value">:to</span>]
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">gxg_message</span>[<span class="ruby-value">:cc</span>]
|
||||
<span class="ruby-identifier">message</span>.<span class="ruby-identifier">cc</span> = <span class="ruby-identifier">gxg_message</span>[<span class="ruby-value">:cc</span>]
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">gxg_message</span>[<span class="ruby-value">:bcc</span>]
|
||||
<span class="ruby-identifier">message</span>.<span class="ruby-identifier">bcc</span> = <span class="ruby-identifier">gxg_message</span>[<span class="ruby-value">:bcc</span>]
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">message</span>.<span class="ruby-identifier">subject</span> = <span class="ruby-identifier">gxg_message</span>[<span class="ruby-value">:subject</span>]
|
||||
<span class="ruby-identifier">message</span>.<span class="ruby-identifier">date</span> = (<span class="ruby-identifier">gxg_message</span>[<span class="ruby-value">:date</span>].<span class="ruby-identifier">to_s</span> <span class="ruby-operator">||</span> <span class="ruby-operator">::</span><span class="ruby-constant">DateTime</span>.<span class="ruby-identifier">now</span>.<span class="ruby-identifier">to_s</span>)
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">gxg_message</span>[<span class="ruby-value">:attachments</span>].<span class="ruby-identifier">size</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span>
|
||||
<span class="ruby-identifier">multipart</span> = <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">part_count</span> = <span class="ruby-value">0</span>
|
||||
<span class="ruby-identifier">gxg_message</span>[<span class="ruby-value">:body</span>].<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">part</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">part</span>[<span class="ruby-value">:prologue</span>] <span class="ruby-operator">||</span> <span class="ruby-identifier">part</span>[<span class="ruby-value">:epilogue</span>]
|
||||
<span class="ruby-identifier">part_count</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">part_count</span> <span class="ruby-operator">></span> <span class="ruby-value">1</span>
|
||||
<span class="ruby-identifier">multipart</span> = <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">multipart</span> = <span class="ruby-keyword">false</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">multipart</span>
|
||||
<span class="ruby-identifier">gxg_message</span>[<span class="ruby-value">:body</span>].<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">part</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">part</span>[<span class="ruby-value">:prologue</span>] <span class="ruby-operator">||</span> <span class="ruby-identifier">part</span>[<span class="ruby-value">:epilogue</span>]
|
||||
<span class="ruby-identifier">type_info</span> = <span class="ruby-node">"Content-Type: #{part[:content_type][:type]}"</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">part</span>[<span class="ruby-value">:content_type</span>][<span class="ruby-value">:parameters</span>].<span class="ruby-identifier">keys</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span>
|
||||
<span class="ruby-identifier">part</span>[<span class="ruby-value">:content_type</span>][<span class="ruby-value">:parameters</span>].<span class="ruby-identifier">each_pair</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">the_key</span>, <span class="ruby-identifier">the_value</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">type_info</span> <span class="ruby-operator"><<</span> <span class="ruby-node">"; '#{the_key.to_s}': '#{the_value.to_s}'"</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">new_part</span> = <span class="ruby-constant">Mail</span><span class="ruby-operator">::</span><span class="ruby-constant">Part</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">type_info</span>)
|
||||
<span class="ruby-identifier">new_part</span>.<span class="ruby-identifier">body</span> = <span class="ruby-identifier">part</span>[<span class="ruby-value">:content</span>]
|
||||
<span class="ruby-identifier">message</span>.<span class="ruby-identifier">add_part</span>(<span class="ruby-identifier">new_part</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-comment"># Add file attachments:</span>
|
||||
<span class="ruby-identifier">gxg_message</span>[<span class="ruby-value">:attachments</span>].<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">attachment</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">attachment</span>[<span class="ruby-value">:content</span>].<span class="ruby-identifier">size</span> <span class="ruby-operator">==</span> <span class="ruby-value">0</span>
|
||||
<span class="ruby-identifier">file_size</span> = <span class="ruby-operator">::</span><span class="ruby-constant">File</span>.<span class="ruby-identifier">size</span>(<span class="ruby-identifier">attachment</span>[<span class="ruby-value">:path</span>])
|
||||
<span class="ruby-identifier">file_handle</span> = <span class="ruby-operator">::</span><span class="ruby-constant">File</span>.<span class="ruby-identifier">open</span>(<span class="ruby-identifier">attachment</span>[<span class="ruby-value">:path</span>],<span class="ruby-string">"rb"</span>)
|
||||
<span class="ruby-operator">::</span><span class="ruby-constant">GxG</span><span class="ruby-operator">::</span><span class="ruby-identifier">apportioned_ranges</span>(<span class="ruby-identifier">file_size</span>,<span class="ruby-value">65536</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">the_range</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">file_handle</span>.<span class="ruby-identifier">seek</span>(<span class="ruby-identifier">the_range</span>.<span class="ruby-identifier">first</span>)
|
||||
<span class="ruby-identifier">attachment</span>[<span class="ruby-value">:content</span>] <span class="ruby-operator"><<</span> <span class="ruby-identifier">file_handle</span>.<span class="ruby-identifier">read</span>(<span class="ruby-identifier">the_range</span>.<span class="ruby-identifier">size</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">file_handle</span>.<span class="ruby-identifier">close</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">message</span>.<span class="ruby-identifier">add_file</span>({<span class="ruby-value">:filename</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">attachment</span>[<span class="ruby-value">:filename</span>], <span class="ruby-value">:content</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">attachment</span>[<span class="ruby-value">:content</span>].<span class="ruby-identifier">to_s</span>})
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">gxg_message</span>[<span class="ruby-value">:body</span>].<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">part</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">part</span>[<span class="ruby-value">:prologue</span>] <span class="ruby-operator">||</span> <span class="ruby-identifier">part</span>[<span class="ruby-value">:epilogue</span>]
|
||||
<span class="ruby-identifier">message</span>.<span class="ruby-identifier">body</span> = <span class="ruby-identifier">part</span>[<span class="ruby-value">:content</span>]
|
||||
<span class="ruby-keyword">break</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-comment"># Send it</span>
|
||||
<span class="ruby-ivar">@client</span>.<span class="ruby-identifier">send_message</span>(<span class="ruby-identifier">message</span>.<span class="ruby-identifier">to_s</span>, <span class="ruby-identifier">gxg_message</span>[<span class="ruby-value">:sender</span>], <span class="ruby-identifier">message</span>.<span class="ruby-identifier">destinations</span>)
|
||||
<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>
|
||||
<span class="ruby-identifier">log_error</span>({<span class="ruby-value">:error</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>, <span class="ruby-value">:parameters</span> <span class="ruby-operator">=></span> {<span class="ruby-value">:message</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">gxg_message</span>}})
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">result</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
</section>
|
||||
|
||||
</section>
|
||||
</main>
|
||||
|
||||
|
||||
<footer id="validator-badges" role="contentinfo">
|
||||
<p><a href="https://validator.w3.org/check/referer">Validate</a>
|
||||
<p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.1.2.
|
||||
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
|
||||
</footer>
|
||||
|
||||
415
doc/GxG/Networking/SoapClient.html
Normal file
415
doc/GxG/Networking/SoapClient.html
Normal file
|
|
@ -0,0 +1,415 @@
|
|||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
|
||||
<title>class GxG::Networking::SoapClient - RDoc Documentation</title>
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "../../";
|
||||
var index_rel_prefix = "../../";
|
||||
</script>
|
||||
|
||||
<script src="../../js/navigation.js" defer></script>
|
||||
<script src="../../js/search.js" defer></script>
|
||||
<script src="../../js/search_index.js" defer></script>
|
||||
<script src="../../js/searcher.js" defer></script>
|
||||
<script src="../../js/darkfish.js" defer></script>
|
||||
|
||||
<link href="../../css/fonts.css" rel="stylesheet">
|
||||
<link href="../../css/rdoc.css" rel="stylesheet">
|
||||
|
||||
|
||||
|
||||
<body id="top" role="document" class="class">
|
||||
<nav role="navigation">
|
||||
<div id="project-navigation">
|
||||
<div id="home-section" role="region" title="Quick navigation" class="nav-section">
|
||||
<h2>
|
||||
<a href="../../index.html" rel="home">Home</a>
|
||||
</h2>
|
||||
|
||||
<div id="table-of-contents-navigation">
|
||||
<a href="../../table_of_contents.html#pages">Pages</a>
|
||||
<a href="../../table_of_contents.html#classes">Classes</a>
|
||||
<a href="../../table_of_contents.html#methods">Methods</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="search-section" role="search" class="project-section initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<div id="search-field-wrapper">
|
||||
<input id="search-field" role="combobox" aria-label="Search"
|
||||
aria-autocomplete="list" aria-controls="search-results"
|
||||
type="text" name="search" placeholder="Search" spellcheck="false"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</div>
|
||||
|
||||
<ul id="search-results" aria-label="Search Results"
|
||||
aria-busy="false" aria-expanded="false"
|
||||
aria-atomic="false" class="initially-hidden"></ul>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
<div id="parent-class-section" class="nav-section">
|
||||
<h3>Parent</h3>
|
||||
|
||||
|
||||
<p class="link"><a href="../../Object.html">Object</a>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<div id="method-list-section" class="nav-section">
|
||||
<h3>Methods</h3>
|
||||
|
||||
<ul class="link-list" role="directory">
|
||||
|
||||
<li ><a href="#method-c-new">::new</a>
|
||||
|
||||
<li ><a href="#method-i-callmethod">#callmethod</a>
|
||||
|
||||
<li ><a href="#method-i-closed-3F">#closed?</a>
|
||||
|
||||
<li ><a href="#method-i-interface">#interface</a>
|
||||
|
||||
<li ><a href="#method-i-login">#login</a>
|
||||
|
||||
<li ><a href="#method-i-logout">#logout</a>
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<main role="main" aria-labelledby="class-GxG::Networking::SoapClient">
|
||||
<h1 id="class-GxG::Networking::SoapClient" class="class">
|
||||
class GxG::Networking::SoapClient
|
||||
</h1>
|
||||
|
||||
<section class="description">
|
||||
|
||||
</section>
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="public-class-5Buntitled-5D-method-details" class="method-section">
|
||||
<header>
|
||||
<h3>Public Class Methods</h3>
|
||||
</header>
|
||||
|
||||
|
||||
<div id="method-c-new" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">new</span><span
|
||||
class="method-args">()</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>Standard:</p>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="new-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 2236</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">initialize</span>()
|
||||
<span class="ruby-ivar">@client</span> = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-keyword">self</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
</section>
|
||||
|
||||
<section id="public-instance-5Buntitled-5D-method-details" class="method-section">
|
||||
<header>
|
||||
<h3>Public Instance Methods</h3>
|
||||
</header>
|
||||
|
||||
|
||||
<div id="method-i-callmethod" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">callmethod</span><span
|
||||
class="method-args">(*args)</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="callmethod-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 2265</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">callmethod</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">args</span>)
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-keyword">begin</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">args</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">==</span> <span class="ruby-value">1</span>
|
||||
<span class="ruby-identifier">the_method</span> = <span class="ruby-identifier">args</span>[<span class="ruby-value">0</span>].<span class="ruby-identifier">to_s</span>
|
||||
<span class="ruby-identifier">arguments</span> = {}
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">args</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">></span> <span class="ruby-value">1</span>
|
||||
<span class="ruby-identifier">the_method</span> = <span class="ruby-identifier">args</span>[<span class="ruby-value">0</span>].<span class="ruby-identifier">to_s</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">args</span>[<span class="ruby-value">1</span>].<span class="ruby-identifier">is_any?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Hash</span>, <span class="ruby-operator">::</span><span class="ruby-constant">Array</span>)
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">"You MUST provide a Hash or Array to specify parameters for this method."</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">arguments</span> = <span class="ruby-identifier">args</span>[<span class="ruby-value">1</span>]
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">"You MUST provide a valid SOAP method."</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@client</span>
|
||||
<span class="ruby-identifier">response_tag</span> = (<span class="ruby-identifier">the_method</span>.<span class="ruby-identifier">gsub</span>(<span class="ruby-regexp">/^.+:/</span>, <span class="ruby-string">""</span>) <span class="ruby-operator">+</span> <span class="ruby-string">"Response"</span>)
|
||||
<span class="ruby-identifier">response</span> = <span class="ruby-ivar">@client</span>.<span class="ruby-identifier">invoke</span>(<span class="ruby-identifier">the_method</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">message</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">arguments</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Hash</span>)
|
||||
<span class="ruby-identifier">arguments</span>.<span class="ruby-identifier">each_pair</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">the_key</span>, <span class="ruby-identifier">the_value</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">message</span>.<span class="ruby-identifier">add</span>(<span class="ruby-identifier">the_key</span>.<span class="ruby-identifier">to_s</span>, <span class="ruby-identifier">the_value</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">arguments</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Array</span>)
|
||||
<span class="ruby-identifier">arguments</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">the_value</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">message</span>.<span class="ruby-identifier">add</span>(<span class="ruby-string">"literal"</span>, <span class="ruby-identifier">the_value</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">data</span> = <span class="ruby-operator">::</span><span class="ruby-constant">Oga</span><span class="ruby-operator">::</span><span class="ruby-identifier">parse_xml</span>(<span class="ruby-identifier">response</span>.<span class="ruby-identifier">to_xml</span>).<span class="ruby-identifier">css</span>(<span class="ruby-identifier">response_tag</span>)
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">data</span>
|
||||
<span class="ruby-identifier">found_numbers</span> = <span class="ruby-identifier">data</span>.<span class="ruby-identifier">text</span>.<span class="ruby-identifier">numeric_values</span>
|
||||
<span class="ruby-identifier">found_value</span> = []
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">found_numbers</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Array</span>)
|
||||
<span class="ruby-identifier">found_numbers</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">the_subarray</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_subarray</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Array</span>)
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_subarray</span>[<span class="ruby-value">0</span>].<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Hash</span>)
|
||||
<span class="ruby-identifier">the_key</span> = <span class="ruby-identifier">the_subarray</span>[<span class="ruby-value">0</span>].<span class="ruby-identifier">keys</span>[<span class="ruby-value">0</span>]
|
||||
<span class="ruby-identifier">found_value</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">the_subarray</span>[<span class="ruby-value">0</span>][(<span class="ruby-identifier">the_key</span>)]
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">result</span> = {}
|
||||
<span class="ruby-identifier">result</span>[(<span class="ruby-identifier">response_tag</span>.<span class="ruby-identifier">to_sym</span>)] = <span class="ruby-identifier">data</span>.<span class="ruby-identifier">text</span>
|
||||
<span class="ruby-comment"># if found_value.size > 0</span>
|
||||
<span class="ruby-comment"># if found_value.size == 1</span>
|
||||
<span class="ruby-comment"># result[(response_tag.to_sym)] = found_value[0]</span>
|
||||
<span class="ruby-comment"># else</span>
|
||||
<span class="ruby-comment"># result[(response_tag.to_sym)] = found_value</span>
|
||||
<span class="ruby-comment"># end</span>
|
||||
<span class="ruby-comment"># else</span>
|
||||
<span class="ruby-comment"># result[(response_tag.to_sym)] = data.text</span>
|
||||
<span class="ruby-comment"># end</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">Exception</span>, <span class="ruby-node">"Failed to interpret response data. Data: #{data.inspect}"</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>
|
||||
<span class="ruby-identifier">log_error</span>({<span class="ruby-value">:error</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>, <span class="ruby-value">:parameters</span> <span class="ruby-operator">=></span> {<span class="ruby-value">:method</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_method</span>, <span class="ruby-value">:arguments</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">arguments</span>}})
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">result</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-closed-3F" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">closed?</span><span
|
||||
class="method-args">()</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="closed-3F-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 2257</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">closed?</span>()
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@client</span>
|
||||
<span class="ruby-keyword">false</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-keyword">true</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-interface" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">interface</span><span
|
||||
class="method-args">()</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="interface-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 2331</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">interface</span>()
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@client</span>
|
||||
<span class="ruby-ivar">@client</span>.<span class="ruby-identifier">interface</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-login" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">login</span><span
|
||||
class="method-args">(the_url=nil, options={})</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="login-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 2241</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">login</span>(<span class="ruby-identifier">the_url</span>=<span class="ruby-keyword">nil</span>, <span class="ruby-identifier">options</span>={})
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">false</span>
|
||||
<span class="ruby-keyword">begin</span>
|
||||
<span class="ruby-ivar">@client</span> = <span class="ruby-operator">::</span><span class="ruby-constant">GxG</span><span class="ruby-operator">::</span><span class="ruby-constant">Networking</span><span class="ruby-operator">::</span><span class="ruby-constant">SoapDriver</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">the_url</span>)
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>
|
||||
<span class="ruby-identifier">log_error</span>({<span class="ruby-value">:error</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>, <span class="ruby-value">:parameters</span> <span class="ruby-operator">=></span> {<span class="ruby-value">:url</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_url</span>}})
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">result</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-logout" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">logout</span><span
|
||||
class="method-args">()</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="logout-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 2252</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">logout</span>()
|
||||
<span class="ruby-ivar">@client</span> = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-keyword">true</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
</section>
|
||||
|
||||
</section>
|
||||
</main>
|
||||
|
||||
|
||||
<footer id="validator-badges" role="contentinfo">
|
||||
<p><a href="https://validator.w3.org/check/referer">Validate</a>
|
||||
<p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.1.2.
|
||||
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
|
||||
</footer>
|
||||
|
||||
460
doc/GxG/Networking/SoapDriver.html
Normal file
460
doc/GxG/Networking/SoapDriver.html
Normal file
|
|
@ -0,0 +1,460 @@
|
|||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
|
||||
<title>class GxG::Networking::SoapDriver - RDoc Documentation</title>
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "../../";
|
||||
var index_rel_prefix = "../../";
|
||||
</script>
|
||||
|
||||
<script src="../../js/navigation.js" defer></script>
|
||||
<script src="../../js/search.js" defer></script>
|
||||
<script src="../../js/search_index.js" defer></script>
|
||||
<script src="../../js/searcher.js" defer></script>
|
||||
<script src="../../js/darkfish.js" defer></script>
|
||||
|
||||
<link href="../../css/fonts.css" rel="stylesheet">
|
||||
<link href="../../css/rdoc.css" rel="stylesheet">
|
||||
|
||||
|
||||
|
||||
<body id="top" role="document" class="class">
|
||||
<nav role="navigation">
|
||||
<div id="project-navigation">
|
||||
<div id="home-section" role="region" title="Quick navigation" class="nav-section">
|
||||
<h2>
|
||||
<a href="../../index.html" rel="home">Home</a>
|
||||
</h2>
|
||||
|
||||
<div id="table-of-contents-navigation">
|
||||
<a href="../../table_of_contents.html#pages">Pages</a>
|
||||
<a href="../../table_of_contents.html#classes">Classes</a>
|
||||
<a href="../../table_of_contents.html#methods">Methods</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="search-section" role="search" class="project-section initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<div id="search-field-wrapper">
|
||||
<input id="search-field" role="combobox" aria-label="Search"
|
||||
aria-autocomplete="list" aria-controls="search-results"
|
||||
type="text" name="search" placeholder="Search" spellcheck="false"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</div>
|
||||
|
||||
<ul id="search-results" aria-label="Search Results"
|
||||
aria-busy="false" aria-expanded="false"
|
||||
aria-atomic="false" class="initially-hidden"></ul>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
<div id="parent-class-section" class="nav-section">
|
||||
<h3>Parent</h3>
|
||||
|
||||
|
||||
<p class="link">Handsoap::Service
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<div id="method-list-section" class="nav-section">
|
||||
<h3>Methods</h3>
|
||||
|
||||
<ul class="link-list" role="directory">
|
||||
|
||||
<li class="calls-super" ><a href="#method-c-new">::new</a>
|
||||
|
||||
<li ><a href="#method-i-interface">#interface</a>
|
||||
|
||||
<li ><a href="#method-i-on_before_dispatch">#on_before_dispatch</a>
|
||||
|
||||
<li ><a href="#method-i-on_create_document">#on_create_document</a>
|
||||
|
||||
<li ><a href="#method-i-on_response_document">#on_response_document</a>
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<main role="main" aria-labelledby="class-GxG::Networking::SoapDriver">
|
||||
<h1 id="class-GxG::Networking::SoapDriver" class="class">
|
||||
class GxG::Networking::SoapDriver
|
||||
</h1>
|
||||
|
||||
<section class="description">
|
||||
|
||||
<p>SOAP Classes:</p>
|
||||
|
||||
</section>
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="public-class-5Buntitled-5D-method-details" class="method-section">
|
||||
<header>
|
||||
<h3>Public Class Methods</h3>
|
||||
</header>
|
||||
|
||||
|
||||
<div id="method-c-new" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">new</span><span
|
||||
class="method-args">(the_url=nil)</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>Example sites to test with: <a href="http://www.restfulwebservices.net/rest/WeatherForecastService.svc?wsdl">www.restfulwebservices.net/rest/WeatherForecastService.svc?wsdl</a> <a href="http://www.restfulwebservices.net/wcf/WeatherForecastService.svc?wsdl">www.restfulwebservices.net/wcf/WeatherForecastService.svc?wsdl</a> <a href="https://graphical.weather.gov/xml/DWMLgen/wsdl/ndfdXML.wsdl">graphical.weather.gov/xml/DWMLgen/wsdl/ndfdXML.wsdl</a> <a href="http://www.webservicex.com/CurrencyConvertor.asmx?wsdl">www.webservicex.com/CurrencyConvertor.asmx?wsdl</a></p>
|
||||
|
||||
|
||||
<div class="method-calls-super">
|
||||
Calls superclass method
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="new-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 2062</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">initialize</span>(<span class="ruby-identifier">the_url</span>=<span class="ruby-keyword">nil</span>)
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">URI</span><span class="ruby-operator">::</span><span class="ruby-constant">Generic</span>)
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">"You MUST provide a valid URI."</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">super</span>()
|
||||
<span class="ruby-ivar">@user</span> = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-ivar">@password</span> = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-ivar">@interface</span> = []
|
||||
<span class="ruby-ivar">@tns_url</span> = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-operator">::</span><span class="ruby-constant">Handsoap</span><span class="ruby-operator">::</span><span class="ruby-identifier">http_driver</span> = <span class="ruby-value">:net_http</span>
|
||||
<span class="ruby-operator">::</span><span class="ruby-constant">Handsoap</span><span class="ruby-operator">::</span><span class="ruby-identifier">xml_query_driver</span> = <span class="ruby-value">:rexml</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">query</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">downcase</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-string">"wsdl"</span>) <span class="ruby-operator">||</span> (<span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">path</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">downcase</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-string">"wsdl"</span>))
|
||||
<span class="ruby-identifier">point</span> = (<span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">scheme</span>.<span class="ruby-identifier">to_s</span> <span class="ruby-operator">+</span> <span class="ruby-string">"://"</span>)
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">user</span>
|
||||
<span class="ruby-identifier">point</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">user</span>
|
||||
<span class="ruby-ivar">@user</span> = <span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">user</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">password</span>
|
||||
<span class="ruby-identifier">point</span> <span class="ruby-operator"><<</span> (<span class="ruby-string">":"</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">password</span>)
|
||||
<span class="ruby-ivar">@password</span> = <span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">password</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">hostname</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">user</span>
|
||||
<span class="ruby-identifier">point</span> <span class="ruby-operator"><<</span> (<span class="ruby-string">"@"</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">hostname</span>)
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">point</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">hostname</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">path</span>
|
||||
<span class="ruby-identifier">point</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">path</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-comment"># Process WSDL, determine actual version number from that.</span>
|
||||
<span class="ruby-identifier">http_tool</span> = <span class="ruby-operator">::</span><span class="ruby-constant">GxG</span><span class="ruby-operator">::</span><span class="ruby-constant">Networking</span><span class="ruby-operator">::</span><span class="ruby-constant">HttpClient</span>.<span class="ruby-identifier">new</span>
|
||||
<span class="ruby-identifier">response</span> = <span class="ruby-identifier">http_tool</span>.<span class="ruby-identifier">get</span>(<span class="ruby-identifier">the_url</span>, {<span class="ruby-value">:raw_response</span> <span class="ruby-operator">=></span> <span class="ruby-keyword">true</span>})
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">response</span>
|
||||
<span class="ruby-identifier">wsdl_data</span> = <span class="ruby-identifier">response</span>.<span class="ruby-identifier">body</span>.<span class="ruby-identifier">transcode</span>({<span class="ruby-value">:replace</span> <span class="ruby-operator">=></span> <span class="ruby-string">"."</span>},<span class="ruby-operator">::</span><span class="ruby-constant">Encoding</span><span class="ruby-operator">::</span><span class="ruby-constant">UTF_8</span>)
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">wsdl_data</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-string">"http://schemas.xmlsoap.org/soap/envelope/"</span>)
|
||||
<span class="ruby-identifier">wsdl_version</span> = <span class="ruby-value">1</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">wsdl_version</span> = <span class="ruby-value">2</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-operator">::</span><span class="ruby-constant">GxG</span><span class="ruby-operator">::</span><span class="ruby-constant">Networking</span><span class="ruby-operator">::</span><span class="ruby-constant">SoapDriver</span><span class="ruby-operator">::</span><span class="ruby-identifier">endpoint</span>({<span class="ruby-value">:uri</span> <span class="ruby-operator">=></span> (<span class="ruby-identifier">point</span>), <span class="ruby-value">:version</span> <span class="ruby-operator">=></span> (<span class="ruby-identifier">wsdl_version</span>)})
|
||||
<span class="ruby-comment"># Build Interface Data:</span>
|
||||
<span class="ruby-identifier">document</span> = <span class="ruby-operator">::</span><span class="ruby-constant">Oga</span>.<span class="ruby-identifier">parse_xml</span>(<span class="ruby-identifier">wsdl_data</span>)
|
||||
<span class="ruby-identifier">nodes</span> = <span class="ruby-identifier">document</span>.<span class="ruby-identifier">css</span>(<span class="ruby-string">"definitions"</span>)
|
||||
<span class="ruby-identifier">nodes</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">node</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-keyword">next</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">node</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Oga</span><span class="ruby-operator">::</span><span class="ruby-constant">XML</span><span class="ruby-operator">::</span><span class="ruby-constant">Element</span>)
|
||||
<span class="ruby-identifier">node</span>.<span class="ruby-identifier">attributes</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">attribute</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-keyword">if</span> [<span class="ruby-string">"tns"</span>, <span class="ruby-string">"targetNamespace"</span>].<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">attribute</span>.<span class="ruby-identifier">name</span>)
|
||||
<span class="ruby-ivar">@tns_url</span> = <span class="ruby-identifier">attribute</span>.<span class="ruby-identifier">value</span>
|
||||
<span class="ruby-keyword">break</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@tns_url</span>
|
||||
<span class="ruby-keyword">break</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-ivar">@tns_url</span>
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">Exception</span>, <span class="ruby-string">"Failed to load namespace (required)."</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">nodes</span> = <span class="ruby-identifier">document</span>.<span class="ruby-identifier">css</span>(<span class="ruby-string">"portType"</span>)
|
||||
<span class="ruby-identifier">base_names</span> = []
|
||||
<span class="ruby-identifier">nodes</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">node</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-keyword">next</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">node</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Oga</span><span class="ruby-operator">::</span><span class="ruby-constant">XML</span><span class="ruby-operator">::</span><span class="ruby-constant">Element</span>)
|
||||
<span class="ruby-identifier">node</span>.<span class="ruby-identifier">children</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">the_operation</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-keyword">next</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">the_operation</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Oga</span><span class="ruby-operator">::</span><span class="ruby-constant">XML</span><span class="ruby-operator">::</span><span class="ruby-constant">Element</span>)
|
||||
<span class="ruby-identifier">basename</span> = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-identifier">the_operation</span>.<span class="ruby-identifier">attributes</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">attribute</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">attribute</span>.<span class="ruby-identifier">name</span> <span class="ruby-operator">==</span> <span class="ruby-string">"name"</span>
|
||||
<span class="ruby-identifier">basename</span> = <span class="ruby-identifier">attribute</span>.<span class="ruby-identifier">value</span>
|
||||
<span class="ruby-keyword">break</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">basename</span>
|
||||
<span class="ruby-identifier">record</span> = {<span class="ruby-value">:base</span> <span class="ruby-operator">=></span> (<span class="ruby-identifier">basename</span>), <span class="ruby-value">:message</span> <span class="ruby-operator">=></span> ((<span class="ruby-string">"tns:"</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">basename</span>).<span class="ruby-identifier">to_sym</span>), <span class="ruby-value">:input</span> <span class="ruby-operator">=></span> <span class="ruby-keyword">nil</span>, <span class="ruby-value">:output</span> <span class="ruby-operator">=></span> <span class="ruby-keyword">nil</span>}
|
||||
<span class="ruby-identifier">the_operation</span>.<span class="ruby-identifier">children</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">the_io</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-keyword">next</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">the_io</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Oga</span><span class="ruby-operator">::</span><span class="ruby-constant">XML</span><span class="ruby-operator">::</span><span class="ruby-constant">Element</span>)
|
||||
<span class="ruby-keyword">if</span> [<span class="ruby-string">"input"</span>, <span class="ruby-string">"output"</span>].<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">the_io</span>.<span class="ruby-identifier">name</span>)
|
||||
<span class="ruby-identifier">the_io</span>.<span class="ruby-identifier">attributes</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">the_message</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_message</span>.<span class="ruby-identifier">name</span> <span class="ruby-operator">==</span> <span class="ruby-string">"message"</span>
|
||||
<span class="ruby-identifier">record</span>[(<span class="ruby-identifier">the_io</span>.<span class="ruby-identifier">name</span>.<span class="ruby-identifier">to_sym</span>)] = <span class="ruby-identifier">the_message</span>.<span class="ruby-identifier">value</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">record</span>[<span class="ruby-value">:input</span>] <span class="ruby-operator">||</span> <span class="ruby-identifier">record</span>[<span class="ruby-value">:output</span>]
|
||||
<span class="ruby-identifier">base_names</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">record</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">messages</span> = <span class="ruby-identifier">document</span>.<span class="ruby-identifier">css</span>(<span class="ruby-string">"message"</span>)
|
||||
<span class="ruby-identifier">base_names</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">the_method</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">record</span> = {<span class="ruby-value">:method</span> <span class="ruby-operator">=></span> (<span class="ruby-identifier">the_method</span>[<span class="ruby-value">:message</span>]), <span class="ruby-value">:input</span> <span class="ruby-operator">=></span> <span class="ruby-keyword">nil</span>, <span class="ruby-value">:output</span> <span class="ruby-operator">=></span> <span class="ruby-keyword">nil</span>}
|
||||
<span class="ruby-identifier">messages</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">the_message</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-keyword">next</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">the_message</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Oga</span><span class="ruby-operator">::</span><span class="ruby-constant">XML</span><span class="ruby-operator">::</span><span class="ruby-constant">Element</span>)
|
||||
<span class="ruby-identifier">the_message</span>.<span class="ruby-identifier">attributes</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">the_attribute</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">direction_key</span> = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_method</span>[<span class="ruby-value">:input</span>].<span class="ruby-identifier">gsub</span>(<span class="ruby-regexp">/^.+:/</span>, <span class="ruby-string">""</span>) <span class="ruby-operator">==</span> <span class="ruby-identifier">the_attribute</span>.<span class="ruby-identifier">value</span>
|
||||
<span class="ruby-identifier">direction_key</span> = <span class="ruby-value">:input</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_method</span>[<span class="ruby-value">:output</span>].<span class="ruby-identifier">gsub</span>(<span class="ruby-regexp">/^.+:/</span>, <span class="ruby-string">""</span>) <span class="ruby-operator">==</span> <span class="ruby-identifier">the_attribute</span>.<span class="ruby-identifier">value</span>
|
||||
<span class="ruby-identifier">direction_key</span> = <span class="ruby-value">:output</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">direction_key</span>
|
||||
<span class="ruby-identifier">parameters</span> = {}
|
||||
<span class="ruby-identifier">the_message</span>.<span class="ruby-identifier">children</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">the_part</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-keyword">next</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">the_part</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Oga</span><span class="ruby-operator">::</span><span class="ruby-constant">XML</span><span class="ruby-operator">::</span><span class="ruby-constant">Element</span>)
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_part</span>.<span class="ruby-identifier">name</span> <span class="ruby-operator">==</span> <span class="ruby-string">"part"</span>
|
||||
<span class="ruby-identifier">the_name</span> = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-identifier">the_type</span> = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-identifier">the_part</span>.<span class="ruby-identifier">attributes</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">the_parameter</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_parameter</span>.<span class="ruby-identifier">name</span> <span class="ruby-operator">==</span> <span class="ruby-string">"name"</span>
|
||||
<span class="ruby-identifier">the_name</span> = <span class="ruby-identifier">the_parameter</span>.<span class="ruby-identifier">value</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_parameter</span>.<span class="ruby-identifier">name</span> <span class="ruby-operator">==</span> <span class="ruby-string">"type"</span>
|
||||
<span class="ruby-identifier">the_type</span> = <span class="ruby-identifier">the_parameter</span>.<span class="ruby-identifier">value</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_parameter</span>.<span class="ruby-identifier">name</span> <span class="ruby-operator">==</span> <span class="ruby-string">"element"</span>
|
||||
<span class="ruby-identifier">the_type</span> = <span class="ruby-identifier">the_parameter</span>.<span class="ruby-identifier">value</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> (<span class="ruby-identifier">the_name</span> <span class="ruby-operator">&&</span> <span class="ruby-identifier">the_type</span>)
|
||||
<span class="ruby-identifier">parameters</span>[(<span class="ruby-identifier">the_name</span>.<span class="ruby-identifier">to_sym</span>)] = <span class="ruby-identifier">the_type</span>
|
||||
<span class="ruby-identifier">the_name</span> = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-identifier">the_type</span> = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">parameters</span>.<span class="ruby-identifier">keys</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span>
|
||||
<span class="ruby-identifier">record</span>[(<span class="ruby-identifier">direction_key</span>)] = <span class="ruby-identifier">parameters</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">record</span>[<span class="ruby-value">:input</span>] <span class="ruby-operator">||</span> <span class="ruby-identifier">record</span>[<span class="ruby-value">:output</span>]
|
||||
<span class="ruby-ivar">@interface</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">record</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-comment">#</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">Exception</span>, <span class="ruby-string">"Failed to retrieve WSDL data."</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">"No WSDL endpoint detected (required)."</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-comment">#</span>
|
||||
<span class="ruby-keyword">self</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
</section>
|
||||
|
||||
<section id="public-instance-5Buntitled-5D-method-details" class="method-section">
|
||||
<header>
|
||||
<h3>Public Instance Methods</h3>
|
||||
</header>
|
||||
|
||||
|
||||
<div id="method-i-interface" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">interface</span><span
|
||||
class="method-args">()</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="interface-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 2228</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">interface</span>()
|
||||
<span class="ruby-ivar">@interface</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-on_before_dispatch" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">on_before_dispatch</span><span
|
||||
class="method-args">(the_document=nil)</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="on_before_dispatch-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 2218</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">on_before_dispatch</span>(<span class="ruby-identifier">the_document</span>=<span class="ruby-keyword">nil</span>)
|
||||
<span class="ruby-comment">#</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-on_create_document" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">on_create_document</span><span
|
||||
class="method-args">(the_document=nil)</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>Handsoap support hooks:</p>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="on_create_document-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 2212</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">on_create_document</span>(<span class="ruby-identifier">the_document</span>=<span class="ruby-keyword">nil</span>)
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@tns_url</span>
|
||||
<span class="ruby-identifier">the_document</span>.<span class="ruby-identifier">alias</span>(<span class="ruby-string">'tns'</span>, <span class="ruby-ivar">@tns_url</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-on_response_document" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">on_response_document</span><span
|
||||
class="method-args">(the_document=nil)</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="on_response_document-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 2222</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">on_response_document</span>(<span class="ruby-identifier">the_document</span>=<span class="ruby-keyword">nil</span>)
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@tns_url</span>
|
||||
<span class="ruby-identifier">the_document</span>.<span class="ruby-identifier">add_namespace</span>(<span class="ruby-string">'ns'</span>, <span class="ruby-ivar">@tns_url</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
</section>
|
||||
|
||||
</section>
|
||||
</main>
|
||||
|
||||
|
||||
<footer id="validator-badges" role="contentinfo">
|
||||
<p><a href="https://validator.w3.org/check/referer">Validate</a>
|
||||
<p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.1.2.
|
||||
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
|
||||
</footer>
|
||||
|
||||
628
doc/GxG/Networking/SshClient.html
Normal file
628
doc/GxG/Networking/SshClient.html
Normal file
|
|
@ -0,0 +1,628 @@
|
|||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
|
||||
<title>class GxG::Networking::SshClient - RDoc Documentation</title>
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "../../";
|
||||
var index_rel_prefix = "../../";
|
||||
</script>
|
||||
|
||||
<script src="../../js/navigation.js" defer></script>
|
||||
<script src="../../js/search.js" defer></script>
|
||||
<script src="../../js/search_index.js" defer></script>
|
||||
<script src="../../js/searcher.js" defer></script>
|
||||
<script src="../../js/darkfish.js" defer></script>
|
||||
|
||||
<link href="../../css/fonts.css" rel="stylesheet">
|
||||
<link href="../../css/rdoc.css" rel="stylesheet">
|
||||
|
||||
|
||||
|
||||
<body id="top" role="document" class="class">
|
||||
<nav role="navigation">
|
||||
<div id="project-navigation">
|
||||
<div id="home-section" role="region" title="Quick navigation" class="nav-section">
|
||||
<h2>
|
||||
<a href="../../index.html" rel="home">Home</a>
|
||||
</h2>
|
||||
|
||||
<div id="table-of-contents-navigation">
|
||||
<a href="../../table_of_contents.html#pages">Pages</a>
|
||||
<a href="../../table_of_contents.html#classes">Classes</a>
|
||||
<a href="../../table_of_contents.html#methods">Methods</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="search-section" role="search" class="project-section initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<div id="search-field-wrapper">
|
||||
<input id="search-field" role="combobox" aria-label="Search"
|
||||
aria-autocomplete="list" aria-controls="search-results"
|
||||
type="text" name="search" placeholder="Search" spellcheck="false"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</div>
|
||||
|
||||
<ul id="search-results" aria-label="Search Results"
|
||||
aria-busy="false" aria-expanded="false"
|
||||
aria-atomic="false" class="initially-hidden"></ul>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
<div id="parent-class-section" class="nav-section">
|
||||
<h3>Parent</h3>
|
||||
|
||||
|
||||
<p class="link"><a href="../../Object.html">Object</a>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<div id="method-list-section" class="nav-section">
|
||||
<h3>Methods</h3>
|
||||
|
||||
<ul class="link-list" role="directory">
|
||||
|
||||
<li ><a href="#method-c-new">::new</a>
|
||||
|
||||
<li ><a href="#method-i-async_download">#async_download</a>
|
||||
|
||||
<li ><a href="#method-i-async_upload">#async_upload</a>
|
||||
|
||||
<li ><a href="#method-i-channel_operations">#channel_operations</a>
|
||||
|
||||
<li ><a href="#method-i-closed-3F">#closed?</a>
|
||||
|
||||
<li ><a href="#method-i-download">#download</a>
|
||||
|
||||
<li ><a href="#method-i-login">#login</a>
|
||||
|
||||
<li ><a href="#method-i-logout">#logout</a>
|
||||
|
||||
<li ><a href="#method-i-send_command">#send_command</a>
|
||||
|
||||
<li ><a href="#method-i-upload">#upload</a>
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<main role="main" aria-labelledby="class-GxG::Networking::SshClient">
|
||||
<h1 id="class-GxG::Networking::SshClient" class="class">
|
||||
class GxG::Networking::SshClient
|
||||
</h1>
|
||||
|
||||
<section class="description">
|
||||
|
||||
<p>SSH Client</p>
|
||||
|
||||
</section>
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="public-class-5Buntitled-5D-method-details" class="method-section">
|
||||
<header>
|
||||
<h3>Public Class Methods</h3>
|
||||
</header>
|
||||
|
||||
|
||||
<div id="method-c-new" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">new</span><span
|
||||
class="method-args">()</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="new-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 4138</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">initialize</span>()
|
||||
<span class="ruby-ivar">@client</span> = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-keyword">self</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
</section>
|
||||
|
||||
<section id="public-instance-5Buntitled-5D-method-details" class="method-section">
|
||||
<header>
|
||||
<h3>Public Instance Methods</h3>
|
||||
</header>
|
||||
|
||||
|
||||
<div id="method-i-async_download" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">async_download</span><span
|
||||
class="method-args">(the_remote_source=nil, the_destination=nil, options={}, &progress_block)</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="async_download-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 4271</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">async_download</span>(<span class="ruby-identifier">the_remote_source</span>=<span class="ruby-keyword">nil</span>, <span class="ruby-identifier">the_destination</span>=<span class="ruby-keyword">nil</span>, <span class="ruby-identifier">options</span>={}, <span class="ruby-operator">&</span><span class="ruby-identifier">progress_block</span>)
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">false</span>
|
||||
<span class="ruby-keyword">begin</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@client</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">the_remote_source</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">String</span>)
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">"You MUST provide a local path as a String."</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">the_destination</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">String</span>)
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">"You MUST provide a remote path as a String."</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">progress_block</span>.<span class="ruby-identifier">respond_to?</span>(<span class="ruby-value">:call</span>)
|
||||
<span class="ruby-identifier">channel</span> = <span class="ruby-ivar">@client</span>.<span class="ruby-identifier">scp</span>.<span class="ruby-identifier">download</span>(<span class="ruby-identifier">the_remote_source</span>, <span class="ruby-identifier">the_destination</span>, <span class="ruby-identifier">options</span>, <span class="ruby-operator">&</span><span class="ruby-identifier">progress_block</span>)
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">channel</span> = <span class="ruby-ivar">@client</span>.<span class="ruby-identifier">scp</span>.<span class="ruby-identifier">download</span>(<span class="ruby-identifier">the_remote_source</span>, <span class="ruby-identifier">the_destination</span>, <span class="ruby-identifier">options</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">channel</span>.<span class="ruby-identifier">wait</span>
|
||||
<span class="ruby-comment"># True result means the request was sent, not that it completed.</span>
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>
|
||||
<span class="ruby-identifier">log_error</span>({<span class="ruby-value">:error</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>, <span class="ruby-value">:parameters</span> <span class="ruby-operator">=></span> {<span class="ruby-value">:remote_path</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_remote_source</span>, <span class="ruby-value">:local_path</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_destination</span>, <span class="ruby-value">:options</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">options</span>}})
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">result</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-async_upload" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">async_upload</span><span
|
||||
class="method-args">(the_local_source=nil, the_destination=nil, options={}, &progress_block)</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="async_upload-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 4214</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">async_upload</span>(<span class="ruby-identifier">the_local_source</span>=<span class="ruby-keyword">nil</span>, <span class="ruby-identifier">the_destination</span>=<span class="ruby-keyword">nil</span>, <span class="ruby-identifier">options</span>={}, <span class="ruby-operator">&</span><span class="ruby-identifier">progress_block</span>)
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">false</span>
|
||||
<span class="ruby-keyword">begin</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@client</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">the_local_source</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">String</span>)
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">"You MUST provide a local path as a String."</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">the_destination</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">String</span>)
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">"You MUST provide a remote path as a String."</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">progress_block</span>.<span class="ruby-identifier">respond_to?</span>(<span class="ruby-value">:call</span>)
|
||||
<span class="ruby-identifier">channel</span> = <span class="ruby-ivar">@client</span>.<span class="ruby-identifier">scp</span>.<span class="ruby-identifier">upload</span>(<span class="ruby-identifier">the_local_source</span>, <span class="ruby-identifier">the_destination</span>, <span class="ruby-identifier">options</span>, <span class="ruby-operator">&</span><span class="ruby-identifier">progress_block</span>)
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">channel</span> = <span class="ruby-ivar">@client</span>.<span class="ruby-identifier">scp</span>.<span class="ruby-identifier">upload</span>(<span class="ruby-identifier">the_local_source</span>, <span class="ruby-identifier">the_destination</span>, <span class="ruby-identifier">options</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">channel</span>.<span class="ruby-identifier">wait</span>
|
||||
<span class="ruby-comment"># True result means the request was sent, not that it completed.</span>
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>
|
||||
<span class="ruby-identifier">log_error</span>({<span class="ruby-value">:error</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>, <span class="ruby-value">:parameters</span> <span class="ruby-operator">=></span> {<span class="ruby-value">:local_path</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_local_source</span>, <span class="ruby-value">:remote_path</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_destination</span>, <span class="ruby-value">:options</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">options</span>}})
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">result</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-channel_operations" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">channel_operations</span><span
|
||||
class="method-args">(&block)</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="channel_operations-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 4176</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">channel_operations</span>(<span class="ruby-operator">&</span><span class="ruby-identifier">block</span>)
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-keyword">begin</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@client</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">block</span>.<span class="ruby-identifier">respond_to?</span>(<span class="ruby-value">:call</span>)
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">"You MUST provide a valid Block/Proc to execute."</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-ivar">@client</span>.<span class="ruby-identifier">open_channel</span>(<span class="ruby-operator">&</span><span class="ruby-identifier">block</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-comment">#</span>
|
||||
<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>
|
||||
<span class="ruby-identifier">log_error</span>({<span class="ruby-value">:error</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>, <span class="ruby-value">:parameters</span> <span class="ruby-operator">=></span> {<span class="ruby-value">:block</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">block</span>}})
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">result</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-closed-3F" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">closed?</span><span
|
||||
class="method-args">()</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="closed-3F-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 4206</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">closed?</span>()
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@client</span>
|
||||
<span class="ruby-keyword">false</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-keyword">true</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-download" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">download</span><span
|
||||
class="method-args">(the_remote_source=nil, the_destination=nil, options={}, &progress_block)</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="download-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 4296</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">download</span>(<span class="ruby-identifier">the_remote_source</span>=<span class="ruby-keyword">nil</span>, <span class="ruby-identifier">the_destination</span>=<span class="ruby-keyword">nil</span>, <span class="ruby-identifier">options</span>={}, <span class="ruby-operator">&</span><span class="ruby-identifier">progress_block</span>)
|
||||
<span class="ruby-comment"># options:</span>
|
||||
<span class="ruby-comment">#:recursive - the local parameter refers to a local directory, which should be uploaded to a new directory named remote</span>
|
||||
<span class="ruby-comment"># on the remote server.</span>
|
||||
<span class="ruby-comment">#</span>
|
||||
<span class="ruby-comment">#:preserve - the atime and mtime of the file should be preserved.</span>
|
||||
<span class="ruby-comment">#</span>
|
||||
<span class="ruby-comment">#:verbose - the process should result in verbose output on the server end (useful for debugging).</span>
|
||||
<span class="ruby-comment">#</span>
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">false</span>
|
||||
<span class="ruby-keyword">begin</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@client</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">the_remote_source</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">String</span>)
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">"You MUST provide a remote path as a String."</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">the_destination</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">String</span>)
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">"You MUST provide a local path (or file name) as a String."</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">progress_block</span>.<span class="ruby-identifier">respond_to?</span>(<span class="ruby-value">:call</span>)
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-ivar">@client</span>.<span class="ruby-identifier">scp</span>.<span class="ruby-identifier">download!</span>(<span class="ruby-identifier">the_remote_source</span>, <span class="ruby-identifier">the_destination</span>, <span class="ruby-identifier">options</span>, <span class="ruby-operator">&</span><span class="ruby-identifier">progress_block</span>)
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-ivar">@client</span>.<span class="ruby-identifier">scp</span>.<span class="ruby-identifier">download!</span>(<span class="ruby-identifier">the_remote_source</span>, <span class="ruby-identifier">the_destination</span>, <span class="ruby-identifier">options</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>
|
||||
<span class="ruby-identifier">log_error</span>({<span class="ruby-value">:error</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>, <span class="ruby-value">:parameters</span> <span class="ruby-operator">=></span> {<span class="ruby-value">:remote_path</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_remote_source</span>, <span class="ruby-value">:local_path</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_destination</span>, <span class="ruby-value">:options</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">options</span>}})
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">result</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-login" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">login</span><span
|
||||
class="method-args">(the_url=nil, options={})</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="login-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 4143</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">login</span>(<span class="ruby-identifier">the_url</span>=<span class="ruby-keyword">nil</span>, <span class="ruby-identifier">options</span>={})
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">false</span>
|
||||
<span class="ruby-keyword">begin</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">URI</span><span class="ruby-operator">::</span><span class="ruby-constant">Generic</span>)
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">"You MUST provide a valid URI"</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">password</span>
|
||||
<span class="ruby-identifier">options</span>[<span class="ruby-value">:password</span>] = <span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">password</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-ivar">@client</span> = <span class="ruby-operator">::</span><span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span>.<span class="ruby-identifier">start</span>(<span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">hostname</span>, <span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">user</span>, <span class="ruby-identifier">options</span>)
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>
|
||||
<span class="ruby-identifier">log_error</span>({<span class="ruby-value">:error</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>, <span class="ruby-value">:parameters</span> <span class="ruby-operator">=></span> {<span class="ruby-value">:url</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_url</span>, <span class="ruby-value">:options</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">options</span>}})
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">result</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-logout" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">logout</span><span
|
||||
class="method-args">()</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="logout-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 4192</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">logout</span>()
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">false</span>
|
||||
<span class="ruby-keyword">begin</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@client</span>
|
||||
<span class="ruby-ivar">@client</span>.<span class="ruby-identifier">exec!</span>(<span class="ruby-string">"exit"</span>)
|
||||
<span class="ruby-ivar">@client</span> = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>
|
||||
<span class="ruby-identifier">log_error</span>({<span class="ruby-value">:error</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>, <span class="ruby-value">:parameters</span> <span class="ruby-operator">=></span> {}})
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">result</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-send_command" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">send_command</span><span
|
||||
class="method-args">(the_command=nil)</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="send_command-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 4160</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">send_command</span>(<span class="ruby-identifier">the_command</span>=<span class="ruby-keyword">nil</span>)
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-keyword">begin</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@client</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">the_command</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">String</span>)
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">"You MUST provide a command as a String."</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-ivar">@client</span>.<span class="ruby-identifier">exec!</span>(<span class="ruby-identifier">the_command</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-comment">#</span>
|
||||
<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>
|
||||
<span class="ruby-identifier">log_error</span>({<span class="ruby-value">:error</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>, <span class="ruby-value">:parameters</span> <span class="ruby-operator">=></span> {<span class="ruby-value">:command</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_command</span>}})
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">result</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-upload" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">upload</span><span
|
||||
class="method-args">(the_local_source=nil, the_destination=nil, options={}, &progress_block)</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="upload-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 4239</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">upload</span>(<span class="ruby-identifier">the_local_source</span>=<span class="ruby-keyword">nil</span>, <span class="ruby-identifier">the_destination</span>=<span class="ruby-keyword">nil</span>, <span class="ruby-identifier">options</span>={}, <span class="ruby-operator">&</span><span class="ruby-identifier">progress_block</span>)
|
||||
<span class="ruby-comment"># options:</span>
|
||||
<span class="ruby-comment">#:recursive - the local parameter refers to a local directory, which should be uploaded to a new directory named remote</span>
|
||||
<span class="ruby-comment"># on the remote server.</span>
|
||||
<span class="ruby-comment">#</span>
|
||||
<span class="ruby-comment">#:preserve - the atime and mtime of the file should be preserved.</span>
|
||||
<span class="ruby-comment">#</span>
|
||||
<span class="ruby-comment">#:verbose - the process should result in verbose output on the server end (useful for debugging).</span>
|
||||
<span class="ruby-comment">#</span>
|
||||
<span class="ruby-comment">#:chunk_size - the size of each "chunk" that should be sent. Defaults to 2048. Changing this value may</span>
|
||||
<span class="ruby-comment"># improve throughput at the expense of decreasing interactivity.</span>
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">false</span>
|
||||
<span class="ruby-keyword">begin</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@client</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">the_local_source</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">String</span>)
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">"You MUST provide a local path as a String."</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">the_destination</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">String</span>)
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">"You MUST provide a remote path as a String."</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">progress_block</span>.<span class="ruby-identifier">respond_to?</span>(<span class="ruby-value">:call</span>)
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-ivar">@client</span>.<span class="ruby-identifier">scp</span>.<span class="ruby-identifier">upload!</span>(<span class="ruby-identifier">the_local_source</span>, <span class="ruby-identifier">the_destination</span>, <span class="ruby-identifier">options</span>, <span class="ruby-operator">&</span><span class="ruby-identifier">progress_block</span>)
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-ivar">@client</span>.<span class="ruby-identifier">scp</span>.<span class="ruby-identifier">upload!</span>(<span class="ruby-identifier">the_local_source</span>, <span class="ruby-identifier">the_destination</span>, <span class="ruby-identifier">options</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>
|
||||
<span class="ruby-identifier">log_error</span>({<span class="ruby-value">:error</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>, <span class="ruby-value">:parameters</span> <span class="ruby-operator">=></span> {<span class="ruby-value">:local_path</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_local_source</span>, <span class="ruby-value">:remote_path</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_destination</span>, <span class="ruby-value">:options</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">options</span>}})
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">result</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
</section>
|
||||
|
||||
</section>
|
||||
</main>
|
||||
|
||||
|
||||
<footer id="validator-badges" role="contentinfo">
|
||||
<p><a href="https://validator.w3.org/check/referer">Validate</a>
|
||||
<p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.1.2.
|
||||
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
|
||||
</footer>
|
||||
|
||||
443
doc/GxG/Networking/XmlrpcClient.html
Normal file
443
doc/GxG/Networking/XmlrpcClient.html
Normal file
|
|
@ -0,0 +1,443 @@
|
|||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
|
||||
<title>class GxG::Networking::XmlrpcClient - RDoc Documentation</title>
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "../../";
|
||||
var index_rel_prefix = "../../";
|
||||
</script>
|
||||
|
||||
<script src="../../js/navigation.js" defer></script>
|
||||
<script src="../../js/search.js" defer></script>
|
||||
<script src="../../js/search_index.js" defer></script>
|
||||
<script src="../../js/searcher.js" defer></script>
|
||||
<script src="../../js/darkfish.js" defer></script>
|
||||
|
||||
<link href="../../css/fonts.css" rel="stylesheet">
|
||||
<link href="../../css/rdoc.css" rel="stylesheet">
|
||||
|
||||
|
||||
|
||||
<body id="top" role="document" class="class">
|
||||
<nav role="navigation">
|
||||
<div id="project-navigation">
|
||||
<div id="home-section" role="region" title="Quick navigation" class="nav-section">
|
||||
<h2>
|
||||
<a href="../../index.html" rel="home">Home</a>
|
||||
</h2>
|
||||
|
||||
<div id="table-of-contents-navigation">
|
||||
<a href="../../table_of_contents.html#pages">Pages</a>
|
||||
<a href="../../table_of_contents.html#classes">Classes</a>
|
||||
<a href="../../table_of_contents.html#methods">Methods</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="search-section" role="search" class="project-section initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<div id="search-field-wrapper">
|
||||
<input id="search-field" role="combobox" aria-label="Search"
|
||||
aria-autocomplete="list" aria-controls="search-results"
|
||||
type="text" name="search" placeholder="Search" spellcheck="false"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</div>
|
||||
|
||||
<ul id="search-results" aria-label="Search Results"
|
||||
aria-busy="false" aria-expanded="false"
|
||||
aria-atomic="false" class="initially-hidden"></ul>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
<div id="parent-class-section" class="nav-section">
|
||||
<h3>Parent</h3>
|
||||
|
||||
|
||||
<p class="link"><a href="../../Object.html">Object</a>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<div id="method-list-section" class="nav-section">
|
||||
<h3>Methods</h3>
|
||||
|
||||
<ul class="link-list" role="directory">
|
||||
|
||||
<li ><a href="#method-c-new">::new</a>
|
||||
|
||||
<li ><a href="#method-i-callmethod">#callmethod</a>
|
||||
|
||||
<li ><a href="#method-i-closed-3F">#closed?</a>
|
||||
|
||||
<li ><a href="#method-i-interface">#interface</a>
|
||||
|
||||
<li ><a href="#method-i-login">#login</a>
|
||||
|
||||
<li ><a href="#method-i-logout">#logout</a>
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<main role="main" aria-labelledby="class-GxG::Networking::XmlrpcClient">
|
||||
<h1 id="class-GxG::Networking::XmlrpcClient" class="class">
|
||||
class GxG::Networking::XmlrpcClient
|
||||
</h1>
|
||||
|
||||
<section class="description">
|
||||
|
||||
<p>XMLRPC Classes:</p>
|
||||
|
||||
</section>
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="public-class-5Buntitled-5D-method-details" class="method-section">
|
||||
<header>
|
||||
<h3>Public Class Methods</h3>
|
||||
</header>
|
||||
|
||||
|
||||
<div id="method-c-new" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">new</span><span
|
||||
class="method-args">()</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="new-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 2341</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">initialize</span>()
|
||||
<span class="ruby-ivar">@client</span> = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-ivar">@interface</span> = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-keyword">self</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
</section>
|
||||
|
||||
<section id="public-instance-5Buntitled-5D-method-details" class="method-section">
|
||||
<header>
|
||||
<h3>Public Instance Methods</h3>
|
||||
</header>
|
||||
|
||||
|
||||
<div id="method-i-callmethod" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">callmethod</span><span
|
||||
class="method-args">(the_method = nil, arguments = nil)</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="callmethod-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 2404</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">callmethod</span>(<span class="ruby-identifier">the_method</span> = <span class="ruby-keyword">nil</span>, <span class="ruby-identifier">arguments</span> = <span class="ruby-keyword">nil</span>)
|
||||
<span class="ruby-comment"># The +method+ parameter is converted into a String and should</span>
|
||||
<span class="ruby-comment"># be a valid XML-RPC method-name.</span>
|
||||
<span class="ruby-comment">#</span>
|
||||
<span class="ruby-comment"># Each parameter of +args+ must be of one of the following types,</span>
|
||||
<span class="ruby-comment"># where Hash, Struct and Array can contain any of these listed _types_:</span>
|
||||
<span class="ruby-comment">#</span>
|
||||
<span class="ruby-comment"># * Fixnum, Bignum</span>
|
||||
<span class="ruby-comment"># * TrueClass, FalseClass, +true+, +false+</span>
|
||||
<span class="ruby-comment"># * String, Symbol</span>
|
||||
<span class="ruby-comment"># * Float</span>
|
||||
<span class="ruby-comment"># * Hash, Struct</span>
|
||||
<span class="ruby-comment"># * Array</span>
|
||||
<span class="ruby-comment"># * Date, Time, XMLRPC::DateTime</span>
|
||||
<span class="ruby-comment"># * XMLRPC::Base64</span>
|
||||
<span class="ruby-comment"># * A Ruby object which class includes XMLRPC::Marshallable</span>
|
||||
<span class="ruby-comment"># (only if Config::ENABLE_MARSHALLABLE is +true+).</span>
|
||||
<span class="ruby-comment"># That object is converted into a hash, with one additional key/value</span>
|
||||
<span class="ruby-comment"># pair <code>___class___</code> which contains the class name</span>
|
||||
<span class="ruby-comment"># for restoring that object later.</span>
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-keyword">begin</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">the_method</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">String</span>)
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">"You MUST provide a valid method String."</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@client</span>
|
||||
<span class="ruby-identifier">calldata</span> = []
|
||||
<span class="ruby-identifier">calldata</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">the_method</span>
|
||||
<span class="ruby-comment">#</span>
|
||||
<span class="ruby-comment"># TODO: scour arguments structure for type conversions to be done.</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">arguments</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Array</span>)
|
||||
<span class="ruby-identifier">arguments</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">entry</span><span class="ruby-operator">|</span>
|
||||
<span class="ruby-identifier">calldata</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">entry</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">arguments</span>
|
||||
<span class="ruby-identifier">calldata</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">arguments</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-ivar">@client</span>.<span class="ruby-identifier">call</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">calldata</span>)
|
||||
<span class="ruby-comment"># TODO: scour result structure for type conversions to gxg standard.</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>
|
||||
<span class="ruby-identifier">log_error</span>({<span class="ruby-value">:error</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>, <span class="ruby-value">:parameters</span> <span class="ruby-operator">=></span> {<span class="ruby-value">:method</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_method</span>, <span class="ruby-value">:arguments</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">arguments</span>}})
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">result</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-closed-3F" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">closed?</span><span
|
||||
class="method-args">()</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="closed-3F-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 2396</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">closed?</span>()
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@client</span>
|
||||
<span class="ruby-keyword">false</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-keyword">true</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-interface" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">interface</span><span
|
||||
class="method-args">()</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="interface-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 2452</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">interface</span>()
|
||||
<span class="ruby-keyword">begin</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@client</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-ivar">@interface</span>
|
||||
<span class="ruby-ivar">@interface</span> = <span class="ruby-ivar">@client</span>.<span class="ruby-identifier">call</span>(<span class="ruby-string">"interface"</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-ivar">@interface</span>
|
||||
<span class="ruby-ivar">@interface</span> = <span class="ruby-ivar">@client</span>.<span class="ruby-identifier">call</span>(<span class="ruby-string">"Interface"</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>
|
||||
<span class="ruby-comment"># log_error({:error => the_error, :parameters => {}})</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-ivar">@interface</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-login" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">login</span><span
|
||||
class="method-args">(the_url=nil, options={})</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="login-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 2347</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">login</span>(<span class="ruby-identifier">the_url</span>=<span class="ruby-keyword">nil</span>, <span class="ruby-identifier">options</span>={})
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">false</span>
|
||||
<span class="ruby-keyword">begin</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">URI</span><span class="ruby-operator">::</span><span class="ruby-constant">Generic</span>)
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">"You MUST provide a valid URI."</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:use_ssl</span>] <span class="ruby-operator">==</span> <span class="ruby-keyword">true</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">scheme</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">downcase</span> <span class="ruby-operator">==</span> <span class="ruby-string">'https'</span>
|
||||
<span class="ruby-identifier">client_parameters</span> = [(<span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">hostname</span>), (<span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">path</span>), (<span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">port</span> <span class="ruby-operator">||</span> <span class="ruby-value">443</span>)]
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">client_parameters</span> = [(<span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">hostname</span>), (<span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">path</span>), (<span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">port</span> <span class="ruby-operator">||</span> <span class="ruby-value">80</span>)]
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:proxy</span>].<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">URI</span><span class="ruby-operator">::</span><span class="ruby-constant">Generic</span>)
|
||||
<span class="ruby-identifier">client_parameters</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:proxy</span>].<span class="ruby-identifier">host</span>
|
||||
<span class="ruby-identifier">client_parameters</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:proxy</span>].<span class="ruby-identifier">port</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">client_parameters</span> <span class="ruby-operator"><<</span> <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-identifier">client_parameters</span> <span class="ruby-operator"><<</span> <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">user</span> <span class="ruby-operator">&&</span> <span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">password</span>
|
||||
<span class="ruby-identifier">client_parameters</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">user</span>
|
||||
<span class="ruby-identifier">client_parameters</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">password</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">client_parameters</span> <span class="ruby-operator"><<</span> <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-identifier">client_parameters</span> <span class="ruby-operator"><<</span> <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:use_ssl</span>] <span class="ruby-operator">==</span> <span class="ruby-keyword">true</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">the_url</span>.<span class="ruby-identifier">scheme</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">downcase</span> <span class="ruby-operator">==</span> <span class="ruby-string">'https'</span>
|
||||
<span class="ruby-identifier">client_parameters</span> <span class="ruby-operator"><<</span> <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">client_parameters</span> <span class="ruby-operator"><<</span> <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:timeout</span>].<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Numeric</span>)
|
||||
<span class="ruby-identifier">client_parameters</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:timeout</span>].<span class="ruby-identifier">to_i</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">client_parameters</span> <span class="ruby-operator"><<</span> <span class="ruby-value">30</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-ivar">@client</span> = <span class="ruby-operator">::</span><span class="ruby-constant">XMLRPC</span><span class="ruby-operator">::</span><span class="ruby-constant">Client</span>.<span class="ruby-identifier">new</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">client_parameters</span>)
|
||||
<span class="ruby-identifier">this</span>().<span class="ruby-identifier">interface</span>()
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>
|
||||
<span class="ruby-identifier">log_error</span>({<span class="ruby-value">:error</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>, <span class="ruby-value">:parameters</span> <span class="ruby-operator">=></span> {<span class="ruby-value">:url</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_url</span>}})
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">result</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-logout" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">logout</span><span
|
||||
class="method-args">()</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="logout-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 2391</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">logout</span>()
|
||||
<span class="ruby-ivar">@client</span> = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-keyword">true</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
</section>
|
||||
|
||||
</section>
|
||||
</main>
|
||||
|
||||
|
||||
<footer id="validator-badges" role="contentinfo">
|
||||
<p><a href="https://validator.w3.org/check/referer">Validate</a>
|
||||
<p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.1.2.
|
||||
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
|
||||
</footer>
|
||||
|
||||
2656
doc/GxG/Networking/XmppAgent.html
Normal file
2656
doc/GxG/Networking/XmppAgent.html
Normal file
File diff suppressed because it is too large
Load diff
927
doc/GxG/Networking/XmppAgentConversation.html
Normal file
927
doc/GxG/Networking/XmppAgentConversation.html
Normal file
|
|
@ -0,0 +1,927 @@
|
|||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
|
||||
<title>class GxG::Networking::XmppAgentConversation - RDoc Documentation</title>
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "../../";
|
||||
var index_rel_prefix = "../../";
|
||||
</script>
|
||||
|
||||
<script src="../../js/navigation.js" defer></script>
|
||||
<script src="../../js/search.js" defer></script>
|
||||
<script src="../../js/search_index.js" defer></script>
|
||||
<script src="../../js/searcher.js" defer></script>
|
||||
<script src="../../js/darkfish.js" defer></script>
|
||||
|
||||
<link href="../../css/fonts.css" rel="stylesheet">
|
||||
<link href="../../css/rdoc.css" rel="stylesheet">
|
||||
|
||||
|
||||
|
||||
<body id="top" role="document" class="class">
|
||||
<nav role="navigation">
|
||||
<div id="project-navigation">
|
||||
<div id="home-section" role="region" title="Quick navigation" class="nav-section">
|
||||
<h2>
|
||||
<a href="../../index.html" rel="home">Home</a>
|
||||
</h2>
|
||||
|
||||
<div id="table-of-contents-navigation">
|
||||
<a href="../../table_of_contents.html#pages">Pages</a>
|
||||
<a href="../../table_of_contents.html#classes">Classes</a>
|
||||
<a href="../../table_of_contents.html#methods">Methods</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="search-section" role="search" class="project-section initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<div id="search-field-wrapper">
|
||||
<input id="search-field" role="combobox" aria-label="Search"
|
||||
aria-autocomplete="list" aria-controls="search-results"
|
||||
type="text" name="search" placeholder="Search" spellcheck="false"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</div>
|
||||
|
||||
<ul id="search-results" aria-label="Search Results"
|
||||
aria-busy="false" aria-expanded="false"
|
||||
aria-atomic="false" class="initially-hidden"></ul>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
<div id="parent-class-section" class="nav-section">
|
||||
<h3>Parent</h3>
|
||||
|
||||
|
||||
<p class="link"><a href="../../Object.html">Object</a>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<div id="method-list-section" class="nav-section">
|
||||
<h3>Methods</h3>
|
||||
|
||||
<ul class="link-list" role="directory">
|
||||
|
||||
<li ><a href="#method-c-new">::new</a>
|
||||
|
||||
<li ><a href="#method-i-5B-5D">#[]</a>
|
||||
|
||||
<li ><a href="#method-i-add_message">#add_message</a>
|
||||
|
||||
<li ><a href="#method-i-change_configuration">#change_configuration</a>
|
||||
|
||||
<li ><a href="#method-i-chat_buddies">#chat_buddies</a>
|
||||
|
||||
<li ><a href="#method-i-closed-3F">#closed?</a>
|
||||
|
||||
<li ><a href="#method-i-configuration">#configuration</a>
|
||||
|
||||
<li ><a href="#method-i-default_room_configuration">#default_room_configuration</a>
|
||||
|
||||
<li ><a href="#method-i-inspect">#inspect</a>
|
||||
|
||||
<li ><a href="#method-i-jid">#jid</a>
|
||||
|
||||
<li ><a href="#method-i-join">#join</a>
|
||||
|
||||
<li ><a href="#method-i-leave">#leave</a>
|
||||
|
||||
<li ><a href="#method-i-my_jid">#my_jid</a>
|
||||
|
||||
<li ><a href="#method-i-process_received">#process_received</a>
|
||||
|
||||
<li ><a href="#method-i-say_something">#say_something</a>
|
||||
|
||||
<li ><a href="#method-i-send_invitations">#send_invitations</a>
|
||||
|
||||
<li ><a href="#method-i-title">#title</a>
|
||||
|
||||
<li ><a href="#method-i-uuid">#uuid</a>
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<main role="main" aria-labelledby="class-GxG::Networking::XmppAgentConversation">
|
||||
<h1 id="class-GxG::Networking::XmppAgentConversation" class="class">
|
||||
class GxG::Networking::XmppAgentConversation
|
||||
</h1>
|
||||
|
||||
<section class="description">
|
||||
|
||||
<p>Conversation Channel</p>
|
||||
|
||||
</section>
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="public-class-5Buntitled-5D-method-details" class="method-section">
|
||||
<header>
|
||||
<h3>Public Class Methods</h3>
|
||||
</header>
|
||||
|
||||
|
||||
<div id="method-c-new" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">new</span><span
|
||||
class="method-args">(parent=nil, details={})</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="new-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 2935</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">initialize</span>(<span class="ruby-identifier">parent</span>=<span class="ruby-keyword">nil</span>, <span class="ruby-identifier">details</span>={})
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-operator">::</span><span class="ruby-constant">GxG</span><span class="ruby-operator">::</span><span class="ruby-identifier">valid_uuid?</span>(<span class="ruby-identifier">details</span>[<span class="ruby-value">:context</span>])
|
||||
<span class="ruby-ivar">@uuid</span> = <span class="ruby-identifier">details</span>[<span class="ruby-value">:context</span>].<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">to_sym</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-ivar">@uuid</span> = <span class="ruby-operator">::</span><span class="ruby-constant">GxG</span><span class="ruby-operator">::</span><span class="ruby-identifier">uuid_generate</span>.<span class="ruby-identifier">to_sym</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-ivar">@parent</span> = <span class="ruby-identifier">parent</span>
|
||||
<span class="ruby-comment"># @details should have a JID for the sender-jid/room-jid</span>
|
||||
<span class="ruby-comment"># @details should indicate whether a private direct message or MUC ROOM message (:chat? or :groupchat?)</span>
|
||||
<span class="ruby-ivar">@details</span> = <span class="ruby-identifier">details</span>
|
||||
<span class="ruby-comment">#</span>
|
||||
<span class="ruby-ivar">@received</span> = []
|
||||
<span class="ruby-ivar">@received_thread_safety</span> = <span class="ruby-operator">::</span><span class="ruby-constant">Mutex</span>.<span class="ruby-identifier">new</span>
|
||||
<span class="ruby-comment"># Add call backs</span>
|
||||
<span class="ruby-comment"># @parent.notify({:event => :new_message, :conversation => @uuid, :message => message.id})</span>
|
||||
<span class="ruby-comment"># @parent.notify({:event => :new_private_message, :conversation => @uuid, :message => message.id})</span>
|
||||
<span class="ruby-keyword">self</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
</section>
|
||||
|
||||
<section id="public-instance-5Buntitled-5D-method-details" class="method-section">
|
||||
<header>
|
||||
<h3>Public Instance Methods</h3>
|
||||
</header>
|
||||
|
||||
|
||||
<div id="method-i-5B-5D" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">[]</span><span
|
||||
class="method-args">(the_key=nil)</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="5B-5D-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 2970</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">[]</span>(<span class="ruby-identifier">the_key</span>=<span class="ruby-keyword">nil</span>)
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_key</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Symbol</span>)
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-ivar">@details</span>[(<span class="ruby-identifier">the_key</span>)]
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">result</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-add_message" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">add_message</span><span
|
||||
class="method-args">(the_message=nil)</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="add_message-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 3019</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">add_message</span>(<span class="ruby-identifier">the_message</span>=<span class="ruby-keyword">nil</span>)
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_message</span>
|
||||
<span class="ruby-ivar">@received_thread_safety</span>.<span class="ruby-identifier">synchronize</span> { <span class="ruby-ivar">@received</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">the_message</span> }
|
||||
<span class="ruby-keyword">true</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-keyword">false</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-change_configuration" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">change_configuration</span><span
|
||||
class="method-args">(the_configuration=nil)</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="change_configuration-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 3120</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">change_configuration</span>(<span class="ruby-identifier">the_configuration</span>=<span class="ruby-keyword">nil</span>)
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">false</span>
|
||||
<span class="ruby-keyword">begin</span>
|
||||
<span class="ruby-comment"># Review : TODO - alter ROOM configuration if admin/owner</span>
|
||||
<span class="ruby-comment"># if @handler</span>
|
||||
<span class="ruby-comment"># if @handler.owner?</span>
|
||||
<span class="ruby-comment"># unless the_configuration.is_a?(::Hash)</span>
|
||||
<span class="ruby-comment"># raise ArgumentError, "You MUST provide a configuration Hash."</span>
|
||||
<span class="ruby-comment"># end</span>
|
||||
<span class="ruby-comment"># the_configuration = this().default_room_configuration(the_configuration)</span>
|
||||
<span class="ruby-comment"># @handler.submit_room_configuration(the_configuration)</span>
|
||||
<span class="ruby-comment"># result = true</span>
|
||||
<span class="ruby-comment"># else</span>
|
||||
<span class="ruby-comment"># raise Exception, "You are not the owner of this conversation room."</span>
|
||||
<span class="ruby-comment"># end</span>
|
||||
<span class="ruby-comment"># end</span>
|
||||
<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>
|
||||
<span class="ruby-identifier">log_error</span>({<span class="ruby-value">:error</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>, <span class="ruby-value">:parameters</span> <span class="ruby-operator">=></span> {<span class="ruby-value">:configuration</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_configuration</span>}})
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">result</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-chat_buddies" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">chat_buddies</span><span
|
||||
class="method-args">()</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="chat_buddies-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 3049</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">chat_buddies</span>()
|
||||
<span class="ruby-identifier">result</span> = []
|
||||
<span class="ruby-keyword">begin</span>
|
||||
<span class="ruby-comment"># Review : TODO - like XmppAgent.buddies but for this ROOM only.</span>
|
||||
<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>
|
||||
<span class="ruby-identifier">log_error</span>({<span class="ruby-value">:error</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>, <span class="ruby-value">:parameters</span> <span class="ruby-operator">=></span> {}})
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">result</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-closed-3F" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">closed?</span><span
|
||||
class="method-args">()</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="closed-3F-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 2988</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">closed?</span>()
|
||||
<span class="ruby-comment"># Review : integrate with new system</span>
|
||||
<span class="ruby-keyword">false</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-configuration" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">configuration</span><span
|
||||
class="method-args">()</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="configuration-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 3086</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">configuration</span>()
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-keyword">begin</span>
|
||||
<span class="ruby-comment"># Review : TODO - get ROOM configuration</span>
|
||||
<span class="ruby-comment"># if @handler</span>
|
||||
<span class="ruby-comment"># if @handler.owner?</span>
|
||||
<span class="ruby-comment"># current_configuration = {}</span>
|
||||
<span class="ruby-comment"># iq = ::Jabber::Iq.new(:get, @handler.jid.to_s)</span>
|
||||
<span class="ruby-comment"># iq.to = @handler.jid.to_s</span>
|
||||
<span class="ruby-comment"># iq.from = @handler.my_jid.to_s</span>
|
||||
<span class="ruby-comment"># iq.add(::Jabber::MUC::IqQueryMUCOwner.new)</span>
|
||||
<span class="ruby-comment"># field_keys = this().default_room_configuration.keys</span>
|
||||
<span class="ruby-comment"># response = @stream.send_with_id(iq)</span>
|
||||
<span class="ruby-comment"># if response</span>
|
||||
<span class="ruby-comment"># if (response.query && response.query.x(::Jabber::Dataforms::XData))</span>
|
||||
<span class="ruby-comment"># field_keys.each do |the_key|</span>
|
||||
<span class="ruby-comment"># field = response.query.x(::Jabber::Dataforms::XData).field(the_key.to_s)</span>
|
||||
<span class="ruby-comment"># if field.is_a?(::Jabber::Dataforms::XDataField)</span>
|
||||
<span class="ruby-comment"># current_configuration[(the_key.to_s)] = field.value</span>
|
||||
<span class="ruby-comment"># end</span>
|
||||
<span class="ruby-comment"># end</span>
|
||||
<span class="ruby-comment"># end</span>
|
||||
<span class="ruby-comment"># end</span>
|
||||
<span class="ruby-comment"># result = current_configuration</span>
|
||||
<span class="ruby-comment"># else</span>
|
||||
<span class="ruby-comment"># raise Exception, "You are not the owner of this conversation room."</span>
|
||||
<span class="ruby-comment"># end</span>
|
||||
<span class="ruby-comment"># end</span>
|
||||
<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>
|
||||
<span class="ruby-identifier">log_error</span>({<span class="ruby-value">:error</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>, <span class="ruby-value">:parameters</span> <span class="ruby-operator">=></span> {}})
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">result</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-default_room_configuration" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">default_room_configuration</span><span
|
||||
class="method-args">(options={})</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="default_room_configuration-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 2903</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">default_room_configuration</span>(<span class="ruby-identifier">options</span>={})
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">options</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Hash</span>)
|
||||
<span class="ruby-identifier">options</span> = {}
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">default_config</span> = {
|
||||
<span class="ruby-string">'FORM_TYPE'</span> <span class="ruby-operator">=></span> <span class="ruby-string">'http://jabber.org/protocol/muc#roomconfig'</span>,
|
||||
<span class="ruby-string">'form'</span> <span class="ruby-operator">=></span> <span class="ruby-string">'config'</span>,
|
||||
<span class="ruby-string">'muc#roomconfig_roomname'</span> <span class="ruby-operator">=></span> <span class="ruby-keyword">nil</span>,
|
||||
<span class="ruby-string">'muc#roomconfig_roomdesc'</span> <span class="ruby-operator">=></span> <span class="ruby-keyword">nil</span>,
|
||||
<span class="ruby-string">'leave'</span> <span class="ruby-operator">=></span> <span class="ruby-string">'has left'</span>,
|
||||
<span class="ruby-string">'join'</span> <span class="ruby-operator">=></span> <span class="ruby-string">'has become available'</span>,
|
||||
<span class="ruby-string">'rename'</span> <span class="ruby-operator">=></span> <span class="ruby-string">'is now known as'</span>,
|
||||
<span class="ruby-string">'muc#roomconfig_changesubject'</span> <span class="ruby-operator">=></span> <span class="ruby-value">0</span>,
|
||||
<span class="ruby-string">'muc#roomconfig_maxusers'</span> <span class="ruby-operator">=></span> <span class="ruby-value">0</span>,
|
||||
<span class="ruby-string">'privacy'</span> <span class="ruby-operator">=></span> <span class="ruby-value">0</span>,
|
||||
<span class="ruby-string">'muc#roomconfig_publicroom'</span> <span class="ruby-operator">=></span> <span class="ruby-value">1</span>,
|
||||
<span class="ruby-string">'muc#roomconfig_persistentroom'</span> <span class="ruby-operator">=></span> <span class="ruby-value">1</span>,
|
||||
<span class="ruby-string">'legacy'</span> <span class="ruby-operator">=></span> <span class="ruby-value">0</span>,
|
||||
<span class="ruby-string">'muc#roomconfig_moderatedroom'</span> <span class="ruby-operator">=></span> <span class="ruby-value">0</span>,
|
||||
<span class="ruby-string">'defaulttype'</span> <span class="ruby-operator">=></span> <span class="ruby-value">0</span>,
|
||||
<span class="ruby-string">'privmsg'</span> <span class="ruby-operator">=></span> <span class="ruby-value">0</span>,
|
||||
<span class="ruby-string">'muc#roomconfig_membersonly'</span> <span class="ruby-operator">=></span> <span class="ruby-value">0</span>,
|
||||
<span class="ruby-string">'muc#roomconfig_allowinvites'</span> <span class="ruby-operator">=></span> <span class="ruby-value">1</span>,
|
||||
<span class="ruby-string">'muc#roomconfig_passwordprotectedroom'</span> <span class="ruby-operator">=></span> <span class="ruby-value">0</span>,
|
||||
<span class="ruby-string">'muc#roomconfig_roomsecret'</span> <span class="ruby-operator">=></span> <span class="ruby-keyword">nil</span>,
|
||||
<span class="ruby-string">'muc#roomconfig_whois'</span> <span class="ruby-operator">=></span> <span class="ruby-string">'moderators'</span>,
|
||||
<span class="ruby-string">'muc#roomconfig_enablelogging'</span> <span class="ruby-operator">=></span> <span class="ruby-value">0</span>,
|
||||
<span class="ruby-string">'logformat'</span> <span class="ruby-operator">=></span> <span class="ruby-string">'xml'</span>
|
||||
}
|
||||
<span class="ruby-identifier">default_config</span>.<span class="ruby-identifier">merge</span>(<span class="ruby-identifier">options</span>)
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-inspect" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">inspect</span><span
|
||||
class="method-args">()</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="inspect-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 2984</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">inspect</span>()
|
||||
{<span class="ruby-value">:jid</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">this</span>().<span class="ruby-identifier">jid</span>, <span class="ruby-value">:title</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">this</span>().<span class="ruby-identifier">title</span>}.<span class="ruby-identifier">inspect</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-jid" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">jid</span><span
|
||||
class="method-args">()</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="jid-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 2958</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">jid</span>()
|
||||
<span class="ruby-ivar">@details</span>[<span class="ruby-value">:sender</span>].<span class="ruby-identifier">to_s</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-join" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">join</span><span
|
||||
class="method-args">(the_jid=nil, password=nil, options={})</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="join-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 3028</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">join</span>(<span class="ruby-identifier">the_jid</span>=<span class="ruby-keyword">nil</span>, <span class="ruby-identifier">password</span>=<span class="ruby-keyword">nil</span>, <span class="ruby-identifier">options</span>={})
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">false</span>
|
||||
<span class="ruby-keyword">begin</span>
|
||||
<span class="ruby-comment"># Review : TODO - MUC join</span>
|
||||
<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>
|
||||
<span class="ruby-identifier">log_error</span>({<span class="ruby-value">:error</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>, <span class="ruby-value">:parameters</span> <span class="ruby-operator">=></span> {<span class="ruby-value">:the_jid</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_jid</span>, <span class="ruby-value">:options</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">options</span>}})
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">result</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-leave" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">leave</span><span
|
||||
class="method-args">(exit_string=nil)</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="leave-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 3038</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">leave</span>(<span class="ruby-identifier">exit_string</span>=<span class="ruby-keyword">nil</span>)
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">false</span>
|
||||
<span class="ruby-keyword">begin</span>
|
||||
<span class="ruby-comment"># Review : TODO - MUC leave</span>
|
||||
<span class="ruby-comment"># @parent.refresh_conversations</span>
|
||||
<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>
|
||||
<span class="ruby-identifier">log_error</span>({<span class="ruby-value">:error</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>, <span class="ruby-value">:parameters</span> <span class="ruby-operator">=></span> {<span class="ruby-value">:exit_string</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">exit_string</span>}})
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">result</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-my_jid" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">my_jid</span><span
|
||||
class="method-args">()</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="my_jid-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 2962</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">my_jid</span>()
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@parent</span>
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-ivar">@parent</span>.<span class="ruby-identifier">jid</span>().<span class="ruby-identifier">to_s</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">result</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-process_received" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">process_received</span><span
|
||||
class="method-args">(&block)</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="process_received-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 2993</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">process_received</span>(<span class="ruby-operator">&</span><span class="ruby-identifier">block</span>)
|
||||
<span class="ruby-keyword">begin</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">block</span>.<span class="ruby-identifier">respond_to?</span>(<span class="ruby-value">:call</span>)
|
||||
<span class="ruby-identifier">count</span> = <span class="ruby-value">0</span>
|
||||
<span class="ruby-ivar">@received_thread_safety</span>.<span class="ruby-identifier">synchronize</span> {
|
||||
<span class="ruby-identifier">count</span> = <span class="ruby-ivar">@received</span>.<span class="ruby-identifier">size</span>
|
||||
}
|
||||
<span class="ruby-identifier">record</span> = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-identifier">count</span>.<span class="ruby-identifier">times</span> <span class="ruby-keyword">do</span>
|
||||
<span class="ruby-ivar">@received_thread_safety</span>.<span class="ruby-identifier">synchronize</span> {
|
||||
<span class="ruby-identifier">record</span> = <span class="ruby-ivar">@received</span>.<span class="ruby-identifier">shift</span>
|
||||
}
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">record</span>
|
||||
<span class="ruby-identifier">block</span>.<span class="ruby-identifier">call</span>(<span class="ruby-identifier">record</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">true</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-keyword">false</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>
|
||||
<span class="ruby-identifier">log_error</span>({<span class="ruby-value">:error</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>, <span class="ruby-value">:parameters</span> <span class="ruby-operator">=></span> {}})
|
||||
<span class="ruby-keyword">false</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-say_something" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">say_something</span><span
|
||||
class="method-args">(the_message=nil, to_jid=nil)</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="say_something-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 3059</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">say_something</span>(<span class="ruby-identifier">the_message</span>=<span class="ruby-keyword">nil</span>, <span class="ruby-identifier">to_jid</span>=<span class="ruby-keyword">nil</span>)
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">false</span>
|
||||
<span class="ruby-keyword">begin</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@details</span>[<span class="ruby-value">:type</span>] <span class="ruby-operator">==</span> <span class="ruby-value">:chat</span>
|
||||
<span class="ruby-identifier">recipient</span> = (<span class="ruby-identifier">to_jid</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">the_message</span>[<span class="ruby-value">:to</span>]).<span class="ruby-identifier">to_s</span>
|
||||
<span class="ruby-ivar">@parent</span>.<span class="ruby-identifier">say</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Blather</span><span class="ruby-operator">::</span><span class="ruby-constant">JID</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">recipient</span>), <span class="ruby-ivar">@parent</span>.<span class="ruby-identifier">gxg_message_to_xmpp</span>(<span class="ruby-identifier">the_message</span>))
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-comment"># Review : TODO - send chat message to ROOM</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>
|
||||
<span class="ruby-identifier">log_error</span>({<span class="ruby-value">:error</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>, <span class="ruby-value">:parameters</span> <span class="ruby-operator">=></span> {<span class="ruby-value">:message</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_message</span>, <span class="ruby-value">:to</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">to_jid</span>}})
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">result</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-send_invitations" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">send_invitations</span><span
|
||||
class="method-args">(the_recipients=nil, reason=nil)</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="send_invitations-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 3075</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">send_invitations</span>(<span class="ruby-identifier">the_recipients</span>=<span class="ruby-keyword">nil</span>, <span class="ruby-identifier">reason</span>=<span class="ruby-keyword">nil</span>)
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">false</span>
|
||||
<span class="ruby-keyword">begin</span>
|
||||
<span class="ruby-comment"># Review : TODO - ROOM invitation list processing list.each { |i| send i }</span>
|
||||
<span class="ruby-comment"># "You MUST provide an Array of JID Strings."</span>
|
||||
<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>
|
||||
<span class="ruby-identifier">log_error</span>({<span class="ruby-value">:error</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>, <span class="ruby-value">:parameters</span> <span class="ruby-operator">=></span> {<span class="ruby-value">:recipients</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_recipients</span>, <span class="ruby-value">:message</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">reason</span>}})
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">result</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-title" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">title</span><span
|
||||
class="method-args">()</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="title-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 2978</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">title</span>()
|
||||
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">nil</span>
|
||||
<span class="ruby-comment"># Review : TODO - return ROOM title</span>
|
||||
<span class="ruby-identifier">result</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-uuid" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">uuid</span><span
|
||||
class="method-args">()</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="uuid-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 2954</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">uuid</span>()
|
||||
<span class="ruby-ivar">@uuid</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
</section>
|
||||
|
||||
</section>
|
||||
</main>
|
||||
|
||||
|
||||
<footer id="validator-badges" role="contentinfo">
|
||||
<p><a href="https://validator.w3.org/check/referer">Validate</a>
|
||||
<p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.1.2.
|
||||
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
|
||||
</footer>
|
||||
|
||||
1048
doc/GxG/Networking/XmppAgentFileTransfer.html
Normal file
1048
doc/GxG/Networking/XmppAgentFileTransfer.html
Normal file
File diff suppressed because it is too large
Load diff
470
doc/GxG/Networking/XmppAgentInvitation.html
Normal file
470
doc/GxG/Networking/XmppAgentInvitation.html
Normal file
|
|
@ -0,0 +1,470 @@
|
|||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
|
||||
<title>class GxG::Networking::XmppAgentInvitation - RDoc Documentation</title>
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "../../";
|
||||
var index_rel_prefix = "../../";
|
||||
</script>
|
||||
|
||||
<script src="../../js/navigation.js" defer></script>
|
||||
<script src="../../js/search.js" defer></script>
|
||||
<script src="../../js/search_index.js" defer></script>
|
||||
<script src="../../js/searcher.js" defer></script>
|
||||
<script src="../../js/darkfish.js" defer></script>
|
||||
|
||||
<link href="../../css/fonts.css" rel="stylesheet">
|
||||
<link href="../../css/rdoc.css" rel="stylesheet">
|
||||
|
||||
|
||||
|
||||
<body id="top" role="document" class="class">
|
||||
<nav role="navigation">
|
||||
<div id="project-navigation">
|
||||
<div id="home-section" role="region" title="Quick navigation" class="nav-section">
|
||||
<h2>
|
||||
<a href="../../index.html" rel="home">Home</a>
|
||||
</h2>
|
||||
|
||||
<div id="table-of-contents-navigation">
|
||||
<a href="../../table_of_contents.html#pages">Pages</a>
|
||||
<a href="../../table_of_contents.html#classes">Classes</a>
|
||||
<a href="../../table_of_contents.html#methods">Methods</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="search-section" role="search" class="project-section initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<div id="search-field-wrapper">
|
||||
<input id="search-field" role="combobox" aria-label="Search"
|
||||
aria-autocomplete="list" aria-controls="search-results"
|
||||
type="text" name="search" placeholder="Search" spellcheck="false"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</div>
|
||||
|
||||
<ul id="search-results" aria-label="Search Results"
|
||||
aria-busy="false" aria-expanded="false"
|
||||
aria-atomic="false" class="initially-hidden"></ul>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
<div id="parent-class-section" class="nav-section">
|
||||
<h3>Parent</h3>
|
||||
|
||||
|
||||
<p class="link"><a href="../../Object.html">Object</a>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<div id="method-list-section" class="nav-section">
|
||||
<h3>Methods</h3>
|
||||
|
||||
<ul class="link-list" role="directory">
|
||||
|
||||
<li ><a href="#method-c-new">::new</a>
|
||||
|
||||
<li ><a href="#method-i-5B-5D">#[]</a>
|
||||
|
||||
<li ><a href="#method-i-accept">#accept</a>
|
||||
|
||||
<li ><a href="#method-i-decline">#decline</a>
|
||||
|
||||
<li ><a href="#method-i-inspect">#inspect</a>
|
||||
|
||||
<li ><a href="#method-i-invitation">#invitation</a>
|
||||
|
||||
<li ><a href="#method-i-keys">#keys</a>
|
||||
|
||||
<li ><a href="#method-i-pending-3F">#pending?</a>
|
||||
|
||||
<li ><a href="#method-i-uuid">#uuid</a>
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<main role="main" aria-labelledby="class-GxG::Networking::XmppAgentInvitation">
|
||||
<h1 id="class-GxG::Networking::XmppAgentInvitation" class="class">
|
||||
class GxG::Networking::XmppAgentInvitation
|
||||
</h1>
|
||||
|
||||
<section class="description">
|
||||
|
||||
<p>XMPP Classes: Review : <a href="../../Blather.html"><code>Blather</code></a> switchover: require ::File.expand_path(“./xmpp_client.rb”,::File.dirname(__FILE__)) ### Invitations</p>
|
||||
|
||||
</section>
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="public-class-5Buntitled-5D-method-details" class="method-section">
|
||||
<header>
|
||||
<h3>Public Class Methods</h3>
|
||||
</header>
|
||||
|
||||
|
||||
<div id="method-c-new" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">new</span><span
|
||||
class="method-args">(parent=nil, invitation=nil)</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="new-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 2474</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">initialize</span>(<span class="ruby-identifier">parent</span>=<span class="ruby-keyword">nil</span>, <span class="ruby-identifier">invitation</span>=<span class="ruby-keyword">nil</span>)
|
||||
<span class="ruby-ivar">@uuid</span> = <span class="ruby-operator">::</span><span class="ruby-constant">GxG</span><span class="ruby-operator">::</span><span class="ruby-identifier">uuid_generate</span>.<span class="ruby-identifier">to_sym</span>
|
||||
<span class="ruby-ivar">@pending</span> = <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-ivar">@parent</span> = <span class="ruby-identifier">parent</span>
|
||||
<span class="ruby-ivar">@invitation</span> = <span class="ruby-identifier">invitation</span>
|
||||
<span class="ruby-comment">#</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@invitation</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Blather</span><span class="ruby-operator">::</span><span class="ruby-constant">Stanza</span><span class="ruby-operator">::</span><span class="ruby-constant">Presence</span>)
|
||||
<span class="ruby-ivar">@details</span> = {<span class="ruby-value">:sender</span> <span class="ruby-operator">=></span> <span class="ruby-ivar">@invitation</span>.<span class="ruby-identifier">from</span>.<span class="ruby-identifier">to_s</span>, <span class="ruby-value">:type</span> <span class="ruby-operator">=></span> <span class="ruby-value">:association</span>}
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-ivar">@details</span> = {<span class="ruby-value">:sender</span> <span class="ruby-operator">=></span> <span class="ruby-ivar">@invitation</span>.<span class="ruby-identifier">from</span>.<span class="ruby-identifier">to_s</span>, <span class="ruby-value">:type</span> <span class="ruby-operator">=></span> <span class="ruby-value">:unkown</span>}
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-comment">#</span>
|
||||
<span class="ruby-keyword">self</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
</section>
|
||||
|
||||
<section id="public-instance-5Buntitled-5D-method-details" class="method-section">
|
||||
<header>
|
||||
<h3>Public Instance Methods</h3>
|
||||
</header>
|
||||
|
||||
|
||||
<div id="method-i-5B-5D" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">[]</span><span
|
||||
class="method-args">(the_key)</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="5B-5D-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 2509</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">[]</span>(<span class="ruby-identifier">the_key</span>)
|
||||
<span class="ruby-ivar">@details</span>[(<span class="ruby-identifier">the_key</span>)]
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-accept" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">accept</span><span
|
||||
class="method-args">()</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="accept-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 2513</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">accept</span>()
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@invitation</span>
|
||||
<span class="ruby-ivar">@parent</span>.<span class="ruby-identifier">write</span>(<span class="ruby-ivar">@invitation</span>.<span class="ruby-identifier">approve!</span>)
|
||||
<span class="ruby-ivar">@pending</span> = <span class="ruby-keyword">false</span>
|
||||
<span class="ruby-ivar">@parent</span>.<span class="ruby-identifier">refresh_invitations</span>()
|
||||
<span class="ruby-keyword">true</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-keyword">false</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-decline" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">decline</span><span
|
||||
class="method-args">()</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="decline-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 2524</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">decline</span>()
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@invitation</span>
|
||||
<span class="ruby-ivar">@parent</span>.<span class="ruby-identifier">write</span>(<span class="ruby-ivar">@invitation</span>.<span class="ruby-identifier">cancel!</span>)
|
||||
<span class="ruby-ivar">@pending</span> = <span class="ruby-keyword">false</span>
|
||||
<span class="ruby-ivar">@parent</span>.<span class="ruby-identifier">refresh_invitations</span>()
|
||||
<span class="ruby-keyword">true</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-keyword">false</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-inspect" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">inspect</span><span
|
||||
class="method-args">()</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="inspect-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 2497</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">inspect</span>()
|
||||
<span class="ruby-ivar">@details</span>.<span class="ruby-identifier">inspect</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-invitation" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">invitation</span><span
|
||||
class="method-args">()</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<p>Review : debug only</p>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="invitation-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 2489</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">invitation</span>()
|
||||
<span class="ruby-ivar">@invitation</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-keys" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">keys</span><span
|
||||
class="method-args">()</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="keys-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 2505</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">keys</span>()
|
||||
<span class="ruby-ivar">@details</span>.<span class="ruby-identifier">keys</span>()
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-pending-3F" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">pending?</span><span
|
||||
class="method-args">()</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="pending-3F-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 2501</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">pending?</span>()
|
||||
<span class="ruby-ivar">@pending</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-uuid" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">uuid</span><span
|
||||
class="method-args">()</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="uuid-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/net_clients.rb, line 2493</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">uuid</span>()
|
||||
<span class="ruby-ivar">@uuid</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
</section>
|
||||
|
||||
</section>
|
||||
</main>
|
||||
|
||||
|
||||
<footer id="validator-badges" role="contentinfo">
|
||||
<p><a href="https://validator.w3.org/check/referer">Validate</a>
|
||||
<p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.1.2.
|
||||
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
|
||||
</footer>
|
||||
|
||||
187
doc/GxG/Networking/ZMQ.html
Normal file
187
doc/GxG/Networking/ZMQ.html
Normal file
|
|
@ -0,0 +1,187 @@
|
|||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
|
||||
<title>module GxG::Networking::ZMQ - RDoc Documentation</title>
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "../../";
|
||||
var index_rel_prefix = "../../";
|
||||
</script>
|
||||
|
||||
<script src="../../js/navigation.js" defer></script>
|
||||
<script src="../../js/search.js" defer></script>
|
||||
<script src="../../js/search_index.js" defer></script>
|
||||
<script src="../../js/searcher.js" defer></script>
|
||||
<script src="../../js/darkfish.js" defer></script>
|
||||
|
||||
<link href="../../css/fonts.css" rel="stylesheet">
|
||||
<link href="../../css/rdoc.css" rel="stylesheet">
|
||||
|
||||
|
||||
|
||||
<body id="top" role="document" class="module">
|
||||
<nav role="navigation">
|
||||
<div id="project-navigation">
|
||||
<div id="home-section" role="region" title="Quick navigation" class="nav-section">
|
||||
<h2>
|
||||
<a href="../../index.html" rel="home">Home</a>
|
||||
</h2>
|
||||
|
||||
<div id="table-of-contents-navigation">
|
||||
<a href="../../table_of_contents.html#pages">Pages</a>
|
||||
<a href="../../table_of_contents.html#classes">Classes</a>
|
||||
<a href="../../table_of_contents.html#methods">Methods</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="search-section" role="search" class="project-section initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<div id="search-field-wrapper">
|
||||
<input id="search-field" role="combobox" aria-label="Search"
|
||||
aria-autocomplete="list" aria-controls="search-results"
|
||||
type="text" name="search" placeholder="Search" spellcheck="false"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</div>
|
||||
|
||||
<ul id="search-results" aria-label="Search Results"
|
||||
aria-busy="false" aria-expanded="false"
|
||||
aria-atomic="false" class="initially-hidden"></ul>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<div id="method-list-section" class="nav-section">
|
||||
<h3>Methods</h3>
|
||||
|
||||
<ul class="link-list" role="directory">
|
||||
|
||||
<li ><a href="#method-c-zmq_default_context">::zmq_default_context</a>
|
||||
|
||||
<li ><a href="#method-c-zmq_supported_protocols">::zmq_supported_protocols</a>
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<main role="main" aria-labelledby="module-GxG::Networking::ZMQ">
|
||||
<h1 id="module-GxG::Networking::ZMQ" class="module">
|
||||
module GxG::Networking::ZMQ
|
||||
</h1>
|
||||
|
||||
<section class="description">
|
||||
|
||||
</section>
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="public-class-5Buntitled-5D-method-details" class="method-section">
|
||||
<header>
|
||||
<h3>Public Class Methods</h3>
|
||||
</header>
|
||||
|
||||
|
||||
<div id="method-c-zmq_default_context" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">zmq_default_context</span><span
|
||||
class="method-args">()</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="zmq_default_context-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/gxg_zmq.rb, line 25</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier ruby-title">zmq_default_context</span>()
|
||||
<span class="ruby-identifier">@@details</span>[<span class="ruby-value">:zmq_context</span>]
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-c-zmq_supported_protocols" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">zmq_supported_protocols</span><span
|
||||
class="method-args">()</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="zmq_supported_protocols-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/gxg_zmq.rb, line 29</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier ruby-title">zmq_supported_protocols</span>()
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-operator">::</span><span class="ruby-constant">GxG</span><span class="ruby-operator">::</span><span class="ruby-constant">SYSTEM</span>.<span class="ruby-identifier">platform</span>()[<span class="ruby-value">:platform</span>] <span class="ruby-operator">==</span> <span class="ruby-value">:windows</span>
|
||||
[<span class="ruby-string">"inproc"</span>, <span class="ruby-string">"tcp"</span>, <span class="ruby-string">"tcp4"</span>, <span class="ruby-string">"tcp6"</span>, <span class="ruby-string">"pgm"</span>, <span class="ruby-string">"epgm"</span>]
|
||||
<span class="ruby-keyword">else</span>
|
||||
[<span class="ruby-string">"inproc"</span>, <span class="ruby-string">"ipc"</span>, <span class="ruby-string">"tcp"</span>, <span class="ruby-string">"tcp4"</span>, <span class="ruby-string">"tcp6"</span>, <span class="ruby-string">"pgm"</span>, <span class="ruby-string">"epgm"</span>]
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
</section>
|
||||
|
||||
</section>
|
||||
</main>
|
||||
|
||||
|
||||
<footer id="validator-badges" role="contentinfo">
|
||||
<p><a href="https://validator.w3.org/check/referer">Validate</a>
|
||||
<p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.1.2.
|
||||
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
|
||||
</footer>
|
||||
|
||||
503
doc/GxG/Networking/ZMQ/ZmqAdapter.html
Normal file
503
doc/GxG/Networking/ZMQ/ZmqAdapter.html
Normal file
|
|
@ -0,0 +1,503 @@
|
|||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
|
||||
<title>class GxG::Networking::ZMQ::ZmqAdapter - RDoc Documentation</title>
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "../../../";
|
||||
var index_rel_prefix = "../../../";
|
||||
</script>
|
||||
|
||||
<script src="../../../js/navigation.js" defer></script>
|
||||
<script src="../../../js/search.js" defer></script>
|
||||
<script src="../../../js/search_index.js" defer></script>
|
||||
<script src="../../../js/searcher.js" defer></script>
|
||||
<script src="../../../js/darkfish.js" defer></script>
|
||||
|
||||
<link href="../../../css/fonts.css" rel="stylesheet">
|
||||
<link href="../../../css/rdoc.css" rel="stylesheet">
|
||||
|
||||
|
||||
|
||||
<body id="top" role="document" class="class">
|
||||
<nav role="navigation">
|
||||
<div id="project-navigation">
|
||||
<div id="home-section" role="region" title="Quick navigation" class="nav-section">
|
||||
<h2>
|
||||
<a href="../../../index.html" rel="home">Home</a>
|
||||
</h2>
|
||||
|
||||
<div id="table-of-contents-navigation">
|
||||
<a href="../../../table_of_contents.html#pages">Pages</a>
|
||||
<a href="../../../table_of_contents.html#classes">Classes</a>
|
||||
<a href="../../../table_of_contents.html#methods">Methods</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="search-section" role="search" class="project-section initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<div id="search-field-wrapper">
|
||||
<input id="search-field" role="combobox" aria-label="Search"
|
||||
aria-autocomplete="list" aria-controls="search-results"
|
||||
type="text" name="search" placeholder="Search" spellcheck="false"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</div>
|
||||
|
||||
<ul id="search-results" aria-label="Search Results"
|
||||
aria-busy="false" aria-expanded="false"
|
||||
aria-atomic="false" class="initially-hidden"></ul>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
<div id="parent-class-section" class="nav-section">
|
||||
<h3>Parent</h3>
|
||||
|
||||
|
||||
<p class="link"><a href="../../../Object.html">Object</a>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<div id="method-list-section" class="nav-section">
|
||||
<h3>Methods</h3>
|
||||
|
||||
<ul class="link-list" role="directory">
|
||||
|
||||
<li ><a href="#method-i-close">#close</a>
|
||||
|
||||
<li ><a href="#method-i-context">#context</a>
|
||||
|
||||
<li ><a href="#method-i-identity">#identity</a>
|
||||
|
||||
<li ><a href="#method-i-listen">#listen</a>
|
||||
|
||||
<li ><a href="#method-i-open-3F">#open?</a>
|
||||
|
||||
<li ><a href="#method-i-receive">#receive</a>
|
||||
|
||||
<li ><a href="#method-i-send">#send</a>
|
||||
|
||||
<li ><a href="#method-i-socket">#socket</a>
|
||||
|
||||
<li ><a href="#method-i-vetted_parameters">#vetted_parameters</a>
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<main role="main" aria-labelledby="class-GxG::Networking::ZMQ::ZmqAdapter">
|
||||
<h1 id="class-GxG::Networking::ZMQ::ZmqAdapter" class="class">
|
||||
class GxG::Networking::ZMQ::ZmqAdapter
|
||||
</h1>
|
||||
|
||||
<section class="description">
|
||||
|
||||
</section>
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="public-instance-5Buntitled-5D-method-details" class="method-section">
|
||||
<header>
|
||||
<h3>Public Instance Methods</h3>
|
||||
</header>
|
||||
|
||||
|
||||
<div id="method-i-close" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">close</span><span
|
||||
class="method-args">()</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="close-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/gxg_zmq.rb, line 101</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">close</span>()
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@open</span> <span class="ruby-operator">==</span> <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-ivar">@connector</span>.<span class="ruby-identifier">socket</span>.<span class="ruby-identifier">close</span>
|
||||
<span class="ruby-ivar">@open</span> = <span class="ruby-keyword">false</span>
|
||||
<span class="ruby-keyword">true</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-keyword">false</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-context" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">context</span><span
|
||||
class="method-args">()</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="context-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/gxg_zmq.rb, line 111</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">context</span>()
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@open</span> <span class="ruby-operator">==</span> <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-ivar">@connector</span>.<span class="ruby-identifier">context</span>()
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-identity" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">identity</span><span
|
||||
class="method-args">()</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="identity-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/gxg_zmq.rb, line 123</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">identity</span>()
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@open</span> <span class="ruby-operator">==</span> <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-ivar">@connector</span>.<span class="ruby-identifier">socket</span>.<span class="ruby-identifier">identity</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-listen" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">listen</span><span
|
||||
class="method-args">(&block)</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="listen-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/gxg_zmq.rb, line 129</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">listen</span>(<span class="ruby-operator">&</span><span class="ruby-identifier">block</span>)
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@open</span> <span class="ruby-operator">==</span> <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-ivar">@connector</span>.<span class="ruby-identifier">listen</span>(<span class="ruby-operator">&</span><span class="ruby-identifier">block</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-open-3F" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">open?</span><span
|
||||
class="method-args">()</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="open-3F-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/gxg_zmq.rb, line 97</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">open?</span>()
|
||||
<span class="ruby-ivar">@open</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-receive" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">receive</span><span
|
||||
class="method-args">(**options, &block)</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="receive-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/gxg_zmq.rb, line 135</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">receive</span>(<span class="ruby-operator">**</span><span class="ruby-identifier">options</span>, <span class="ruby-operator">&</span><span class="ruby-identifier">block</span>)
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@open</span> <span class="ruby-operator">==</span> <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-ivar">@connector</span>.<span class="ruby-identifier">receive</span>(<span class="ruby-identifier">options</span>, <span class="ruby-operator">&</span><span class="ruby-identifier">block</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-send" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">send</span><span
|
||||
class="method-args">(message="", **options)</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="send-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/gxg_zmq.rb, line 141</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">send</span>(<span class="ruby-identifier">message</span>=<span class="ruby-string">""</span>, <span class="ruby-operator">**</span><span class="ruby-identifier">options</span>)
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@open</span> <span class="ruby-operator">==</span> <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-ivar">@connector</span>.<span class="ruby-identifier">send</span>(<span class="ruby-identifier">message</span>.<span class="ruby-identifier">to_s</span>,<span class="ruby-identifier">options</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-socket" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">socket</span><span
|
||||
class="method-args">()</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="socket-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/gxg_zmq.rb, line 117</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">socket</span>()
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@open</span> <span class="ruby-operator">==</span> <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-ivar">@connector</span>.<span class="ruby-identifier">socket</span>()
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-vetted_parameters" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">vetted_parameters</span><span
|
||||
class="method-args">(params={})</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
<pre>Proposed: {:bind/connect => <URI>, :context => <Context>, :encode => <Proc>, :decode => <Proc>}
|
||||
mode (:bind, :connect) — a mode for the socket.
|
||||
Options Hash:</pre>
|
||||
|
||||
<p>context (ZMQ::Context) — a context to use for this socket (one will be created if not provided). encode (lambda) — how to encode messages. decode (lambda) — how to decode messages. transport (Symbol) — default: :tcp — transport for transport. address (String) — default: '127.0.0.1' — address for endpoint. port (Fixnum) — default: 5555 — port for endpoint.</p>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="vetted_parameters-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/gxg_zmq.rb, line 47</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">vetted_parameters</span>(<span class="ruby-identifier">params</span>={})
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">params</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Hash</span>)
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">"You MUST provide a Hash as parameters."</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">params</span>[<span class="ruby-value">:bind</span>]
|
||||
<span class="ruby-comment"># bind</span>
|
||||
<span class="ruby-identifier">mode</span> = <span class="ruby-value">:bind</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-comment"># connect</span>
|
||||
<span class="ruby-identifier">mode</span> = <span class="ruby-value">:connect</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">options</span> = {}
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">params</span>[<span class="ruby-value">:context</span>].<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">ZMQ</span><span class="ruby-operator">::</span><span class="ruby-constant">Context</span>)
|
||||
<span class="ruby-identifier">options</span>[<span class="ruby-value">:context</span>] = <span class="ruby-identifier">params</span>[<span class="ruby-value">:context</span>]
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">uri</span> = <span class="ruby-identifier">params</span>[(<span class="ruby-identifier">mode</span>)].<span class="ruby-identifier">clone</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">uri</span>.<span class="ruby-identifier">port</span>
|
||||
<span class="ruby-identifier">uri</span>.<span class="ruby-identifier">port</span> = <span class="ruby-value">5555</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">options</span>[<span class="ruby-value">:port</span>] = <span class="ruby-identifier">uri</span>.<span class="ruby-identifier">port</span>
|
||||
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">uri</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">URI</span><span class="ruby-operator">::</span><span class="ruby-constant">Generic</span>)
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">"You MUST provide a valid URI to bind or connect to."</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-operator">::</span><span class="ruby-constant">GxG</span><span class="ruby-operator">::</span><span class="ruby-constant">Networking</span><span class="ruby-operator">::</span><span class="ruby-constant">ZMQ</span><span class="ruby-operator">::</span><span class="ruby-identifier">zmq_supported_protocols</span>().<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">uri</span>.<span class="ruby-identifier">scheme</span>())
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">mode</span> <span class="ruby-operator">==</span> <span class="ruby-value">:bind</span>
|
||||
<span class="ruby-keyword">if</span> [<span class="ruby-string">"tcp"</span>, <span class="ruby-string">"tcp4"</span>, <span class="ruby-string">"tcp6"</span>, <span class="ruby-string">"udp"</span>, <span class="ruby-string">"udp4"</span>, <span class="ruby-string">"udp6"</span>].<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">uri</span>.<span class="ruby-identifier">scheme</span>())
|
||||
<span class="ruby-identifier">uri</span>.<span class="ruby-identifier">resolve_host</span>()
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-operator">::</span><span class="ruby-constant">GxG</span><span class="ruby-operator">::</span><span class="ruby-constant">SYSTEM</span>.<span class="ruby-identifier">network_port_used?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Addrinfo</span><span class="ruby-operator">::</span><span class="ruby-identifier">parse</span>(<span class="ruby-identifier">uri</span>))
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">Errno</span><span class="ruby-operator">::</span><span class="ruby-constant">EADDRINUSE</span>, <span class="ruby-node">"Address and port already in use: #{uri.to_s}"</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">else</span>
|
||||
<span class="ruby-identifier">raise</span> <span class="ruby-constant">Exception</span>, <span class="ruby-node">"Unsupported networking protocol: #{uri.scheme().inspect}"</span>
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">options</span>[<span class="ruby-value">:transport</span>] = <span class="ruby-identifier">uri</span>.<span class="ruby-identifier">scheme</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">to_sym</span>
|
||||
<span class="ruby-identifier">options</span>[<span class="ruby-value">:address</span>] = <span class="ruby-identifier">uri</span>.<span class="ruby-identifier">hostname</span>
|
||||
<span class="ruby-keyword">if</span> [<span class="ruby-string">"tcp"</span>, <span class="ruby-string">"tcp4"</span>, <span class="ruby-string">"tcp6"</span>, <span class="ruby-string">"udp"</span>, <span class="ruby-string">"udp4"</span>, <span class="ruby-string">"udp6"</span>].<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">uri</span>.<span class="ruby-identifier">scheme</span>())
|
||||
<span class="ruby-identifier">options</span>[<span class="ruby-value">:port</span>] = (<span class="ruby-identifier">uri</span>.<span class="ruby-identifier">port</span> <span class="ruby-operator">||</span> <span class="ruby-value">5555</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-identifier">options</span>[<span class="ruby-value">:transport</span>] = <span class="ruby-identifier">uri</span>.<span class="ruby-identifier">scheme</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">to_sym</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">params</span>[<span class="ruby-value">:encode</span>].<span class="ruby-identifier">respond_to?</span>(<span class="ruby-value">:call</span>)
|
||||
<span class="ruby-identifier">options</span>[<span class="ruby-value">:encode</span>] = <span class="ruby-identifier">params</span>[<span class="ruby-value">:encode</span>]
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-identifier">params</span>[<span class="ruby-value">:decode</span>].<span class="ruby-identifier">respond_to?</span>(<span class="ruby-value">:call</span>)
|
||||
<span class="ruby-identifier">options</span>[<span class="ruby-value">:decode</span>] = <span class="ruby-identifier">params</span>[<span class="ruby-value">:decode</span>]
|
||||
<span class="ruby-keyword">end</span>
|
||||
{<span class="ruby-value">:mode</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">mode</span>, <span class="ruby-value">:options</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">options</span>}
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
</section>
|
||||
|
||||
</section>
|
||||
</main>
|
||||
|
||||
|
||||
<footer id="validator-badges" role="contentinfo">
|
||||
<p><a href="https://validator.w3.org/check/referer">Validate</a>
|
||||
<p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.1.2.
|
||||
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
|
||||
</footer>
|
||||
|
||||
202
doc/GxG/Networking/ZMQ/ZmqClient.html
Normal file
202
doc/GxG/Networking/ZMQ/ZmqClient.html
Normal file
|
|
@ -0,0 +1,202 @@
|
|||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
|
||||
<title>class GxG::Networking::ZMQ::ZmqClient - RDoc Documentation</title>
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "../../../";
|
||||
var index_rel_prefix = "../../../";
|
||||
</script>
|
||||
|
||||
<script src="../../../js/navigation.js" defer></script>
|
||||
<script src="../../../js/search.js" defer></script>
|
||||
<script src="../../../js/search_index.js" defer></script>
|
||||
<script src="../../../js/searcher.js" defer></script>
|
||||
<script src="../../../js/darkfish.js" defer></script>
|
||||
|
||||
<link href="../../../css/fonts.css" rel="stylesheet">
|
||||
<link href="../../../css/rdoc.css" rel="stylesheet">
|
||||
|
||||
|
||||
|
||||
<body id="top" role="document" class="class">
|
||||
<nav role="navigation">
|
||||
<div id="project-navigation">
|
||||
<div id="home-section" role="region" title="Quick navigation" class="nav-section">
|
||||
<h2>
|
||||
<a href="../../../index.html" rel="home">Home</a>
|
||||
</h2>
|
||||
|
||||
<div id="table-of-contents-navigation">
|
||||
<a href="../../../table_of_contents.html#pages">Pages</a>
|
||||
<a href="../../../table_of_contents.html#classes">Classes</a>
|
||||
<a href="../../../table_of_contents.html#methods">Methods</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="search-section" role="search" class="project-section initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<div id="search-field-wrapper">
|
||||
<input id="search-field" role="combobox" aria-label="Search"
|
||||
aria-autocomplete="list" aria-controls="search-results"
|
||||
type="text" name="search" placeholder="Search" spellcheck="false"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</div>
|
||||
|
||||
<ul id="search-results" aria-label="Search Results"
|
||||
aria-busy="false" aria-expanded="false"
|
||||
aria-atomic="false" class="initially-hidden"></ul>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
<div id="parent-class-section" class="nav-section">
|
||||
<h3>Parent</h3>
|
||||
|
||||
|
||||
<p class="link"><a href="ZmqAdapter.html">GxG::Networking::ZMQ::ZmqAdapter</a>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<div id="method-list-section" class="nav-section">
|
||||
<h3>Methods</h3>
|
||||
|
||||
<ul class="link-list" role="directory">
|
||||
|
||||
<li ><a href="#method-c-new">::new</a>
|
||||
|
||||
<li ><a href="#method-i-request">#request</a>
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<main role="main" aria-labelledby="class-GxG::Networking::ZMQ::ZmqClient">
|
||||
<h1 id="class-GxG::Networking::ZMQ::ZmqClient" class="class">
|
||||
class GxG::Networking::ZMQ::ZmqClient
|
||||
</h1>
|
||||
|
||||
<section class="description">
|
||||
|
||||
</section>
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="public-class-5Buntitled-5D-method-details" class="method-section">
|
||||
<header>
|
||||
<h3>Public Class Methods</h3>
|
||||
</header>
|
||||
|
||||
|
||||
<div id="method-c-new" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">new</span><span
|
||||
class="method-args">(params={})</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="new-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/gxg_zmq.rb, line 184</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">initialize</span>(<span class="ruby-identifier">params</span>={})
|
||||
<span class="ruby-identifier">params</span> = <span class="ruby-keyword">self</span>.<span class="ruby-identifier">vetted_parameters</span>(<span class="ruby-identifier">params</span>)
|
||||
<span class="ruby-ivar">@connector</span> = <span class="ruby-operator">::</span><span class="ruby-constant">EZMQ</span><span class="ruby-operator">::</span><span class="ruby-constant">Client</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">params</span>[<span class="ruby-value">:options</span>])
|
||||
<span class="ruby-ivar">@connector</span>.<span class="ruby-identifier">socket</span>.<span class="ruby-identifier">identity</span> = <span class="ruby-operator">::</span><span class="ruby-constant">Celluloid</span><span class="ruby-operator">::</span><span class="ruby-constant">UUID</span><span class="ruby-operator">::</span><span class="ruby-identifier">random_generate</span>.<span class="ruby-identifier">to_s</span>
|
||||
<span class="ruby-ivar">@open</span> = <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-keyword">self</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
</section>
|
||||
|
||||
<section id="public-instance-5Buntitled-5D-method-details" class="method-section">
|
||||
<header>
|
||||
<h3>Public Instance Methods</h3>
|
||||
</header>
|
||||
|
||||
|
||||
<div id="method-i-request" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">request</span><span
|
||||
class="method-args">(message="", **options)</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="request-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/gxg_zmq.rb, line 192</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">request</span>(<span class="ruby-identifier">message</span>=<span class="ruby-string">""</span>, <span class="ruby-operator">**</span><span class="ruby-identifier">options</span>)
|
||||
<span class="ruby-ivar">@connector</span>.<span class="ruby-identifier">request</span>(<span class="ruby-identifier">message</span>.<span class="ruby-identifier">to_s</span>,<span class="ruby-identifier">options</span>)
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
</section>
|
||||
|
||||
</section>
|
||||
</main>
|
||||
|
||||
|
||||
<footer id="validator-badges" role="contentinfo">
|
||||
<p><a href="https://validator.w3.org/check/referer">Validate</a>
|
||||
<p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.1.2.
|
||||
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
|
||||
</footer>
|
||||
|
||||
104
doc/GxG/Networking/ZMQ/ZmqContext.html
Normal file
104
doc/GxG/Networking/ZMQ/ZmqContext.html
Normal file
|
|
@ -0,0 +1,104 @@
|
|||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
|
||||
<title>class GxG::Networking::ZMQ::ZmqContext - RDoc Documentation</title>
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "../../../";
|
||||
var index_rel_prefix = "../../../";
|
||||
</script>
|
||||
|
||||
<script src="../../../js/navigation.js" defer></script>
|
||||
<script src="../../../js/search.js" defer></script>
|
||||
<script src="../../../js/search_index.js" defer></script>
|
||||
<script src="../../../js/searcher.js" defer></script>
|
||||
<script src="../../../js/darkfish.js" defer></script>
|
||||
|
||||
<link href="../../../css/fonts.css" rel="stylesheet">
|
||||
<link href="../../../css/rdoc.css" rel="stylesheet">
|
||||
|
||||
|
||||
|
||||
<body id="top" role="document" class="class">
|
||||
<nav role="navigation">
|
||||
<div id="project-navigation">
|
||||
<div id="home-section" role="region" title="Quick navigation" class="nav-section">
|
||||
<h2>
|
||||
<a href="../../../index.html" rel="home">Home</a>
|
||||
</h2>
|
||||
|
||||
<div id="table-of-contents-navigation">
|
||||
<a href="../../../table_of_contents.html#pages">Pages</a>
|
||||
<a href="../../../table_of_contents.html#classes">Classes</a>
|
||||
<a href="../../../table_of_contents.html#methods">Methods</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="search-section" role="search" class="project-section initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<div id="search-field-wrapper">
|
||||
<input id="search-field" role="combobox" aria-label="Search"
|
||||
aria-autocomplete="list" aria-controls="search-results"
|
||||
type="text" name="search" placeholder="Search" spellcheck="false"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</div>
|
||||
|
||||
<ul id="search-results" aria-label="Search Results"
|
||||
aria-busy="false" aria-expanded="false"
|
||||
aria-atomic="false" class="initially-hidden"></ul>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
<div id="parent-class-section" class="nav-section">
|
||||
<h3>Parent</h3>
|
||||
|
||||
|
||||
<p class="link">EZMQ::Context
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<main role="main" aria-labelledby="class-GxG::Networking::ZMQ::ZmqContext">
|
||||
<h1 id="class-GxG::Networking::ZMQ::ZmqContext" class="class">
|
||||
class GxG::Networking::ZMQ::ZmqContext
|
||||
</h1>
|
||||
|
||||
<section class="description">
|
||||
|
||||
</section>
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</section>
|
||||
</main>
|
||||
|
||||
|
||||
<footer id="validator-badges" role="contentinfo">
|
||||
<p><a href="https://validator.w3.org/check/referer">Validate</a>
|
||||
<p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.1.2.
|
||||
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
|
||||
</footer>
|
||||
|
||||
159
doc/GxG/Networking/ZMQ/ZmqPair.html
Normal file
159
doc/GxG/Networking/ZMQ/ZmqPair.html
Normal file
|
|
@ -0,0 +1,159 @@
|
|||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
|
||||
<title>class GxG::Networking::ZMQ::ZmqPair - RDoc Documentation</title>
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "../../../";
|
||||
var index_rel_prefix = "../../../";
|
||||
</script>
|
||||
|
||||
<script src="../../../js/navigation.js" defer></script>
|
||||
<script src="../../../js/search.js" defer></script>
|
||||
<script src="../../../js/search_index.js" defer></script>
|
||||
<script src="../../../js/searcher.js" defer></script>
|
||||
<script src="../../../js/darkfish.js" defer></script>
|
||||
|
||||
<link href="../../../css/fonts.css" rel="stylesheet">
|
||||
<link href="../../../css/rdoc.css" rel="stylesheet">
|
||||
|
||||
|
||||
|
||||
<body id="top" role="document" class="class">
|
||||
<nav role="navigation">
|
||||
<div id="project-navigation">
|
||||
<div id="home-section" role="region" title="Quick navigation" class="nav-section">
|
||||
<h2>
|
||||
<a href="../../../index.html" rel="home">Home</a>
|
||||
</h2>
|
||||
|
||||
<div id="table-of-contents-navigation">
|
||||
<a href="../../../table_of_contents.html#pages">Pages</a>
|
||||
<a href="../../../table_of_contents.html#classes">Classes</a>
|
||||
<a href="../../../table_of_contents.html#methods">Methods</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="search-section" role="search" class="project-section initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<div id="search-field-wrapper">
|
||||
<input id="search-field" role="combobox" aria-label="Search"
|
||||
aria-autocomplete="list" aria-controls="search-results"
|
||||
type="text" name="search" placeholder="Search" spellcheck="false"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</div>
|
||||
|
||||
<ul id="search-results" aria-label="Search Results"
|
||||
aria-busy="false" aria-expanded="false"
|
||||
aria-atomic="false" class="initially-hidden"></ul>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
<div id="parent-class-section" class="nav-section">
|
||||
<h3>Parent</h3>
|
||||
|
||||
|
||||
<p class="link"><a href="ZmqAdapter.html">GxG::Networking::ZMQ::ZmqAdapter</a>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<div id="method-list-section" class="nav-section">
|
||||
<h3>Methods</h3>
|
||||
|
||||
<ul class="link-list" role="directory">
|
||||
|
||||
<li ><a href="#method-c-new">::new</a>
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<main role="main" aria-labelledby="class-GxG::Networking::ZMQ::ZmqPair">
|
||||
<h1 id="class-GxG::Networking::ZMQ::ZmqPair" class="class">
|
||||
class GxG::Networking::ZMQ::ZmqPair
|
||||
</h1>
|
||||
|
||||
<section class="description">
|
||||
|
||||
</section>
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="public-class-5Buntitled-5D-method-details" class="method-section">
|
||||
<header>
|
||||
<h3>Public Class Methods</h3>
|
||||
</header>
|
||||
|
||||
|
||||
<div id="method-c-new" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">new</span><span
|
||||
class="method-args">(params={})</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="new-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/gxg_zmq.rb, line 151</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">initialize</span>(<span class="ruby-identifier">params</span>={})
|
||||
<span class="ruby-identifier">params</span> = <span class="ruby-keyword">self</span>.<span class="ruby-identifier">vetted_parameters</span>(<span class="ruby-identifier">params</span>)
|
||||
<span class="ruby-ivar">@connector</span> = <span class="ruby-operator">::</span><span class="ruby-constant">EZMQ</span><span class="ruby-operator">::</span><span class="ruby-constant">Pair</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">params</span>[<span class="ruby-value">:mode</span>], <span class="ruby-identifier">params</span>[<span class="ruby-value">:options</span>])
|
||||
<span class="ruby-ivar">@connector</span>.<span class="ruby-identifier">socket</span>.<span class="ruby-identifier">identity</span> = <span class="ruby-operator">::</span><span class="ruby-constant">Celluloid</span><span class="ruby-operator">::</span><span class="ruby-constant">UUID</span><span class="ruby-operator">::</span><span class="ruby-identifier">random_generate</span>.<span class="ruby-identifier">to_s</span>
|
||||
<span class="ruby-ivar">@open</span> = <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-keyword">self</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
</section>
|
||||
|
||||
</section>
|
||||
</main>
|
||||
|
||||
|
||||
<footer id="validator-badges" role="contentinfo">
|
||||
<p><a href="https://validator.w3.org/check/referer">Validate</a>
|
||||
<p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.1.2.
|
||||
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
|
||||
</footer>
|
||||
|
||||
204
doc/GxG/Networking/ZMQ/ZmqPublisher.html
Normal file
204
doc/GxG/Networking/ZMQ/ZmqPublisher.html
Normal file
|
|
@ -0,0 +1,204 @@
|
|||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
|
||||
<title>class GxG::Networking::ZMQ::ZmqPublisher - RDoc Documentation</title>
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "../../../";
|
||||
var index_rel_prefix = "../../../";
|
||||
</script>
|
||||
|
||||
<script src="../../../js/navigation.js" defer></script>
|
||||
<script src="../../../js/search.js" defer></script>
|
||||
<script src="../../../js/search_index.js" defer></script>
|
||||
<script src="../../../js/searcher.js" defer></script>
|
||||
<script src="../../../js/darkfish.js" defer></script>
|
||||
|
||||
<link href="../../../css/fonts.css" rel="stylesheet">
|
||||
<link href="../../../css/rdoc.css" rel="stylesheet">
|
||||
|
||||
|
||||
|
||||
<body id="top" role="document" class="class">
|
||||
<nav role="navigation">
|
||||
<div id="project-navigation">
|
||||
<div id="home-section" role="region" title="Quick navigation" class="nav-section">
|
||||
<h2>
|
||||
<a href="../../../index.html" rel="home">Home</a>
|
||||
</h2>
|
||||
|
||||
<div id="table-of-contents-navigation">
|
||||
<a href="../../../table_of_contents.html#pages">Pages</a>
|
||||
<a href="../../../table_of_contents.html#classes">Classes</a>
|
||||
<a href="../../../table_of_contents.html#methods">Methods</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="search-section" role="search" class="project-section initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<div id="search-field-wrapper">
|
||||
<input id="search-field" role="combobox" aria-label="Search"
|
||||
aria-autocomplete="list" aria-controls="search-results"
|
||||
type="text" name="search" placeholder="Search" spellcheck="false"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</div>
|
||||
|
||||
<ul id="search-results" aria-label="Search Results"
|
||||
aria-busy="false" aria-expanded="false"
|
||||
aria-atomic="false" class="initially-hidden"></ul>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
<div id="parent-class-section" class="nav-section">
|
||||
<h3>Parent</h3>
|
||||
|
||||
|
||||
<p class="link"><a href="ZmqAdapter.html">GxG::Networking::ZMQ::ZmqAdapter</a>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<div id="method-list-section" class="nav-section">
|
||||
<h3>Methods</h3>
|
||||
|
||||
<ul class="link-list" role="directory">
|
||||
|
||||
<li ><a href="#method-c-new">::new</a>
|
||||
|
||||
<li ><a href="#method-i-send">#send</a>
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<main role="main" aria-labelledby="class-GxG::Networking::ZMQ::ZmqPublisher">
|
||||
<h1 id="class-GxG::Networking::ZMQ::ZmqPublisher" class="class">
|
||||
class GxG::Networking::ZMQ::ZmqPublisher
|
||||
</h1>
|
||||
|
||||
<section class="description">
|
||||
|
||||
</section>
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="public-class-5Buntitled-5D-method-details" class="method-section">
|
||||
<header>
|
||||
<h3>Public Class Methods</h3>
|
||||
</header>
|
||||
|
||||
|
||||
<div id="method-c-new" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">new</span><span
|
||||
class="method-args">(params={})</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="new-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/gxg_zmq.rb, line 209</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">initialize</span>(<span class="ruby-identifier">params</span>={})
|
||||
<span class="ruby-identifier">params</span> = <span class="ruby-keyword">self</span>.<span class="ruby-identifier">vetted_parameters</span>(<span class="ruby-identifier">params</span>)
|
||||
<span class="ruby-ivar">@connector</span> = <span class="ruby-operator">::</span><span class="ruby-constant">EZMQ</span><span class="ruby-operator">::</span><span class="ruby-constant">Publisher</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">params</span>[<span class="ruby-value">:options</span>])
|
||||
<span class="ruby-ivar">@connector</span>.<span class="ruby-identifier">socket</span>.<span class="ruby-identifier">identity</span> = <span class="ruby-operator">::</span><span class="ruby-constant">Celluloid</span><span class="ruby-operator">::</span><span class="ruby-constant">UUID</span><span class="ruby-operator">::</span><span class="ruby-identifier">random_generate</span>.<span class="ruby-identifier">to_s</span>
|
||||
<span class="ruby-ivar">@open</span> = <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-keyword">self</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
</section>
|
||||
|
||||
<section id="public-instance-5Buntitled-5D-method-details" class="method-section">
|
||||
<header>
|
||||
<h3>Public Instance Methods</h3>
|
||||
</header>
|
||||
|
||||
|
||||
<div id="method-i-send" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">send</span><span
|
||||
class="method-args">(message="", topic='', **options)</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="send-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/gxg_zmq.rb, line 217</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">send</span>(<span class="ruby-identifier">message</span>=<span class="ruby-string">""</span>, <span class="ruby-identifier">topic</span>=<span class="ruby-string">''</span>, <span class="ruby-operator">**</span><span class="ruby-identifier">options</span>)
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@open</span> <span class="ruby-operator">==</span> <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-ivar">@connector</span>.<span class="ruby-identifier">send</span>(<span class="ruby-identifier">message</span>.<span class="ruby-identifier">to_s</span>, <span class="ruby-identifier">topic</span>.<span class="ruby-identifier">to_s</span>,<span class="ruby-identifier">options</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
</section>
|
||||
|
||||
</section>
|
||||
</main>
|
||||
|
||||
|
||||
<footer id="validator-badges" role="contentinfo">
|
||||
<p><a href="https://validator.w3.org/check/referer">Validate</a>
|
||||
<p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.1.2.
|
||||
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
|
||||
</footer>
|
||||
|
||||
159
doc/GxG/Networking/ZMQ/ZmqPuller.html
Normal file
159
doc/GxG/Networking/ZMQ/ZmqPuller.html
Normal file
|
|
@ -0,0 +1,159 @@
|
|||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
|
||||
<title>class GxG::Networking::ZMQ::ZmqPuller - RDoc Documentation</title>
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "../../../";
|
||||
var index_rel_prefix = "../../../";
|
||||
</script>
|
||||
|
||||
<script src="../../../js/navigation.js" defer></script>
|
||||
<script src="../../../js/search.js" defer></script>
|
||||
<script src="../../../js/search_index.js" defer></script>
|
||||
<script src="../../../js/searcher.js" defer></script>
|
||||
<script src="../../../js/darkfish.js" defer></script>
|
||||
|
||||
<link href="../../../css/fonts.css" rel="stylesheet">
|
||||
<link href="../../../css/rdoc.css" rel="stylesheet">
|
||||
|
||||
|
||||
|
||||
<body id="top" role="document" class="class">
|
||||
<nav role="navigation">
|
||||
<div id="project-navigation">
|
||||
<div id="home-section" role="region" title="Quick navigation" class="nav-section">
|
||||
<h2>
|
||||
<a href="../../../index.html" rel="home">Home</a>
|
||||
</h2>
|
||||
|
||||
<div id="table-of-contents-navigation">
|
||||
<a href="../../../table_of_contents.html#pages">Pages</a>
|
||||
<a href="../../../table_of_contents.html#classes">Classes</a>
|
||||
<a href="../../../table_of_contents.html#methods">Methods</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="search-section" role="search" class="project-section initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<div id="search-field-wrapper">
|
||||
<input id="search-field" role="combobox" aria-label="Search"
|
||||
aria-autocomplete="list" aria-controls="search-results"
|
||||
type="text" name="search" placeholder="Search" spellcheck="false"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</div>
|
||||
|
||||
<ul id="search-results" aria-label="Search Results"
|
||||
aria-busy="false" aria-expanded="false"
|
||||
aria-atomic="false" class="initially-hidden"></ul>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
<div id="parent-class-section" class="nav-section">
|
||||
<h3>Parent</h3>
|
||||
|
||||
|
||||
<p class="link"><a href="ZmqAdapter.html">GxG::Networking::ZMQ::ZmqAdapter</a>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<div id="method-list-section" class="nav-section">
|
||||
<h3>Methods</h3>
|
||||
|
||||
<ul class="link-list" role="directory">
|
||||
|
||||
<li ><a href="#method-c-new">::new</a>
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<main role="main" aria-labelledby="class-GxG::Networking::ZMQ::ZmqPuller">
|
||||
<h1 id="class-GxG::Networking::ZMQ::ZmqPuller" class="class">
|
||||
class GxG::Networking::ZMQ::ZmqPuller
|
||||
</h1>
|
||||
|
||||
<section class="description">
|
||||
|
||||
</section>
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="public-class-5Buntitled-5D-method-details" class="method-section">
|
||||
<header>
|
||||
<h3>Public Class Methods</h3>
|
||||
</header>
|
||||
|
||||
|
||||
<div id="method-c-new" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">new</span><span
|
||||
class="method-args">(params={})</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="new-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/gxg_zmq.rb, line 173</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">initialize</span>(<span class="ruby-identifier">params</span>={})
|
||||
<span class="ruby-identifier">params</span> = <span class="ruby-keyword">self</span>.<span class="ruby-identifier">vetted_parameters</span>(<span class="ruby-identifier">params</span>)
|
||||
<span class="ruby-ivar">@connector</span> = <span class="ruby-operator">::</span><span class="ruby-constant">EZMQ</span><span class="ruby-operator">::</span><span class="ruby-constant">Puller</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">params</span>[<span class="ruby-value">:mode</span>], <span class="ruby-identifier">params</span>[<span class="ruby-value">:options</span>])
|
||||
<span class="ruby-ivar">@connector</span>.<span class="ruby-identifier">socket</span>.<span class="ruby-identifier">identity</span> = <span class="ruby-operator">::</span><span class="ruby-constant">Celluloid</span><span class="ruby-operator">::</span><span class="ruby-constant">UUID</span><span class="ruby-operator">::</span><span class="ruby-identifier">random_generate</span>.<span class="ruby-identifier">to_s</span>
|
||||
<span class="ruby-ivar">@open</span> = <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-keyword">self</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
</section>
|
||||
|
||||
</section>
|
||||
</main>
|
||||
|
||||
|
||||
<footer id="validator-badges" role="contentinfo">
|
||||
<p><a href="https://validator.w3.org/check/referer">Validate</a>
|
||||
<p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.1.2.
|
||||
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
|
||||
</footer>
|
||||
|
||||
159
doc/GxG/Networking/ZMQ/ZmqPusher.html
Normal file
159
doc/GxG/Networking/ZMQ/ZmqPusher.html
Normal file
|
|
@ -0,0 +1,159 @@
|
|||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
|
||||
<title>class GxG::Networking::ZMQ::ZmqPusher - RDoc Documentation</title>
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "../../../";
|
||||
var index_rel_prefix = "../../../";
|
||||
</script>
|
||||
|
||||
<script src="../../../js/navigation.js" defer></script>
|
||||
<script src="../../../js/search.js" defer></script>
|
||||
<script src="../../../js/search_index.js" defer></script>
|
||||
<script src="../../../js/searcher.js" defer></script>
|
||||
<script src="../../../js/darkfish.js" defer></script>
|
||||
|
||||
<link href="../../../css/fonts.css" rel="stylesheet">
|
||||
<link href="../../../css/rdoc.css" rel="stylesheet">
|
||||
|
||||
|
||||
|
||||
<body id="top" role="document" class="class">
|
||||
<nav role="navigation">
|
||||
<div id="project-navigation">
|
||||
<div id="home-section" role="region" title="Quick navigation" class="nav-section">
|
||||
<h2>
|
||||
<a href="../../../index.html" rel="home">Home</a>
|
||||
</h2>
|
||||
|
||||
<div id="table-of-contents-navigation">
|
||||
<a href="../../../table_of_contents.html#pages">Pages</a>
|
||||
<a href="../../../table_of_contents.html#classes">Classes</a>
|
||||
<a href="../../../table_of_contents.html#methods">Methods</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="search-section" role="search" class="project-section initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<div id="search-field-wrapper">
|
||||
<input id="search-field" role="combobox" aria-label="Search"
|
||||
aria-autocomplete="list" aria-controls="search-results"
|
||||
type="text" name="search" placeholder="Search" spellcheck="false"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</div>
|
||||
|
||||
<ul id="search-results" aria-label="Search Results"
|
||||
aria-busy="false" aria-expanded="false"
|
||||
aria-atomic="false" class="initially-hidden"></ul>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
<div id="parent-class-section" class="nav-section">
|
||||
<h3>Parent</h3>
|
||||
|
||||
|
||||
<p class="link"><a href="ZmqAdapter.html">GxG::Networking::ZMQ::ZmqAdapter</a>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<div id="method-list-section" class="nav-section">
|
||||
<h3>Methods</h3>
|
||||
|
||||
<ul class="link-list" role="directory">
|
||||
|
||||
<li ><a href="#method-c-new">::new</a>
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<main role="main" aria-labelledby="class-GxG::Networking::ZMQ::ZmqPusher">
|
||||
<h1 id="class-GxG::Networking::ZMQ::ZmqPusher" class="class">
|
||||
class GxG::Networking::ZMQ::ZmqPusher
|
||||
</h1>
|
||||
|
||||
<section class="description">
|
||||
|
||||
</section>
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="public-class-5Buntitled-5D-method-details" class="method-section">
|
||||
<header>
|
||||
<h3>Public Class Methods</h3>
|
||||
</header>
|
||||
|
||||
|
||||
<div id="method-c-new" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">new</span><span
|
||||
class="method-args">(params={})</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="new-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/gxg_zmq.rb, line 162</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">initialize</span>(<span class="ruby-identifier">params</span>={})
|
||||
<span class="ruby-identifier">params</span> = <span class="ruby-keyword">self</span>.<span class="ruby-identifier">vetted_parameters</span>(<span class="ruby-identifier">params</span>)
|
||||
<span class="ruby-ivar">@connector</span> = <span class="ruby-operator">::</span><span class="ruby-constant">EZMQ</span><span class="ruby-operator">::</span><span class="ruby-constant">Pusher</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">params</span>[<span class="ruby-value">:mode</span>], <span class="ruby-identifier">params</span>[<span class="ruby-value">:options</span>])
|
||||
<span class="ruby-ivar">@connector</span>.<span class="ruby-identifier">socket</span>.<span class="ruby-identifier">identity</span> = <span class="ruby-operator">::</span><span class="ruby-constant">Celluloid</span><span class="ruby-operator">::</span><span class="ruby-constant">UUID</span><span class="ruby-operator">::</span><span class="ruby-identifier">random_generate</span>.<span class="ruby-identifier">to_s</span>
|
||||
<span class="ruby-ivar">@open</span> = <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-keyword">self</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
</section>
|
||||
|
||||
</section>
|
||||
</main>
|
||||
|
||||
|
||||
<footer id="validator-badges" role="contentinfo">
|
||||
<p><a href="https://validator.w3.org/check/referer">Validate</a>
|
||||
<p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.1.2.
|
||||
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
|
||||
</footer>
|
||||
|
||||
159
doc/GxG/Networking/ZMQ/ZmqServer.html
Normal file
159
doc/GxG/Networking/ZMQ/ZmqServer.html
Normal file
|
|
@ -0,0 +1,159 @@
|
|||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
|
||||
<title>class GxG::Networking::ZMQ::ZmqServer - RDoc Documentation</title>
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "../../../";
|
||||
var index_rel_prefix = "../../../";
|
||||
</script>
|
||||
|
||||
<script src="../../../js/navigation.js" defer></script>
|
||||
<script src="../../../js/search.js" defer></script>
|
||||
<script src="../../../js/search_index.js" defer></script>
|
||||
<script src="../../../js/searcher.js" defer></script>
|
||||
<script src="../../../js/darkfish.js" defer></script>
|
||||
|
||||
<link href="../../../css/fonts.css" rel="stylesheet">
|
||||
<link href="../../../css/rdoc.css" rel="stylesheet">
|
||||
|
||||
|
||||
|
||||
<body id="top" role="document" class="class">
|
||||
<nav role="navigation">
|
||||
<div id="project-navigation">
|
||||
<div id="home-section" role="region" title="Quick navigation" class="nav-section">
|
||||
<h2>
|
||||
<a href="../../../index.html" rel="home">Home</a>
|
||||
</h2>
|
||||
|
||||
<div id="table-of-contents-navigation">
|
||||
<a href="../../../table_of_contents.html#pages">Pages</a>
|
||||
<a href="../../../table_of_contents.html#classes">Classes</a>
|
||||
<a href="../../../table_of_contents.html#methods">Methods</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="search-section" role="search" class="project-section initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<div id="search-field-wrapper">
|
||||
<input id="search-field" role="combobox" aria-label="Search"
|
||||
aria-autocomplete="list" aria-controls="search-results"
|
||||
type="text" name="search" placeholder="Search" spellcheck="false"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</div>
|
||||
|
||||
<ul id="search-results" aria-label="Search Results"
|
||||
aria-busy="false" aria-expanded="false"
|
||||
aria-atomic="false" class="initially-hidden"></ul>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
<div id="parent-class-section" class="nav-section">
|
||||
<h3>Parent</h3>
|
||||
|
||||
|
||||
<p class="link"><a href="ZmqAdapter.html">GxG::Networking::ZMQ::ZmqAdapter</a>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<div id="method-list-section" class="nav-section">
|
||||
<h3>Methods</h3>
|
||||
|
||||
<ul class="link-list" role="directory">
|
||||
|
||||
<li ><a href="#method-c-new">::new</a>
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<main role="main" aria-labelledby="class-GxG::Networking::ZMQ::ZmqServer">
|
||||
<h1 id="class-GxG::Networking::ZMQ::ZmqServer" class="class">
|
||||
class GxG::Networking::ZMQ::ZmqServer
|
||||
</h1>
|
||||
|
||||
<section class="description">
|
||||
|
||||
</section>
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="public-class-5Buntitled-5D-method-details" class="method-section">
|
||||
<header>
|
||||
<h3>Public Class Methods</h3>
|
||||
</header>
|
||||
|
||||
|
||||
<div id="method-c-new" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">new</span><span
|
||||
class="method-args">(params={})</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="new-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/gxg_zmq.rb, line 198</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">initialize</span>(<span class="ruby-identifier">params</span>={})
|
||||
<span class="ruby-identifier">params</span> = <span class="ruby-keyword">self</span>.<span class="ruby-identifier">vetted_parameters</span>(<span class="ruby-identifier">params</span>)
|
||||
<span class="ruby-ivar">@connector</span> = <span class="ruby-operator">::</span><span class="ruby-constant">EZMQ</span><span class="ruby-operator">::</span><span class="ruby-constant">Server</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">params</span>[<span class="ruby-value">:options</span>])
|
||||
<span class="ruby-ivar">@connector</span>.<span class="ruby-identifier">socket</span>.<span class="ruby-identifier">identity</span> = <span class="ruby-operator">::</span><span class="ruby-constant">Celluloid</span><span class="ruby-operator">::</span><span class="ruby-constant">UUID</span><span class="ruby-operator">::</span><span class="ruby-identifier">random_generate</span>.<span class="ruby-identifier">to_s</span>
|
||||
<span class="ruby-ivar">@open</span> = <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-keyword">self</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
</section>
|
||||
|
||||
</section>
|
||||
</main>
|
||||
|
||||
|
||||
<footer id="validator-badges" role="contentinfo">
|
||||
<p><a href="https://validator.w3.org/check/referer">Validate</a>
|
||||
<p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.1.2.
|
||||
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
|
||||
</footer>
|
||||
|
||||
241
doc/GxG/Networking/ZMQ/ZmqSubscriber.html
Normal file
241
doc/GxG/Networking/ZMQ/ZmqSubscriber.html
Normal file
|
|
@ -0,0 +1,241 @@
|
|||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
|
||||
<title>class GxG::Networking::ZMQ::ZmqSubscriber - RDoc Documentation</title>
|
||||
|
||||
<script type="text/javascript">
|
||||
var rdoc_rel_prefix = "../../../";
|
||||
var index_rel_prefix = "../../../";
|
||||
</script>
|
||||
|
||||
<script src="../../../js/navigation.js" defer></script>
|
||||
<script src="../../../js/search.js" defer></script>
|
||||
<script src="../../../js/search_index.js" defer></script>
|
||||
<script src="../../../js/searcher.js" defer></script>
|
||||
<script src="../../../js/darkfish.js" defer></script>
|
||||
|
||||
<link href="../../../css/fonts.css" rel="stylesheet">
|
||||
<link href="../../../css/rdoc.css" rel="stylesheet">
|
||||
|
||||
|
||||
|
||||
<body id="top" role="document" class="class">
|
||||
<nav role="navigation">
|
||||
<div id="project-navigation">
|
||||
<div id="home-section" role="region" title="Quick navigation" class="nav-section">
|
||||
<h2>
|
||||
<a href="../../../index.html" rel="home">Home</a>
|
||||
</h2>
|
||||
|
||||
<div id="table-of-contents-navigation">
|
||||
<a href="../../../table_of_contents.html#pages">Pages</a>
|
||||
<a href="../../../table_of_contents.html#classes">Classes</a>
|
||||
<a href="../../../table_of_contents.html#methods">Methods</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="search-section" role="search" class="project-section initially-hidden">
|
||||
<form action="#" method="get" accept-charset="utf-8">
|
||||
<div id="search-field-wrapper">
|
||||
<input id="search-field" role="combobox" aria-label="Search"
|
||||
aria-autocomplete="list" aria-controls="search-results"
|
||||
type="text" name="search" placeholder="Search" spellcheck="false"
|
||||
title="Type to search, Up and Down to navigate, Enter to load">
|
||||
</div>
|
||||
|
||||
<ul id="search-results" aria-label="Search Results"
|
||||
aria-busy="false" aria-expanded="false"
|
||||
aria-atomic="false" class="initially-hidden"></ul>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div id="class-metadata">
|
||||
|
||||
<div id="parent-class-section" class="nav-section">
|
||||
<h3>Parent</h3>
|
||||
|
||||
|
||||
<p class="link"><a href="ZmqAdapter.html">GxG::Networking::ZMQ::ZmqAdapter</a>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<!-- Method Quickref -->
|
||||
<div id="method-list-section" class="nav-section">
|
||||
<h3>Methods</h3>
|
||||
|
||||
<ul class="link-list" role="directory">
|
||||
|
||||
<li ><a href="#method-c-new">::new</a>
|
||||
|
||||
<li ><a href="#method-i-subscribe">#subscribe</a>
|
||||
|
||||
<li ><a href="#method-i-unsubscribe">#unsubscribe</a>
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<main role="main" aria-labelledby="class-GxG::Networking::ZMQ::ZmqSubscriber">
|
||||
<h1 id="class-GxG::Networking::ZMQ::ZmqSubscriber" class="class">
|
||||
class GxG::Networking::ZMQ::ZmqSubscriber
|
||||
</h1>
|
||||
|
||||
<section class="description">
|
||||
|
||||
</section>
|
||||
|
||||
|
||||
<section id="5Buntitled-5D" class="documentation-section">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<section id="public-class-5Buntitled-5D-method-details" class="method-section">
|
||||
<header>
|
||||
<h3>Public Class Methods</h3>
|
||||
</header>
|
||||
|
||||
|
||||
<div id="method-c-new" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">new</span><span
|
||||
class="method-args">(params={})</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="new-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/gxg_zmq.rb, line 226</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">initialize</span>(<span class="ruby-identifier">params</span>={})
|
||||
<span class="ruby-identifier">params</span> = <span class="ruby-keyword">self</span>.<span class="ruby-identifier">vetted_parameters</span>(<span class="ruby-identifier">params</span>)
|
||||
<span class="ruby-ivar">@connector</span> = <span class="ruby-operator">::</span><span class="ruby-constant">EZMQ</span><span class="ruby-operator">::</span><span class="ruby-constant">Subscriber</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">params</span>[<span class="ruby-value">:options</span>])
|
||||
<span class="ruby-ivar">@connector</span>.<span class="ruby-identifier">socket</span>.<span class="ruby-identifier">identity</span> = <span class="ruby-operator">::</span><span class="ruby-constant">Celluloid</span><span class="ruby-operator">::</span><span class="ruby-constant">UUID</span><span class="ruby-operator">::</span><span class="ruby-identifier">random_generate</span>.<span class="ruby-identifier">to_s</span>
|
||||
<span class="ruby-ivar">@open</span> = <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-keyword">self</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
</section>
|
||||
|
||||
<section id="public-instance-5Buntitled-5D-method-details" class="method-section">
|
||||
<header>
|
||||
<h3>Public Instance Methods</h3>
|
||||
</header>
|
||||
|
||||
|
||||
<div id="method-i-subscribe" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">subscribe</span><span
|
||||
class="method-args">(topic="")</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="subscribe-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/gxg_zmq.rb, line 234</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">subscribe</span>(<span class="ruby-identifier">topic</span>=<span class="ruby-string">""</span>)
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@open</span> <span class="ruby-operator">==</span> <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-ivar">@connector</span>.<span class="ruby-identifier">subscribe</span>(<span class="ruby-identifier">topic</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="method-i-unsubscribe" class="method-detail ">
|
||||
|
||||
<div class="method-heading">
|
||||
<span class="method-name">unsubscribe</span><span
|
||||
class="method-args">(topic="")</span>
|
||||
|
||||
<span class="method-click-advice">click to toggle source</span>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="method-description">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="method-source-code" id="unsubscribe-source">
|
||||
<pre><span class="ruby-comment"># File lib/gxg/gxg_zmq.rb, line 240</span>
|
||||
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">unsubscribe</span>(<span class="ruby-identifier">topic</span>=<span class="ruby-string">""</span>)
|
||||
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@open</span> <span class="ruby-operator">==</span> <span class="ruby-keyword">true</span>
|
||||
<span class="ruby-ivar">@connector</span>.<span class="ruby-identifier">unsubscribe</span>(<span class="ruby-identifier">topic</span>)
|
||||
<span class="ruby-keyword">end</span>
|
||||
<span class="ruby-keyword">end</span></pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
</section>
|
||||
|
||||
</section>
|
||||
</main>
|
||||
|
||||
|
||||
<footer id="validator-badges" role="contentinfo">
|
||||
<p><a href="https://validator.w3.org/check/referer">Validate</a>
|
||||
<p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.1.2.
|
||||
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
|
||||
</footer>
|
||||
|
||||
1536
doc/GxG/Networking/ZmqNode.html
Normal file
1536
doc/GxG/Networking/ZmqNode.html
Normal file
File diff suppressed because it is too large
Load diff
Loading…
Reference in a new issue