1
0
Fork 0
mirror of https://github.com/mperham/sidekiq.git synced 2022-11-09 13:52:34 -05:00

Remove html files and add ds_store to gitignore

This commit is contained in:
SamArdrey 2022-06-08 12:27:27 -07:00
parent 6eadad86f9
commit dda6e2fdef
71 changed files with 1 additions and 5982 deletions

BIN
.DS_Store vendored

Binary file not shown.

1
.gitignore vendored
View file

@ -16,3 +16,4 @@ development.log
/Makefile
/docker-compose.yml
Gemfile.lock
*.DS_Store

View file

View file

@ -1,118 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>module Sidekiq - RDoc Documentation</title>
<script type="text/javascript">
var rdoc_rel_prefix = "./";
var index_rel_prefix = "./";
</script>
<script src="./js/jquery.js"></script>
<script src="./js/darkfish.js"></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">
</div>
</nav>
<main role="main" aria-labelledby="module-Sidekiq">
<h1 id="module-Sidekiq" class="module">
module Sidekiq
</h1>
<section class="description">
</section>
<section id="5Buntitled-5D" class="documentation-section">
<section class="constants-list">
<header>
<h3>Constants</h3>
</header>
<dl>
<dt id="Job">Job
<dd><p><a href="Sidekiq.html#Job">Sidekiq::Job</a> is a new alias for <a
href="Sidekiq/Worker.html">Sidekiq::Worker</a> as of <a
href="Sidekiq.html">Sidekiq</a> 6.3.0. Use `include Sidekiq::Job` rather
than `include Sidekiq::Worker`.</p>
<p>The term “worker” is too generic and overly confusing, used in several
different contexts meaning different things. Many people call a <a
href="Sidekiq.html">Sidekiq</a> process a “worker”. Some people call the
thread that executes jobs a “worker”. This change brings <a
href="Sidekiq.html">Sidekiq</a> closer to ActiveJob where your job classes
extend ApplicationJob.</p>
</dl>
</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.0.1.
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
</footer>

View file

@ -1,680 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>class Sidekiq::Client - RDoc Documentation</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../";
var index_rel_prefix = "../";
</script>
<script src="../js/jquery.js"></script>
<script src="../js/darkfish.js"></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">Object
</div>
<div id="includes-section" class="nav-section">
<h3>Included Modules</h3>
<ul class="link-list">
<li><span class="include">Sidekiq::JobUtil</span>
</ul>
</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-enqueue">::enqueue</a>
<li ><a href="#method-c-enqueue_in">::enqueue_in</a>
<li ><a href="#method-c-enqueue_to">::enqueue_to</a>
<li ><a href="#method-c-enqueue_to_in">::enqueue_to_in</a>
<li ><a href="#method-c-new">::new</a>
<li ><a href="#method-c-push">::push</a>
<li ><a href="#method-c-push_bulk">::push_bulk</a>
<li ><a href="#method-c-via">::via</a>
<li ><a href="#method-i-middleware">#middleware</a>
<li ><a href="#method-i-push">#push</a>
<li ><a href="#method-i-push_bulk">#push_bulk</a>
</ul>
</div>
</div>
</nav>
<main role="main" aria-labelledby="class-Sidekiq::Client">
<h1 id="class-Sidekiq::Client" class="class">
class Sidekiq::Client
</h1>
<section class="description">
</section>
<section id="5Buntitled-5D" class="documentation-section">
<section class="attribute-method-details" class="method-section">
<header>
<h3>Attributes</h3>
</header>
<div id="attribute-i-redis_pool" class="method-detail">
<div class="method-heading attribute-method-heading">
<span class="method-name">redis_pool</span><span
class="attribute-access-type">[RW]</span>
</div>
<div class="method-description">
</div>
</div>
</section>
<section id="public-class-5Buntitled-5D-method-details" class="method-section">
<header>
<h3>Public Class Methods</h3>
</header>
<div id="method-c-enqueue" class="method-detail ">
<div class="method-heading">
<span class="method-name">enqueue</span><span
class="method-args">(klass, *args)</span>
<span class="method-click-advice">click to toggle source</span>
</div>
<div class="method-description">
<p>Resque compatibility helpers. Note all helpers should go through
Sidekiq::Job#client_push.</p>
<p>Example usage:</p>
<pre class="ruby"><span class="ruby-constant">Sidekiq</span><span class="ruby-operator">::</span><span class="ruby-constant">Client</span>.<span class="ruby-identifier">enqueue</span>(<span class="ruby-constant">MyJob</span>, <span class="ruby-string">&#39;foo&#39;</span>, <span class="ruby-value">1</span>, <span class="ruby-value">:bat</span> <span class="ruby-operator">=&gt;</span> <span class="ruby-string">&#39;bar&#39;</span>)
</pre>
<p>Messages are enqueued to the &#39;default&#39; queue.</p>
<div class="method-source-code" id="enqueue-source">
<pre><span class="ruby-comment"># File lib/sidekiq/client.rb, line 161</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">enqueue</span>(<span class="ruby-identifier">klass</span>, <span class="ruby-operator">*</span><span class="ruby-identifier">args</span>)
<span class="ruby-identifier">klass</span>.<span class="ruby-identifier">client_push</span>(<span class="ruby-string">&quot;class&quot;</span> <span class="ruby-operator">=&gt;</span> <span class="ruby-identifier">klass</span>, <span class="ruby-string">&quot;args&quot;</span> <span class="ruby-operator">=&gt;</span> <span class="ruby-identifier">args</span>)
<span class="ruby-keyword">end</span></pre>
</div>
</div>
</div>
<div id="method-c-enqueue_in" class="method-detail ">
<div class="method-heading">
<span class="method-name">enqueue_in</span><span
class="method-args">(interval, klass, *args)</span>
<span class="method-click-advice">click to toggle source</span>
</div>
<div class="method-description">
<p>Example usage:</p>
<pre class="ruby"><span class="ruby-constant">Sidekiq</span><span class="ruby-operator">::</span><span class="ruby-constant">Client</span>.<span class="ruby-identifier">enqueue_in</span>(<span class="ruby-value">3</span>.<span class="ruby-identifier">minutes</span>, <span class="ruby-constant">MyJob</span>, <span class="ruby-string">&#39;foo&#39;</span>, <span class="ruby-value">1</span>, <span class="ruby-value">:bat</span> <span class="ruby-operator">=&gt;</span> <span class="ruby-string">&#39;bar&#39;</span>)
</pre>
<div class="method-source-code" id="enqueue_in-source">
<pre><span class="ruby-comment"># File lib/sidekiq/client.rb, line 189</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">enqueue_in</span>(<span class="ruby-identifier">interval</span>, <span class="ruby-identifier">klass</span>, <span class="ruby-operator">*</span><span class="ruby-identifier">args</span>)
<span class="ruby-identifier">klass</span>.<span class="ruby-identifier">perform_in</span>(<span class="ruby-identifier">interval</span>, <span class="ruby-operator">*</span><span class="ruby-identifier">args</span>)
<span class="ruby-keyword">end</span></pre>
</div>
</div>
</div>
<div id="method-c-enqueue_to" class="method-detail ">
<div class="method-heading">
<span class="method-name">enqueue_to</span><span
class="method-args">(queue, klass, *args)</span>
<span class="method-click-advice">click to toggle source</span>
</div>
<div class="method-description">
<p>Example usage:</p>
<pre class="ruby"><span class="ruby-constant">Sidekiq</span><span class="ruby-operator">::</span><span class="ruby-constant">Client</span>.<span class="ruby-identifier">enqueue_to</span>(<span class="ruby-value">:queue_name</span>, <span class="ruby-constant">MyJob</span>, <span class="ruby-string">&#39;foo&#39;</span>, <span class="ruby-value">1</span>, <span class="ruby-value">:bat</span> <span class="ruby-operator">=&gt;</span> <span class="ruby-string">&#39;bar&#39;</span>)
</pre>
<div class="method-source-code" id="enqueue_to-source">
<pre><span class="ruby-comment"># File lib/sidekiq/client.rb, line 168</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">enqueue_to</span>(<span class="ruby-identifier">queue</span>, <span class="ruby-identifier">klass</span>, <span class="ruby-operator">*</span><span class="ruby-identifier">args</span>)
<span class="ruby-identifier">klass</span>.<span class="ruby-identifier">client_push</span>(<span class="ruby-string">&quot;queue&quot;</span> <span class="ruby-operator">=&gt;</span> <span class="ruby-identifier">queue</span>, <span class="ruby-string">&quot;class&quot;</span> <span class="ruby-operator">=&gt;</span> <span class="ruby-identifier">klass</span>, <span class="ruby-string">&quot;args&quot;</span> <span class="ruby-operator">=&gt;</span> <span class="ruby-identifier">args</span>)
<span class="ruby-keyword">end</span></pre>
</div>
</div>
</div>
<div id="method-c-enqueue_to_in" class="method-detail ">
<div class="method-heading">
<span class="method-name">enqueue_to_in</span><span
class="method-args">(queue, interval, klass, *args)</span>
<span class="method-click-advice">click to toggle source</span>
</div>
<div class="method-description">
<p>Example usage:</p>
<pre class="ruby"><span class="ruby-constant">Sidekiq</span><span class="ruby-operator">::</span><span class="ruby-constant">Client</span>.<span class="ruby-identifier">enqueue_to_in</span>(<span class="ruby-value">:queue_name</span>, <span class="ruby-value">3</span>.<span class="ruby-identifier">minutes</span>, <span class="ruby-constant">MyJob</span>, <span class="ruby-string">&#39;foo&#39;</span>, <span class="ruby-value">1</span>, <span class="ruby-value">:bat</span> <span class="ruby-operator">=&gt;</span> <span class="ruby-string">&#39;bar&#39;</span>)
</pre>
<div class="method-source-code" id="enqueue_to_in-source">
<pre><span class="ruby-comment"># File lib/sidekiq/client.rb, line 175</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">enqueue_to_in</span>(<span class="ruby-identifier">queue</span>, <span class="ruby-identifier">interval</span>, <span class="ruby-identifier">klass</span>, <span class="ruby-operator">*</span><span class="ruby-identifier">args</span>)
<span class="ruby-identifier">int</span> = <span class="ruby-identifier">interval</span>.<span class="ruby-identifier">to_f</span>
<span class="ruby-identifier">now</span> = <span class="ruby-constant">Time</span>.<span class="ruby-identifier">now</span>.<span class="ruby-identifier">to_f</span>
<span class="ruby-identifier">ts</span> = (<span class="ruby-identifier">int</span> <span class="ruby-operator">&lt;</span> <span class="ruby-value">1_000_000_000</span> <span class="ruby-operator">?</span> <span class="ruby-identifier">now</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">int</span> <span class="ruby-operator">:</span> <span class="ruby-identifier">int</span>)
<span class="ruby-identifier">item</span> = {<span class="ruby-string">&quot;class&quot;</span> <span class="ruby-operator">=&gt;</span> <span class="ruby-identifier">klass</span>, <span class="ruby-string">&quot;args&quot;</span> <span class="ruby-operator">=&gt;</span> <span class="ruby-identifier">args</span>, <span class="ruby-string">&quot;at&quot;</span> <span class="ruby-operator">=&gt;</span> <span class="ruby-identifier">ts</span>, <span class="ruby-string">&quot;queue&quot;</span> <span class="ruby-operator">=&gt;</span> <span class="ruby-identifier">queue</span>}
<span class="ruby-identifier">item</span>.<span class="ruby-identifier">delete</span>(<span class="ruby-string">&quot;at&quot;</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">ts</span> <span class="ruby-operator">&lt;=</span> <span class="ruby-identifier">now</span>
<span class="ruby-identifier">klass</span>.<span class="ruby-identifier">client_push</span>(<span class="ruby-identifier">item</span>)
<span class="ruby-keyword">end</span></pre>
</div>
</div>
</div>
<div id="method-c-new" class="method-detail ">
<div class="method-heading">
<span class="method-name">new</span><span
class="method-args">(redis_pool = nil)</span>
<span class="method-click-advice">click to toggle source</span>
</div>
<div class="method-description">
<p><a href="Client.html">Sidekiq::Client</a> normally uses the default Redis
pool but you may pass a custom ConnectionPool if you want to shard your <a
href="../Sidekiq.html">Sidekiq</a> jobs across several Redis instances (for
scalability reasons, e.g.)</p>
<pre class="ruby"><span class="ruby-constant">Sidekiq</span><span class="ruby-operator">::</span><span class="ruby-constant">Client</span>.<span class="ruby-identifier">new</span>(<span class="ruby-constant">ConnectionPool</span>.<span class="ruby-identifier">new</span> { <span class="ruby-constant">Redis</span>.<span class="ruby-identifier">new</span> })
</pre>
<p>Generally this is only needed for very large <a
href="../Sidekiq.html">Sidekiq</a> installs processing thousands of jobs
per second. I don&#39;t recommend sharding unless you cannot scale any
other way (e.g. splitting your app into smaller apps).</p>
<div class="method-source-code" id="new-source">
<pre><span class="ruby-comment"># File lib/sidekiq/client.rb, line 43</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">initialize</span>(<span class="ruby-identifier">redis_pool</span> = <span class="ruby-keyword">nil</span>)
<span class="ruby-ivar">@redis_pool</span> = <span class="ruby-identifier">redis_pool</span> <span class="ruby-operator">||</span> <span class="ruby-constant">Thread</span>.<span class="ruby-identifier">current</span>[<span class="ruby-value">:sidekiq_via_pool</span>] <span class="ruby-operator">||</span> <span class="ruby-constant">Sidekiq</span>.<span class="ruby-identifier">redis_pool</span>
<span class="ruby-keyword">end</span></pre>
</div>
</div>
</div>
<div id="method-c-push" class="method-detail ">
<div class="method-heading">
<span class="method-name">push</span><span
class="method-args">(item)</span>
<span class="method-click-advice">click to toggle source</span>
</div>
<div class="method-description">
<div class="method-source-code" id="push-source">
<pre><span class="ruby-comment"># File lib/sidekiq/client.rb, line 145</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">push</span>(<span class="ruby-identifier">item</span>)
<span class="ruby-identifier">new</span>.<span class="ruby-identifier">push</span>(<span class="ruby-identifier">item</span>)
<span class="ruby-keyword">end</span></pre>
</div>
</div>
</div>
<div id="method-c-push_bulk" class="method-detail ">
<div class="method-heading">
<span class="method-name">push_bulk</span><span
class="method-args">(items)</span>
<span class="method-click-advice">click to toggle source</span>
</div>
<div class="method-description">
<div class="method-source-code" id="push_bulk-source">
<pre><span class="ruby-comment"># File lib/sidekiq/client.rb, line 149</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">push_bulk</span>(<span class="ruby-identifier">items</span>)
<span class="ruby-identifier">new</span>.<span class="ruby-identifier">push_bulk</span>(<span class="ruby-identifier">items</span>)
<span class="ruby-keyword">end</span></pre>
</div>
</div>
</div>
<div id="method-c-via" class="method-detail ">
<div class="method-heading">
<span class="method-name">via</span><span
class="method-args">(pool) { || ... }</span>
<span class="method-click-advice">click to toggle source</span>
</div>
<div class="method-description">
<p>Allows sharding of jobs across any number of Redis instances. All jobs
defined within the block will use the given Redis connection pool.</p>
<pre class="ruby"><span class="ruby-identifier">pool</span> = <span class="ruby-constant">ConnectionPool</span>.<span class="ruby-identifier">new</span> { <span class="ruby-constant">Redis</span>.<span class="ruby-identifier">new</span> }
<span class="ruby-constant">Sidekiq</span><span class="ruby-operator">::</span><span class="ruby-constant">Client</span>.<span class="ruby-identifier">via</span>(<span class="ruby-identifier">pool</span>) <span class="ruby-keyword">do</span>
<span class="ruby-constant">SomeJob</span>.<span class="ruby-identifier">perform_async</span>(<span class="ruby-value">1</span>,<span class="ruby-value">2</span>,<span class="ruby-value">3</span>)
<span class="ruby-constant">SomeOtherJob</span>.<span class="ruby-identifier">perform_async</span>(<span class="ruby-value">1</span>,<span class="ruby-value">2</span>,<span class="ruby-value">3</span>)
<span class="ruby-keyword">end</span>
</pre>
<p>Generally this is only needed for very large <a
href="../Sidekiq.html">Sidekiq</a> installs processing thousands of jobs
per second. I do not recommend sharding unless you cannot scale any other
way (e.g. splitting your app into smaller apps).</p>
<div class="method-source-code" id="via-source">
<pre><span class="ruby-comment"># File lib/sidekiq/client.rb, line 135</span>
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier ruby-title">via</span>(<span class="ruby-identifier">pool</span>)
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">&quot;No pool given&quot;</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">pool</span>.<span class="ruby-identifier">nil?</span>
<span class="ruby-identifier">current_sidekiq_pool</span> = <span class="ruby-constant">Thread</span>.<span class="ruby-identifier">current</span>[<span class="ruby-value">:sidekiq_via_pool</span>]
<span class="ruby-constant">Thread</span>.<span class="ruby-identifier">current</span>[<span class="ruby-value">:sidekiq_via_pool</span>] = <span class="ruby-identifier">pool</span>
<span class="ruby-keyword">yield</span>
<span class="ruby-keyword">ensure</span>
<span class="ruby-constant">Thread</span>.<span class="ruby-identifier">current</span>[<span class="ruby-value">:sidekiq_via_pool</span>] = <span class="ruby-identifier">current_sidekiq_pool</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-middleware" class="method-detail ">
<div class="method-heading">
<span class="method-name">middleware</span><span
class="method-args">() { |chain| ... }</span>
<span class="method-click-advice">click to toggle source</span>
</div>
<div class="method-description">
<p>Define client-side middleware:</p>
<pre class="ruby"><span class="ruby-identifier">client</span> = <span class="ruby-constant">Sidekiq</span><span class="ruby-operator">::</span><span class="ruby-constant">Client</span>.<span class="ruby-identifier">new</span>
<span class="ruby-identifier">client</span>.<span class="ruby-identifier">middleware</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">chain</span><span class="ruby-operator">|</span>
<span class="ruby-identifier">chain</span>.<span class="ruby-identifier">use</span> <span class="ruby-constant">MyClientMiddleware</span>
<span class="ruby-keyword">end</span>
<span class="ruby-identifier">client</span>.<span class="ruby-identifier">push</span>(<span class="ruby-string">&#39;class&#39;</span> <span class="ruby-operator">=&gt;</span> <span class="ruby-string">&#39;SomeJob&#39;</span>, <span class="ruby-string">&#39;args&#39;</span> <span class="ruby-operator">=&gt;</span> [<span class="ruby-value">1</span>,<span class="ruby-value">2</span>,<span class="ruby-value">3</span>])
</pre>
<p>All client instances default to the globally-defined
Sidekiq.client_middleware but you can change as necessary.</p>
<div class="method-source-code" id="middleware-source">
<pre><span class="ruby-comment"># File lib/sidekiq/client.rb, line 22</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">middleware</span>(<span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
<span class="ruby-ivar">@chain</span> <span class="ruby-operator">||=</span> <span class="ruby-constant">Sidekiq</span>.<span class="ruby-identifier">client_middleware</span>
<span class="ruby-keyword">if</span> <span class="ruby-identifier">block</span>
<span class="ruby-ivar">@chain</span> = <span class="ruby-ivar">@chain</span>.<span class="ruby-identifier">dup</span>
<span class="ruby-keyword">yield</span> <span class="ruby-ivar">@chain</span>
<span class="ruby-keyword">end</span>
<span class="ruby-ivar">@chain</span>
<span class="ruby-keyword">end</span></pre>
</div>
</div>
</div>
<div id="method-i-push" class="method-detail ">
<div class="method-heading">
<span class="method-name">push</span><span
class="method-args">(item)</span>
<span class="method-click-advice">click to toggle source</span>
</div>
<div class="method-description">
<p>The main method used to push a job to Redis. Accepts a number of options:</p>
<pre>queue - the named queue to use, default &#39;default&#39;
class - the job class to call, required
args - an array of simple arguments to the perform method, must be JSON-serializable
at - timestamp to schedule the job (optional), must be Numeric (e.g. Time.now.to_f)
retry - whether to retry this job if it fails, default true or an integer number of retries
backtrace - whether to save any error backtrace, default false</pre>
<p>If class is set to the class name, the jobs&#39; options will be based on
Sidekiq&#39;s default job options. Otherwise, they will be based on the job
class&#39;s options.</p>
<p>Any options valid for a job class&#39;s sidekiq_options are also available
here.</p>
<p>All options must be strings, not symbols. NB: because we are serializing
to JSON, all symbols in &#39;args&#39; will be converted to strings. Note
that +backtrace: true+ can take quite a bit of space in Redis; a large
volume of failing jobs can start Redis swapping if you aren&#39;t careful.</p>
<p>Returns a unique Job ID. If middleware stops the job, nil will be returned
instead.</p>
<p>Example:</p>
<pre class="ruby"><span class="ruby-identifier">push</span>(<span class="ruby-string">&#39;queue&#39;</span> <span class="ruby-operator">=&gt;</span> <span class="ruby-string">&#39;my_queue&#39;</span>, <span class="ruby-string">&#39;class&#39;</span> <span class="ruby-operator">=&gt;</span> <span class="ruby-constant">MyJob</span>, <span class="ruby-string">&#39;args&#39;</span> <span class="ruby-operator">=&gt;</span> [<span class="ruby-string">&#39;foo&#39;</span>, <span class="ruby-value">1</span>, <span class="ruby-value">:bat</span> <span class="ruby-operator">=&gt;</span> <span class="ruby-string">&#39;bar&#39;</span>])
</pre>
<div class="method-source-code" id="push-source">
<pre><span class="ruby-comment"># File lib/sidekiq/client.rb, line 71</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">push</span>(<span class="ruby-identifier">item</span>)
<span class="ruby-identifier">normed</span> = <span class="ruby-identifier">normalize_item</span>(<span class="ruby-identifier">item</span>)
<span class="ruby-identifier">payload</span> = <span class="ruby-identifier">middleware</span>.<span class="ruby-identifier">invoke</span>(<span class="ruby-identifier">item</span>[<span class="ruby-string">&quot;class&quot;</span>], <span class="ruby-identifier">normed</span>, <span class="ruby-identifier">normed</span>[<span class="ruby-string">&quot;queue&quot;</span>], <span class="ruby-ivar">@redis_pool</span>) <span class="ruby-keyword">do</span>
<span class="ruby-identifier">normed</span>
<span class="ruby-keyword">end</span>
<span class="ruby-keyword">if</span> <span class="ruby-identifier">payload</span>
<span class="ruby-identifier">verify_json</span>(<span class="ruby-identifier">payload</span>)
<span class="ruby-identifier">raw_push</span>([<span class="ruby-identifier">payload</span>])
<span class="ruby-identifier">payload</span>[<span class="ruby-string">&quot;jid&quot;</span>]
<span class="ruby-keyword">end</span>
<span class="ruby-keyword">end</span></pre>
</div>
</div>
</div>
<div id="method-i-push_bulk" class="method-detail ">
<div class="method-heading">
<span class="method-name">push_bulk</span><span
class="method-args">(items)</span>
<span class="method-click-advice">click to toggle source</span>
</div>
<div class="method-description">
<p>Push a large number of jobs to Redis. This method cuts out the redis
network round trip latency. I wouldn&#39;t recommend pushing more than
1000 per call but YMMV based on network quality, size of job args, etc. A
large number of jobs can cause a bit of Redis command processing latency.</p>
<p>Takes the same arguments as <a href="Client.html#method-i-push">push</a>
except that args is expected to be an Array of Arrays. All other keys are
duplicated for each job. Each job is run through the client middleware
pipeline and each job gets its own Job ID as normal.</p>
<p>Returns an array of the of pushed jobs&#39; jids. The number of jobs
pushed can be less than the number given if the middleware stopped
processing for one or more jobs.</p>
<div class="method-source-code" id="push_bulk-source">
<pre><span class="ruby-comment"># File lib/sidekiq/client.rb, line 96</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">push_bulk</span>(<span class="ruby-identifier">items</span>)
<span class="ruby-identifier">args</span> = <span class="ruby-identifier">items</span>[<span class="ruby-string">&quot;args&quot;</span>]
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">&quot;Bulk arguments must be an Array of Arrays: [[1], [2]]&quot;</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">args</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Array</span>) <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">args</span>.<span class="ruby-identifier">all?</span>(<span class="ruby-constant">Array</span>)
<span class="ruby-keyword">return</span> [] <span class="ruby-keyword">if</span> <span class="ruby-identifier">args</span>.<span class="ruby-identifier">empty?</span> <span class="ruby-comment"># no jobs to push</span>
<span class="ruby-identifier">at</span> = <span class="ruby-identifier">items</span>.<span class="ruby-identifier">delete</span>(<span class="ruby-string">&quot;at&quot;</span>)
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">&quot;Job &#39;at&#39; must be a Numeric or an Array of Numeric timestamps&quot;</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">at</span> <span class="ruby-operator">&amp;&amp;</span> (<span class="ruby-constant">Array</span>(<span class="ruby-identifier">at</span>).<span class="ruby-identifier">empty?</span> <span class="ruby-operator">||</span> <span class="ruby-operator">!</span><span class="ruby-constant">Array</span>(<span class="ruby-identifier">at</span>).<span class="ruby-identifier">all?</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">entry</span><span class="ruby-operator">|</span> <span class="ruby-identifier">entry</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Numeric</span>) })
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">&quot;Job &#39;at&#39; Array must have same size as &#39;args&#39; Array&quot;</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">at</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Array</span>) <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">at</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">!=</span> <span class="ruby-identifier">args</span>.<span class="ruby-identifier">size</span>
<span class="ruby-identifier">jid</span> = <span class="ruby-identifier">items</span>.<span class="ruby-identifier">delete</span>(<span class="ruby-string">&quot;jid&quot;</span>)
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">&quot;Explicitly passing &#39;jid&#39; when pushing more than one job is not supported&quot;</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">jid</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">args</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">1</span>
<span class="ruby-identifier">normed</span> = <span class="ruby-identifier">normalize_item</span>(<span class="ruby-identifier">items</span>)
<span class="ruby-identifier">payloads</span> = <span class="ruby-identifier">args</span>.<span class="ruby-identifier">map</span>.<span class="ruby-identifier">with_index</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">job_args</span>, <span class="ruby-identifier">index</span><span class="ruby-operator">|</span>
<span class="ruby-identifier">copy</span> = <span class="ruby-identifier">normed</span>.<span class="ruby-identifier">merge</span>(<span class="ruby-string">&quot;args&quot;</span> <span class="ruby-operator">=&gt;</span> <span class="ruby-identifier">job_args</span>, <span class="ruby-string">&quot;jid&quot;</span> <span class="ruby-operator">=&gt;</span> <span class="ruby-constant">SecureRandom</span>.<span class="ruby-identifier">hex</span>(<span class="ruby-value">12</span>))
<span class="ruby-identifier">copy</span>[<span class="ruby-string">&quot;at&quot;</span>] = (<span class="ruby-identifier">at</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Array</span>) <span class="ruby-operator">?</span> <span class="ruby-identifier">at</span>[<span class="ruby-identifier">index</span>] <span class="ruby-operator">:</span> <span class="ruby-identifier">at</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">at</span>
<span class="ruby-identifier">result</span> = <span class="ruby-identifier">middleware</span>.<span class="ruby-identifier">invoke</span>(<span class="ruby-identifier">items</span>[<span class="ruby-string">&quot;class&quot;</span>], <span class="ruby-identifier">copy</span>, <span class="ruby-identifier">copy</span>[<span class="ruby-string">&quot;queue&quot;</span>], <span class="ruby-ivar">@redis_pool</span>) <span class="ruby-keyword">do</span>
<span class="ruby-identifier">verify_json</span>(<span class="ruby-identifier">copy</span>)
<span class="ruby-identifier">copy</span>
<span class="ruby-keyword">end</span>
<span class="ruby-identifier">result</span> <span class="ruby-operator">||</span> <span class="ruby-keyword">nil</span>
}.<span class="ruby-identifier">compact</span>
<span class="ruby-identifier">raw_push</span>(<span class="ruby-identifier">payloads</span>) <span class="ruby-keyword">unless</span> <span class="ruby-identifier">payloads</span>.<span class="ruby-identifier">empty?</span>
<span class="ruby-identifier">payloads</span>.<span class="ruby-identifier">collect</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">payload</span><span class="ruby-operator">|</span> <span class="ruby-identifier">payload</span>[<span class="ruby-string">&quot;jid&quot;</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.0.1.
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
</footer>

View file

@ -1,101 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>class Sidekiq::DeadSet - RDoc Documentation</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../";
var index_rel_prefix = "../";
</script>
<script src="../js/jquery.js"></script>
<script src="../js/darkfish.js"></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="JobSet.html">Sidekiq::JobSet</a>
</div>
</div>
</nav>
<main role="main" aria-labelledby="class-Sidekiq::DeadSet">
<h1 id="class-Sidekiq::DeadSet" class="class">
class Sidekiq::DeadSet
</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.0.1.
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
</footer>

View file

@ -1,101 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>class Sidekiq::JobRecord - RDoc Documentation</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../";
var index_rel_prefix = "../";
</script>
<script src="../js/jquery.js"></script>
<script src="../js/darkfish.js"></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">Object
</div>
</div>
</nav>
<main role="main" aria-labelledby="class-Sidekiq::JobRecord">
<h1 id="class-Sidekiq::JobRecord" class="class">
class Sidekiq::JobRecord
</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.0.1.
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
</footer>

View file

@ -1,101 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>class Sidekiq::JobSet - RDoc Documentation</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../";
var index_rel_prefix = "../";
</script>
<script src="../js/jquery.js"></script>
<script src="../js/darkfish.js"></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="SortedSet.html">Sidekiq::SortedSet</a>
</div>
</div>
</nav>
<main role="main" aria-labelledby="class-Sidekiq::JobSet">
<h1 id="class-Sidekiq::JobSet" class="class">
class Sidekiq::JobSet
</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.0.1.
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
</footer>

View file

@ -1,101 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>class Sidekiq::Process - RDoc Documentation</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../";
var index_rel_prefix = "../";
</script>
<script src="../js/jquery.js"></script>
<script src="../js/darkfish.js"></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">Object
</div>
</div>
</nav>
<main role="main" aria-labelledby="class-Sidekiq::Process">
<h1 id="class-Sidekiq::Process" class="class">
class Sidekiq::Process
</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.0.1.
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
</footer>

View file

@ -1,101 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>class Sidekiq::ProcessSet - RDoc Documentation</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../";
var index_rel_prefix = "../";
</script>
<script src="../js/jquery.js"></script>
<script src="../js/darkfish.js"></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">Object
</div>
</div>
</nav>
<main role="main" aria-labelledby="class-Sidekiq::ProcessSet">
<h1 id="class-Sidekiq::ProcessSet" class="class">
class Sidekiq::ProcessSet
</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.0.1.
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
</footer>

View file

@ -1,101 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>class Sidekiq::Queue - RDoc Documentation</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../";
var index_rel_prefix = "../";
</script>
<script src="../js/jquery.js"></script>
<script src="../js/darkfish.js"></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">Object
</div>
</div>
</nav>
<main role="main" aria-labelledby="class-Sidekiq::Queue">
<h1 id="class-Sidekiq::Queue" class="class">
class Sidekiq::Queue
</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.0.1.
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
</footer>

View file

@ -1,101 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>class Sidekiq::RetrySet - RDoc Documentation</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../";
var index_rel_prefix = "../";
</script>
<script src="../js/jquery.js"></script>
<script src="../js/darkfish.js"></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="JobSet.html">Sidekiq::JobSet</a>
</div>
</div>
</nav>
<main role="main" aria-labelledby="class-Sidekiq::RetrySet">
<h1 id="class-Sidekiq::RetrySet" class="class">
class Sidekiq::RetrySet
</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.0.1.
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
</footer>

View file

@ -1,101 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>class Sidekiq::ScheduledSet - RDoc Documentation</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../";
var index_rel_prefix = "../";
</script>
<script src="../js/jquery.js"></script>
<script src="../js/darkfish.js"></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="JobSet.html">Sidekiq::JobSet</a>
</div>
</div>
</nav>
<main role="main" aria-labelledby="class-Sidekiq::ScheduledSet">
<h1 id="class-Sidekiq::ScheduledSet" class="class">
class Sidekiq::ScheduledSet
</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.0.1.
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
</footer>

View file

@ -1,101 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>class Sidekiq::SortedEntry - RDoc Documentation</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../";
var index_rel_prefix = "../";
</script>
<script src="../js/jquery.js"></script>
<script src="../js/darkfish.js"></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="JobRecord.html">Sidekiq::JobRecord</a>
</div>
</div>
</nav>
<main role="main" aria-labelledby="class-Sidekiq::SortedEntry">
<h1 id="class-Sidekiq::SortedEntry" class="class">
class Sidekiq::SortedEntry
</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.0.1.
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
</footer>

View file

@ -1,101 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>class Sidekiq::SortedSet - RDoc Documentation</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../";
var index_rel_prefix = "../";
</script>
<script src="../js/jquery.js"></script>
<script src="../js/darkfish.js"></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">Object
</div>
</div>
</nav>
<main role="main" aria-labelledby="class-Sidekiq::SortedSet">
<h1 id="class-Sidekiq::SortedSet" class="class">
class Sidekiq::SortedSet
</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.0.1.
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
</footer>

View file

@ -1,101 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>class Sidekiq::Stats - RDoc Documentation</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../";
var index_rel_prefix = "../";
</script>
<script src="../js/jquery.js"></script>
<script src="../js/darkfish.js"></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">Object
</div>
</div>
</nav>
<main role="main" aria-labelledby="class-Sidekiq::Stats">
<h1 id="class-Sidekiq::Stats" class="class">
class Sidekiq::Stats
</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.0.1.
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
</footer>

View file

@ -1,101 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>class Sidekiq::Stats::History - RDoc Documentation</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../";
var index_rel_prefix = "../../";
</script>
<script src="../../js/jquery.js"></script>
<script src="../../js/darkfish.js"></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">Object
</div>
</div>
</nav>
<main role="main" aria-labelledby="class-Sidekiq::Stats::History">
<h1 id="class-Sidekiq::Stats::History" class="class">
class Sidekiq::Stats::History
</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.0.1.
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
</footer>

View file

@ -1,101 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>class Sidekiq::Stats::Queues - RDoc Documentation</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../";
var index_rel_prefix = "../../";
</script>
<script src="../../js/jquery.js"></script>
<script src="../../js/darkfish.js"></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">Object
</div>
</div>
</nav>
<main role="main" aria-labelledby="class-Sidekiq::Stats::Queues">
<h1 id="class-Sidekiq::Stats::Queues" class="class">
class Sidekiq::Stats::Queues
</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.0.1.
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
</footer>

View file

@ -1,101 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>class Sidekiq::WorkSet - RDoc Documentation</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../";
var index_rel_prefix = "../";
</script>
<script src="../js/jquery.js"></script>
<script src="../js/darkfish.js"></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">Object
</div>
</div>
</nav>
<main role="main" aria-labelledby="class-Sidekiq::WorkSet">
<h1 id="class-Sidekiq::WorkSet" class="class">
class Sidekiq::WorkSet
</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.0.1.
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
</footer>

View file

@ -1,273 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>module Sidekiq::Worker - RDoc Documentation</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../";
var index_rel_prefix = "../";
</script>
<script src="../js/jquery.js"></script>
<script src="../js/darkfish.js"></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">
<div id="includes-section" class="nav-section">
<h3>Included Modules</h3>
<ul class="link-list">
<li><a class="include" href="Worker/Options.html">Sidekiq::Worker::Options</a>
</ul>
</div>
<div id="extends-section" class="nav-section">
<h3>Extended With Modules</h3>
<ul class="link-list">
<li><a class="extend" href="Worker/ClassMethods.html">Sidekiq::Worker::ClassMethods</a>
</ul>
</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-included">::included</a>
<li ><a href="#method-i-logger">#logger</a>
</ul>
</div>
</div>
</nav>
<main role="main" aria-labelledby="module-Sidekiq::Worker">
<h1 id="module-Sidekiq::Worker" class="module">
module Sidekiq::Worker
</h1>
<section class="description">
<p>Include this module in your worker class and you can easily create
asynchronous jobs:</p>
<pre class="ruby"><span class="ruby-keyword">class</span> <span class="ruby-constant">HardWorker</span>
<span class="ruby-identifier">include</span> <span class="ruby-constant">Sidekiq</span><span class="ruby-operator">::</span><span class="ruby-constant">Worker</span>
<span class="ruby-identifier">sidekiq_options</span> <span class="ruby-value">queue:</span> <span class="ruby-string">&#39;critical&#39;</span>, <span class="ruby-value">retry:</span> <span class="ruby-value">5</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">perform</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">args</span>)
<span class="ruby-comment"># do some work</span>
<span class="ruby-keyword">end</span>
<span class="ruby-keyword">end</span>
</pre>
<p>Then in your Rails app, you can do this:</p>
<pre class="ruby"><span class="ruby-constant">HardWorker</span>.<span class="ruby-identifier">perform_async</span>(<span class="ruby-value">1</span>, <span class="ruby-value">2</span>, <span class="ruby-value">3</span>)
</pre>
<p>Note that perform_async is a class method, perform is an instance method.</p>
<p><a href="Worker.html">Sidekiq::Worker</a> also includes several APIs to
provide compatibility with ActiveJob.</p>
<pre>class SomeWorker
include Sidekiq::Worker
queue_as :critical
def perform(...)
end
end
SomeWorker.set(wait_until: 1.hour).perform_async(123)</pre>
<p>Note that arguments passed to the job must still obey Sidekiq&#39;s best
practice for simple, JSON-native data types. <a
href="../Sidekiq.html">Sidekiq</a> will not implement ActiveJob&#39;s more
complex argument serialization. For this reason, we don&#39;t implement
`perform_later` as our call semantics are very different.</p>
</section>
<section id="5Buntitled-5D" class="documentation-section">
<section class="attribute-method-details" class="method-section">
<header>
<h3>Attributes</h3>
</header>
<div id="attribute-i-jid" class="method-detail">
<div class="method-heading attribute-method-heading">
<span class="method-name">jid</span><span
class="attribute-access-type">[RW]</span>
</div>
<div class="method-description">
</div>
</div>
</section>
<section id="public-class-5Buntitled-5D-method-details" class="method-section">
<header>
<h3>Public Class Methods</h3>
</header>
<div id="method-c-included" class="method-detail ">
<div class="method-heading">
<span class="method-name">included</span><span
class="method-args">(base)</span>
<span class="method-click-advice">click to toggle source</span>
</div>
<div class="method-description">
<div class="method-source-code" id="included-source">
<pre><span class="ruby-comment"># File lib/sidekiq/worker.rb, line 157</span>
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier ruby-title">included</span>(<span class="ruby-identifier">base</span>)
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-node">&quot;Sidekiq::Worker cannot be included in an ActiveJob: #{base.name}&quot;</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">base</span>.<span class="ruby-identifier">ancestors</span>.<span class="ruby-identifier">any?</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">c</span><span class="ruby-operator">|</span> <span class="ruby-identifier">c</span>.<span class="ruby-identifier">name</span> <span class="ruby-operator">==</span> <span class="ruby-string">&quot;ActiveJob::Base&quot;</span> }
<span class="ruby-identifier">base</span>.<span class="ruby-identifier">include</span>(<span class="ruby-constant">Options</span>)
<span class="ruby-identifier">base</span>.<span class="ruby-identifier">extend</span>(<span class="ruby-constant">ClassMethods</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-logger" class="method-detail ">
<div class="method-heading">
<span class="method-name">logger</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="logger-source">
<pre><span class="ruby-comment"># File lib/sidekiq/worker.rb, line 164</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">logger</span>
<span class="ruby-constant">Sidekiq</span>.<span class="ruby-identifier">logger</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.0.1.
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
</footer>

View file

@ -1,575 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>module Sidekiq::Worker::ClassMethods - RDoc Documentation</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../";
var index_rel_prefix = "../../";
</script>
<script src="../../js/jquery.js"></script>
<script src="../../js/darkfish.js"></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-i-delay">#delay</a>
<li ><a href="#method-i-delay_for">#delay_for</a>
<li ><a href="#method-i-delay_until">#delay_until</a>
<li ><a href="#method-i-perform_async">#perform_async</a>
<li ><a href="#method-i-perform_at">#perform_at</a>
<li ><a href="#method-i-perform_bulk">#perform_bulk</a>
<li ><a href="#method-i-perform_in">#perform_in</a>
<li ><a href="#method-i-perform_inline">#perform_inline</a>
<li ><a href="#method-i-perform_sync">#perform_sync</a>
<li ><a href="#method-i-queue_as">#queue_as</a>
<li ><a href="#method-i-set">#set</a>
<li class="calls-super" ><a href="#method-i-sidekiq_options">#sidekiq_options</a>
</ul>
</div>
</div>
</nav>
<main role="main" aria-labelledby="module-Sidekiq::Worker::ClassMethods">
<h1 id="module-Sidekiq::Worker::ClassMethods" class="module">
module Sidekiq::Worker::ClassMethods
</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-delay" class="method-detail ">
<div class="method-heading">
<span class="method-name">delay</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="delay-source">
<pre><span class="ruby-comment"># File lib/sidekiq/worker.rb, line 267</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">delay</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">args</span>)
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">&quot;Do not call .delay on a Sidekiq::Worker class, call .perform_async&quot;</span>
<span class="ruby-keyword">end</span></pre>
</div>
</div>
</div>
<div id="method-i-delay_for" class="method-detail ">
<div class="method-heading">
<span class="method-name">delay_for</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="delay_for-source">
<pre><span class="ruby-comment"># File lib/sidekiq/worker.rb, line 271</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">delay_for</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">args</span>)
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">&quot;Do not call .delay_for on a Sidekiq::Worker class, call .perform_in&quot;</span>
<span class="ruby-keyword">end</span></pre>
</div>
</div>
</div>
<div id="method-i-delay_until" class="method-detail ">
<div class="method-heading">
<span class="method-name">delay_until</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="delay_until-source">
<pre><span class="ruby-comment"># File lib/sidekiq/worker.rb, line 275</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">delay_until</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">args</span>)
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-string">&quot;Do not call .delay_until on a Sidekiq::Worker class, call .perform_at&quot;</span>
<span class="ruby-keyword">end</span></pre>
</div>
</div>
</div>
<div id="method-i-perform_async" class="method-detail ">
<div class="method-heading">
<span class="method-name">perform_async</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="perform_async-source">
<pre><span class="ruby-comment"># File lib/sidekiq/worker.rb, line 287</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">perform_async</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">args</span>)
<span class="ruby-constant">Setter</span>.<span class="ruby-identifier">new</span>(<span class="ruby-keyword">self</span>, {}).<span class="ruby-identifier">perform_async</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">args</span>)
<span class="ruby-keyword">end</span></pre>
</div>
</div>
</div>
<div id="method-i-perform_at" class="method-detail method-alias">
<div class="method-heading">
<span class="method-name">perform_at</span><span
class="method-args">(interval, *args)</span>
</div>
<div class="method-description">
</div>
<div class="aliases">
Alias for: <a href="ClassMethods.html#method-i-perform_in">perform_in</a>
</div>
</div>
<div id="method-i-perform_bulk" class="method-detail ">
<div class="method-heading">
<span class="method-name">perform_bulk</span><span
class="method-args">(*args, **kwargs)</span>
<span class="method-click-advice">click to toggle source</span>
</div>
<div class="method-description">
<p>Push a large number of jobs to Redis, while limiting the batch of each job
payload to 1,000. This method helps cut down on the number of round trips
to Redis, which can increase the performance of enqueueing large numbers of
jobs.</p>
<p><code>items</code> must be an Array of Arrays.</p>
<p>For finer-grained control, use `Sidekiq::Client.push_bulk` directly.</p>
<p>Example (3 Redis round trips):</p>
<pre class="ruby"><span class="ruby-constant">SomeWorker</span>.<span class="ruby-identifier">perform_async</span>(<span class="ruby-value">1</span>)
<span class="ruby-constant">SomeWorker</span>.<span class="ruby-identifier">perform_async</span>(<span class="ruby-value">2</span>)
<span class="ruby-constant">SomeWorker</span>.<span class="ruby-identifier">perform_async</span>(<span class="ruby-value">3</span>)
</pre>
<p>Would instead become (1 Redis round trip):</p>
<pre class="ruby"><span class="ruby-constant">SomeWorker</span>.<span class="ruby-identifier">perform_bulk</span>([[<span class="ruby-value">1</span>], [<span class="ruby-value">2</span>], [<span class="ruby-value">3</span>]])
</pre>
<div class="method-source-code" id="perform_bulk-source">
<pre><span class="ruby-comment"># File lib/sidekiq/worker.rb, line 317</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">perform_bulk</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">args</span>, <span class="ruby-operator">**</span><span class="ruby-identifier">kwargs</span>)
<span class="ruby-constant">Setter</span>.<span class="ruby-identifier">new</span>(<span class="ruby-keyword">self</span>, {}).<span class="ruby-identifier">perform_bulk</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">args</span>, <span class="ruby-operator">**</span><span class="ruby-identifier">kwargs</span>)
<span class="ruby-keyword">end</span></pre>
</div>
</div>
</div>
<div id="method-i-perform_in" class="method-detail ">
<div class="method-heading">
<span class="method-name">perform_in</span><span
class="method-args">(interval, *args)</span>
<span class="method-click-advice">click to toggle source</span>
</div>
<div class="method-description">
<p><code>interval</code> must be a timestamp, numeric or something that acts</p>
<pre>numeric (like an activesupport time interval).</pre>
<div class="method-source-code" id="perform_in-source">
<pre><span class="ruby-comment"># File lib/sidekiq/worker.rb, line 323</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">perform_in</span>(<span class="ruby-identifier">interval</span>, <span class="ruby-operator">*</span><span class="ruby-identifier">args</span>)
<span class="ruby-identifier">int</span> = <span class="ruby-identifier">interval</span>.<span class="ruby-identifier">to_f</span>
<span class="ruby-identifier">now</span> = <span class="ruby-constant">Time</span>.<span class="ruby-identifier">now</span>.<span class="ruby-identifier">to_f</span>
<span class="ruby-identifier">ts</span> = (<span class="ruby-identifier">int</span> <span class="ruby-operator">&lt;</span> <span class="ruby-value">1_000_000_000</span> <span class="ruby-operator">?</span> <span class="ruby-identifier">now</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">int</span> <span class="ruby-operator">:</span> <span class="ruby-identifier">int</span>)
<span class="ruby-identifier">item</span> = {<span class="ruby-string">&quot;class&quot;</span> <span class="ruby-operator">=&gt;</span> <span class="ruby-keyword">self</span>, <span class="ruby-string">&quot;args&quot;</span> <span class="ruby-operator">=&gt;</span> <span class="ruby-identifier">args</span>}
<span class="ruby-comment"># Optimization to enqueue something now that is scheduled to go out now or in the past</span>
<span class="ruby-identifier">item</span>[<span class="ruby-string">&quot;at&quot;</span>] = <span class="ruby-identifier">ts</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">ts</span> <span class="ruby-operator">&gt;</span> <span class="ruby-identifier">now</span>
<span class="ruby-identifier">client_push</span>(<span class="ruby-identifier">item</span>)
<span class="ruby-keyword">end</span></pre>
</div>
</div>
<div class="aliases">
Also aliased as: <a href="ClassMethods.html#method-i-perform_at">perform_at</a>
</div>
</div>
<div id="method-i-perform_inline" class="method-detail ">
<div class="method-heading">
<span class="method-name">perform_inline</span><span
class="method-args">(*args)</span>
<span class="method-click-advice">click to toggle source</span>
</div>
<div class="method-description">
<p>Inline execution of job&#39;s perform method after passing through
Sidekiq.client_middleware and Sidekiq.server_middleware</p>
<div class="method-source-code" id="perform_inline-source">
<pre><span class="ruby-comment"># File lib/sidekiq/worker.rb, line 292</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">perform_inline</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">args</span>)
<span class="ruby-constant">Setter</span>.<span class="ruby-identifier">new</span>(<span class="ruby-keyword">self</span>, {}).<span class="ruby-identifier">perform_inline</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">args</span>)
<span class="ruby-keyword">end</span></pre>
</div>
</div>
<div class="aliases">
Also aliased as: <a href="ClassMethods.html#method-i-perform_sync">perform_sync</a>
</div>
</div>
<div id="method-i-perform_sync" class="method-detail method-alias">
<div class="method-heading">
<span class="method-name">perform_sync</span><span
class="method-args">(*args)</span>
</div>
<div class="method-description">
</div>
<div class="aliases">
Alias for: <a href="ClassMethods.html#method-i-perform_inline">perform_inline</a>
</div>
</div>
<div id="method-i-queue_as" class="method-detail ">
<div class="method-heading">
<span class="method-name">queue_as</span><span
class="method-args">(q)</span>
<span class="method-click-advice">click to toggle source</span>
</div>
<div class="method-description">
<div class="method-source-code" id="queue_as-source">
<pre><span class="ruby-comment"># File lib/sidekiq/worker.rb, line 279</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">queue_as</span>(<span class="ruby-identifier">q</span>)
<span class="ruby-identifier">sidekiq_options</span>(<span class="ruby-string">&quot;queue&quot;</span> <span class="ruby-operator">=&gt;</span> <span class="ruby-identifier">q</span>.<span class="ruby-identifier">to_s</span>)
<span class="ruby-keyword">end</span></pre>
</div>
</div>
</div>
<div id="method-i-set" class="method-detail ">
<div class="method-heading">
<span class="method-name">set</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="set-source">
<pre><span class="ruby-comment"># File lib/sidekiq/worker.rb, line 283</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">set</span>(<span class="ruby-identifier">options</span>)
<span class="ruby-constant">Setter</span>.<span class="ruby-identifier">new</span>(<span class="ruby-keyword">self</span>, <span class="ruby-identifier">options</span>)
<span class="ruby-keyword">end</span></pre>
</div>
</div>
</div>
<div id="method-i-sidekiq_options" class="method-detail ">
<div class="method-heading">
<span class="method-name">sidekiq_options</span><span
class="method-args">(opts = {})</span>
<span class="method-click-advice">click to toggle source</span>
</div>
<div class="method-description">
<p>Allows customization for this type of <a href="../Worker.html">Worker</a>.
Legal options:</p>
<pre>queue - use a named queue for this Worker, default &#39;default&#39;
retry - enable the RetryJobs middleware for this Worker, *true* to use the default
or *Integer* count
backtrace - whether to save any error backtrace in the retry payload to display in web UI,
can be true, false or an integer number of lines to save, default *false*
pool - use the given Redis connection pool to push this type of job to a given shard.</pre>
<p>In practice, any option is allowed. This is the main mechanism to
configure the options for a specific job.</p>
<div class="method-calls-super">
Calls superclass method
</div>
<div class="method-source-code" id="sidekiq_options-source">
<pre><span class="ruby-comment"># File lib/sidekiq/worker.rb, line 350</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">sidekiq_options</span>(<span class="ruby-identifier">opts</span> = {})
<span class="ruby-keyword">super</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.0.1.
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
</footer>

View file

@ -1,163 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>module Sidekiq::Worker::Options - RDoc Documentation</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../";
var index_rel_prefix = "../../";
</script>
<script src="../../js/jquery.js"></script>
<script src="../../js/darkfish.js"></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">
<div id="extends-section" class="nav-section">
<h3>Extended With Modules</h3>
<ul class="link-list">
<li><a class="extend" href="Options/ClassMethods.html">Sidekiq::Worker::Options::ClassMethods</a>
</ul>
</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-included">::included</a>
</ul>
</div>
</div>
</nav>
<main role="main" aria-labelledby="module-Sidekiq::Worker::Options">
<h1 id="module-Sidekiq::Worker::Options" class="module">
module Sidekiq::Worker::Options
</h1>
<section class="description">
<p>The <a href="Options.html">Options</a> module is extracted so we can
include it in ActiveJob::Base and allow native AJs to configure <a
href="../../Sidekiq.html">Sidekiq</a> features/internals.</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-included" class="method-detail ">
<div class="method-heading">
<span class="method-name">included</span><span
class="method-args">(base)</span>
<span class="method-click-advice">click to toggle source</span>
</div>
<div class="method-description">
<div class="method-source-code" id="included-source">
<pre><span class="ruby-comment"># File lib/sidekiq/worker.rb, line 48</span>
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier ruby-title">included</span>(<span class="ruby-identifier">base</span>)
<span class="ruby-identifier">base</span>.<span class="ruby-identifier">extend</span>(<span class="ruby-constant">ClassMethods</span>)
<span class="ruby-identifier">base</span>.<span class="ruby-identifier">sidekiq_class_attribute</span> <span class="ruby-value">:sidekiq_options_hash</span>
<span class="ruby-identifier">base</span>.<span class="ruby-identifier">sidekiq_class_attribute</span> <span class="ruby-value">:sidekiq_retry_in_block</span>
<span class="ruby-identifier">base</span>.<span class="ruby-identifier">sidekiq_class_attribute</span> <span class="ruby-value">:sidekiq_retries_exhausted_block</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.0.1.
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
</footer>

View file

@ -1,337 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>module Sidekiq::Worker::Options::ClassMethods - RDoc Documentation</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../../";
var index_rel_prefix = "../../../";
</script>
<script src="../../../js/jquery.js"></script>
<script src="../../../js/darkfish.js"></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-i-sidekiq_class_attribute">#sidekiq_class_attribute</a>
<li ><a href="#method-i-sidekiq_options">#sidekiq_options</a>
<li ><a href="#method-i-sidekiq_retries_exhausted">#sidekiq_retries_exhausted</a>
<li ><a href="#method-i-sidekiq_retry_in">#sidekiq_retry_in</a>
</ul>
</div>
</div>
</nav>
<main role="main" aria-labelledby="module-Sidekiq::Worker::Options::ClassMethods">
<h1 id="module-Sidekiq::Worker::Options::ClassMethods" class="module">
module Sidekiq::Worker::Options::ClassMethods
</h1>
<section class="description">
</section>
<section id="5Buntitled-5D" class="documentation-section">
<section class="constants-list">
<header>
<h3>Constants</h3>
</header>
<dl>
<dt id="ACCESSOR_MUTEX">ACCESSOR_MUTEX
<dd>
</dl>
</section>
<section id="public-instance-5Buntitled-5D-method-details" class="method-section">
<header>
<h3>Public Instance Methods</h3>
</header>
<div id="method-i-sidekiq_class_attribute" class="method-detail ">
<div class="method-heading">
<span class="method-name">sidekiq_class_attribute</span><span
class="method-args">(*attrs)</span>
<span class="method-click-advice">click to toggle source</span>
</div>
<div class="method-description">
<div class="method-source-code" id="sidekiq_class_attribute-source">
<pre><span class="ruby-comment"># File lib/sidekiq/worker.rb, line 87</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">sidekiq_class_attribute</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">attrs</span>)
<span class="ruby-identifier">instance_reader</span> = <span class="ruby-keyword">true</span>
<span class="ruby-identifier">instance_writer</span> = <span class="ruby-keyword">true</span>
<span class="ruby-identifier">attrs</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">name</span><span class="ruby-operator">|</span>
<span class="ruby-identifier">synchronized_getter</span> = <span class="ruby-node">&quot;__synchronized_#{name}&quot;</span>
<span class="ruby-identifier">singleton_class</span>.<span class="ruby-identifier">instance_eval</span> <span class="ruby-keyword">do</span>
<span class="ruby-identifier">undef_method</span>(<span class="ruby-identifier">name</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">method_defined?</span>(<span class="ruby-identifier">name</span>) <span class="ruby-operator">||</span> <span class="ruby-identifier">private_method_defined?</span>(<span class="ruby-identifier">name</span>)
<span class="ruby-keyword">end</span>
<span class="ruby-identifier">define_singleton_method</span>(<span class="ruby-identifier">synchronized_getter</span>) { <span class="ruby-keyword">nil</span> }
<span class="ruby-identifier">singleton_class</span>.<span class="ruby-identifier">class_eval</span> <span class="ruby-keyword">do</span>
<span class="ruby-identifier">private</span>(<span class="ruby-identifier">synchronized_getter</span>)
<span class="ruby-keyword">end</span>
<span class="ruby-identifier">define_singleton_method</span>(<span class="ruby-identifier">name</span>) { <span class="ruby-constant">ACCESSOR_MUTEX</span>.<span class="ruby-identifier">synchronize</span> { <span class="ruby-identifier">send</span> <span class="ruby-identifier">synchronized_getter</span> } }
<span class="ruby-identifier">ivar</span> = <span class="ruby-node">&quot;@#{name}&quot;</span>
<span class="ruby-identifier">singleton_class</span>.<span class="ruby-identifier">instance_eval</span> <span class="ruby-keyword">do</span>
<span class="ruby-identifier">m</span> = <span class="ruby-node">&quot;#{name}=&quot;</span>
<span class="ruby-identifier">undef_method</span>(<span class="ruby-identifier">m</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">method_defined?</span>(<span class="ruby-identifier">m</span>) <span class="ruby-operator">||</span> <span class="ruby-identifier">private_method_defined?</span>(<span class="ruby-identifier">m</span>)
<span class="ruby-keyword">end</span>
<span class="ruby-identifier">define_singleton_method</span>(<span class="ruby-node">&quot;#{name}=&quot;</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">val</span><span class="ruby-operator">|</span>
<span class="ruby-identifier">singleton_class</span>.<span class="ruby-identifier">class_eval</span> <span class="ruby-keyword">do</span>
<span class="ruby-constant">ACCESSOR_MUTEX</span>.<span class="ruby-identifier">synchronize</span> <span class="ruby-keyword">do</span>
<span class="ruby-identifier">undef_method</span>(<span class="ruby-identifier">synchronized_getter</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">method_defined?</span>(<span class="ruby-identifier">synchronized_getter</span>) <span class="ruby-operator">||</span> <span class="ruby-identifier">private_method_defined?</span>(<span class="ruby-identifier">synchronized_getter</span>)
<span class="ruby-identifier">define_method</span>(<span class="ruby-identifier">synchronized_getter</span>) { <span class="ruby-identifier">val</span> }
<span class="ruby-keyword">end</span>
<span class="ruby-keyword">end</span>
<span class="ruby-keyword">if</span> <span class="ruby-identifier">singleton_class?</span>
<span class="ruby-identifier">class_eval</span> <span class="ruby-keyword">do</span>
<span class="ruby-identifier">undef_method</span>(<span class="ruby-identifier">name</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">method_defined?</span>(<span class="ruby-identifier">name</span>) <span class="ruby-operator">||</span> <span class="ruby-identifier">private_method_defined?</span>(<span class="ruby-identifier">name</span>)
<span class="ruby-identifier">define_method</span>(<span class="ruby-identifier">name</span>) <span class="ruby-keyword">do</span>
<span class="ruby-keyword">if</span> <span class="ruby-identifier">instance_variable_defined?</span> <span class="ruby-identifier">ivar</span>
<span class="ruby-identifier">instance_variable_get</span> <span class="ruby-identifier">ivar</span>
<span class="ruby-keyword">else</span>
<span class="ruby-identifier">singleton_class</span>.<span class="ruby-identifier">send</span> <span class="ruby-identifier">name</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">val</span>
<span class="ruby-keyword">end</span>
<span class="ruby-keyword">if</span> <span class="ruby-identifier">instance_reader</span>
<span class="ruby-identifier">undef_method</span>(<span class="ruby-identifier">name</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">method_defined?</span>(<span class="ruby-identifier">name</span>) <span class="ruby-operator">||</span> <span class="ruby-identifier">private_method_defined?</span>(<span class="ruby-identifier">name</span>)
<span class="ruby-identifier">define_method</span>(<span class="ruby-identifier">name</span>) <span class="ruby-keyword">do</span>
<span class="ruby-keyword">if</span> <span class="ruby-identifier">instance_variable_defined?</span>(<span class="ruby-identifier">ivar</span>)
<span class="ruby-identifier">instance_variable_get</span> <span class="ruby-identifier">ivar</span>
<span class="ruby-keyword">else</span>
<span class="ruby-keyword">self</span>.<span class="ruby-identifier">class</span>.<span class="ruby-identifier">public_send</span> <span class="ruby-identifier">name</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">instance_writer</span>
<span class="ruby-identifier">m</span> = <span class="ruby-node">&quot;#{name}=&quot;</span>
<span class="ruby-identifier">undef_method</span>(<span class="ruby-identifier">m</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">method_defined?</span>(<span class="ruby-identifier">m</span>) <span class="ruby-operator">||</span> <span class="ruby-identifier">private_method_defined?</span>(<span class="ruby-identifier">m</span>)
<span class="ruby-identifier">attr_writer</span> <span class="ruby-identifier">name</span>
<span class="ruby-keyword">end</span>
<span class="ruby-keyword">end</span>
<span class="ruby-keyword">end</span></pre>
</div>
</div>
</div>
<div id="method-i-sidekiq_options" class="method-detail ">
<div class="method-heading">
<span class="method-name">sidekiq_options</span><span
class="method-args">(opts = {})</span>
<span class="method-click-advice">click to toggle source</span>
</div>
<div class="method-description">
<p>Allows customization for this type of <a
href="../../Worker.html">Worker</a>. Legal options:</p>
<pre>queue - name of queue to use for this job type, default *default*
retry - enable retries for this Worker in case of error during execution,
*true* to use the default or *Integer* count
backtrace - whether to save any error backtrace in the retry payload to display in web UI,
can be true, false or an integer number of lines to save, default *false*</pre>
<p>In practice, any option is allowed. This is the main mechanism to
configure the options for a specific job.</p>
<div class="method-source-code" id="sidekiq_options-source">
<pre><span class="ruby-comment"># File lib/sidekiq/worker.rb, line 70</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">sidekiq_options</span>(<span class="ruby-identifier">opts</span> = {})
<span class="ruby-identifier">opts</span> = <span class="ruby-identifier">opts</span>.<span class="ruby-identifier">transform_keys</span>(<span class="ruby-operator">&amp;</span><span class="ruby-value">:to_s</span>) <span class="ruby-comment"># stringify</span>
<span class="ruby-keyword">self</span>.<span class="ruby-identifier">sidekiq_options_hash</span> = <span class="ruby-identifier">get_sidekiq_options</span>.<span class="ruby-identifier">merge</span>(<span class="ruby-identifier">opts</span>)
<span class="ruby-keyword">end</span></pre>
</div>
</div>
</div>
<div id="method-i-sidekiq_retries_exhausted" class="method-detail ">
<div class="method-heading">
<span class="method-name">sidekiq_retries_exhausted</span><span
class="method-args">(&amp;block)</span>
<span class="method-click-advice">click to toggle source</span>
</div>
<div class="method-description">
<div class="method-source-code" id="sidekiq_retries_exhausted-source">
<pre><span class="ruby-comment"># File lib/sidekiq/worker.rb, line 79</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">sidekiq_retries_exhausted</span>(<span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
<span class="ruby-keyword">self</span>.<span class="ruby-identifier">sidekiq_retries_exhausted_block</span> = <span class="ruby-identifier">block</span>
<span class="ruby-keyword">end</span></pre>
</div>
</div>
</div>
<div id="method-i-sidekiq_retry_in" class="method-detail ">
<div class="method-heading">
<span class="method-name">sidekiq_retry_in</span><span
class="method-args">(&amp;block)</span>
<span class="method-click-advice">click to toggle source</span>
</div>
<div class="method-description">
<div class="method-source-code" id="sidekiq_retry_in-source">
<pre><span class="ruby-comment"># File lib/sidekiq/worker.rb, line 75</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">sidekiq_retry_in</span>(<span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
<span class="ruby-keyword">self</span>.<span class="ruby-identifier">sidekiq_retry_in_block</span> = <span class="ruby-identifier">block</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.0.1.
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
</footer>

View file

@ -1,470 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>class Sidekiq::Worker::Setter - RDoc Documentation</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../../";
var index_rel_prefix = "../../";
</script>
<script src="../../js/jquery.js"></script>
<script src="../../js/darkfish.js"></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">Object
</div>
<div id="includes-section" class="nav-section">
<h3>Included Modules</h3>
<ul class="link-list">
<li><span class="include">Sidekiq::JobUtil</span>
</ul>
</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-perform_async">#perform_async</a>
<li ><a href="#method-i-perform_at">#perform_at</a>
<li ><a href="#method-i-perform_bulk">#perform_bulk</a>
<li ><a href="#method-i-perform_in">#perform_in</a>
<li ><a href="#method-i-perform_inline">#perform_inline</a>
<li ><a href="#method-i-perform_sync">#perform_sync</a>
<li ><a href="#method-i-set">#set</a>
</ul>
</div>
</div>
</nav>
<main role="main" aria-labelledby="class-Sidekiq::Worker::Setter">
<h1 id="class-Sidekiq::Worker::Setter" class="class">
class Sidekiq::Worker::Setter
</h1>
<section class="description">
<p>This helper class encapsulates the set options for `set`, e.g.</p>
<pre>SomeWorker.set(queue: &#39;foo&#39;).perform_async(....)</pre>
</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">(klass, opts)</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/sidekiq/worker.rb, line 175</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">initialize</span>(<span class="ruby-identifier">klass</span>, <span class="ruby-identifier">opts</span>)
<span class="ruby-ivar">@klass</span> = <span class="ruby-identifier">klass</span>
<span class="ruby-comment"># NB: the internal hash always has stringified keys</span>
<span class="ruby-ivar">@opts</span> = <span class="ruby-identifier">opts</span>.<span class="ruby-identifier">transform_keys</span>(<span class="ruby-operator">&amp;</span><span class="ruby-value">:to_s</span>)
<span class="ruby-comment"># ActiveJob compatibility</span>
<span class="ruby-identifier">interval</span> = <span class="ruby-ivar">@opts</span>.<span class="ruby-identifier">delete</span>(<span class="ruby-string">&quot;wait_until&quot;</span>) <span class="ruby-operator">||</span> <span class="ruby-ivar">@opts</span>.<span class="ruby-identifier">delete</span>(<span class="ruby-string">&quot;wait&quot;</span>)
<span class="ruby-identifier">at</span>(<span class="ruby-identifier">interval</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">interval</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-perform_async" class="method-detail ">
<div class="method-heading">
<span class="method-name">perform_async</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="perform_async-source">
<pre><span class="ruby-comment"># File lib/sidekiq/worker.rb, line 193</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">perform_async</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">args</span>)
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@opts</span>[<span class="ruby-string">&quot;sync&quot;</span>] <span class="ruby-operator">==</span> <span class="ruby-keyword">true</span>
<span class="ruby-identifier">perform_inline</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">args</span>)
<span class="ruby-keyword">else</span>
<span class="ruby-ivar">@klass</span>.<span class="ruby-identifier">client_push</span>(<span class="ruby-ivar">@opts</span>.<span class="ruby-identifier">merge</span>(<span class="ruby-string">&quot;args&quot;</span> <span class="ruby-operator">=&gt;</span> <span class="ruby-identifier">args</span>, <span class="ruby-string">&quot;class&quot;</span> <span class="ruby-operator">=&gt;</span> <span class="ruby-ivar">@klass</span>))
<span class="ruby-keyword">end</span>
<span class="ruby-keyword">end</span></pre>
</div>
</div>
</div>
<div id="method-i-perform_at" class="method-detail method-alias">
<div class="method-heading">
<span class="method-name">perform_at</span><span
class="method-args">(interval, *args)</span>
</div>
<div class="method-description">
</div>
<div class="aliases">
Alias for: <a href="Setter.html#method-i-perform_in">perform_in</a>
</div>
</div>
<div id="method-i-perform_bulk" class="method-detail ">
<div class="method-heading">
<span class="method-name">perform_bulk</span><span
class="method-args">(args, batch_size: 1_000)</span>
<span class="method-click-advice">click to toggle source</span>
</div>
<div class="method-description">
<div class="method-source-code" id="perform_bulk-source">
<pre><span class="ruby-comment"># File lib/sidekiq/worker.rb, line 238</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">perform_bulk</span>(<span class="ruby-identifier">args</span>, <span class="ruby-value">batch_size:</span> <span class="ruby-value">1_000</span>)
<span class="ruby-identifier">client</span> = <span class="ruby-ivar">@klass</span>.<span class="ruby-identifier">build_client</span>
<span class="ruby-identifier">result</span> = <span class="ruby-identifier">args</span>.<span class="ruby-identifier">each_slice</span>(<span class="ruby-identifier">batch_size</span>).<span class="ruby-identifier">flat_map</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">slice</span><span class="ruby-operator">|</span>
<span class="ruby-identifier">client</span>.<span class="ruby-identifier">push_bulk</span>(<span class="ruby-ivar">@opts</span>.<span class="ruby-identifier">merge</span>(<span class="ruby-string">&quot;class&quot;</span> <span class="ruby-operator">=&gt;</span> <span class="ruby-ivar">@klass</span>, <span class="ruby-string">&quot;args&quot;</span> <span class="ruby-operator">=&gt;</span> <span class="ruby-identifier">slice</span>))
<span class="ruby-keyword">end</span>
<span class="ruby-identifier">result</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Enumerator</span><span class="ruby-operator">::</span><span class="ruby-constant">Lazy</span>) <span class="ruby-operator">?</span> <span class="ruby-identifier">result</span>.<span class="ruby-identifier">force</span> <span class="ruby-operator">:</span> <span class="ruby-identifier">result</span>
<span class="ruby-keyword">end</span></pre>
</div>
</div>
</div>
<div id="method-i-perform_in" class="method-detail ">
<div class="method-heading">
<span class="method-name">perform_in</span><span
class="method-args">(interval, *args)</span>
<span class="method-click-advice">click to toggle source</span>
</div>
<div class="method-description">
<p><code>interval</code> must be a timestamp, numeric or something that acts</p>
<pre>numeric (like an activesupport time interval).</pre>
<div class="method-source-code" id="perform_in-source">
<pre><span class="ruby-comment"># File lib/sidekiq/worker.rb, line 249</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">perform_in</span>(<span class="ruby-identifier">interval</span>, <span class="ruby-operator">*</span><span class="ruby-identifier">args</span>)
<span class="ruby-identifier">at</span>(<span class="ruby-identifier">interval</span>).<span class="ruby-identifier">perform_async</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">args</span>)
<span class="ruby-keyword">end</span></pre>
</div>
</div>
<div class="aliases">
Also aliased as: <a href="Setter.html#method-i-perform_at">perform_at</a>
</div>
</div>
<div id="method-i-perform_inline" class="method-detail ">
<div class="method-heading">
<span class="method-name">perform_inline</span><span
class="method-args">(*args)</span>
<span class="method-click-advice">click to toggle source</span>
</div>
<div class="method-description">
<p>Explicit inline execution of a job. Returns nil if the job did not execute,
true otherwise.</p>
<div class="method-source-code" id="perform_inline-source">
<pre><span class="ruby-comment"># File lib/sidekiq/worker.rb, line 203</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">perform_inline</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">args</span>)
<span class="ruby-identifier">raw</span> = <span class="ruby-ivar">@opts</span>.<span class="ruby-identifier">merge</span>(<span class="ruby-string">&quot;args&quot;</span> <span class="ruby-operator">=&gt;</span> <span class="ruby-identifier">args</span>, <span class="ruby-string">&quot;class&quot;</span> <span class="ruby-operator">=&gt;</span> <span class="ruby-ivar">@klass</span>)
<span class="ruby-comment"># validate and normalize payload</span>
<span class="ruby-identifier">item</span> = <span class="ruby-identifier">normalize_item</span>(<span class="ruby-identifier">raw</span>)
<span class="ruby-identifier">queue</span> = <span class="ruby-identifier">item</span>[<span class="ruby-string">&quot;queue&quot;</span>]
<span class="ruby-comment"># run client-side middleware</span>
<span class="ruby-identifier">result</span> = <span class="ruby-constant">Sidekiq</span>.<span class="ruby-identifier">client_middleware</span>.<span class="ruby-identifier">invoke</span>(<span class="ruby-identifier">item</span>[<span class="ruby-string">&quot;class&quot;</span>], <span class="ruby-identifier">item</span>, <span class="ruby-identifier">queue</span>, <span class="ruby-constant">Sidekiq</span>.<span class="ruby-identifier">redis_pool</span>) <span class="ruby-keyword">do</span>
<span class="ruby-identifier">item</span>
<span class="ruby-keyword">end</span>
<span class="ruby-keyword">return</span> <span class="ruby-keyword">nil</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">result</span>
<span class="ruby-comment"># round-trip the payload via JSON</span>
<span class="ruby-identifier">msg</span> = <span class="ruby-constant">Sidekiq</span>.<span class="ruby-identifier">load_json</span>(<span class="ruby-constant">Sidekiq</span>.<span class="ruby-identifier">dump_json</span>(<span class="ruby-identifier">item</span>))
<span class="ruby-comment"># prepare the job instance</span>
<span class="ruby-identifier">klass</span> = <span class="ruby-identifier">msg</span>[<span class="ruby-string">&quot;class&quot;</span>].<span class="ruby-identifier">constantize</span>
<span class="ruby-identifier">job</span> = <span class="ruby-identifier">klass</span>.<span class="ruby-identifier">new</span>
<span class="ruby-identifier">job</span>.<span class="ruby-identifier">jid</span> = <span class="ruby-identifier">msg</span>[<span class="ruby-string">&quot;jid&quot;</span>]
<span class="ruby-identifier">job</span>.<span class="ruby-identifier">bid</span> = <span class="ruby-identifier">msg</span>[<span class="ruby-string">&quot;bid&quot;</span>] <span class="ruby-keyword">if</span> <span class="ruby-identifier">job</span>.<span class="ruby-identifier">respond_to?</span>(<span class="ruby-value">:bid</span>)
<span class="ruby-comment"># run the job through server-side middleware</span>
<span class="ruby-identifier">result</span> = <span class="ruby-constant">Sidekiq</span>.<span class="ruby-identifier">server_middleware</span>.<span class="ruby-identifier">invoke</span>(<span class="ruby-identifier">job</span>, <span class="ruby-identifier">msg</span>, <span class="ruby-identifier">msg</span>[<span class="ruby-string">&quot;queue&quot;</span>]) <span class="ruby-keyword">do</span>
<span class="ruby-comment"># perform it</span>
<span class="ruby-identifier">job</span>.<span class="ruby-identifier">perform</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">msg</span>[<span class="ruby-string">&quot;args&quot;</span>])
<span class="ruby-keyword">true</span>
<span class="ruby-keyword">end</span>
<span class="ruby-keyword">return</span> <span class="ruby-keyword">nil</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">result</span>
<span class="ruby-comment"># jobs do not return a result. they should store any</span>
<span class="ruby-comment"># modified state.</span>
<span class="ruby-keyword">true</span>
<span class="ruby-keyword">end</span></pre>
</div>
</div>
<div class="aliases">
Also aliased as: <a href="Setter.html#method-i-perform_sync">perform_sync</a>
</div>
</div>
<div id="method-i-perform_sync" class="method-detail method-alias">
<div class="method-heading">
<span class="method-name">perform_sync</span><span
class="method-args">(*args)</span>
</div>
<div class="method-description">
</div>
<div class="aliases">
Alias for: <a href="Setter.html#method-i-perform_inline">perform_inline</a>
</div>
</div>
<div id="method-i-set" class="method-detail ">
<div class="method-heading">
<span class="method-name">set</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="set-source">
<pre><span class="ruby-comment"># File lib/sidekiq/worker.rb, line 185</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">set</span>(<span class="ruby-identifier">options</span>)
<span class="ruby-identifier">hash</span> = <span class="ruby-identifier">options</span>.<span class="ruby-identifier">transform_keys</span>(<span class="ruby-operator">&amp;</span><span class="ruby-value">:to_s</span>)
<span class="ruby-identifier">interval</span> = <span class="ruby-identifier">hash</span>.<span class="ruby-identifier">delete</span>(<span class="ruby-string">&quot;wait_until&quot;</span>) <span class="ruby-operator">||</span> <span class="ruby-ivar">@opts</span>.<span class="ruby-identifier">delete</span>(<span class="ruby-string">&quot;wait&quot;</span>)
<span class="ruby-ivar">@opts</span>.<span class="ruby-identifier">merge!</span>(<span class="ruby-identifier">hash</span>)
<span class="ruby-identifier">at</span>(<span class="ruby-identifier">interval</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">interval</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.0.1.
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
</footer>

View file

@ -1,101 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>class Sidekiq::Workers - RDoc Documentation</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../";
var index_rel_prefix = "../";
</script>
<script src="../js/jquery.js"></script>
<script src="../js/darkfish.js"></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">Object
</div>
</div>
</nav>
<main role="main" aria-labelledby="class-Sidekiq::Workers">
<h1 id="class-Sidekiq::Workers" class="class">
class Sidekiq::Workers
</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.0.1.
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
</footer>

View file

@ -1,6 +0,0 @@
Mon, 06 Jun 2022 22:11:44 -0700
docs/rdoc.rdoc Mon, 06 Jun 2022 21:14:14 -0700
lib/sidekiq/api.rb Mon, 06 Jun 2022 22:11:39 -0700
lib/sidekiq/client.rb Sun, 29 May 2022 16:47:46 -0700
lib/sidekiq/worker.rb Sun, 29 May 2022 16:47:46 -0700
lib/sidekiq/job.rb Sun, 29 May 2022 16:47:46 -0700

View file

@ -1,167 +0,0 @@
/*
* Copyright 2010, 2012 Adobe Systems Incorporated (http://www.adobe.com/),
* with Reserved Font Name "Source". All Rights Reserved. Source is a
* trademark of Adobe Systems Incorporated in the United States and/or other
* countries.
*
* This Font Software is licensed under the SIL Open Font License, Version
* 1.1.
*
* This license is copied below, and is also available with a FAQ at:
* http://scripts.sil.org/OFL
*/
@font-face {
font-family: "Source Code Pro";
font-style: normal;
font-weight: 400;
src: local("Source Code Pro"),
local("SourceCodePro-Regular"),
url("../fonts/SourceCodePro-Regular.ttf") format("truetype");
}
@font-face {
font-family: "Source Code Pro";
font-style: normal;
font-weight: 700;
src: local("Source Code Pro Bold"),
local("SourceCodePro-Bold"),
url("../fonts/SourceCodePro-Bold.ttf") format("truetype");
}
/*
* Copyright (c) 2010, Łukasz Dziedzic (dziedzic@typoland.com),
* with Reserved Font Name Lato.
*
* This Font Software is licensed under the SIL Open Font License, Version
* 1.1.
*
* This license is copied below, and is also available with a FAQ at:
* http://scripts.sil.org/OFL
*/
@font-face {
font-family: "Lato";
font-style: normal;
font-weight: 300;
src: local("Lato Light"),
local("Lato-Light"),
url("../fonts/Lato-Light.ttf") format("truetype");
}
@font-face {
font-family: "Lato";
font-style: italic;
font-weight: 300;
src: local("Lato Light Italic"),
local("Lato-LightItalic"),
url("../fonts/Lato-LightItalic.ttf") format("truetype");
}
@font-face {
font-family: "Lato";
font-style: normal;
font-weight: 700;
src: local("Lato Regular"),
local("Lato-Regular"),
url("../fonts/Lato-Regular.ttf") format("truetype");
}
@font-face {
font-family: "Lato";
font-style: italic;
font-weight: 700;
src: local("Lato Italic"),
local("Lato-Italic"),
url("../fonts/Lato-RegularItalic.ttf") format("truetype");
}
/*
* -----------------------------------------------------------
* SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
* -----------------------------------------------------------
*
* PREAMBLE
* The goals of the Open Font License (OFL) are to stimulate worldwide
* development of collaborative font projects, to support the font creation
* efforts of academic and linguistic communities, and to provide a free and
* open framework in which fonts may be shared and improved in partnership
* with others.
*
* The OFL allows the licensed fonts to be used, studied, modified and
* redistributed freely as long as they are not sold by themselves. The
* fonts, including any derivative works, can be bundled, embedded,
* redistributed and/or sold with any software provided that any reserved
* names are not used by derivative works. The fonts and derivatives,
* however, cannot be released under any other type of license. The
* requirement for fonts to remain under this license does not apply
* to any document created using the fonts or their derivatives.
*
* DEFINITIONS
* "Font Software" refers to the set of files released by the Copyright
* Holder(s) under this license and clearly marked as such. This may
* include source files, build scripts and documentation.
*
* "Reserved Font Name" refers to any names specified as such after the
* copyright statement(s).
*
* "Original Version" refers to the collection of Font Software components as
* distributed by the Copyright Holder(s).
*
* "Modified Version" refers to any derivative made by adding to, deleting,
* or substituting -- in part or in whole -- any of the components of the
* Original Version, by changing formats or by porting the Font Software to a
* new environment.
*
* "Author" refers to any designer, engineer, programmer, technical
* writer or other person who contributed to the Font Software.
*
* PERMISSION & CONDITIONS
* Permission is hereby granted, free of charge, to any person obtaining
* a copy of the Font Software, to use, study, copy, merge, embed, modify,
* redistribute, and sell modified and unmodified copies of the Font
* Software, subject to the following conditions:
*
* 1) Neither the Font Software nor any of its individual components,
* in Original or Modified Versions, may be sold by itself.
*
* 2) Original or Modified Versions of the Font Software may be bundled,
* redistributed and/or sold with any software, provided that each copy
* contains the above copyright notice and this license. These can be
* included either as stand-alone text files, human-readable headers or
* in the appropriate machine-readable metadata fields within text or
* binary files as long as those fields can be easily viewed by the user.
*
* 3) No Modified Version of the Font Software may use the Reserved Font
* Name(s) unless explicit written permission is granted by the corresponding
* Copyright Holder. This restriction only applies to the primary font name as
* presented to the users.
*
* 4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
* Software shall not be used to promote, endorse or advertise any
* Modified Version, except to acknowledge the contribution(s) of the
* Copyright Holder(s) and the Author(s) or with their explicit written
* permission.
*
* 5) The Font Software, modified or unmodified, in part or in whole,
* must be distributed entirely under this license, and must not be
* distributed under any other license. The requirement for fonts to
* remain under this license does not apply to any document created
* using the Font Software.
*
* TERMINATION
* This license becomes null and void if any of the above conditions are
* not met.
*
* DISCLAIMER
* THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
* OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
* COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
* INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
* DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
* OTHER DEALINGS IN THE FONT SOFTWARE.
*/

View file

@ -1,590 +0,0 @@
/*
* "Darkfish" Rdoc CSS
* $Id: rdoc.css 54 2009-01-27 01:09:48Z deveiant $
*
* Author: Michael Granger <ged@FaerieMUD.org>
*
*/
/* vim: ft=css et sw=2 ts=2 sts=2 */
/* Base Green is: #6C8C22 */
* { padding: 0; margin: 0; }
body {
background: #fafafa;
font-family: Lato, sans-serif;
font-weight: 300;
}
h1 span,
h2 span,
h3 span,
h4 span,
h5 span,
h6 span {
position: relative;
display: none;
padding-left: 1em;
line-height: 0;
vertical-align: baseline;
font-size: 10px;
}
h1 span { top: -1.3em; }
h2 span { top: -1.2em; }
h3 span { top: -1.0em; }
h4 span { top: -0.8em; }
h5 span { top: -0.5em; }
h6 span { top: -0.5em; }
h1:hover span,
h2:hover span,
h3:hover span,
h4:hover span,
h5:hover span,
h6:hover span {
display: inline;
}
:link,
:visited {
color: #6C8C22;
text-decoration: none;
}
:link:hover,
:visited:hover {
border-bottom: 1px dotted #6C8C22;
}
code,
pre {
font-family: "Source Code Pro", Monaco, monospace;
}
/* @group Generic Classes */
.initially-hidden {
display: none;
}
#search-field {
width: 98%;
background: white;
border: none;
height: 1.5em;
-webkit-border-radius: 4px;
-moz-border-radius: 4px;
border-radius: 4px;
text-align: left;
}
#search-field:focus {
background: #f1edba;
}
#search-field:-moz-placeholder,
#search-field::-webkit-input-placeholder {
font-weight: bold;
color: #666;
}
.missing-docs {
font-size: 120%;
background: white url(images/wrench_orange.png) no-repeat 4px center;
color: #ccc;
line-height: 2em;
border: 1px solid #d00;
opacity: 1;
padding-left: 20px;
text-indent: 24px;
letter-spacing: 3px;
font-weight: bold;
-webkit-border-radius: 5px;
-moz-border-radius: 5px;
}
.target-section {
border: 2px solid #dcce90;
border-left-width: 8px;
padding: 0 1em;
background: #fff3c2;
}
/* @end */
/* @group Index Page, Standalone file pages */
.table-of-contents ul {
margin: 1em;
list-style: none;
}
.table-of-contents ul ul {
margin-top: 0.25em;
}
.table-of-contents ul :link,
.table-of-contents ul :visited {
font-size: 16px;
}
.table-of-contents li {
margin-bottom: 0.25em;
}
.table-of-contents li .toc-toggle {
width: 16px;
height: 16px;
background: url(images/add.png) no-repeat;
}
.table-of-contents li .toc-toggle.open {
background: url(images/delete.png) no-repeat;
}
/* @end */
/* @group Top-Level Structure */
nav {
float: left;
width: 260px;
font-family: Helvetica, sans-serif;
font-size: 14px;
}
main {
display: block;
margin: 0 2em 5em 260px;
padding-left: 20px;
min-width: 340px;
font-size: 16px;
}
main h1,
main h2,
main h3,
main h4,
main h5,
main h6 {
font-family: Helvetica, sans-serif;
}
.table-of-contents main {
margin-left: 2em;
}
#validator-badges {
clear: both;
margin: 1em 1em 2em;
font-size: smaller;
}
/* @end */
/* @group navigation */
nav {
margin-bottom: 1em;
}
nav .nav-section {
margin-top: 2em;
border-top: 2px solid #aaa;
font-size: 90%;
overflow: hidden;
}
nav h2 {
margin: 0;
padding: 2px 8px 2px 8px;
background-color: #e8e8e8;
color: #555;
font-size: 125%;
text-align: center;
}
nav h3,
#table-of-contents-navigation {
margin: 0;
padding: 2px 8px 2px 8px;
text-align: right;
background-color: #e8e8e8;
color: #555;
}
nav ul,
nav dl,
nav p {
padding: 4px 8px 0;
list-style: none;
}
#project-navigation .nav-section {
margin: 0;
border-top: 0;
}
#home-section h2 {
text-align: center;
}
#table-of-contents-navigation {
font-size: 1.2em;
font-weight: bold;
text-align: center;
}
#search-section {
margin-top: 0;
border-top: 0;
}
#search-field-wrapper {
border-top: 1px solid #aaa;
border-bottom: 1px solid #aaa;
padding: 3px 8px;
background-color: #e8e8e8;
color: #555;
}
ul.link-list li {
white-space: nowrap;
line-height: 1.4em;
}
ul.link-list .type {
font-size: 8px;
text-transform: uppercase;
color: white;
background: #969696;
padding: 2px 4px;
-webkit-border-radius: 5px;
}
.calls-super {
background: url(images/arrow_up.png) no-repeat right center;
}
/* @end */
/* @group Documentation Section */
main {
color: #333;
}
main > h1:first-child,
main > h2:first-child,
main > h3:first-child,
main > h4:first-child,
main > h5:first-child,
main > h6:first-child {
margin-top: 0px;
}
main sup {
vertical-align: super;
font-size: 0.8em;
}
/* The heading with the class name */
main h1[class] {
margin-top: 0;
margin-bottom: 1em;
font-size: 2em;
color: #6C8C22;
}
main h1 {
margin: 2em 0 0.5em;
font-size: 1.7em;
}
main h2 {
margin: 2em 0 0.5em;
font-size: 1.5em;
}
main h3 {
margin: 2em 0 0.5em;
font-size: 1.2em;
}
main h4 {
margin: 2em 0 0.5em;
font-size: 1.1em;
}
main h5 {
margin: 2em 0 0.5em;
font-size: 1em;
}
main h6 {
margin: 2em 0 0.5em;
font-size: 1em;
}
main p {
margin: 0 0 0.5em;
line-height: 1.4em;
}
main pre {
margin: 1.2em 0.5em;
padding: 1em;
font-size: 0.8em;
}
main hr {
margin: 1.5em 1em;
border: 2px solid #ddd;
}
main blockquote {
margin: 0 2em 1.2em 1.2em;
padding-left: 0.5em;
border-left: 2px solid #ddd;
}
main ol,
main ul {
margin: 1em 2em;
}
main li > p {
margin-bottom: 0.5em;
}
main dl {
margin: 1em 0.5em;
}
main dt {
margin-bottom: 0.5em;
font-weight: bold;
}
main dd {
margin: 0 1em 1em 0.5em;
}
main header h2 {
margin-top: 2em;
border-width: 0;
border-top: 4px solid #bbb;
font-size: 130%;
}
main header h3 {
margin: 2em 0 1.5em;
border-width: 0;
border-top: 3px solid #bbb;
font-size: 120%;
}
.documentation-section-title {
position: relative;
}
.documentation-section-title .section-click-top {
position: absolute;
top: 6px;
left: 12px;
font-size: 10px;
color: #9b9877;
visibility: hidden;
padding-left: 0.5px;
}
.documentation-section-title:hover .section-click-top {
visibility: visible;
}
.constants-list > dl {
margin: 1em 0 2em;
border: 0;
}
.constants-list > dl dt {
margin-bottom: 0.75em;
padding-left: 0;
font-family: "Source Code Pro", Monaco, monospace;
font-size: 110%;
}
.constants-list > dl dt a {
color: inherit;
}
.constants-list > dl dd {
margin: 0 0 2em 0;
padding: 0;
color: #666;
}
.documentation-section h2 {
position: relative;
}
.documentation-section h2 a {
position: absolute;
top: 8px;
right: 10px;
font-size: 12px;
color: #9b9877;
visibility: hidden;
}
.documentation-section h2:hover a {
visibility: visible;
}
/* @group Method Details */
main .method-source-code {
display: none;
}
main .method-description .method-calls-super {
color: #333;
font-weight: bold;
}
main .method-detail {
margin-bottom: 2.5em;
cursor: pointer;
}
main .method-detail:target {
margin-left: -10px;
border-left: 10px solid #f1edba;
}
main .method-heading {
position: relative;
font-family: "Source Code Pro", Monaco, monospace;
font-size: 110%;
font-weight: bold;
color: #333;
}
main .method-heading :link,
main .method-heading :visited {
color: inherit;
}
main .method-click-advice {
position: absolute;
top: 2px;
right: 5px;
font-size: 12px;
color: #9b9877;
visibility: hidden;
padding-right: 20px;
line-height: 20px;
background: url(images/zoom.png) no-repeat right top;
}
main .method-heading:hover .method-click-advice {
visibility: visible;
}
main .method-alias .method-heading {
color: #666;
}
main .method-description,
main .aliases {
margin-top: 0.75em;
color: #333;
}
main .aliases {
padding-top: 4px;
font-style: italic;
cursor: default;
}
main .method-description ul {
margin-left: 1.5em;
}
main #attribute-method-details .method-detail:hover {
background-color: transparent;
cursor: default;
}
main .attribute-access-type {
text-transform: uppercase;
padding: 0 1em;
}
/* @end */
/* @end */
/* @group Source Code */
pre {
margin: 0.5em 0;
border: 1px dashed #999;
padding: 0.5em;
background: #262626;
color: white;
overflow: auto;
}
.ruby-constant { color: #7fffd4; background: transparent; }
.ruby-keyword { color: #00ffff; background: transparent; }
.ruby-ivar { color: #eedd82; background: transparent; }
.ruby-operator { color: #00ffee; background: transparent; }
.ruby-identifier { color: #ffdead; background: transparent; }
.ruby-node { color: #ffa07a; background: transparent; }
.ruby-comment { color: #dc0000; background: transparent; }
.ruby-regexp { color: #ffa07a; background: transparent; }
.ruby-value { color: #7fffd4; background: transparent; }
/* @end */
/* @group search results */
#search-results {
font-family: Lato, sans-serif;
font-weight: 300;
}
#search-results .search-match {
font-family: Helvetica, sans-serif;
font-weight: normal;
}
#search-results .search-selected {
background: #e8e8e8;
border-bottom: 1px solid transparent;
}
#search-results li {
list-style: none;
border-bottom: 1px solid #aaa;
margin-bottom: 0.5em;
}
#search-results li:last-child {
border-bottom: none;
margin-bottom: 0;
}
#search-results li p {
padding: 0;
margin: 0.5em;
}
#search-results .search-namespace {
font-weight: bold;
}
#search-results li em {
background: yellow;
font-style: normal;
}
#search-results pre {
margin: 0.5em;
font-family: "Source Code Pro", Monaco, monospace;
}
/* @end */

View file

@ -1,80 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>rdoc - RDoc Documentation</title>
<script type="text/javascript">
var rdoc_rel_prefix = "../";
var index_rel_prefix = "../";
</script>
<script src="../js/jquery.js"></script>
<script src="../js/darkfish.js"></script>
<link href="../css/fonts.css" rel="stylesheet">
<link href="../css/rdoc.css" rel="stylesheet">
<body id="top" role="document" class="file">
<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="project-metadata">
<div id="fileindex-section" class="nav-section">
<h3>Pages</h3>
<ul class="link-list">
<li><a href="../docs/rdoc_rdoc.html">rdoc</a>
</ul>
</div>
</div>
</nav>
<main role="main" aria-label="Page docs/rdoc.rdoc">
</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.0.1.
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
</footer>

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 733 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 372 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 452 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 764 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 774 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 211 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 207 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 209 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 626 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 715 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 659 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 207 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 853 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 621 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 342 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 309 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 591 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 592 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 613 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 97 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 610 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 584 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 692 B

View file

@ -1,102 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>RDoc Documentation</title>
<script type="text/javascript">
var rdoc_rel_prefix = "./";
var index_rel_prefix = "./";
</script>
<script src="./js/jquery.js"></script>
<script src="./js/darkfish.js"></script>
<link href="./css/fonts.css" rel="stylesheet">
<link href="./css/rdoc.css" rel="stylesheet">
<body id="top" role="document" class="file">
<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="project-metadata">
<div id="fileindex-section" class="nav-section">
<h3>Pages</h3>
<ul class="link-list">
<li><a href="./docs/rdoc_rdoc.html">rdoc</a>
</ul>
</div>
<div id="classindex-section" class="nav-section">
<h3>Class and Module Index</h3>
<ul class="link-list">
<li><a href="./Sidekiq.html">Sidekiq</a>
<li><a href="./Sidekiq/Client.html">Sidekiq::Client</a>
<li><a href="./Sidekiq/Worker.html">Sidekiq::Worker</a>
<li><a href="./Sidekiq/Worker/ClassMethods.html">Sidekiq::Worker::ClassMethods</a>
<li><a href="./Sidekiq/Worker/Options.html">Sidekiq::Worker::Options</a>
<li><a href="./Sidekiq/Worker/Options/ClassMethods.html">Sidekiq::Worker::Options::ClassMethods</a>
<li><a href="./Sidekiq/Worker/Setter.html">Sidekiq::Worker::Setter</a>
</ul>
</div>
</div>
</nav>
<main role="main">
</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.0.1.
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
</footer>

View file

@ -1,161 +0,0 @@
/**
*
* Darkfish Page Functions
* $Id: darkfish.js 53 2009-01-07 02:52:03Z deveiant $
*
* Author: Michael Granger <mgranger@laika.com>
*
*/
/* Provide console simulation for firebug-less environments */
if (!("console" in window) || !("firebug" in console)) {
var names = ["log", "debug", "info", "warn", "error", "assert", "dir", "dirxml",
"group", "groupEnd", "time", "timeEnd", "count", "trace", "profile", "profileEnd"];
window.console = {};
for (var i = 0; i < names.length; ++i)
window.console[names[i]] = function() {};
};
/**
* Unwrap the first element that matches the given @expr@ from the targets and return them.
*/
$.fn.unwrap = function( expr ) {
return this.each( function() {
$(this).parents( expr ).eq( 0 ).after( this ).remove();
});
};
function showSource( e ) {
var target = e.target;
var codeSections = $(target).
parents('.method-detail').
find('.method-source-code');
$(target).
parents('.method-detail').
find('.method-source-code').
slideToggle();
};
function hookSourceViews() {
$('.method-heading').click( showSource );
};
function hookSearch() {
var input = $('#search-field').eq(0);
var result = $('#search-results').eq(0);
$(result).show();
var search_section = $('#search-section').get(0);
$(search_section).show();
var search = new Search(search_data, input, result);
search.renderItem = function(result) {
var li = document.createElement('li');
var html = '';
// TODO add relative path to <script> per-page
html += '<p class="search-match"><a href="' + index_rel_prefix + result.path + '">' + this.hlt(result.title);
if (result.params)
html += '<span class="params">' + result.params + '</span>';
html += '</a>';
if (result.namespace)
html += '<p class="search-namespace">' + this.hlt(result.namespace);
if (result.snippet)
html += '<div class="search-snippet">' + result.snippet + '</div>';
li.innerHTML = html;
return li;
}
search.select = function(result) {
var result_element = result.get(0);
window.location.href = result_element.firstChild.firstChild.href;
}
search.scrollIntoView = search.scrollInWindow;
};
function highlightTarget( anchor ) {
console.debug( "Highlighting target '%s'.", anchor );
$("a[name]").each( function() {
if ( $(this).attr("name") == anchor ) {
if ( !$(this).parent().parent().hasClass('target-section') ) {
console.debug( "Wrapping the target-section" );
$('div.method-detail').unwrap( 'div.target-section' );
$(this).parent().wrap( '<div class="target-section"></div>' );
} else {
console.debug( "Already wrapped." );
}
}
});
};
function highlightLocationTarget() {
console.debug( "Location hash: %s", window.location.hash );
if ( ! window.location.hash || window.location.hash.length == 0 ) return;
var anchor = window.location.hash.substring(1);
console.debug( "Found anchor: %s; matching %s", anchor, "a[name=" + anchor + "]" );
highlightTarget( anchor );
};
function highlightClickTarget( event ) {
console.debug( "Highlighting click target for event %o", event.target );
try {
var anchor = $(event.target).attr( 'href' ).substring(1);
console.debug( "Found target anchor: %s", anchor );
highlightTarget( anchor );
} catch ( err ) {
console.error( "Exception while highlighting: %o", err );
};
};
function loadAsync(path, success, prefix) {
$.ajax({
url: prefix + path,
dataType: 'script',
success: success,
cache: true
});
};
$(document).ready( function() {
hookSourceViews();
highlightLocationTarget();
$('ul.link-list a').bind( "click", highlightClickTarget );
var search_scripts_loaded = {
navigation_loaded: false,
search_loaded: false,
search_index_loaded: false,
searcher_loaded: false,
}
var search_success_function = function(variable) {
return (function (data, status, xhr) {
search_scripts_loaded[variable] = true;
if (search_scripts_loaded['navigation_loaded'] == true &&
search_scripts_loaded['search_loaded'] == true &&
search_scripts_loaded['search_index_loaded'] == true &&
search_scripts_loaded['searcher_loaded'] == true)
hookSearch();
});
}
loadAsync('js/navigation.js', search_success_function('navigation_loaded'), rdoc_rel_prefix);
loadAsync('js/search.js', search_success_function('search_loaded'), rdoc_rel_prefix);
loadAsync('js/search_index.js', search_success_function('search_index_loaded'), index_rel_prefix);
loadAsync('js/searcher.js', search_success_function('searcher_loaded'), rdoc_rel_prefix);
});

4
html/js/jquery.js vendored

File diff suppressed because one or more lines are too long

View file

@ -1,142 +0,0 @@
/*
* Navigation allows movement using the arrow keys through the search results.
*
* When using this library you will need to set scrollIntoView to the
* appropriate function for your layout. Use scrollInWindow if the container
* is not scrollable and scrollInElement if the container is a separate
* scrolling region.
*/
Navigation = new function() {
this.initNavigation = function() {
var _this = this;
$(document).keydown(function(e) {
_this.onkeydown(e);
}).keyup(function(e) {
_this.onkeyup(e);
});
this.navigationActive = true;
}
this.setNavigationActive = function(state) {
this.navigationActive = state;
this.clearMoveTimeout();
}
this.onkeyup = function(e) {
if (!this.navigationActive) return;
switch(e.keyCode) {
case 37: //Event.KEY_LEFT:
case 38: //Event.KEY_UP:
case 39: //Event.KEY_RIGHT:
case 40: //Event.KEY_DOWN:
this.clearMoveTimeout();
break;
}
}
this.onkeydown = function(e) {
if (!this.navigationActive) return;
switch(e.keyCode) {
case 37: //Event.KEY_LEFT:
if (this.moveLeft()) e.preventDefault();
break;
case 38: //Event.KEY_UP:
if (e.keyCode == 38 || e.ctrlKey) {
if (this.moveUp()) e.preventDefault();
this.startMoveTimeout(false);
}
break;
case 39: //Event.KEY_RIGHT:
if (this.moveRight()) e.preventDefault();
break;
case 40: //Event.KEY_DOWN:
if (e.keyCode == 40 || e.ctrlKey) {
if (this.moveDown()) e.preventDefault();
this.startMoveTimeout(true);
}
break;
case 13: //Event.KEY_RETURN:
if (this.$current)
e.preventDefault();
this.select(this.$current);
break;
}
if (e.ctrlKey && e.shiftKey) this.select(this.$current);
}
this.clearMoveTimeout = function() {
clearTimeout(this.moveTimeout);
this.moveTimeout = null;
}
this.startMoveTimeout = function(isDown) {
if (!$.browser.mozilla && !$.browser.opera) return;
if (this.moveTimeout) this.clearMoveTimeout();
var _this = this;
var go = function() {
if (!_this.moveTimeout) return;
_this[isDown ? 'moveDown' : 'moveUp']();
_this.moveTimout = setTimeout(go, 100);
}
this.moveTimeout = setTimeout(go, 200);
}
this.moveRight = function() {
}
this.moveLeft = function() {
}
this.move = function(isDown) {
}
this.moveUp = function() {
return this.move(false);
}
this.moveDown = function() {
return this.move(true);
}
/*
* Scrolls to the given element in the scrollable element view.
*/
this.scrollInElement = function(element, view) {
var offset, viewHeight, viewScroll, height;
offset = element.offsetTop;
height = element.offsetHeight;
viewHeight = view.offsetHeight;
viewScroll = view.scrollTop;
if (offset - viewScroll + height > viewHeight) {
view.scrollTop = offset - viewHeight + height;
}
if (offset < viewScroll) {
view.scrollTop = offset;
}
}
/*
* Scrolls to the given element in the window. The second argument is
* ignored
*/
this.scrollInWindow = function(element, ignored) {
var offset, viewHeight, viewScroll, height;
offset = element.offsetTop;
height = element.offsetHeight;
viewHeight = window.innerHeight;
viewScroll = window.scrollY;
if (offset - viewScroll + height > viewHeight) {
window.scrollTo(window.scrollX, offset - viewHeight + height);
}
if (offset < viewScroll) {
window.scrollTo(window.scrollX, offset);
}
}
}

Binary file not shown.

View file

@ -1,109 +0,0 @@
Search = function(data, input, result) {
this.data = data;
this.$input = $(input);
this.$result = $(result);
this.$current = null;
this.$view = this.$result.parent();
this.searcher = new Searcher(data.index);
this.init();
}
Search.prototype = $.extend({}, Navigation, new function() {
var suid = 1;
this.init = function() {
var _this = this;
var observer = function(e) {
switch(e.originalEvent.keyCode) {
case 38: // Event.KEY_UP
case 40: // Event.KEY_DOWN
return;
}
_this.search(_this.$input[0].value);
};
this.$input.keyup(observer);
this.$input.click(observer); // mac's clear field
this.searcher.ready(function(results, isLast) {
_this.addResults(results, isLast);
})
this.initNavigation();
this.setNavigationActive(false);
}
this.search = function(value, selectFirstMatch) {
value = jQuery.trim(value).toLowerCase();
if (value) {
this.setNavigationActive(true);
} else {
this.setNavigationActive(false);
}
if (value == '') {
this.lastQuery = value;
this.$result.empty();
this.$result.attr('aria-expanded', 'false');
this.setNavigationActive(false);
} else if (value != this.lastQuery) {
this.lastQuery = value;
this.$result.attr('aria-busy', 'true');
this.$result.attr('aria-expanded', 'true');
this.firstRun = true;
this.searcher.find(value);
}
}
this.addResults = function(results, isLast) {
var target = this.$result.get(0);
if (this.firstRun && (results.length > 0 || isLast)) {
this.$current = null;
this.$result.empty();
}
for (var i=0, l = results.length; i < l; i++) {
var item = this.renderItem.call(this, results[i]);
item.setAttribute('id', 'search-result-' + target.childElementCount);
target.appendChild(item);
};
if (this.firstRun && results.length > 0) {
this.firstRun = false;
this.$current = $(target.firstChild);
this.$current.addClass('search-selected');
}
if (jQuery.browser.msie) this.$element[0].className += '';
if (isLast) this.$result.attr('aria-busy', 'false');
}
this.move = function(isDown) {
if (!this.$current) return;
var $next = this.$current[isDown ? 'next' : 'prev']();
if ($next.length) {
this.$current.removeClass('search-selected');
$next.addClass('search-selected');
this.$input.attr('aria-activedescendant', $next.attr('id'));
this.scrollIntoView($next[0], this.$view[0]);
this.$current = $next;
this.$input.val($next[0].firstChild.firstChild.text);
this.$input.select();
}
return true;
}
this.hlt = function(html) {
return this.escapeHTML(html).
replace(/\u0001/g, '<em>').
replace(/\u0002/g, '</em>');
}
this.escapeHTML = function(html) {
return html.replace(/[&<>]/g, function(c) {
return '&#' + c.charCodeAt(0) + ';';
});
}
});

File diff suppressed because one or more lines are too long

Binary file not shown.

View file

@ -1,229 +0,0 @@
Searcher = function(data) {
this.data = data;
this.handlers = [];
}
Searcher.prototype = new function() {
// search is performed in chunks of 1000 for non-blocking user input
var CHUNK_SIZE = 1000;
// do not try to find more than 100 results
var MAX_RESULTS = 100;
var huid = 1;
var suid = 1;
var runs = 0;
this.find = function(query) {
var queries = splitQuery(query);
var regexps = buildRegexps(queries);
var highlighters = buildHilighters(queries);
var state = { from: 0, pass: 0, limit: MAX_RESULTS, n: suid++};
var _this = this;
this.currentSuid = state.n;
if (!query) return;
var run = function() {
// stop current search thread if new search started
if (state.n != _this.currentSuid) return;
var results =
performSearch(_this.data, regexps, queries, highlighters, state);
var hasMore = (state.limit > 0 && state.pass < 4);
triggerResults.call(_this, results, !hasMore);
if (hasMore) {
setTimeout(run, 2);
}
runs++;
};
runs = 0;
// start search thread
run();
}
/* ----- Events ------ */
this.ready = function(fn) {
fn.huid = huid;
this.handlers.push(fn);
}
/* ----- Utilities ------ */
function splitQuery(query) {
return jQuery.grep(query.split(/(\s+|::?|\(\)?)/), function(string) {
return string.match(/\S/);
});
}
function buildRegexps(queries) {
return jQuery.map(queries, function(query) {
return new RegExp(query.replace(/(.)/g, '([$1])([^$1]*?)'), 'i');
});
}
function buildHilighters(queries) {
return jQuery.map(queries, function(query) {
return jQuery.map(query.split(''), function(l, i) {
return '\u0001$' + (i*2+1) + '\u0002$' + (i*2+2);
}).join('');
});
}
// function longMatchRegexp(index, longIndex, regexps) {
// for (var i = regexps.length - 1; i >= 0; i--){
// if (!index.match(regexps[i]) && !longIndex.match(regexps[i])) return false;
// };
// return true;
// }
/* ----- Mathchers ------ */
/*
* This record matches if the index starts with queries[0] and the record
* matches all of the regexps
*/
function matchPassBeginning(index, longIndex, queries, regexps) {
if (index.indexOf(queries[0]) != 0) return false;
for (var i=1, l = regexps.length; i < l; i++) {
if (!index.match(regexps[i]) && !longIndex.match(regexps[i]))
return false;
};
return true;
}
/*
* This record matches if the longIndex starts with queries[0] and the
* longIndex matches all of the regexps
*/
function matchPassLongIndex(index, longIndex, queries, regexps) {
if (longIndex.indexOf(queries[0]) != 0) return false;
for (var i=1, l = regexps.length; i < l; i++) {
if (!longIndex.match(regexps[i]))
return false;
};
return true;
}
/*
* This record matches if the index contains queries[0] and the record
* matches all of the regexps
*/
function matchPassContains(index, longIndex, queries, regexps) {
if (index.indexOf(queries[0]) == -1) return false;
for (var i=1, l = regexps.length; i < l; i++) {
if (!index.match(regexps[i]) && !longIndex.match(regexps[i]))
return false;
};
return true;
}
/*
* This record matches if regexps[0] matches the index and the record
* matches all of the regexps
*/
function matchPassRegexp(index, longIndex, queries, regexps) {
if (!index.match(regexps[0])) return false;
for (var i=1, l = regexps.length; i < l; i++) {
if (!index.match(regexps[i]) && !longIndex.match(regexps[i]))
return false;
};
return true;
}
/* ----- Highlighters ------ */
function highlightRegexp(info, queries, regexps, highlighters) {
var result = createResult(info);
for (var i=0, l = regexps.length; i < l; i++) {
result.title = result.title.replace(regexps[i], highlighters[i]);
result.namespace = result.namespace.replace(regexps[i], highlighters[i]);
};
return result;
}
function hltSubstring(string, pos, length) {
return string.substring(0, pos) + '\u0001' + string.substring(pos, pos + length) + '\u0002' + string.substring(pos + length);
}
function highlightQuery(info, queries, regexps, highlighters) {
var result = createResult(info);
var pos = 0;
var lcTitle = result.title.toLowerCase();
pos = lcTitle.indexOf(queries[0]);
if (pos != -1) {
result.title = hltSubstring(result.title, pos, queries[0].length);
}
result.namespace = result.namespace.replace(regexps[0], highlighters[0]);
for (var i=1, l = regexps.length; i < l; i++) {
result.title = result.title.replace(regexps[i], highlighters[i]);
result.namespace = result.namespace.replace(regexps[i], highlighters[i]);
};
return result;
}
function createResult(info) {
var result = {};
result.title = info[0];
result.namespace = info[1];
result.path = info[2];
result.params = info[3];
result.snippet = info[4];
result.badge = info[6];
return result;
}
/* ----- Searching ------ */
function performSearch(data, regexps, queries, highlighters, state) {
var searchIndex = data.searchIndex;
var longSearchIndex = data.longSearchIndex;
var info = data.info;
var result = [];
var i = state.from;
var l = searchIndex.length;
var togo = CHUNK_SIZE;
var matchFunc, hltFunc;
while (state.pass < 4 && state.limit > 0 && togo > 0) {
if (state.pass == 0) {
matchFunc = matchPassBeginning;
hltFunc = highlightQuery;
} else if (state.pass == 1) {
matchFunc = matchPassLongIndex;
hltFunc = highlightQuery;
} else if (state.pass == 2) {
matchFunc = matchPassContains;
hltFunc = highlightQuery;
} else if (state.pass == 3) {
matchFunc = matchPassRegexp;
hltFunc = highlightRegexp;
}
for (; togo > 0 && i < l && state.limit > 0; i++, togo--) {
if (info[i].n == state.n) continue;
if (matchFunc(searchIndex[i], longSearchIndex[i], queries, regexps)) {
info[i].n = state.n;
result.push(hltFunc(info[i], queries, regexps, highlighters));
state.limit--;
}
};
if (searchIndex.length <= i) {
state.pass++;
i = state.from = 0;
} else {
state.from = i;
}
}
return result;
}
function triggerResults(results, isLast) {
jQuery.each(this.handlers, function(i, fn) {
fn.call(this, results, isLast)
})
}
}

Binary file not shown.

View file

@ -1,260 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Table of Contents - RDoc Documentation</title>
<script type="text/javascript">
var rdoc_rel_prefix = "./";
var index_rel_prefix = "./";
</script>
<script src="./js/jquery.js"></script>
<script src="./js/darkfish.js"></script>
<link href="./css/fonts.css" rel="stylesheet">
<link href="./css/rdoc.css" rel="stylesheet">
<body id="top" class="table-of-contents">
<main role="main">
<h1 class="class">Table of Contents - RDoc Documentation</h1>
<h2 id="pages">Pages</h2>
<ul>
<li class="file">
<a href="docs/rdoc_rdoc.html">rdoc</a>
</li>
</ul>
<h2 id="classes">Classes and Modules</h2>
<ul>
<li class="module">
<a href="Sidekiq.html">Sidekiq</a>
</li>
<li class="class">
<a href="Sidekiq/Client.html">Sidekiq::Client</a>
</li>
<li class="module">
<a href="Sidekiq/Worker.html">Sidekiq::Worker</a>
</li>
<li class="module">
<a href="Sidekiq/Worker/ClassMethods.html">Sidekiq::Worker::ClassMethods</a>
</li>
<li class="module">
<a href="Sidekiq/Worker/Options.html">Sidekiq::Worker::Options</a>
</li>
<li class="module">
<a href="Sidekiq/Worker/Options/ClassMethods.html">Sidekiq::Worker::Options::ClassMethods</a>
</li>
<li class="class">
<a href="Sidekiq/Worker/Setter.html">Sidekiq::Worker::Setter</a>
</li>
</ul>
<h2 id="methods">Methods</h2>
<ul>
<li class="method">
<a href="Sidekiq/Client.html#method-c-enqueue">::enqueue</a>
&mdash;
<span class="container">Sidekiq::Client</span>
<li class="method">
<a href="Sidekiq/Client.html#method-c-enqueue_in">::enqueue_in</a>
&mdash;
<span class="container">Sidekiq::Client</span>
<li class="method">
<a href="Sidekiq/Client.html#method-c-enqueue_to">::enqueue_to</a>
&mdash;
<span class="container">Sidekiq::Client</span>
<li class="method">
<a href="Sidekiq/Client.html#method-c-enqueue_to_in">::enqueue_to_in</a>
&mdash;
<span class="container">Sidekiq::Client</span>
<li class="method">
<a href="Sidekiq/Worker.html#method-c-included">::included</a>
&mdash;
<span class="container">Sidekiq::Worker</span>
<li class="method">
<a href="Sidekiq/Worker/Options.html#method-c-included">::included</a>
&mdash;
<span class="container">Sidekiq::Worker::Options</span>
<li class="method">
<a href="Sidekiq/Client.html#method-c-new">::new</a>
&mdash;
<span class="container">Sidekiq::Client</span>
<li class="method">
<a href="Sidekiq/Worker/Setter.html#method-c-new">::new</a>
&mdash;
<span class="container">Sidekiq::Worker::Setter</span>
<li class="method">
<a href="Sidekiq/Client.html#method-c-push">::push</a>
&mdash;
<span class="container">Sidekiq::Client</span>
<li class="method">
<a href="Sidekiq/Client.html#method-c-push_bulk">::push_bulk</a>
&mdash;
<span class="container">Sidekiq::Client</span>
<li class="method">
<a href="Sidekiq/Client.html#method-c-via">::via</a>
&mdash;
<span class="container">Sidekiq::Client</span>
<li class="method">
<a href="Sidekiq/Worker/ClassMethods.html#method-i-delay">#delay</a>
&mdash;
<span class="container">Sidekiq::Worker::ClassMethods</span>
<li class="method">
<a href="Sidekiq/Worker/ClassMethods.html#method-i-delay_for">#delay_for</a>
&mdash;
<span class="container">Sidekiq::Worker::ClassMethods</span>
<li class="method">
<a href="Sidekiq/Worker/ClassMethods.html#method-i-delay_until">#delay_until</a>
&mdash;
<span class="container">Sidekiq::Worker::ClassMethods</span>
<li class="method">
<a href="Sidekiq/Worker.html#method-i-logger">#logger</a>
&mdash;
<span class="container">Sidekiq::Worker</span>
<li class="method">
<a href="Sidekiq/Client.html#method-i-middleware">#middleware</a>
&mdash;
<span class="container">Sidekiq::Client</span>
<li class="method">
<a href="Sidekiq/Worker/ClassMethods.html#method-i-perform_async">#perform_async</a>
&mdash;
<span class="container">Sidekiq::Worker::ClassMethods</span>
<li class="method">
<a href="Sidekiq/Worker/Setter.html#method-i-perform_async">#perform_async</a>
&mdash;
<span class="container">Sidekiq::Worker::Setter</span>
<li class="method">
<a href="Sidekiq/Worker/ClassMethods.html#method-i-perform_at">#perform_at</a>
&mdash;
<span class="container">Sidekiq::Worker::ClassMethods</span>
<li class="method">
<a href="Sidekiq/Worker/Setter.html#method-i-perform_at">#perform_at</a>
&mdash;
<span class="container">Sidekiq::Worker::Setter</span>
<li class="method">
<a href="Sidekiq/Worker/ClassMethods.html#method-i-perform_bulk">#perform_bulk</a>
&mdash;
<span class="container">Sidekiq::Worker::ClassMethods</span>
<li class="method">
<a href="Sidekiq/Worker/Setter.html#method-i-perform_bulk">#perform_bulk</a>
&mdash;
<span class="container">Sidekiq::Worker::Setter</span>
<li class="method">
<a href="Sidekiq/Worker/Setter.html#method-i-perform_in">#perform_in</a>
&mdash;
<span class="container">Sidekiq::Worker::Setter</span>
<li class="method">
<a href="Sidekiq/Worker/ClassMethods.html#method-i-perform_in">#perform_in</a>
&mdash;
<span class="container">Sidekiq::Worker::ClassMethods</span>
<li class="method">
<a href="Sidekiq/Worker/Setter.html#method-i-perform_inline">#perform_inline</a>
&mdash;
<span class="container">Sidekiq::Worker::Setter</span>
<li class="method">
<a href="Sidekiq/Worker/ClassMethods.html#method-i-perform_inline">#perform_inline</a>
&mdash;
<span class="container">Sidekiq::Worker::ClassMethods</span>
<li class="method">
<a href="Sidekiq/Worker/Setter.html#method-i-perform_sync">#perform_sync</a>
&mdash;
<span class="container">Sidekiq::Worker::Setter</span>
<li class="method">
<a href="Sidekiq/Worker/ClassMethods.html#method-i-perform_sync">#perform_sync</a>
&mdash;
<span class="container">Sidekiq::Worker::ClassMethods</span>
<li class="method">
<a href="Sidekiq/Client.html#method-i-push">#push</a>
&mdash;
<span class="container">Sidekiq::Client</span>
<li class="method">
<a href="Sidekiq/Client.html#method-i-push_bulk">#push_bulk</a>
&mdash;
<span class="container">Sidekiq::Client</span>
<li class="method">
<a href="Sidekiq/Worker/ClassMethods.html#method-i-queue_as">#queue_as</a>
&mdash;
<span class="container">Sidekiq::Worker::ClassMethods</span>
<li class="method">
<a href="Sidekiq/Worker/ClassMethods.html#method-i-set">#set</a>
&mdash;
<span class="container">Sidekiq::Worker::ClassMethods</span>
<li class="method">
<a href="Sidekiq/Worker/Setter.html#method-i-set">#set</a>
&mdash;
<span class="container">Sidekiq::Worker::Setter</span>
<li class="method">
<a href="Sidekiq/Worker/Options/ClassMethods.html#method-i-sidekiq_class_attribute">#sidekiq_class_attribute</a>
&mdash;
<span class="container">Sidekiq::Worker::Options::ClassMethods</span>
<li class="method">
<a href="Sidekiq/Worker/ClassMethods.html#method-i-sidekiq_options">#sidekiq_options</a>
&mdash;
<span class="container">Sidekiq::Worker::ClassMethods</span>
<li class="method">
<a href="Sidekiq/Worker/Options/ClassMethods.html#method-i-sidekiq_options">#sidekiq_options</a>
&mdash;
<span class="container">Sidekiq::Worker::Options::ClassMethods</span>
<li class="method">
<a href="Sidekiq/Worker/Options/ClassMethods.html#method-i-sidekiq_retries_exhausted">#sidekiq_retries_exhausted</a>
&mdash;
<span class="container">Sidekiq::Worker::Options::ClassMethods</span>
<li class="method">
<a href="Sidekiq/Worker/Options/ClassMethods.html#method-i-sidekiq_retry_in">#sidekiq_retry_in</a>
&mdash;
<span class="container">Sidekiq::Worker::Options::ClassMethods</span>
</ul>
</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.0.1.
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
</footer>