Added Bukkit communication with BukkitScheduler

This commit is contained in:
Paldiu
2022-12-14 11:15:42 -06:00
parent 329726ed95
commit 262115a52e
78 changed files with 5535 additions and 711 deletions

View File

@ -6,7 +6,7 @@
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="dc.created" content="2022-12-13">
<meta name="description" content="declaration: package: io.github.simplex.simplexss, class: ServiceManager">
<meta name="description" content="declaration: package: io.github.simplexdevelopment.scheduler, class: ServiceManager">
<meta name="generator" content="javadoc/ClassWriterImpl">
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../script-dir/jquery-ui.min.css" title="Style">
@ -68,11 +68,11 @@ loadScripts(document, 'script');</script>
<main role="main">
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="sub-title"><span class="package-label-in-type">Package</span>&nbsp;<a href="package-summary.html">io.github.simplex.simplexss</a></div>
<div class="sub-title"><span class="package-label-in-type">Package</span>&nbsp;<a href="package-summary.html">io.github.simplexdevelopment.scheduler</a></div>
<h1 title="Class ServiceManager" class="title">Class ServiceManager</h1>
</div>
<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">java.lang.Object</a>
<div class="inheritance">io.github.simplex.simplexss.ServiceManager</div>
<div class="inheritance">io.github.simplexdevelopment.scheduler.ServiceManager</div>
</div>
<section class="class-description" id="class-description">
<hr>
@ -90,7 +90,7 @@ loadScripts(document, 'script');</script>
<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="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.simplex.simplexss">ServicePool</a>&gt;</code></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="#servicePools" class="member-name-link">servicePools</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
</div>
@ -122,34 +122,34 @@ loadScripts(document, 'script');</script>
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Method</div>
<div class="table-header col-last">Description</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.simplex.simplexss">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="#addToExistingPool(io.github.simplex.simplexss.ServicePool,io.github.simplex.api.IService...)" class="member-name-link">addToExistingPool</a><wbr>(@NotNull <a href="ServicePool.html" title="class in io.github.simplex.simplexss">ServicePool</a>&nbsp;pool,
<a href="../api/IService.html" title="interface in io.github.simplex.api">IService</a>...&nbsp;services)</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="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="#addToExistingPool(io.github.simplexdevelopment.scheduler.ServicePool,io.github.simplexdevelopment.api.IService...)" class="member-name-link">addToExistingPool</a><wbr>(@NotNull <a href="ServicePool.html" title="class in io.github.simplexdevelopment.scheduler">ServicePool</a>&nbsp;pool,
<a href="../api/IService.html" title="interface in io.github.simplexdevelopment.api">IService</a>...&nbsp;services)</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="ServicePool.html" title="class in io.github.simplex.simplexss">ServicePool</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="#createServicePool(org.bukkit.NamespacedKey,io.github.simplex.api.IService...)" class="member-name-link">createServicePool</a><wbr>(org.bukkit.NamespacedKey&nbsp;poolName,
<a href="../api/IService.html" title="interface in io.github.simplex.api">IService</a>...&nbsp;services)</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;<a href="ServicePool.html" title="class in io.github.simplexdevelopment.scheduler">ServicePool</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="#createServicePool(org.bukkit.NamespacedKey,io.github.simplexdevelopment.api.IService...)" class="member-name-link">createServicePool</a><wbr>(org.bukkit.NamespacedKey&nbsp;poolName,
<a href="../api/IService.html" title="interface in io.github.simplexdevelopment.api">IService</a>...&nbsp;services)</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.simplex.simplexss">ServicePool</a>&gt;</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="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="#emptyServicePool(org.bukkit.NamespacedKey,boolean)" class="member-name-link">emptyServicePool</a><wbr>(org.bukkit.NamespacedKey&nbsp;poolName,
boolean&nbsp;multithreaded)</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="ServicePool.html" title="class in io.github.simplex.simplexss">ServicePool</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="#getAssociatedServicePool(io.github.simplex.api.IService)" class="member-name-link">getAssociatedServicePool</a><wbr>(<a href="../api/IService.html" title="interface in io.github.simplex.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;<a href="ServicePool.html" title="class in io.github.simplexdevelopment.scheduler">ServicePool</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="#getAssociatedServicePool(io.github.simplexdevelopment.api.IService)" class="member-name-link">getAssociatedServicePool</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 class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>@NotNull reactor.core.publisher.Flux&lt;<a href="ServicePool.html" title="class in io.github.simplex.simplexss">ServicePool</a>&gt;</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.Flux&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="#getServicePools()" class="member-name-link">getServicePools</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>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#locateServiceWithinPools(io.github.simplex.api.IService)" class="member-name-link">locateServiceWithinPools</a><wbr>(<a href="../api/IService.html" title="interface in io.github.simplex.api">IService</a>&nbsp;service)</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#locateServiceWithinPools(io.github.simplexdevelopment.api.IService)" class="member-name-link">locateServiceWithinPools</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 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.simplex.simplexss">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="#multithreadedServicePool(org.bukkit.NamespacedKey,io.github.simplex.api.IService...)" class="member-name-link">multithreadedServicePool</a><wbr>(org.bukkit.NamespacedKey&nbsp;name,
<a href="../api/IService.html" title="interface in io.github.simplex.api">IService</a>...&nbsp;services)</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="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="#multithreadedServicePool(org.bukkit.NamespacedKey,io.github.simplexdevelopment.api.IService...)" class="member-name-link">multithreadedServicePool</a><wbr>(org.bukkit.NamespacedKey&nbsp;name,
<a href="../api/IService.html" title="interface in io.github.simplexdevelopment.api">IService</a>...&nbsp;services)</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="ServicePool.html" title="class in io.github.simplex.simplexss">ServicePool</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="#takeFromExistingPool(io.github.simplex.simplexss.ServicePool,io.github.simplex.api.IService...)" class="member-name-link">takeFromExistingPool</a><wbr>(@NotNull <a href="ServicePool.html" title="class in io.github.simplex.simplexss">ServicePool</a>&nbsp;pool,
<a href="../api/IService.html" title="interface in io.github.simplex.api">IService</a>...&nbsp;services)</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;<a href="ServicePool.html" title="class in io.github.simplexdevelopment.scheduler">ServicePool</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="#takeFromExistingPool(io.github.simplexdevelopment.scheduler.ServicePool,io.github.simplexdevelopment.api.IService...)" class="member-name-link">takeFromExistingPool</a><wbr>(@NotNull <a href="ServicePool.html" title="class in io.github.simplexdevelopment.scheduler">ServicePool</a>&nbsp;pool,
<a href="../api/IService.html" title="interface in io.github.simplexdevelopment.api">IService</a>...&nbsp;services)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
</div>
</div>
@ -171,7 +171,7 @@ loadScripts(document, 'script');</script>
<li>
<section class="detail" id="servicePools">
<h3>servicePools</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.simplex.simplexss">ServicePool</a>&gt;</span>&nbsp;<span class="element-name">servicePools</span></div>
<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">servicePools</span></div>
</section>
</li>
</ul>
@ -190,7 +190,7 @@ loadScripts(document, 'script');</script>
This class acts as a Service Pool factory, and can be used to create
both single and multithreaded Service Pools, empty service pools, as well as
retrieve existing Service Pools. It also provides methods for you to add and remove
<a href="../api/IService.html" title="interface in io.github.simplex.api"><code>IService</code></a>s from the {ServicePool} parameter.</div>
<a href="../api/IService.html" title="interface in io.github.simplexdevelopment.api"><code>IService</code></a>s from the {ServicePool} parameter.</div>
</section>
</li>
</ul>
@ -202,37 +202,37 @@ loadScripts(document, 'script');</script>
<h2>Method Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="createServicePool(org.bukkit.NamespacedKey,io.github.simplex.api.IService...)">
<section class="detail" id="createServicePool(org.bukkit.NamespacedKey,io.github.simplexdevelopment.api.IService...)">
<h3>createServicePool</h3>
<div class="member-signature"><span class="annotations">@Contract(pure=true,
value="_, _ -&gt; new")
@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.simplex.simplexss">ServicePool</a>&gt;</span>&nbsp;<span class="element-name">createServicePool</span><wbr><span class="parameters">(org.bukkit.NamespacedKey&nbsp;poolName,
<a href="../api/IService.html" title="interface in io.github.simplex.api">IService</a>...&nbsp;services)</span></div>
</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">createServicePool</span><wbr><span class="parameters">(org.bukkit.NamespacedKey&nbsp;poolName,
<a href="../api/IService.html" title="interface in io.github.simplexdevelopment.api">IService</a>...&nbsp;services)</span></div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>poolName</code> - The name of the service pool.</dd>
<dd><code>services</code> - The services to register within the service pool.</dd>
<dt>Returns:</dt>
<dd>A <code>Mono</code> object which contains a <a href="ServicePool.html" title="class in io.github.simplex.simplexss"><code>ServicePool</code></a> element.
<dd>A <code>Mono</code> object which contains a <a href="ServicePool.html" title="class in io.github.simplexdevelopment.scheduler"><code>ServicePool</code></a> element.
This service pool will execute each service consecutively within a singular non-blocking thread.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="multithreadedServicePool(org.bukkit.NamespacedKey,io.github.simplex.api.IService...)">
<section class="detail" id="multithreadedServicePool(org.bukkit.NamespacedKey,io.github.simplexdevelopment.api.IService...)">
<h3>multithreadedServicePool</h3>
<div class="member-signature"><span class="annotations">@Contract(pure=true,
value="_, _ -&gt; new")
@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.simplex.simplexss">ServicePool</a>&gt;</span>&nbsp;<span class="element-name">multithreadedServicePool</span><wbr><span class="parameters">(org.bukkit.NamespacedKey&nbsp;name,
<a href="../api/IService.html" title="interface in io.github.simplex.api">IService</a>...&nbsp;services)</span></div>
</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">multithreadedServicePool</span><wbr><span class="parameters">(org.bukkit.NamespacedKey&nbsp;name,
<a href="../api/IService.html" title="interface in io.github.simplexdevelopment.api">IService</a>...&nbsp;services)</span></div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>name</code> - The name of the service pool.</dd>
<dd><code>services</code> - The services to register within the service pool.</dd>
<dt>Returns:</dt>
<dd>A <code>Mono</code> object which contains a <a href="ServicePool.html" title="class in io.github.simplex.simplexss"><code>ServicePool</code></a> element.
<dd>A <code>Mono</code> object which contains a <a href="ServicePool.html" title="class in io.github.simplexdevelopment.scheduler"><code>ServicePool</code></a> element.
This service pool will execute each service across a set of non-blocking threads.</dd>
</dl>
</section>
@ -243,51 +243,51 @@ loadScripts(document, 'script');</script>
<div class="member-signature"><span class="annotations">@Contract(pure=true,
value="_, _ -&gt; new")
@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.simplex.simplexss">ServicePool</a>&gt;</span>&nbsp;<span class="element-name">emptyServicePool</span><wbr><span class="parameters">(org.bukkit.NamespacedKey&nbsp;poolName,
</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">emptyServicePool</span><wbr><span class="parameters">(org.bukkit.NamespacedKey&nbsp;poolName,
boolean&nbsp;multithreaded)</span></div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>poolName</code> - The name of the service pool.</dd>
<dd><code>multithreaded</code> - Whether the service pool should be multithreaded, or operate upon a single thread.</dd>
<dt>Returns:</dt>
<dd>A <code>Mono</code> object which contains a <a href="ServicePool.html" title="class in io.github.simplex.simplexss"><code>ServicePool</code></a> element.
<dd>A <code>Mono</code> object which contains a <a href="ServicePool.html" title="class in io.github.simplexdevelopment.scheduler"><code>ServicePool</code></a> element.
This pool is empty, meaning it contains no services. Any attempt to run services on this pool while it remains empty will either fail or error.
You can add services to this pool by using <a href="#addToExistingPool(io.github.simplex.simplexss.ServicePool,io.github.simplex.api.IService...)"><code>addToExistingPool(ServicePool, IService...)</code></a>,
or by using <a href="ServicePool.html#addService(io.github.simplex.api.IService)"><code>ServicePool.addService(IService)</code></a>.</dd>
You can add services to this pool by using <a href="#addToExistingPool(io.github.simplexdevelopment.scheduler.ServicePool,io.github.simplexdevelopment.api.IService...)"><code>addToExistingPool(ServicePool, IService...)</code></a>,
or by using <a href="ServicePool.html#addService(io.github.simplexdevelopment.api.IService)"><code>ServicePool.addService(IService)</code></a>.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="addToExistingPool(io.github.simplex.simplexss.ServicePool,io.github.simplex.api.IService...)">
<section class="detail" id="addToExistingPool(io.github.simplexdevelopment.scheduler.ServicePool,io.github.simplexdevelopment.api.IService...)">
<h3>addToExistingPool</h3>
<div class="member-signature"><span class="annotations">@Contract("_, _ -&gt; new")
@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.simplex.simplexss">ServicePool</a>&gt;</span>&nbsp;<span class="element-name">addToExistingPool</span><wbr><span class="parameters">(@NotNull
@NotNull <a href="ServicePool.html" title="class in io.github.simplex.simplexss">ServicePool</a>&nbsp;pool,
<a href="../api/IService.html" title="interface in io.github.simplex.api">IService</a>...&nbsp;services)</span></div>
</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">addToExistingPool</span><wbr><span class="parameters">(@NotNull
@NotNull <a href="ServicePool.html" title="class in io.github.simplexdevelopment.scheduler">ServicePool</a>&nbsp;pool,
<a href="../api/IService.html" title="interface in io.github.simplexdevelopment.api">IService</a>...&nbsp;services)</span></div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>pool</code> - The service pool to add to.</dd>
<dd><code>services</code> - The services to register within the service pool.</dd>
<dt>Returns:</dt>
<dd>A <code>Mono</code> object which contains the <a href="ServicePool.html" title="class in io.github.simplex.simplexss"><code>ServicePool</code></a> element that now contains the registered services.</dd>
<dd>A <code>Mono</code> object which contains the <a href="ServicePool.html" title="class in io.github.simplexdevelopment.scheduler"><code>ServicePool</code></a> element that now contains the registered services.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="takeFromExistingPool(io.github.simplex.simplexss.ServicePool,io.github.simplex.api.IService...)">
<section class="detail" id="takeFromExistingPool(io.github.simplexdevelopment.scheduler.ServicePool,io.github.simplexdevelopment.api.IService...)">
<h3>takeFromExistingPool</h3>
<div class="member-signature"><span class="annotations">@Contract("_, _ -&gt; new")
@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.simplex.simplexss">ServicePool</a>&gt;</span>&nbsp;<span class="element-name">takeFromExistingPool</span><wbr><span class="parameters">(@NotNull
@NotNull <a href="ServicePool.html" title="class in io.github.simplex.simplexss">ServicePool</a>&nbsp;pool,
<a href="../api/IService.html" title="interface in io.github.simplex.api">IService</a>...&nbsp;services)</span></div>
</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">takeFromExistingPool</span><wbr><span class="parameters">(@NotNull
@NotNull <a href="ServicePool.html" title="class in io.github.simplexdevelopment.scheduler">ServicePool</a>&nbsp;pool,
<a href="../api/IService.html" title="interface in io.github.simplexdevelopment.api">IService</a>...&nbsp;services)</span></div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>pool</code> - The service pool to take from.</dd>
<dd><code>services</code> - The services to remove from the pool.</dd>
<dt>Returns:</dt>
<dd>A <code>Mono</code> object which contains the <a href="ServicePool.html" title="class in io.github.simplex.simplexss"><code>ServicePool</code></a> that no longer contains the removed services.</dd>
<dd>A <code>Mono</code> object which contains the <a href="ServicePool.html" title="class in io.github.simplexdevelopment.scheduler"><code>ServicePool</code></a> that no longer contains the removed services.</dd>
</dl>
</section>
</li>
@ -296,7 +296,7 @@ loadScripts(document, 'script');</script>
<h3>getServicePools</h3>
<div class="member-signature"><span class="annotations">@Contract(" -&gt; new")
@NotNull
</span><span class="modifiers">public</span>&nbsp;<span class="return-type">@NotNull reactor.core.publisher.Flux&lt;<a href="ServicePool.html" title="class in io.github.simplex.simplexss">ServicePool</a>&gt;</span>&nbsp;<span class="element-name">getServicePools</span>()</div>
</span><span class="modifiers">public</span>&nbsp;<span class="return-type">@NotNull reactor.core.publisher.Flux&lt;<a href="ServicePool.html" title="class in io.github.simplexdevelopment.scheduler">ServicePool</a>&gt;</span>&nbsp;<span class="element-name">getServicePools</span>()</div>
<dl class="notes">
<dt>Returns:</dt>
<dd>A <code>Flux</code> object which contains all the service pools currently available.</dd>
@ -304,10 +304,10 @@ loadScripts(document, 'script');</script>
</section>
</li>
<li>
<section class="detail" id="locateServiceWithinPools(io.github.simplex.api.IService)">
<section class="detail" id="locateServiceWithinPools(io.github.simplexdevelopment.api.IService)">
<h3>locateServiceWithinPools</h3>
<div class="member-signature"><span class="annotations">@Contract(pure=true)
</span><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">locateServiceWithinPools</span><wbr><span class="parameters">(<a href="../api/IService.html" title="interface in io.github.simplex.api">IService</a>&nbsp;service)</span></div>
</span><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">locateServiceWithinPools</span><wbr><span class="parameters">(<a href="../api/IService.html" title="interface in io.github.simplexdevelopment.api">IService</a>&nbsp;service)</span></div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>service</code> - The service to locate.</dd>
@ -317,16 +317,16 @@ loadScripts(document, 'script');</script>
</section>
</li>
<li>
<section class="detail" id="getAssociatedServicePool(io.github.simplex.api.IService)">
<section class="detail" id="getAssociatedServicePool(io.github.simplexdevelopment.api.IService)">
<h3>getAssociatedServicePool</h3>
<div class="member-signature"><span class="annotations">@Contract("_ -&gt; new")
@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.simplex.simplexss">ServicePool</a>&gt;</span>&nbsp;<span class="element-name">getAssociatedServicePool</span><wbr><span class="parameters">(<a href="../api/IService.html" title="interface in io.github.simplex.api">IService</a>&nbsp;service)</span></div>
</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">getAssociatedServicePool</span><wbr><span class="parameters">(<a href="../api/IService.html" title="interface in io.github.simplexdevelopment.api">IService</a>&nbsp;service)</span></div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>service</code> - The service pool to call from.</dd>
<dt>Returns:</dt>
<dd>A <code>Mono</code> object which contains a <a href="ServicePool.html" title="class in io.github.simplex.simplexss"><code>ServicePool</code></a> element which contains the specified service.
<dd>A <code>Mono</code> object which contains a <a href="ServicePool.html" title="class in io.github.simplexdevelopment.scheduler"><code>ServicePool</code></a> element which contains the specified service.
If no service pool can be found, an empty Mono is returned.</dd>
</dl>
</section>