1
0
mirror of https://github.com/InsanusMokrassar/TelegramBotAPI.git synced 2025-12-21 13:45:50 +00:00
This commit is contained in:
InsanusMokrassar
2022-12-28 03:23:33 +00:00
parent e94a65452f
commit bb58ec8543
8739 changed files with 8924 additions and 8820 deletions

View File

@@ -40,7 +40,7 @@
</a>
</div>
<div>
4.2.2 </div>
4.2.3 </div>
<div class="pull-right d-flex">
<div class="filter-section" id="filter-section">
<button class="platform-tag platform-selector common-like" data-active="" data-filter=":docs:dokkaHtml/commonMain">common</button>
@@ -58,44 +58,23 @@
<div class="breadcrumbs"><a href="../../../index.html">docs</a><span class="delimiter">/</span><a href="../index.html">dev.inmo.tgbotapi.bot.settings.limiters</a><span class="delimiter">/</span><span class="current">ExceptionsOnlyLimiter</span></div>
<div class="cover ">
<h1 class="cover"><span>Exceptions</span><wbr></wbr><span>Only</span><wbr></wbr><span><span>Limiter</span></span></h1>
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":docs:dokkaHtml/commonMain"><div class="symbol monospace"><span class="token keyword">class </span><a href="index.html">ExceptionsOnlyLimiter</a><span class="token punctuation">(</span><span class="parameters "><span class="parameter ">defaultTooManyRequestsDelay<span class="token operator">: </span><a href="../../dev.inmo.tgbotapi.types/index.html#1266067951%2FClasslikes%2F-1982836883">MilliSeconds</a><span class="token operator"> = </span><span class="token constant">1000</span></span></span><span class="token punctuation">)</span> : <a href="../-request-limiter/index.html">RequestLimiter</a></div><p class="paragraph">This limiter will limit requests only after getting a <a href="../../dev.inmo.tgbotapi.types/-retry-after-error/index.html">RetryAfterError</a> or <span data-unresolved-link="io.ktor.client.plugins/ClientRequestException///PointingToDeclaration/">ClientRequestException</span> with <span data-unresolved-link="io.ktor.http/HttpStatusCode.Companion/TooManyRequests/#/PointingToDeclaration/">HttpStatusCode.TooManyRequests</span> status code. Important thing is that in case if some of block has been blocked, all the others will wait until it will be possible to be called</p></div></div>
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":docs:dokkaHtml/commonMain"><div class="symbol monospace"><span class="token keyword">object </span><a href="index.html">ExceptionsOnlyLimiter</a> : <a href="../-request-limiter/index.html">RequestLimiter</a></div><p class="paragraph">Simple limiter which will lock any request when TooMuchRequestsExceptions is thrown and rerun request after lock time</p></div></div>
</div>
<div class="tabbedcontent">
<div class="tabs-section" tabs-section="tabs-section"><button class="section-tab" data-active="" data-togglable="Constructors">Constructors</button><button class="section-tab" data-togglable="Functions">Functions</button><button class="section-tab" data-togglable="Parameters">Parameters</button></div>
<div class="tabs-section" tabs-section="tabs-section"><button class="section-tab" data-active="" data-togglable="Functions">Functions</button></div>
<div class="tabs-section-body">
<h4 class="">Parameters</h4>
<div data-togglable="Parameters">
<div class="platform-hinted WithExtraAttributes" data-platform-hinted="data-platform-hinted" data-togglable="Parameters"><div class="content sourceset-dependent-content" data-active="" data-togglable=":docs:dokkaHtml/commonMain"><div data-togglable="Parameters"><div class="table" data-togglable="Parameters"><div class="table-row" data-filterable-current=":docs:dokkaHtml/commonMain" data-filterable-set=":docs:dokkaHtml/commonMain"><div class="main-subrow keyValue WithExtraAttributes"><div class=""><span class="inline-flex"><div><u><span>default</span><wbr></wbr><span>Too</span><wbr></wbr><span>Many</span><wbr></wbr><span>Requests</span><wbr></wbr><span><span>Delay</span></span></u></div></span></div><div><div class="title"><div data-togglable="Parameters"><p class="paragraph">This parameter will be used in case of getting <span data-unresolved-link="io.ktor.client.plugins/ClientRequestException///PointingToDeclaration/">ClientRequestException</span> with <span data-unresolved-link="io.ktor.http/HttpStatusCode.Companion/TooManyRequests/#/PointingToDeclaration/">HttpStatusCode.TooManyRequests</span> as a parameter for delay like it would be <a href="../../dev.inmo.tgbotapi.bot.exceptions/-too-much-requests-exception/index.html">TooMuchRequestsException</a>. The reason of it is that in <span data-unresolved-link="io.ktor.client.plugins/ClientRequestException///PointingToDeclaration/">ClientRequestException</span> there is no information about required delay between requests</p></div></div></div></div></div></div></div></div></div>
</div>
<h2 class="tabbedcontent">Constructors</h2>
<div class="table" data-togglable="Constructors"><a data-name="-1851131613%2FConstructors%2F-1982836883" anchor-label="ExceptionsOnlyLimiter" id="-1851131613%2FConstructors%2F-1982836883" data-filterable-set=":docs:dokkaHtml/commonMain"></a>
<div class="table-row" data-filterable-current=":docs:dokkaHtml/commonMain" data-filterable-set=":docs:dokkaHtml/commonMain">
<div class="main-subrow keyValue TabbedContent">
<div class=""><span class="inline-flex">
<div><a href="-exceptions-only-limiter.html"><span>Exceptions</span><wbr></wbr><span>Only</span><wbr></wbr><span><span>Limiter</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="-1851131613%2FConstructors%2F-1982836883"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":docs:dokkaHtml/commonMain"><div class="symbol monospace"><span class="token keyword"></span><span class="token keyword">fun </span><a href="-exceptions-only-limiter.html"><span class="token function">ExceptionsOnlyLimiter</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter ">defaultTooManyRequestsDelay<span class="token operator">: </span><a href="../../dev.inmo.tgbotapi.types/index.html#1266067951%2FClasslikes%2F-1982836883">MilliSeconds</a><span class="token operator"> = </span><span class="token constant">1000</span></span></span><span class="token punctuation">)</span></div></div></div>
</div>
</div>
</div>
</div>
</div>
<h2 class="">Functions</h2>
<div class="table" data-togglable="Functions"><a data-name="1966603133%2FFunctions%2F-1982836883" anchor-label="limit" id="1966603133%2FFunctions%2F-1982836883" data-filterable-set=":docs:dokkaHtml/commonMain"></a>
<div class="table" data-togglable="Functions"><a data-name="1384010514%2FFunctions%2F-1982836883" anchor-label="limit" id="1384010514%2FFunctions%2F-1982836883" data-filterable-set=":docs:dokkaHtml/commonMain"></a>
<div class="table-row" data-filterable-current=":docs:dokkaHtml/commonMain" data-filterable-set=":docs:dokkaHtml/commonMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="limit.html"><span><span>limit</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="1966603133%2FFunctions%2F-1982836883"></span>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="1384010514%2FFunctions%2F-1982836883"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":docs:dokkaHtml/commonMain"><div class="symbol monospace"><span class="token keyword">open </span><span class="token keyword">suspend override </span><span class="token keyword">fun </span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="limit.html">T</a><span class="token operator">&gt; </span><a href="limit.html"><span class="token function">limit</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter ">block<span class="token operator">: </span><span class="token keyword">suspend </span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token operator"> -&gt; </span><span class="token keyword"></span><a href="limit.html">T</a></span></span><span class="token punctuation">)</span><span class="token operator">: </span><a href="limit.html">T</a></div><div class="brief "><p class="paragraph">Use limit for working of block (like delay between or after, for example)</p></div></div></div>
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":docs:dokkaHtml/commonMain"><div class="symbol monospace"><span class="token keyword">open </span><span class="token keyword">suspend override </span><span class="token keyword">fun </span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="limit.html">T</a><span class="token operator">&gt; </span><a href="limit.html"><span class="token function">limit</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter ">block<span class="token operator">: </span><span class="token keyword">suspend </span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token operator"> -&gt; </span><span class="token keyword"></span><a href="limit.html">T</a></span></span><span class="token punctuation">)</span><span class="token operator">: </span><a href="limit.html">T</a></div><div class="brief "><p class="paragraph">Use limit for working of block (like delay between or after, for example)</p></div><div class="symbol monospace"><span class="token keyword">open </span><span class="token keyword">suspend </span><span class="token keyword">fun </span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="../-request-limiter/limit.html">T</a><span class="token operator"> : </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html">Any</a><span class="token operator">&gt; </span><a href="../-request-limiter/limit.html"><span class="token function">limit</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter ">request<span class="token operator">: </span><a href="../../dev.inmo.tgbotapi.requests.abstracts/-request/index.html">Request</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="../-request-limiter/limit.html">T</a><span class="token operator">&gt;</span><span class="token punctuation">, </span></span><span class="parameter ">block<span class="token operator">: </span><span class="token keyword">suspend </span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token operator"> -&gt; </span><span class="token keyword"></span><a href="../-request-limiter/limit.html">T</a></span></span><span class="token punctuation">)</span><span class="token operator">: </span><a href="../-request-limiter/limit.html">T</a></div></div></div>
</div>
</div>
</div>