Finalization

This commit is contained in:
Paldiu
2022-12-14 12:57:45 -06:00
parent 99c78e320f
commit 1687ca32f3
74 changed files with 2382 additions and 750 deletions

View File

@ -1,7 +1,7 @@
<!DOCTYPE HTML>
<html lang="en">
<head>
<!-- Generated by javadoc (17) on Wed Dec 14 11:14:32 CST 2022 -->
<!-- Generated by javadoc (17) on Wed Dec 14 12:57:20 CST 2022 -->
<title>SchedulingSystem</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
@ -36,6 +36,7 @@ loadScripts(document, 'script');</script>
<li><a href="package-summary.html">Package</a></li>
<li class="nav-bar-cell1-rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-files/index-1.html">Index</a></li>
<li><a href="../../../../help-doc.html#class">Help</a></li>
</ul>
@ -95,18 +96,26 @@ implements <a href="../api/ISchedule.html" title="interface in io.github.simplex
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Field</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color"><code>private final <a href="ReactorBukkitScheduler.html" title="class in io.github.simplexdevelopment.scheduler">ReactorBukkitScheduler</a></code></div>
<div class="col-second even-row-color"><code><a href="#mainScheduler" class="member-name-link">mainScheduler</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>private final <a href="SchedulingSystem.html" title="type parameter in SchedulingSystem">T</a></code></div>
<div class="col-second odd-row-color"><code><a href="#plugin" class="member-name-link">plugin</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>private final <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Set.html" title="class or interface in java.util" class="external-link">Set</a>&lt;<a href="ServicePool.html" title="class in io.github.simplexdevelopment.scheduler">ServicePool</a>&gt;</code></div>
<div class="col-second even-row-color"><code><a href="#repeatingPools" class="member-name-link">repeatingPools</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>(package private) static int</code></div>
<div class="col-second even-row-color"><code><a href="#denom" class="member-name-link">denom</a></code></div>
<div class="col-last even-row-color">
<div class="block">A denominator to use when registering default service pool names.</div>
</div>
<div class="col-first odd-row-color"><code>private final <a href="ReactorBukkitScheduler.html" title="class in io.github.simplexdevelopment.scheduler">ReactorBukkitScheduler</a></code></div>
<div class="col-second odd-row-color"><code><a href="#mainScheduler" class="member-name-link">mainScheduler</a></code></div>
<div class="col-last odd-row-color">
<div class="block">The main scheduler which this system runs on.</div>
</div>
<div class="col-first even-row-color"><code>private final <a href="SchedulingSystem.html" title="type parameter in SchedulingSystem">T</a></code></div>
<div class="col-second even-row-color"><code><a href="#plugin" class="member-name-link">plugin</a></code></div>
<div class="col-last even-row-color">
<div class="block">The plugin to use for registering tasks.</div>
</div>
<div class="col-first odd-row-color"><code>private final <a href="ServiceManager.html" title="class in io.github.simplexdevelopment.scheduler">ServiceManager</a></code></div>
<div class="col-second odd-row-color"><code><a href="#serviceManager" class="member-name-link">serviceManager</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-last odd-row-color">
<div class="block">The service manager to use for controlling service pools.</div>
</div>
</div>
</section>
</li>
@ -148,18 +157,17 @@ implements <a href="../api/ISchedule.html" title="interface in io.github.simplex
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>@NotNull reactor.core.publisher.Mono&lt;<a href="SchedulingSystem.html" title="type parameter in SchedulingSystem">T</a>&gt;</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getProvidingPlugin()" class="member-name-link">getProvidingPlugin</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Set.html" title="class or interface in java.util" class="external-link">Set</a>&lt;<a href="ServicePool.html" title="class in io.github.simplexdevelopment.scheduler">ServicePool</a>&gt;</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getRepeatingPools()" class="member-name-link">getRepeatingPools</a>()</code></div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>@NotNull reactor.core.publisher.Mono&lt;<a href="ServiceManager.html" title="class in io.github.simplexdevelopment.scheduler">ServiceManager</a>&gt;</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getServiceManager()" class="member-name-link">getServiceManager</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>@NotNull reactor.core.publisher.Mono&lt;<a href="ServiceManager.html" title="class in io.github.simplexdevelopment.scheduler">ServiceManager</a>&gt;</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getServiceManager()" class="member-name-link">getServiceManager</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>@NotNull reactor.core.publisher.Mono&lt;<a href="ServicePool.html" title="class in io.github.simplexdevelopment.scheduler">ServicePool</a>&gt;</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#queue(io.github.simplexdevelopment.api.IService)" class="member-name-link">queue</a><wbr>(@NotNull <a href="../api/IService.html" title="interface in io.github.simplexdevelopment.api">IService</a>&nbsp;service)</code></div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>@NotNull reactor.core.publisher.Mono&lt;reactor.core.Disposable&gt;</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#queue(io.github.simplexdevelopment.api.IService)" class="member-name-link">queue</a><wbr>(@NotNull <a href="../api/IService.html" title="interface in io.github.simplexdevelopment.api">IService</a>&nbsp;service)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Queues a service to be executed in a service pool.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>@NotNull reactor.core.publisher.Mono&lt;<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Void.html" title="class or interface in java.lang" class="external-link">Void</a>&gt;</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#runOnce(io.github.simplexdevelopment.api.IService)" class="member-name-link">runOnce</a><wbr>(<a href="../api/IService.html" title="interface in io.github.simplexdevelopment.api">IService</a>&nbsp;service)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>@NotNull reactor.core.publisher.Mono&lt;<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Void.html" title="class or interface in java.lang" class="external-link">Void</a>&gt;</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#runOnce(io.github.simplexdevelopment.api.IService)" class="member-name-link">runOnce</a><wbr>(<a href="../api/IService.html" title="interface in io.github.simplexdevelopment.api">IService</a>&nbsp;service)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
</div>
</div>
</div>
@ -178,27 +186,32 @@ implements <a href="../api/ISchedule.html" title="interface in io.github.simplex
<h2>Field Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="denom">
<h3>denom</h3>
<div class="member-signature"><span class="modifiers">static</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">denom</span></div>
<div class="block">A denominator to use when registering default service pool names.</div>
</section>
</li>
<li>
<section class="detail" id="serviceManager">
<h3>serviceManager</h3>
<div class="member-signature"><span class="modifiers">private final</span>&nbsp;<span class="return-type"><a href="ServiceManager.html" title="class in io.github.simplexdevelopment.scheduler">ServiceManager</a></span>&nbsp;<span class="element-name">serviceManager</span></div>
<div class="block">The service manager to use for controlling service pools.</div>
</section>
</li>
<li>
<section class="detail" id="plugin">
<h3>plugin</h3>
<div class="member-signature"><span class="modifiers">private final</span>&nbsp;<span class="return-type"><a href="SchedulingSystem.html" title="type parameter in SchedulingSystem">T</a> extends org.bukkit.plugin.java.JavaPlugin</span>&nbsp;<span class="element-name">plugin</span></div>
</section>
</li>
<li>
<section class="detail" id="repeatingPools">
<h3>repeatingPools</h3>
<div class="member-signature"><span class="modifiers">private final</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Set.html" title="class or interface in java.util" class="external-link">Set</a>&lt;<a href="ServicePool.html" title="class in io.github.simplexdevelopment.scheduler">ServicePool</a>&gt;</span>&nbsp;<span class="element-name">repeatingPools</span></div>
<div class="block">The plugin to use for registering tasks. This should be an instance of your plugin.</div>
</section>
</li>
<li>
<section class="detail" id="mainScheduler">
<h3>mainScheduler</h3>
<div class="member-signature"><span class="modifiers">private final</span>&nbsp;<span class="return-type"><a href="ReactorBukkitScheduler.html" title="class in io.github.simplexdevelopment.scheduler">ReactorBukkitScheduler</a></span>&nbsp;<span class="element-name">mainScheduler</span></div>
<div class="block">The main scheduler which this system runs on. This is an abstraction of the <code>BukkitScheduler</code>,
and as a result runs on the Main server thread.</div>
</section>
</li>
</ul>
@ -229,17 +242,6 @@ implements <a href="../api/ISchedule.html" title="interface in io.github.simplex
<h2>Method Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="getRepeatingPools()">
<h3>getRepeatingPools</h3>
<div class="member-signature"><span class="annotations">@Contract(pure=true)
</span><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Set.html" title="class or interface in java.util" class="external-link">Set</a>&lt;<a href="ServicePool.html" title="class in io.github.simplexdevelopment.scheduler">ServicePool</a>&gt;</span>&nbsp;<span class="element-name">getRepeatingPools</span>()</div>
<dl class="notes">
<dt>Returns:</dt>
<dd>A set of <a href="ServicePool.html" title="class in io.github.simplexdevelopment.scheduler"><code>ServicePool</code></a>s which contain repeating services.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getServiceManager()">
<h3>getServiceManager</h3>
<div class="member-signature"><span class="annotations">@NotNull
@ -256,16 +258,17 @@ implements <a href="../api/ISchedule.html" title="interface in io.github.simplex
<section class="detail" id="queue(io.github.simplexdevelopment.api.IService)">
<h3>queue</h3>
<div class="member-signature"><span class="annotations">@NotNull
</span><span class="modifiers">public</span>&nbsp;<span class="return-type">@NotNull reactor.core.publisher.Mono&lt;<a href="ServicePool.html" title="class in io.github.simplexdevelopment.scheduler">ServicePool</a>&gt;</span>&nbsp;<span class="element-name">queue</span><wbr><span class="parameters">(@NotNull
</span><span class="modifiers">public</span>&nbsp;<span class="return-type">@NotNull reactor.core.publisher.Mono&lt;reactor.core.Disposable&gt;</span>&nbsp;<span class="element-name">queue</span><wbr><span class="parameters">(@NotNull
@NotNull <a href="../api/IService.html" title="interface in io.github.simplexdevelopment.api">IService</a>&nbsp;service)</span></div>
<div class="block"><span class="descfrm-type-label">Description copied from interface:&nbsp;<code><a href="../api/ISchedule.html#queue(io.github.simplexdevelopment.api.IService)">ISchedule</a></code></span></div>
<div class="block">Queues a service to be executed in a service pool.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../api/ISchedule.html#queue(io.github.simplexdevelopment.api.IService)">queue</a></code>&nbsp;in interface&nbsp;<code><a href="../api/ISchedule.html" title="interface in io.github.simplexdevelopment.api">ISchedule</a></code></dd>
<dt>Parameters:</dt>
<dd><code>service</code> - The service to use to locate the associated service pool and queue the service for execution.</dd>
<dt>Returns:</dt>
<dd>A Mono<ServicePool> that can be used to prepare the service for execution within it's associated service pool.
If the service has no associated pool, a new pool will be created.</dd>
<dd>A Mono<Disposable> that can be used to cancel the service.</dd>
</dl>
</section>
</li>