arachnid/docs/Arachnid/CookieJar.html

563 lines
15 KiB
HTML

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="generator" content="Crystal Docs 0.29.0">
<link href="../css/style.css" rel="stylesheet" type="text/css">
<script type="text/javascript" src="../js/doc.js"></script>
<script type="text/javascript">
CrystalDoc.base_path = "../";
</script>
<meta id="repository-name" content="github.com/watzon/arachnid">
<title>Arachnid::CookieJar - github.com/watzon/arachnid</title>
</head>
<body>
<div class="sidebar">
<div class="sidebar-header">
<div class="search-box">
<input type="search" class="search-input" placeholder="Search..." spellcheck="false" aria-label="Search">
</div>
<div class="repository-links">
<a href="../index.html">README</a>
</div>
</div>
<div class="search-results" class="hidden">
<ul class="search-list"></ul>
</div>
<div class="types-list">
<ul>
<li class="parent open current" data-id="github.com/watzon/arachnid/Arachnid" data-name="arachnid">
<a href="../Arachnid.html">Arachnid</a>
<ul>
<li class="parent " data-id="github.com/watzon/arachnid/Arachnid/Agent" data-name="arachnid::agent">
<a href="../Arachnid/Agent.html">Agent</a>
<ul>
<li class="parent " data-id="github.com/watzon/arachnid/Arachnid/Agent/Actions" data-name="arachnid::agent::actions">
<a href="../Arachnid/Agent/Actions.html">Actions</a>
<ul>
<li class=" " data-id="github.com/watzon/arachnid/Arachnid/Agent/Actions/Action" data-name="arachnid::agent::actions::action">
<a href="../Arachnid/Agent/Actions/Action.html">Action</a>
</li>
<li class=" " data-id="github.com/watzon/arachnid/Arachnid/Agent/Actions/Paused" data-name="arachnid::agent::actions::paused">
<a href="../Arachnid/Agent/Actions/Paused.html">Paused</a>
</li>
<li class=" " data-id="github.com/watzon/arachnid/Arachnid/Agent/Actions/RuntimeError" data-name="arachnid::agent::actions::runtimeerror">
<a href="../Arachnid/Agent/Actions/RuntimeError.html">RuntimeError</a>
</li>
<li class=" " data-id="github.com/watzon/arachnid/Arachnid/Agent/Actions/SkipLink" data-name="arachnid::agent::actions::skiplink">
<a href="../Arachnid/Agent/Actions/SkipLink.html">SkipLink</a>
</li>
<li class=" " data-id="github.com/watzon/arachnid/Arachnid/Agent/Actions/SkipResource" data-name="arachnid::agent::actions::skipresource">
<a href="../Arachnid/Agent/Actions/SkipResource.html">SkipResource</a>
</li>
</ul>
</li>
<li class=" " data-id="github.com/watzon/arachnid/Arachnid/Agent/Queue" data-name="arachnid::agent::queue">
<a href="../Arachnid/Agent/Queue.html">Queue</a>
</li>
</ul>
</li>
<li class=" " data-id="github.com/watzon/arachnid/Arachnid/AuthCredential" data-name="arachnid::authcredential">
<a href="../Arachnid/AuthCredential.html">AuthCredential</a>
</li>
<li class=" " data-id="github.com/watzon/arachnid/Arachnid/AuthStore" data-name="arachnid::authstore">
<a href="../Arachnid/AuthStore.html">AuthStore</a>
</li>
<li class=" current" data-id="github.com/watzon/arachnid/Arachnid/CookieJar" data-name="arachnid::cookiejar">
<a href="../Arachnid/CookieJar.html">CookieJar</a>
</li>
<li class="parent " data-id="github.com/watzon/arachnid/Arachnid/Document" data-name="arachnid::document">
<a href="../Arachnid/Document.html">Document</a>
<ul>
<li class="parent " data-id="github.com/watzon/arachnid/Arachnid/Document/HTML" data-name="arachnid::document::html">
<a href="../Arachnid/Document/HTML.html">HTML</a>
<ul>
<li class=" " data-id="github.com/watzon/arachnid/Arachnid/Document/HTML/Tag" data-name="arachnid::document::html::tag">
<a href="../Arachnid/Document/HTML/Tag.html">Tag</a>
</li>
</ul>
</li>
</ul>
</li>
<li class="parent " data-id="github.com/watzon/arachnid/Arachnid/Resource" data-name="arachnid::resource">
<a href="../Arachnid/Resource.html">Resource</a>
<ul>
<li class=" " data-id="github.com/watzon/arachnid/Arachnid/Resource/ContentTypes" data-name="arachnid::resource::contenttypes">
<a href="../Arachnid/Resource/ContentTypes.html">ContentTypes</a>
</li>
<li class=" " data-id="github.com/watzon/arachnid/Arachnid/Resource/Cookies" data-name="arachnid::resource::cookies">
<a href="../Arachnid/Resource/Cookies.html">Cookies</a>
</li>
<li class=" " data-id="github.com/watzon/arachnid/Arachnid/Resource/HTML" data-name="arachnid::resource::html">
<a href="../Arachnid/Resource/HTML.html">HTML</a>
</li>
<li class=" " data-id="github.com/watzon/arachnid/Arachnid/Resource/StatusCodes" data-name="arachnid::resource::statuscodes">
<a href="../Arachnid/Resource/StatusCodes.html">StatusCodes</a>
</li>
</ul>
</li>
<li class=" " data-id="github.com/watzon/arachnid/Arachnid/Rules" data-name="arachnid::rules(t)">
<a href="../Arachnid/Rules.html">Rules</a>
</li>
<li class=" " data-id="github.com/watzon/arachnid/Arachnid/SessionCache" data-name="arachnid::sessioncache">
<a href="../Arachnid/SessionCache.html">SessionCache</a>
</li>
</ul>
</li>
<li class=" " data-id="github.com/watzon/arachnid/URI" data-name="uri">
<a href="../URI.html">URI</a>
</li>
</ul>
</div>
</div>
<div class="main-content">
<h1 class="type-name">
<span class="kind">class</span> Arachnid::CookieJar
</h1>
<ul class="superclass-hierarchy"><li class="superclass"><a href="../Arachnid/CookieJar.html">Arachnid::CookieJar</a></li><li class="superclass">Reference</li><li class="superclass">Object</li></ul>
<h2>Overview</h2>
<p>As hosts are scanned their cookies are stored here.</p>
<h2>Included Modules</h2>
<ul class="other-types-list">
<li class="other-type">Enumerable(HTTP::Cookies)</li>
</ul>
<h2>Defined in:</h2>
<a href="https://github.com/watzon/arachnid/blob/32bf4d89b826d76adc3c6f2cd160bfd2348ace03/src/arachnid/cookie_jar.cr#L3" target="_blank">
arachnid/cookie_jar.cr
</a>
<br/>
<h2>Constructors</h2>
<ul class="list-summary">
<li class="entry-summary">
<a href="#new-class-method" class="signature"><strong>.new</strong></a>
<div class="summary"><p>Creates a new <code><a href="../Arachnid/CookieJar.html">CookieJar</a></code></p></div>
</li>
</ul>
<h2>Instance Method Summary</h2>
<ul class="list-summary">
<li class="entry-summary">
<a href="#%5B%5D%28host%3AString%29-instance-method" class="signature"><strong>#[]</strong>(host : String)</a>
<div class="summary"><p>Returns all relevant cookies in a single string for the named host or domain.</p></div>
</li>
<li class="entry-summary">
<a href="#%5B%5D%3D%28host%3AString%2Ccookies%3AHTTP%3A%3ACookies%29-instance-method" class="signature"><strong>#[]=</strong>(host : String, cookies : HTTP::Cookies)</a>
<div class="summary"><p>Add a cookie to the jar for a particular domain.</p></div>
</li>
<li class="entry-summary">
<a href="#clear%21-instance-method" class="signature"><strong>#clear!</strong></a>
<div class="summary"><p>Clear out the jar, removing all stored cookies.</p></div>
</li>
<li class="entry-summary">
<a href="#cookies_for_host%28host%29-instance-method" class="signature"><strong>#cookies_for_host</strong>(host)</a>
<div class="summary"><p>Returns raw cookie value pairs for a given host.</p></div>
</li>
<li class="entry-summary">
<a href="#each%28%26block%29-instance-method" class="signature"><strong>#each</strong>(&block)</a>
<div class="summary"><p>Iterates over the host-name and cookie value pairs in the jar.</p></div>
</li>
<li class="entry-summary">
<a href="#for_host%28host%29-instance-method" class="signature"><strong>#for_host</strong>(host)</a>
<div class="summary"><p>Returns the pre-encoded Cookie for a given host.</p></div>
</li>
<li class="entry-summary">
<a href="#from_resource%28resource%29-instance-method" class="signature"><strong>#from_resource</strong>(resource)</a>
<div class="summary"><p>Retrieve cookies for a domain from the response.</p></div>
</li>
<li class="entry-summary">
<a href="#inspect-instance-method" class="signature"><strong>#inspect</strong></a>
<div class="summary"><p>Inspects the cookie jar.</p></div>
</li>
<li class="entry-summary">
<a href="#size-instance-method" class="signature"><strong>#size</strong></a>
<div class="summary"><p>Size of the cookie jar.</p></div>
</li>
</ul>
<div class="methods-inherited">
</div>
<h2>Constructor Detail</h2>
<div class="entry-detail" id="new-class-method">
<div class="signature">
def self.<strong>new</strong>
<a class="method-permalink" href="#new-class-method">#</a>
</div>
<div class="doc"><p>Creates a new <code><a href="../Arachnid/CookieJar.html">CookieJar</a></code></p></div>
<br/>
<div>
[<a href="https://github.com/watzon/arachnid/blob/32bf4d89b826d76adc3c6f2cd160bfd2348ace03/src/arachnid/cookie_jar.cr#L13" target="_blank">View source</a>]
</div>
</div>
<h2>Instance Method Detail</h2>
<div class="entry-detail" id="[](host:String)-instance-method">
<div class="signature">
def <strong>[]</strong>(host : String)
<a class="method-permalink" href="#%5B%5D%28host%3AString%29-instance-method">#</a>
</div>
<div class="doc"><p>Returns all relevant cookies in a single string for the named
host or domain.</p></div>
<br/>
<div>
[<a href="https://github.com/watzon/arachnid/blob/32bf4d89b826d76adc3c6f2cd160bfd2348ace03/src/arachnid/cookie_jar.cr#L28" target="_blank">View source</a>]
</div>
</div>
<div class="entry-detail" id="[]=(host:String,cookies:HTTP::Cookies)-instance-method">
<div class="signature">
def <strong>[]=</strong>(host : String, cookies : HTTP::Cookies)
<a class="method-permalink" href="#%5B%5D%3D%28host%3AString%2Ccookies%3AHTTP%3A%3ACookies%29-instance-method">#</a>
</div>
<div class="doc"><p>Add a cookie to the jar for a particular domain.</p></div>
<br/>
<div>
[<a href="https://github.com/watzon/arachnid/blob/32bf4d89b826d76adc3c6f2cd160bfd2348ace03/src/arachnid/cookie_jar.cr#L33" target="_blank">View source</a>]
</div>
</div>
<div class="entry-detail" id="clear!-instance-method">
<div class="signature">
def <strong>clear!</strong>
<a class="method-permalink" href="#clear%21-instance-method">#</a>
</div>
<div class="doc"><p>Clear out the jar, removing all stored cookies.</p></div>
<br/>
<div>
[<a href="https://github.com/watzon/arachnid/blob/32bf4d89b826d76adc3c6f2cd160bfd2348ace03/src/arachnid/cookie_jar.cr#L102" target="_blank">View source</a>]
</div>
</div>
<div class="entry-detail" id="cookies_for_host(host)-instance-method">
<div class="signature">
def <strong>cookies_for_host</strong>(host)
<a class="method-permalink" href="#cookies_for_host%28host%29-instance-method">#</a>
</div>
<div class="doc"><p>Returns raw cookie value pairs for a given host. Includes cookies
set on parent domains.</p></div>
<br/>
<div>
[<a href="https://github.com/watzon/arachnid/blob/32bf4d89b826d76adc3c6f2cd160bfd2348ace03/src/arachnid/cookie_jar.cr#L80" target="_blank">View source</a>]
</div>
</div>
<div class="entry-detail" id="each(&amp;block)-instance-method">
<div class="signature">
def <strong>each</strong>(&block)
<a class="method-permalink" href="#each%28%26block%29-instance-method">#</a>
</div>
<div class="doc"><p>Iterates over the host-name and cookie value pairs in the jar.</p></div>
<br/>
<div>
[<a href="https://github.com/watzon/arachnid/blob/32bf4d89b826d76adc3c6f2cd160bfd2348ace03/src/arachnid/cookie_jar.cr#L20" target="_blank">View source</a>]
</div>
</div>
<div class="entry-detail" id="for_host(host)-instance-method">
<div class="signature">
def <strong>for_host</strong>(host)
<a class="method-permalink" href="#for_host%28host%29-instance-method">#</a>
</div>
<div class="doc"><p>Returns the pre-encoded Cookie for a given host.</p></div>
<br/>
<div>
[<a href="https://github.com/watzon/arachnid/blob/32bf4d89b826d76adc3c6f2cd160bfd2348ace03/src/arachnid/cookie_jar.cr#L63" target="_blank">View source</a>]
</div>
</div>
<div class="entry-detail" id="from_resource(resource)-instance-method">
<div class="signature">
def <strong>from_resource</strong>(resource)
<a class="method-permalink" href="#from_resource%28resource%29-instance-method">#</a>
</div>
<div class="doc"><p>Retrieve cookies for a domain from the response.</p></div>
<br/>
<div>
[<a href="https://github.com/watzon/arachnid/blob/32bf4d89b826d76adc3c6f2cd160bfd2348ace03/src/arachnid/cookie_jar.cr#L51" target="_blank">View source</a>]
</div>
</div>
<div class="entry-detail" id="inspect-instance-method">
<div class="signature">
def <strong>inspect</strong>
<a class="method-permalink" href="#inspect-instance-method">#</a>
</div>
<div class="doc"><p>Inspects the cookie jar.</p></div>
<br/>
<div>
[<a href="https://github.com/watzon/arachnid/blob/32bf4d89b826d76adc3c6f2cd160bfd2348ace03/src/arachnid/cookie_jar.cr#L115" target="_blank">View source</a>]
</div>
</div>
<div class="entry-detail" id="size-instance-method">
<div class="signature">
def <strong>size</strong>
<a class="method-permalink" href="#size-instance-method">#</a>
</div>
<div class="doc"><p>Size of the cookie jar.</p></div>
<br/>
<div>
[<a href="https://github.com/watzon/arachnid/blob/32bf4d89b826d76adc3c6f2cd160bfd2348ace03/src/arachnid/cookie_jar.cr#L110" target="_blank">View source</a>]
</div>
</div>
</div>
</body>
</html>