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

@ -0,0 +1,310 @@
<!DOCTYPE HTML>
<html lang="en">
<head>
<!-- Generated by javadoc (17) on Wed Dec 14 11:14:32 CST 2022 -->
<title>BukkitDisposable</title>
<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-14">
<meta name="description" content="declaration: package: io.github.simplexdevelopment.scheduler, record: BukkitDisposable">
<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">
<link rel="stylesheet" type="text/css" href="../../../../jquery-ui.overrides.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>
<script type="text/javascript" src="../../../../script-dir/jquery-3.5.1.min.js"></script>
<script type="text/javascript" src="../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-declaration-page">
<script type="text/javascript">var evenRowColor = "even-row-color";
var oddRowColor = "odd-row-color";
var tableTab = "table-tab";
var activeTableTab = "active-table-tab";
var pathtoroot = "../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top">
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../index.html">Overview</a></li>
<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="../../../../index-files/index-1.html">Index</a></li>
<li><a href="../../../../help-doc.html#class">Help</a></li>
</ul>
</div>
<div class="sub-nav">
<div>
<ul class="sub-nav-list">
<li>Summary:&nbsp;</li>
<li><a href="#nested-class-summary">Nested</a>&nbsp;|&nbsp;</li>
<li><a href="#field-summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor-summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-summary">Method</a></li>
</ul>
<ul class="sub-nav-list">
<li>Detail:&nbsp;</li>
<li><a href="#field-detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor-detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-detail">Method</a></li>
</ul>
</div>
<div class="nav-list-search"><label for="search-input">SEARCH:</label>
<input type="text" id="search-input" value="search" disabled="disabled">
<input type="reset" id="reset-button" value="reset" disabled="disabled">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<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.simplexdevelopment.scheduler</a></div>
<h1 title="Record Class BukkitDisposable" class="title">Record Class BukkitDisposable</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"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Record.html" title="class or interface in java.lang" class="external-link">java.lang.Record</a>
<div class="inheritance">io.github.simplexdevelopment.scheduler.BukkitDisposable</div>
</div>
</div>
<section class="class-description" id="class-description">
<dl class="notes">
<dt>All Implemented Interfaces:</dt>
<dd><code>reactor.core.Disposable</code></dd>
</dl>
<hr>
<div class="type-signature"><span class="modifiers">public record </span><span class="element-name type-name-label">BukkitDisposable</span>(org.bukkit.scheduler.BukkitTask&nbsp;task)
<span class="extends-implements">extends <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Record.html" title="class or interface in java.lang" class="external-link">Record</a>
implements reactor.core.Disposable</span></div>
</section>
<section class="summary">
<ul class="summary-list">
<!-- ======== NESTED CLASS SUMMARY ======== -->
<li>
<section class="nested-class-summary" id="nested-class-summary">
<h2>Nested Class Summary</h2>
<div class="inherited-list">
<h2 id="nested-classes-inherited-from-class-reactor.core.Disposable">Nested classes/interfaces inherited from interface&nbsp;reactor.core.Disposable</h2>
<code>reactor.core.Disposable.Composite, reactor.core.Disposable.Swap</code></div>
</section>
</li>
<!-- =========== FIELD SUMMARY =========== -->
<li>
<section class="field-summary" id="field-summary">
<h2>Field Summary</h2>
<div class="caption"><span>Fields</span></div>
<div class="summary-table three-column-summary">
<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 org.bukkit.scheduler.BukkitTask</code></div>
<div class="col-second even-row-color"><code><a href="#task" class="member-name-link">task</a></code></div>
<div class="col-last even-row-color">
<div class="block">The field for the <code>task</code> record component.</div>
</div>
</div>
</section>
</li>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<li>
<section class="constructor-summary" id="constructor-summary">
<h2>Constructor Summary</h2>
<div class="caption"><span>Constructors</span></div>
<div class="summary-table two-column-summary">
<div class="table-header col-first">Constructor</div>
<div class="table-header col-last">Description</div>
<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E(org.bukkit.scheduler.BukkitTask)" class="member-name-link">BukkitDisposable</a><wbr>(org.bukkit.scheduler.BukkitTask&nbsp;task)</code></div>
<div class="col-last even-row-color">
<div class="block">Creates an instance of a <code>BukkitDisposable</code> record class.</div>
</div>
</div>
</section>
</li>
<!-- ========== METHOD SUMMARY =========== -->
<li>
<section class="method-summary" id="method-summary">
<h2>Method Summary</h2>
<div id="method-summary-table">
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete Methods</button></div>
<div id="method-summary-table.tabpanel" role="tabpanel">
<div class="summary-table three-column-summary" aria-labelledby="method-summary-table-tab0">
<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>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#dispose()" class="member-name-link">dispose</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Disposes of the task upstream on the Bukkit scheduler.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>final boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#equals(java.lang.Object)" class="member-name-link">equals</a><wbr>(<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">Object</a>&nbsp;o)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Indicates whether some other object is "equal to" this one.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>final int</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hashCode()" class="member-name-link">hashCode</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns a hash code value for this object.</div>
</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="#isDisposed()" class="member-name-link">isDisposed</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Checks if the task is cancelled.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>org.bukkit.scheduler.BukkitTask</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#task()" class="member-name-link">task</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns the value of the <code>task</code> record component.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>final <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#toString()" class="member-name-link">toString</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns a string representation of this record class.</div>
</div>
</div>
</div>
</div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class&nbsp;java.lang.<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">Object</a></h3>
<code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link">wait</a></code></div>
</section>
</li>
</ul>
</section>
<section class="details">
<ul class="details-list">
<!-- ============ FIELD DETAIL =========== -->
<li>
<section class="field-details" id="field-detail">
<h2>Field Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="task">
<h3>task</h3>
<div class="member-signature"><span class="modifiers">private final</span>&nbsp;<span class="return-type">org.bukkit.scheduler.BukkitTask</span>&nbsp;<span class="element-name">task</span></div>
<div class="block">The field for the <code>task</code> record component.</div>
</section>
</li>
</ul>
</section>
</li>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<li>
<section class="constructor-details" id="constructor-detail">
<h2>Constructor Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="&lt;init&gt;(org.bukkit.scheduler.BukkitTask)">
<h3>BukkitDisposable</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="element-name">BukkitDisposable</span><wbr><span class="parameters">(org.bukkit.scheduler.BukkitTask&nbsp;task)</span></div>
<div class="block">Creates an instance of a <code>BukkitDisposable</code> record class.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>task</code> - the value for the <code>task</code> record component</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
<!-- ============ METHOD DETAIL ========== -->
<li>
<section class="method-details" id="method-detail">
<h2>Method Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="dispose()">
<h3>dispose</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">dispose</span>()</div>
<div class="block">Disposes of the task upstream on the Bukkit scheduler.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>dispose</code>&nbsp;in interface&nbsp;<code>reactor.core.Disposable</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="isDisposed()">
<h3>isDisposed</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">isDisposed</span>()</div>
<div class="block">Checks if the task is cancelled.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>isDisposed</code>&nbsp;in interface&nbsp;<code>reactor.core.Disposable</code></dd>
<dt>Returns:</dt>
<dd>true if the task is cancelled, false otherwise.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="toString()">
<h3>toString</h3>
<div class="member-signature"><span class="modifiers">public final</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span>&nbsp;<span class="element-name">toString</span>()</div>
<div class="block">Returns a string representation of this record class. The representation contains the name of the class, followed by the name and value of each of the record components.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Record.html#toString()" title="class or interface in java.lang" class="external-link">toString</a></code>&nbsp;in class&nbsp;<code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Record.html" title="class or interface in java.lang" class="external-link">Record</a></code></dd>
<dt>Returns:</dt>
<dd>a string representation of this object</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hashCode()">
<h3>hashCode</h3>
<div class="member-signature"><span class="modifiers">public final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">hashCode</span>()</div>
<div class="block">Returns a hash code value for this object. The value is derived from the hash code of each of the record components.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Record.html#hashCode()" title="class or interface in java.lang" class="external-link">hashCode</a></code>&nbsp;in class&nbsp;<code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Record.html" title="class or interface in java.lang" class="external-link">Record</a></code></dd>
<dt>Returns:</dt>
<dd>a hash code value for this object</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="equals(java.lang.Object)">
<h3>equals</h3>
<div class="member-signature"><span class="modifiers">public final</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">equals</span><wbr><span class="parameters">(<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">Object</a>&nbsp;o)</span></div>
<div class="block">Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. All components in this record class are compared with <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Objects.html#equals(java.lang.Object,java.lang.Object)" title="class or interface in java.util" class="external-link"><code>Objects::equals(Object,Object)</code></a>.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Record.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a></code>&nbsp;in class&nbsp;<code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Record.html" title="class or interface in java.lang" class="external-link">Record</a></code></dd>
<dt>Parameters:</dt>
<dd><code>o</code> - the object with which to compare</dd>
<dt>Returns:</dt>
<dd><code>true</code> if this object is the same as the <code>o</code> argument; <code>false</code> otherwise.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="task()">
<h3>task</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">org.bukkit.scheduler.BukkitTask</span>&nbsp;<span class="element-name">task</span>()</div>
<div class="block">Returns the value of the <code>task</code> record component.</div>
<dl class="notes">
<dt>Returns:</dt>
<dd>the value of the <code>task</code> record component</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
</ul>
</section>
<!-- ========= END OF CLASS DATA ========= -->
</main>
</div>
</div>
</body>
</html>

View File

@ -0,0 +1,445 @@
<!DOCTYPE HTML>
<html lang="en">
<head>
<!-- Generated by javadoc (17) on Wed Dec 14 11:14:32 CST 2022 -->
<title>ReactorBukkitScheduler</title>
<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-14">
<meta name="description" content="declaration: package: io.github.simplexdevelopment.scheduler, record: ReactorBukkitScheduler">
<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">
<link rel="stylesheet" type="text/css" href="../../../../jquery-ui.overrides.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>
<script type="text/javascript" src="../../../../script-dir/jquery-3.5.1.min.js"></script>
<script type="text/javascript" src="../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-declaration-page">
<script type="text/javascript">var evenRowColor = "even-row-color";
var oddRowColor = "odd-row-color";
var tableTab = "table-tab";
var activeTableTab = "active-table-tab";
var pathtoroot = "../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top">
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../index.html">Overview</a></li>
<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="../../../../index-files/index-1.html">Index</a></li>
<li><a href="../../../../help-doc.html#class">Help</a></li>
</ul>
</div>
<div class="sub-nav">
<div>
<ul class="sub-nav-list">
<li>Summary:&nbsp;</li>
<li><a href="#nested-class-summary">Nested</a>&nbsp;|&nbsp;</li>
<li><a href="#field-summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor-summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-summary">Method</a></li>
</ul>
<ul class="sub-nav-list">
<li>Detail:&nbsp;</li>
<li><a href="#field-detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor-detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-detail">Method</a></li>
</ul>
</div>
<div class="nav-list-search"><label for="search-input">SEARCH:</label>
<input type="text" id="search-input" value="search" disabled="disabled">
<input type="reset" id="reset-button" value="reset" disabled="disabled">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<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.simplexdevelopment.scheduler</a></div>
<h1 title="Record Class ReactorBukkitScheduler" class="title">Record Class ReactorBukkitScheduler</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"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Record.html" title="class or interface in java.lang" class="external-link">java.lang.Record</a>
<div class="inheritance">io.github.simplexdevelopment.scheduler.ReactorBukkitScheduler</div>
</div>
</div>
<section class="class-description" id="class-description">
<dl class="notes">
<dt>All Implemented Interfaces:</dt>
<dd><code>reactor.core.Disposable</code>, <code>reactor.core.scheduler.Scheduler</code>, <code>reactor.core.scheduler.Scheduler.Worker</code></dd>
</dl>
<hr>
<div class="type-signature"><span class="modifiers">public record </span><span class="element-name type-name-label">ReactorBukkitScheduler</span>(org.bukkit.plugin.java.JavaPlugin&nbsp;plugin, org.bukkit.scheduler.BukkitScheduler&nbsp;scheduler)
<span class="extends-implements">extends <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Record.html" title="class or interface in java.lang" class="external-link">Record</a>
implements reactor.core.scheduler.Scheduler, reactor.core.scheduler.Scheduler.Worker</span></div>
</section>
<section class="summary">
<ul class="summary-list">
<!-- ======== NESTED CLASS SUMMARY ======== -->
<li>
<section class="nested-class-summary" id="nested-class-summary">
<h2>Nested Class Summary</h2>
<div class="inherited-list">
<h2 id="nested-classes-inherited-from-class-reactor.core.Disposable">Nested classes/interfaces inherited from interface&nbsp;reactor.core.Disposable</h2>
<code>reactor.core.Disposable.Composite, reactor.core.Disposable.Swap</code></div>
<div class="inherited-list">
<h2 id="nested-classes-inherited-from-class-reactor.core.scheduler.Scheduler">Nested classes/interfaces inherited from interface&nbsp;reactor.core.scheduler.Scheduler</h2>
<code>reactor.core.scheduler.Scheduler.Worker</code></div>
</section>
</li>
<!-- =========== FIELD SUMMARY =========== -->
<li>
<section class="field-summary" id="field-summary">
<h2>Field Summary</h2>
<div class="caption"><span>Fields</span></div>
<div class="summary-table three-column-summary">
<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 org.bukkit.plugin.java.JavaPlugin</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 field for the <code>plugin</code> record component.</div>
</div>
<div class="col-first odd-row-color"><code>private final org.bukkit.scheduler.BukkitScheduler</code></div>
<div class="col-second odd-row-color"><code><a href="#scheduler" class="member-name-link">scheduler</a></code></div>
<div class="col-last odd-row-color">
<div class="block">The field for the <code>scheduler</code> record component.</div>
</div>
</div>
</section>
</li>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<li>
<section class="constructor-summary" id="constructor-summary">
<h2>Constructor Summary</h2>
<div class="caption"><span>Constructors</span></div>
<div class="summary-table two-column-summary">
<div class="table-header col-first">Constructor</div>
<div class="table-header col-last">Description</div>
<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E(org.bukkit.plugin.java.JavaPlugin,org.bukkit.scheduler.BukkitScheduler)" class="member-name-link">ReactorBukkitScheduler</a><wbr>(org.bukkit.plugin.java.JavaPlugin&nbsp;plugin,
org.bukkit.scheduler.BukkitScheduler&nbsp;scheduler)</code></div>
<div class="col-last even-row-color">
<div class="block">Creates an instance of a <code>ReactorBukkitScheduler</code> record class.</div>
</div>
</div>
</section>
</li>
<!-- ========== METHOD SUMMARY =========== -->
<li>
<section class="method-summary" id="method-summary">
<h2>Method Summary</h2>
<div id="method-summary-table">
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete Methods</button></div>
<div id="method-summary-table.tabpanel" role="tabpanel">
<div class="summary-table three-column-summary" aria-labelledby="method-summary-table-tab0">
<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.scheduler.Scheduler.Worker</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#createWorker()" class="member-name-link">createWorker</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">A new <code>Scheduler.Worker</code>.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#dispose()" class="member-name-link">dispose</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">This method does nothing and is unused.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>final boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#equals(java.lang.Object)" class="member-name-link">equals</a><wbr>(<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">Object</a>&nbsp;o)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Indicates whether some other object is "equal to" this one.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>final int</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hashCode()" class="member-name-link">hashCode</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns a hash code value for this object.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>org.bukkit.plugin.java.JavaPlugin</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#plugin()" class="member-name-link">plugin</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns the value of the <code>plugin</code> record component.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>@NotNull reactor.core.Disposable</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#schedule(java.lang.Runnable)" class="member-name-link">schedule</a><wbr>(@NotNull <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Runnable.html" title="class or interface in java.lang" class="external-link">Runnable</a>&nbsp;task)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Delegates to the <code>BukkitScheduler</code>.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>@NotNull reactor.core.Disposable</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)" class="member-name-link">schedule</a><wbr>(@NotNull <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Runnable.html" title="class or interface in java.lang" class="external-link">Runnable</a>&nbsp;task,
long&nbsp;delay,
@Nullable <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/concurrent/TimeUnit.html" title="class or interface in java.util.concurrent" class="external-link">TimeUnit</a>&nbsp;unit)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Delegates to the <code>BukkitScheduler</code> with a delay.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>@NotNull reactor.core.Disposable</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#schedulePeriodically(java.lang.Runnable,long,long,java.util.concurrent.TimeUnit)" class="member-name-link">schedulePeriodically</a><wbr>(@NotNull <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Runnable.html" title="class or interface in java.lang" class="external-link">Runnable</a>&nbsp;task,
long&nbsp;initialDelay,
long&nbsp;period,
@Nullable <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/concurrent/TimeUnit.html" title="class or interface in java.util.concurrent" class="external-link">TimeUnit</a>&nbsp;unit)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Delegates to the <code>BukkitScheduler</code> with a delay and a period.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>org.bukkit.scheduler.BukkitScheduler</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#scheduler()" class="member-name-link">scheduler</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns the value of the <code>scheduler</code> record component.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>final <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#toString()" class="member-name-link">toString</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns a string representation of this record class.</div>
</div>
</div>
</div>
</div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class&nbsp;java.lang.<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">Object</a></h3>
<code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link">wait</a></code></div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-reactor.core.Disposable">Methods inherited from interface&nbsp;reactor.core.Disposable</h3>
<code>isDisposed</code></div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-reactor.core.scheduler.Scheduler">Methods inherited from interface&nbsp;reactor.core.scheduler.Scheduler</h3>
<code>now, start</code></div>
</section>
</li>
</ul>
</section>
<section class="details">
<ul class="details-list">
<!-- ============ FIELD DETAIL =========== -->
<li>
<section class="field-details" id="field-detail">
<h2>Field Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="plugin">
<h3>plugin</h3>
<div class="member-signature"><span class="modifiers">private final</span>&nbsp;<span class="return-type">org.bukkit.plugin.java.JavaPlugin</span>&nbsp;<span class="element-name">plugin</span></div>
<div class="block">The field for the <code>plugin</code> record component.</div>
</section>
</li>
<li>
<section class="detail" id="scheduler">
<h3>scheduler</h3>
<div class="member-signature"><span class="modifiers">private final</span>&nbsp;<span class="return-type">org.bukkit.scheduler.BukkitScheduler</span>&nbsp;<span class="element-name">scheduler</span></div>
<div class="block">The field for the <code>scheduler</code> record component.</div>
</section>
</li>
</ul>
</section>
</li>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<li>
<section class="constructor-details" id="constructor-detail">
<h2>Constructor Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="&lt;init&gt;(org.bukkit.plugin.java.JavaPlugin,org.bukkit.scheduler.BukkitScheduler)">
<h3>ReactorBukkitScheduler</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="element-name">ReactorBukkitScheduler</span><wbr><span class="parameters">(org.bukkit.plugin.java.JavaPlugin&nbsp;plugin,
org.bukkit.scheduler.BukkitScheduler&nbsp;scheduler)</span></div>
<div class="block">Creates an instance of a <code>ReactorBukkitScheduler</code> record class.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>plugin</code> - the value for the <code>plugin</code> record component</dd>
<dd><code>scheduler</code> - the value for the <code>scheduler</code> record component</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
<!-- ============ METHOD DETAIL ========== -->
<li>
<section class="method-details" id="method-detail">
<h2>Method Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="schedule(java.lang.Runnable)">
<h3>schedule</h3>
<div class="member-signature"><span class="annotations">@NotNull
</span><span class="modifiers">public</span>&nbsp;<span class="return-type">@NotNull reactor.core.Disposable</span>&nbsp;<span class="element-name">schedule</span><wbr><span class="parameters">(@NotNull
@NotNull <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Runnable.html" title="class or interface in java.lang" class="external-link">Runnable</a>&nbsp;task)</span></div>
<div class="block">Delegates to the <code>BukkitScheduler</code>.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>schedule</code>&nbsp;in interface&nbsp;<code>reactor.core.scheduler.Scheduler</code></dd>
<dt>Specified by:</dt>
<dd><code>schedule</code>&nbsp;in interface&nbsp;<code>reactor.core.scheduler.Scheduler.Worker</code></dd>
<dt>Parameters:</dt>
<dd><code>task</code> - The task to delegate.</dd>
<dt>Returns:</dt>
<dd>A disposable that can be used to cancel the task.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)">
<h3>schedule</h3>
<div class="member-signature"><span class="annotations">@NotNull
</span><span class="modifiers">public</span>&nbsp;<span class="return-type">@NotNull reactor.core.Disposable</span>&nbsp;<span class="element-name">schedule</span><wbr><span class="parameters">(@NotNull
@NotNull <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Runnable.html" title="class or interface in java.lang" class="external-link">Runnable</a>&nbsp;task,
long&nbsp;delay,
@Nullable
@Nullable <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/concurrent/TimeUnit.html" title="class or interface in java.util.concurrent" class="external-link">TimeUnit</a>&nbsp;unit)</span></div>
<div class="block">Delegates to the <code>BukkitScheduler</code> with a delay.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>schedule</code>&nbsp;in interface&nbsp;<code>reactor.core.scheduler.Scheduler</code></dd>
<dt>Specified by:</dt>
<dd><code>schedule</code>&nbsp;in interface&nbsp;<code>reactor.core.scheduler.Scheduler.Worker</code></dd>
<dt>Parameters:</dt>
<dd><code>task</code> - The task to delegate</dd>
<dd><code>delay</code> - The amount of time to wait before running the task</dd>
<dd><code>unit</code> - Unused parameter in this implementation.
Regardless of what value you use, this parameter will never be called.</dd>
<dt>Returns:</dt>
<dd>A disposable that can be used to cancel the task.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="schedulePeriodically(java.lang.Runnable,long,long,java.util.concurrent.TimeUnit)">
<h3>schedulePeriodically</h3>
<div class="member-signature"><span class="annotations">@NotNull
</span><span class="modifiers">public</span>&nbsp;<span class="return-type">@NotNull reactor.core.Disposable</span>&nbsp;<span class="element-name">schedulePeriodically</span><wbr><span class="parameters">(@NotNull
@NotNull <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Runnable.html" title="class or interface in java.lang" class="external-link">Runnable</a>&nbsp;task,
long&nbsp;initialDelay,
long&nbsp;period,
@Nullable
@Nullable <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/concurrent/TimeUnit.html" title="class or interface in java.util.concurrent" class="external-link">TimeUnit</a>&nbsp;unit)</span></div>
<div class="block">Delegates to the <code>BukkitScheduler</code> with a delay and a period.
The initial delay may be 0L, but the period must be greater than 0L.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>schedulePeriodically</code>&nbsp;in interface&nbsp;<code>reactor.core.scheduler.Scheduler</code></dd>
<dt>Specified by:</dt>
<dd><code>schedulePeriodically</code>&nbsp;in interface&nbsp;<code>reactor.core.scheduler.Scheduler.Worker</code></dd>
<dt>Parameters:</dt>
<dd><code>task</code> - The task to delegate.</dd>
<dd><code>initialDelay</code> - The amount of time to wait before running the task.</dd>
<dd><code>period</code> - The amount of time to wait between each execution of the task.</dd>
<dd><code>unit</code> - Unused parameter in this implementation.
Regardless of what value you use, this parameter will never be called.</dd>
<dt>Returns:</dt>
<dd>A disposable that can be used to cancel the task.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="createWorker()">
<h3>createWorker</h3>
<div class="member-signature"><span class="annotations">@NotNull
</span><span class="modifiers">public</span>&nbsp;<span class="return-type">@NotNull reactor.core.scheduler.Scheduler.Worker</span>&nbsp;<span class="element-name">createWorker</span>()</div>
<div class="block">A new <code>Scheduler.Worker</code>.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>createWorker</code>&nbsp;in interface&nbsp;<code>reactor.core.scheduler.Scheduler</code></dd>
<dt>Returns:</dt>
<dd>This class instance, as it implements <code>Scheduler.Worker</code>.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="dispose()">
<h3>dispose</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">dispose</span>()</div>
<div class="block">This method does nothing and is unused.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>dispose</code>&nbsp;in interface&nbsp;<code>reactor.core.Disposable</code></dd>
<dt>Specified by:</dt>
<dd><code>dispose</code>&nbsp;in interface&nbsp;<code>reactor.core.scheduler.Scheduler</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="toString()">
<h3>toString</h3>
<div class="member-signature"><span class="modifiers">public final</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span>&nbsp;<span class="element-name">toString</span>()</div>
<div class="block">Returns a string representation of this record class. The representation contains the name of the class, followed by the name and value of each of the record components.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Record.html#toString()" title="class or interface in java.lang" class="external-link">toString</a></code>&nbsp;in class&nbsp;<code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Record.html" title="class or interface in java.lang" class="external-link">Record</a></code></dd>
<dt>Returns:</dt>
<dd>a string representation of this object</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hashCode()">
<h3>hashCode</h3>
<div class="member-signature"><span class="modifiers">public final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">hashCode</span>()</div>
<div class="block">Returns a hash code value for this object. The value is derived from the hash code of each of the record components.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Record.html#hashCode()" title="class or interface in java.lang" class="external-link">hashCode</a></code>&nbsp;in class&nbsp;<code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Record.html" title="class or interface in java.lang" class="external-link">Record</a></code></dd>
<dt>Returns:</dt>
<dd>a hash code value for this object</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="equals(java.lang.Object)">
<h3>equals</h3>
<div class="member-signature"><span class="modifiers">public final</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">equals</span><wbr><span class="parameters">(<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">Object</a>&nbsp;o)</span></div>
<div class="block">Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. All components in this record class are compared with <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Objects.html#equals(java.lang.Object,java.lang.Object)" title="class or interface in java.util" class="external-link"><code>Objects::equals(Object,Object)</code></a>.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Record.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a></code>&nbsp;in class&nbsp;<code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Record.html" title="class or interface in java.lang" class="external-link">Record</a></code></dd>
<dt>Parameters:</dt>
<dd><code>o</code> - the object with which to compare</dd>
<dt>Returns:</dt>
<dd><code>true</code> if this object is the same as the <code>o</code> argument; <code>false</code> otherwise.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="plugin()">
<h3>plugin</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">org.bukkit.plugin.java.JavaPlugin</span>&nbsp;<span class="element-name">plugin</span>()</div>
<div class="block">Returns the value of the <code>plugin</code> record component.</div>
<dl class="notes">
<dt>Returns:</dt>
<dd>the value of the <code>plugin</code> record component</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="scheduler()">
<h3>scheduler</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">org.bukkit.scheduler.BukkitScheduler</span>&nbsp;<span class="element-name">scheduler</span>()</div>
<div class="block">Returns the value of the <code>scheduler</code> record component.</div>
<dl class="notes">
<dt>Returns:</dt>
<dd>the value of the <code>scheduler</code> record component</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
</ul>
</section>
<!-- ========= END OF CLASS DATA ========= -->
</main>
</div>
</div>
</body>
</html>

View File

@ -0,0 +1,347 @@
<!DOCTYPE HTML>
<html lang="en">
<head>
<!-- Generated by javadoc (17) on Wed Dec 14 11:14:32 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">
<meta name="dc.created" content="2022-12-14">
<meta name="description" content="declaration: package: io.github.simplexdevelopment.scheduler, class: SchedulingSystem">
<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">
<link rel="stylesheet" type="text/css" href="../../../../jquery-ui.overrides.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>
<script type="text/javascript" src="../../../../script-dir/jquery-3.5.1.min.js"></script>
<script type="text/javascript" src="../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-declaration-page">
<script type="text/javascript">var evenRowColor = "even-row-color";
var oddRowColor = "odd-row-color";
var tableTab = "table-tab";
var activeTableTab = "active-table-tab";
var pathtoroot = "../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top">
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../index.html">Overview</a></li>
<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="../../../../index-files/index-1.html">Index</a></li>
<li><a href="../../../../help-doc.html#class">Help</a></li>
</ul>
</div>
<div class="sub-nav">
<div>
<ul class="sub-nav-list">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field-summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor-summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-summary">Method</a></li>
</ul>
<ul class="sub-nav-list">
<li>Detail:&nbsp;</li>
<li><a href="#field-detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor-detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-detail">Method</a></li>
</ul>
</div>
<div class="nav-list-search"><label for="search-input">SEARCH:</label>
<input type="text" id="search-input" value="search" disabled="disabled">
<input type="reset" id="reset-button" value="reset" disabled="disabled">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<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.simplexdevelopment.scheduler</a></div>
<h1 title="Class SchedulingSystem" class="title">Class SchedulingSystem&lt;T extends org.bukkit.plugin.java.JavaPlugin&gt;</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.simplexdevelopment.scheduler.SchedulingSystem&lt;T&gt;</div>
</div>
<section class="class-description" id="class-description">
<dl class="notes">
<dt>All Implemented Interfaces:</dt>
<dd><code><a href="../api/ISchedule.html" title="interface in io.github.simplexdevelopment.api">ISchedule</a></code></dd>
</dl>
<hr>
<div class="type-signature"><span class="modifiers">public final class </span><span class="element-name type-name-label">SchedulingSystem&lt;T extends org.bukkit.plugin.java.JavaPlugin&gt;</span>
<span class="extends-implements">extends <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">Object</a>
implements <a href="../api/ISchedule.html" title="interface in io.github.simplexdevelopment.api">ISchedule</a></span></div>
</section>
<section class="summary">
<ul class="summary-list">
<!-- =========== FIELD SUMMARY =========== -->
<li>
<section class="field-summary" id="field-summary">
<h2>Field Summary</h2>
<div class="caption"><span>Fields</span></div>
<div class="summary-table three-column-summary">
<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 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>
</section>
</li>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<li>
<section class="constructor-summary" id="constructor-summary">
<h2>Constructor Summary</h2>
<div class="caption"><span>Constructors</span></div>
<div class="summary-table two-column-summary">
<div class="table-header col-first">Constructor</div>
<div class="table-header col-last">Description</div>
<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E(T)" class="member-name-link">SchedulingSystem</a><wbr>(<a href="SchedulingSystem.html" title="type parameter in SchedulingSystem">T</a>&nbsp;plugin)</code></div>
<div class="col-last even-row-color">
<div class="block">Creates a new instance of the scheduling system.</div>
</div>
</div>
</section>
</li>
<!-- ========== METHOD SUMMARY =========== -->
<li>
<section class="method-summary" id="method-summary">
<h2>Method Summary</h2>
<div id="method-summary-table">
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete Methods</button></div>
<div id="method-summary-table.tabpanel" role="tabpanel">
<div class="summary-table three-column-summary" aria-labelledby="method-summary-table-tab0">
<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>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="#forceStart(io.github.simplexdevelopment.api.IService)" class="member-name-link">forceStart</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>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="#forceStop(io.github.simplexdevelopment.api.IService)" class="member-name-link">forceStop</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><a href="ReactorBukkitScheduler.html" title="class in io.github.simplexdevelopment.scheduler">ReactorBukkitScheduler</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getMainScheduler()" class="member-name-link">getMainScheduler</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="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-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-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>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class&nbsp;java.lang.<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">Object</a></h3>
<code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#toString()" title="class or interface in java.lang" class="external-link">toString</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link">wait</a></code></div>
</section>
</li>
</ul>
</section>
<section class="details">
<ul class="details-list">
<!-- ============ FIELD DETAIL =========== -->
<li>
<section class="field-details" id="field-detail">
<h2>Field Details</h2>
<ul class="member-list">
<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>
</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>
</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>
</section>
</li>
</ul>
</section>
</li>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<li>
<section class="constructor-details" id="constructor-detail">
<h2>Constructor Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="&lt;init&gt;(T)">
<h3 id="&lt;init&gt;(org.bukkit.plugin.java.JavaPlugin)">SchedulingSystem</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="element-name">SchedulingSystem</span><wbr><span class="parameters">(<a href="SchedulingSystem.html" title="type parameter in SchedulingSystem">T</a>&nbsp;plugin)</span></div>
<div class="block">Creates a new instance of the scheduling system. This is used to manage the scheduling of services.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>plugin</code> - The plugin to use for this scheduling system. This should be an instance of your plugin.</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
<!-- ============ METHOD DETAIL ========== -->
<li>
<section class="method-details" id="method-detail">
<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
</span><span class="modifiers">public</span>&nbsp;<span class="return-type">@NotNull reactor.core.publisher.Mono&lt;<a href="ServiceManager.html" title="class in io.github.simplexdevelopment.scheduler">ServiceManager</a>&gt;</span>&nbsp;<span class="element-name">getServiceManager</span>()</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../api/ISchedule.html#getServiceManager()">getServiceManager</a></code>&nbsp;in interface&nbsp;<code><a href="../api/ISchedule.html" title="interface in io.github.simplexdevelopment.api">ISchedule</a></code></dd>
<dt>Returns:</dt>
<dd>The service manager which exerts control over the service pools and their associated services.</dd>
</dl>
</section>
</li>
<li>
<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
@NotNull <a href="../api/IService.html" title="interface in io.github.simplexdevelopment.api">IService</a>&nbsp;service)</span></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>
</dl>
</section>
</li>
<li>
<section class="detail" id="runOnce(io.github.simplexdevelopment.api.IService)">
<h3>runOnce</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="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;</span>&nbsp;<span class="element-name">runOnce</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>Specified by:</dt>
<dd><code><a href="../api/ISchedule.html#runOnce(io.github.simplexdevelopment.api.IService)">runOnce</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 run once.</dd>
<dt>Returns:</dt>
<dd>A Mono<Void> object which can be used to run the service one time using <code>Mono.subscribe()</code>.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="forceStop(io.github.simplexdevelopment.api.IService)">
<h3>forceStop</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">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;</span>&nbsp;<span class="element-name">forceStop</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>Specified by:</dt>
<dd><code><a href="../api/ISchedule.html#forceStop(io.github.simplexdevelopment.api.IService)">forceStop</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 forcefully stop.</dd>
<dt>Returns:</dt>
<dd>A Mono<Void> object which can be used to forcefully stop the service with <code>Mono.subscribe()</code>.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="forceStart(io.github.simplexdevelopment.api.IService)">
<h3>forceStart</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">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;</span>&nbsp;<span class="element-name">forceStart</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>Specified by:</dt>
<dd><code><a href="../api/ISchedule.html#forceStart(io.github.simplexdevelopment.api.IService)">forceStart</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 forcefully start.</dd>
<dt>Returns:</dt>
<dd>A Mono<Void> object which can be used to forcefully start the service with <code>Mono.subscribe()</code>.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getProvidingPlugin()">
<h3>getProvidingPlugin</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="SchedulingSystem.html" title="type parameter in SchedulingSystem">T</a>&gt;</span>&nbsp;<span class="element-name">getProvidingPlugin</span>()</div>
<dl class="notes">
<dt>Returns:</dt>
<dd>A Mono object containing your plugin, for non-blocking communication.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getMainScheduler()">
<h3>getMainScheduler</h3>
<div class="member-signature"><span class="annotations">@Contract(pure=true)
</span><span class="modifiers">public</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">getMainScheduler</span>()</div>
<dl class="notes">
<dt>Returns:</dt>
<dd>The main thread which the scheduling system operates on.</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
</ul>
</section>
<!-- ========= END OF CLASS DATA ========= -->
</main>
</div>
</div>
</body>
</html>

View File

@ -0,0 +1,344 @@
<!DOCTYPE HTML>
<html lang="en">
<head>
<!-- Generated by javadoc (17) on Wed Dec 14 11:14:32 CST 2022 -->
<title>ServiceManager</title>
<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-14">
<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">
<link rel="stylesheet" type="text/css" href="../../../../jquery-ui.overrides.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>
<script type="text/javascript" src="../../../../script-dir/jquery-3.5.1.min.js"></script>
<script type="text/javascript" src="../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-declaration-page">
<script type="text/javascript">var evenRowColor = "even-row-color";
var oddRowColor = "odd-row-color";
var tableTab = "table-tab";
var activeTableTab = "active-table-tab";
var pathtoroot = "../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top">
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../index.html">Overview</a></li>
<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="../../../../index-files/index-1.html">Index</a></li>
<li><a href="../../../../help-doc.html#class">Help</a></li>
</ul>
</div>
<div class="sub-nav">
<div>
<ul class="sub-nav-list">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field-summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor-summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-summary">Method</a></li>
</ul>
<ul class="sub-nav-list">
<li>Detail:&nbsp;</li>
<li><a href="#field-detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor-detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-detail">Method</a></li>
</ul>
</div>
<div class="nav-list-search"><label for="search-input">SEARCH:</label>
<input type="text" id="search-input" value="search" disabled="disabled">
<input type="reset" id="reset-button" value="reset" disabled="disabled">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<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.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.simplexdevelopment.scheduler.ServiceManager</div>
</div>
<section class="class-description" id="class-description">
<hr>
<div class="type-signature"><span class="modifiers">public final class </span><span class="element-name type-name-label">ServiceManager</span>
<span class="extends-implements">extends <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">Object</a></span></div>
</section>
<section class="summary">
<ul class="summary-list">
<!-- =========== FIELD SUMMARY =========== -->
<li>
<section class="field-summary" id="field-summary">
<h2>Field Summary</h2>
<div class="caption"><span>Fields</span></div>
<div class="summary-table three-column-summary">
<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.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>
</section>
</li>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<li>
<section class="constructor-summary" id="constructor-summary">
<h2>Constructor Summary</h2>
<div class="caption"><span>Constructors</span></div>
<div class="summary-table two-column-summary">
<div class="table-header col-first">Constructor</div>
<div class="table-header col-last">Description</div>
<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E()" class="member-name-link">ServiceManager</a>()</code></div>
<div class="col-last even-row-color">
<div class="block">Creates a new instance of the Service Manager class.</div>
</div>
</div>
</section>
</li>
<!-- ========== METHOD SUMMARY =========== -->
<li>
<section class="method-summary" id="method-summary">
<h2>Method Summary</h2>
<div id="method-summary-table">
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete Methods</button></div>
<div id="method-summary-table.tabpanel" role="tabpanel">
<div class="summary-table three-column-summary" aria-labelledby="method-summary-table-tab0">
<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.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.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.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.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.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.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.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.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>
</div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class&nbsp;java.lang.<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">Object</a></h3>
<code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#toString()" title="class or interface in java.lang" class="external-link">toString</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link">wait</a></code></div>
</section>
</li>
</ul>
</section>
<section class="details">
<ul class="details-list">
<!-- ============ FIELD DETAIL =========== -->
<li>
<section class="field-details" id="field-detail">
<h2>Field Details</h2>
<ul class="member-list">
<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.simplexdevelopment.scheduler">ServicePool</a>&gt;</span>&nbsp;<span class="element-name">servicePools</span></div>
</section>
</li>
</ul>
</section>
</li>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<li>
<section class="constructor-details" id="constructor-detail">
<h2>Constructor Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="&lt;init&gt;()">
<h3>ServiceManager</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="element-name">ServiceManager</span>()</div>
<div class="block">Creates a new instance of the Service Manager class.
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.simplexdevelopment.api"><code>IService</code></a>s from the {ServicePool} parameter.</div>
</section>
</li>
</ul>
</section>
</li>
<!-- ============ METHOD DETAIL ========== -->
<li>
<section class="method-details" id="method-detail">
<h2>Method Details</h2>
<ul class="member-list">
<li>
<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.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.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.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.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.simplexdevelopment.scheduler"><code>ServicePool</code></a> element.
This service pool will execute each service across a set of non-blocking threads.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="emptyServicePool(org.bukkit.NamespacedKey,boolean)">
<h3>emptyServicePool</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.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.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.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.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.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.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.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.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.simplexdevelopment.scheduler"><code>ServicePool</code></a> that no longer contains the removed services.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getServicePools()">
<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.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>
</dl>
</section>
</li>
<li>
<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.simplexdevelopment.api">IService</a>&nbsp;service)</span></div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>service</code> - The service to locate.</dd>
<dt>Returns:</dt>
<dd>True if the service is somewhere within a service pool, false otherwise.</dd>
</dl>
</section>
</li>
<li>
<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.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.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>
</li>
</ul>
</section>
</li>
</ul>
</section>
<!-- ========= END OF CLASS DATA ========= -->
</main>
</div>
</div>
</body>
</html>

View File

@ -0,0 +1,440 @@
<!DOCTYPE HTML>
<html lang="en">
<head>
<!-- Generated by javadoc (17) on Wed Dec 14 11:14:32 CST 2022 -->
<title>ServicePool</title>
<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-14">
<meta name="description" content="declaration: package: io.github.simplexdevelopment.scheduler, class: ServicePool">
<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">
<link rel="stylesheet" type="text/css" href="../../../../jquery-ui.overrides.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>
<script type="text/javascript" src="../../../../script-dir/jquery-3.5.1.min.js"></script>
<script type="text/javascript" src="../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-declaration-page">
<script type="text/javascript">var evenRowColor = "even-row-color";
var oddRowColor = "odd-row-color";
var tableTab = "table-tab";
var activeTableTab = "active-table-tab";
var pathtoroot = "../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top">
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../index.html">Overview</a></li>
<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="../../../../index-files/index-1.html">Index</a></li>
<li><a href="../../../../help-doc.html#class">Help</a></li>
</ul>
</div>
<div class="sub-nav">
<div>
<ul class="sub-nav-list">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field-summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor-summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-summary">Method</a></li>
</ul>
<ul class="sub-nav-list">
<li>Detail:&nbsp;</li>
<li><a href="#field-detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor-detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-detail">Method</a></li>
</ul>
</div>
<div class="nav-list-search"><label for="search-input">SEARCH:</label>
<input type="text" id="search-input" value="search" disabled="disabled">
<input type="reset" id="reset-button" value="reset" disabled="disabled">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<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.simplexdevelopment.scheduler</a></div>
<h1 title="Class ServicePool" class="title">Class ServicePool</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.simplexdevelopment.scheduler.ServicePool</div>
</div>
<section class="class-description" id="class-description">
<hr>
<div class="type-signature"><span class="modifiers">public final class </span><span class="element-name type-name-label">ServicePool</span>
<span class="extends-implements">extends <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">Object</a></span></div>
</section>
<section class="summary">
<ul class="summary-list">
<!-- =========== FIELD SUMMARY =========== -->
<li>
<section class="field-summary" id="field-summary">
<h2>Field Summary</h2>
<div class="caption"><span>Fields</span></div>
<div class="summary-table three-column-summary">
<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="../api/IService.html" title="interface in io.github.simplexdevelopment.api">IService</a>&gt;</code></div>
<div class="col-second even-row-color"><code><a href="#associatedServices" class="member-name-link">associatedServices</a></code></div>
<div class="col-last even-row-color">
<div class="block">A collection of services related to this service pool.</div>
</div>
<div class="col-first odd-row-color"><code>private static final org.bukkit.NamespacedKey</code></div>
<div class="col-second odd-row-color"><code><a href="#DEFAULT" class="member-name-link">DEFAULT</a></code></div>
<div class="col-last odd-row-color">
<div class="block">The default <code>NamespacedKey</code> used to identify unmarked services.</div>
</div>
<div class="col-first even-row-color"><code>private final org.bukkit.NamespacedKey</code></div>
<div class="col-second even-row-color"><code><a href="#name" class="member-name-link">name</a></code></div>
<div class="col-last even-row-color">
<div class="block">The key used to identify this service pool.</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="#rbScheduler" class="member-name-link">rbScheduler</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>private final reactor.core.scheduler.Scheduler</code></div>
<div class="col-second even-row-color"><code><a href="#scheduler" class="member-name-link">scheduler</a></code></div>
<div class="col-last even-row-color">
<div class="block">The scheduler used to run the services in this pool.</div>
</div>
</div>
</section>
</li>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<li>
<section class="constructor-summary" id="constructor-summary">
<h2>Constructor Summary</h2>
<div class="caption"><span>Constructors</span></div>
<div class="summary-table two-column-summary">
<div class="table-header col-first">Constructor</div>
<div class="table-header col-last">Description</div>
<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E(org.bukkit.NamespacedKey,boolean)" class="member-name-link">ServicePool</a><wbr>(org.bukkit.NamespacedKey&nbsp;name,
boolean&nbsp;multithreaded)</code></div>
<div class="col-last even-row-color">
<div class="block">This will create a new instance of a Service Pool with a <code>Scheduler</code> as its main scheduler.</div>
</div>
<div class="col-constructor-name odd-row-color"><code><a href="#%3Cinit%3E(org.bukkit.NamespacedKey,org.bukkit.plugin.java.JavaPlugin)" class="member-name-link">ServicePool</a><wbr>(org.bukkit.NamespacedKey&nbsp;name,
org.bukkit.plugin.java.JavaPlugin&nbsp;plugin)</code></div>
<div class="col-last odd-row-color">
<div class="block">This will create a new instance of a Service Pool with the <a href="ReactorBukkitScheduler.html" title="class in io.github.simplexdevelopment.scheduler"><code>ReactorBukkitScheduler</code></a> as its main scheduler.</div>
</div>
</div>
</section>
</li>
<!-- ========== METHOD SUMMARY =========== -->
<li>
<section class="method-summary" id="method-summary">
<h2>Method Summary</h2>
<div id="method-summary-table">
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab1" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab1', 3)" class="table-tab">Static Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete Methods</button></div>
<div id="method-summary-table.tabpanel" role="tabpanel">
<div class="summary-table three-column-summary" aria-labelledby="method-summary-table-tab0">
<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>(package private) void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#addService(io.github.simplexdevelopment.api.IService)" class="member-name-link">addService</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 <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="../api/IService.html" title="interface in io.github.simplexdevelopment.api">IService</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="#getAssociatedServices()" class="member-name-link">getAssociatedServices</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-tab1 method-summary-table-tab4"><code>(package private) static org.bukkit.NamespacedKey</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#getDefaultNamespacedKey()" class="member-name-link">getDefaultNamespacedKey</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab1 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>reactor.core.scheduler.Scheduler</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getScheduler()" class="member-name-link">getScheduler</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="../api/IService.html" title="interface in io.github.simplexdevelopment.api">IService</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="#getService(org.bukkit.NamespacedKey)" class="member-name-link">getService</a><wbr>(org.bukkit.NamespacedKey&nbsp;service_name)</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>(package private) boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#isValidService(io.github.simplexdevelopment.api.IService)" class="member-name-link">isValidService</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;reactor.core.Disposable&gt;</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#queueService(io.github.simplexdevelopment.api.IService)" class="member-name-link">queueService</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="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="#recycle()" class="member-name-link">recycle</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>(package private) void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#removeService(io.github.simplexdevelopment.api.IService)" class="member-name-link">removeService</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.Flux&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="#startServices()" class="member-name-link">startServices</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="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="#stopService(org.bukkit.NamespacedKey,reactor.core.publisher.Mono)" class="member-name-link">stopService</a><wbr>(@NotNull org.bukkit.NamespacedKey&nbsp;service_name,
@Nullable reactor.core.publisher.Mono&lt;reactor.core.Disposable&gt;&nbsp;disposable)</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="#stopServices(reactor.core.publisher.Flux)" class="member-name-link">stopServices</a><wbr>(@NotNull reactor.core.publisher.Flux&lt;reactor.core.Disposable&gt;&nbsp;disposableThread)</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>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class&nbsp;java.lang.<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">Object</a></h3>
<code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#toString()" title="class or interface in java.lang" class="external-link">toString</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link">wait</a></code></div>
</section>
</li>
</ul>
</section>
<section class="details">
<ul class="details-list">
<!-- ============ FIELD DETAIL =========== -->
<li>
<section class="field-details" id="field-detail">
<h2>Field Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="DEFAULT">
<h3>DEFAULT</h3>
<div class="member-signature"><span class="modifiers">private static final</span>&nbsp;<span class="return-type">org.bukkit.NamespacedKey</span>&nbsp;<span class="element-name">DEFAULT</span></div>
<div class="block">The default <code>NamespacedKey</code> used to identify unmarked services. This will cause errors if left unchecked.</div>
</section>
</li>
<li>
<section class="detail" id="associatedServices">
<h3>associatedServices</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="../api/IService.html" title="interface in io.github.simplexdevelopment.api">IService</a>&gt;</span>&nbsp;<span class="element-name">associatedServices</span></div>
<div class="block">A collection of services related to this service pool.</div>
</section>
</li>
<li>
<section class="detail" id="scheduler">
<h3>scheduler</h3>
<div class="member-signature"><span class="modifiers">private final</span>&nbsp;<span class="return-type">reactor.core.scheduler.Scheduler</span>&nbsp;<span class="element-name">scheduler</span></div>
<div class="block">The scheduler used to run the services in this pool.</div>
</section>
</li>
<li>
<section class="detail" id="name">
<h3>name</h3>
<div class="member-signature"><span class="modifiers">private final</span>&nbsp;<span class="return-type">org.bukkit.NamespacedKey</span>&nbsp;<span class="element-name">name</span></div>
<div class="block">The key used to identify this service pool.</div>
</section>
</li>
<li>
<section class="detail" id="rbScheduler">
<h3>rbScheduler</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">rbScheduler</span></div>
</section>
</li>
</ul>
</section>
</li>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<li>
<section class="constructor-details" id="constructor-detail">
<h2>Constructor Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="&lt;init&gt;(org.bukkit.NamespacedKey,boolean)">
<h3>ServicePool</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="element-name">ServicePool</span><wbr><span class="parameters">(org.bukkit.NamespacedKey&nbsp;name,
boolean&nbsp;multithreaded)</span></div>
<div class="block">This will create a new instance of a Service Pool with a <code>Scheduler</code> as its main scheduler.
This should be used if you'd like to execute tasks without communicating on the main server thread.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>name</code> - The name of this service pool.</dd>
<dd><code>multithreaded</code> - Whether this service pool should be multithreaded, or operate upon a single thread.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="&lt;init&gt;(org.bukkit.NamespacedKey,org.bukkit.plugin.java.JavaPlugin)">
<h3>ServicePool</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="element-name">ServicePool</span><wbr><span class="parameters">(org.bukkit.NamespacedKey&nbsp;name,
org.bukkit.plugin.java.JavaPlugin&nbsp;plugin)</span></div>
<div class="block">This will create a new instance of a Service Pool with the <a href="ReactorBukkitScheduler.html" title="class in io.github.simplexdevelopment.scheduler"><code>ReactorBukkitScheduler</code></a> as its main scheduler.
This should be used if you'd like to execute tasks while communicating on the main server thread.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>name</code> - The name of this service pool.</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
<!-- ============ METHOD DETAIL ========== -->
<li>
<section class="method-details" id="method-detail">
<h2>Method Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="getDefaultNamespacedKey()">
<h3>getDefaultNamespacedKey</h3>
<div class="member-signature"><span class="modifiers">static</span>&nbsp;<span class="return-type">org.bukkit.NamespacedKey</span>&nbsp;<span class="element-name">getDefaultNamespacedKey</span>()</div>
<dl class="notes">
<dt>Returns:</dt>
<dd>The default namespaced key to use if one is not assigned.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="addService(io.github.simplexdevelopment.api.IService)">
<h3>addService</h3>
<div class="member-signature"><span class="return-type">void</span>&nbsp;<span class="element-name">addService</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> - Add a service to the pool's service collection.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="isValidService(io.github.simplexdevelopment.api.IService)">
<h3>isValidService</h3>
<div class="member-signature"><span class="return-type">boolean</span>&nbsp;<span class="element-name">isValidService</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 check against this pool.</dd>
<dt>Returns:</dt>
<dd>Whether the service is registered with this pool.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getAssociatedServices()">
<h3>getAssociatedServices</h3>
<div class="member-signature"><span class="annotations">@Contract(pure=true)
@NotNull
</span><span class="modifiers">public</span>&nbsp;<span class="return-type">@NotNull <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="../api/IService.html" title="interface in io.github.simplexdevelopment.api">IService</a>&gt;</span>&nbsp;<span class="element-name">getAssociatedServices</span>()</div>
<dl class="notes">
<dt>Returns:</dt>
<dd>A <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"><code>Set</code></a> of <a href="../api/IService.html" title="interface in io.github.simplexdevelopment.api"><code>IService</code></a> objects which are registered with this pool.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="queueService(io.github.simplexdevelopment.api.IService)">
<h3>queueService</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;reactor.core.Disposable&gt;</span>&nbsp;<span class="element-name">queueService</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 name of the service to queue. This should be a service that is located within this service pool.
If you name a service that is stored within another service pool,
this method will throw an error.</dd>
<dt>Returns:</dt>
<dd>A <code>Mono</code> object which contains a <code>Disposable</code> element which can be used to destroy the registered service.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="startServices()">
<h3>startServices</h3>
<div class="member-signature"><span class="annotations">@NotNull
</span><span class="modifiers">public</span>&nbsp;<span class="return-type">@NotNull reactor.core.publisher.Flux&lt;reactor.core.Disposable&gt;</span>&nbsp;<span class="element-name">startServices</span>()</div>
<dl class="notes">
<dt>Returns:</dt>
<dd>A <code>Flux</code> object which contains a collection of <code>Disposable</code> elements,
which can be used to destroy the registered services using <a href="#stopServices(reactor.core.publisher.Flux)"><code>stopServices(Flux)</code></a>.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="stopServices(reactor.core.publisher.Flux)">
<h3>stopServices</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="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;</span>&nbsp;<span class="element-name">stopServices</span><wbr><span class="parameters">(@NotNull
@NotNull reactor.core.publisher.Flux&lt;reactor.core.Disposable&gt;&nbsp;disposableThread)</span></div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>disposableThread</code> - A <code>reactor.core.publisher.Flux&lt;reactor.core.Disposable&gt;</code> which contains all the services that should be disposed..</dd>
<dt>Returns:</dt>
<dd>A <code>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> object which can be used to stop the services.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="stopService(org.bukkit.NamespacedKey,reactor.core.publisher.Mono)">
<h3>stopService</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="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;</span>&nbsp;<span class="element-name">stopService</span><wbr><span class="parameters">(@NotNull
@NotNull org.bukkit.NamespacedKey&nbsp;service_name,
@Nullable
@Nullable reactor.core.publisher.Mono&lt;reactor.core.Disposable&gt;&nbsp;disposable)</span></div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>service_name</code> - The name of the service to stop.</dd>
<dd><code>disposable</code> - A <code>Disposable</code> object which contains the service that should be disposed.</dd>
<dt>Returns:</dt>
<dd>A <code>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> object which can be used to stop the service.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getService(org.bukkit.NamespacedKey)">
<h3>getService</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="../api/IService.html" title="interface in io.github.simplexdevelopment.api">IService</a>&gt;</span>&nbsp;<span class="element-name">getService</span><wbr><span class="parameters">(org.bukkit.NamespacedKey&nbsp;service_name)</span></div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>service_name</code> - The name of the service to get.</dd>
<dt>Returns:</dt>
<dd>A <code>Mono</code> object which contains the service.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="removeService(io.github.simplexdevelopment.api.IService)">
<h3>removeService</h3>
<div class="member-signature"><span class="return-type">void</span>&nbsp;<span class="element-name">removeService</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 remove from the pool's service collection.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="recycle()">
<h3>recycle</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">recycle</span>()</div>
<dl class="notes">
<dt>Returns:</dt>
<dd>This service pool after being cleared of all services.
You will need to register services with this pool again before using it.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getScheduler()">
<h3>getScheduler</h3>
<div class="member-signature"><span class="annotations">@Contract(pure=true)
</span><span class="modifiers">public</span>&nbsp;<span class="return-type">reactor.core.scheduler.Scheduler</span>&nbsp;<span class="element-name">getScheduler</span>()</div>
<dl class="notes">
<dt>Returns:</dt>
<dd>The <code>Scheduler</code> which hosts the threads for the service pool.</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
</ul>
</section>
<!-- ========= END OF CLASS DATA ========= -->
</main>
</div>
</div>
</body>
</html>

View File

@ -0,0 +1,96 @@
<!DOCTYPE HTML>
<html lang="en">
<head>
<!-- Generated by javadoc (17) on Wed Dec 14 11:14:32 CST 2022 -->
<title>io.github.simplexdevelopment.scheduler</title>
<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-14">
<meta name="description" content="declaration: package: io.github.simplexdevelopment.scheduler">
<meta name="generator" content="javadoc/PackageWriterImpl">
<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">
<link rel="stylesheet" type="text/css" href="../../../../jquery-ui.overrides.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>
<script type="text/javascript" src="../../../../script-dir/jquery-3.5.1.min.js"></script>
<script type="text/javascript" src="../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="package-declaration-page">
<script type="text/javascript">var evenRowColor = "even-row-color";
var oddRowColor = "odd-row-color";
var tableTab = "table-tab";
var activeTableTab = "active-table-tab";
var pathtoroot = "../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top">
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../index.html">Overview</a></li>
<li class="nav-bar-cell1-rev">Package</li>
<li>Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../index-files/index-1.html">Index</a></li>
<li><a href="../../../../help-doc.html#package">Help</a></li>
</ul>
</div>
<div class="sub-nav">
<div>
<ul class="sub-nav-list">
<li>Package:&nbsp;</li>
<li>Description&nbsp;|&nbsp;</li>
<li>Related Packages&nbsp;|&nbsp;</li>
<li><a href="#class-summary">Classes and Interfaces</a></li>
</ul>
</div>
<div class="nav-list-search"><label for="search-input">SEARCH:</label>
<input type="text" id="search-input" value="search" disabled="disabled">
<input type="reset" id="reset-button" value="reset" disabled="disabled">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<div class="header">
<h1 title="Package io.github.simplexdevelopment.scheduler" class="title">Package io.github.simplexdevelopment.scheduler</h1>
</div>
<hr>
<div class="package-signature">package <span class="element-name">io.github.simplexdevelopment.scheduler</span></div>
<section class="summary">
<ul class="summary-list">
<li>
<div id="class-summary">
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="class-summary-tab0" role="tab" aria-selected="true" aria-controls="class-summary.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('class-summary', 'class-summary', 2)" class="active-table-tab">All Classes and Interfaces</button><button id="class-summary-tab2" role="tab" aria-selected="false" aria-controls="class-summary.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('class-summary', 'class-summary-tab2', 2)" class="table-tab">Classes</button><button id="class-summary-tab4" role="tab" aria-selected="false" aria-controls="class-summary.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('class-summary', 'class-summary-tab4', 2)" class="table-tab">Record Classes</button></div>
<div id="class-summary.tabpanel" role="tabpanel">
<div class="summary-table two-column-summary" aria-labelledby="class-summary-tab0">
<div class="table-header col-first">Class</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color class-summary class-summary-tab4"><a href="BukkitDisposable.html" title="class in io.github.simplexdevelopment.scheduler">BukkitDisposable</a></div>
<div class="col-last even-row-color class-summary class-summary-tab4">&nbsp;</div>
<div class="col-first odd-row-color class-summary class-summary-tab4"><a href="ReactorBukkitScheduler.html" title="class in io.github.simplexdevelopment.scheduler">ReactorBukkitScheduler</a></div>
<div class="col-last odd-row-color class-summary class-summary-tab4">&nbsp;</div>
<div class="col-first even-row-color class-summary class-summary-tab2"><a href="SchedulingSystem.html" title="class in io.github.simplexdevelopment.scheduler">SchedulingSystem</a>&lt;T extends org.bukkit.plugin.java.JavaPlugin&gt;</div>
<div class="col-last even-row-color class-summary class-summary-tab2">&nbsp;</div>
<div class="col-first odd-row-color class-summary class-summary-tab2"><a href="ServiceManager.html" title="class in io.github.simplexdevelopment.scheduler">ServiceManager</a></div>
<div class="col-last odd-row-color class-summary class-summary-tab2">&nbsp;</div>
<div class="col-first even-row-color class-summary class-summary-tab2"><a href="ServicePool.html" title="class in io.github.simplexdevelopment.scheduler">ServicePool</a></div>
<div class="col-last even-row-color class-summary class-summary-tab2">&nbsp;</div>
</div>
</div>
</div>
</li>
</ul>
</section>
</main>
</div>
</div>
</body>
</html>

View File

@ -0,0 +1,79 @@
<!DOCTYPE HTML>
<html lang="en">
<head>
<!-- Generated by javadoc (17) on Wed Dec 14 11:14:32 CST 2022 -->
<title>io.github.simplexdevelopment.scheduler Class Hierarchy</title>
<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-14">
<meta name="description" content="tree: package: io.github.simplexdevelopment.scheduler">
<meta name="generator" content="javadoc/PackageTreeWriter">
<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">
<link rel="stylesheet" type="text/css" href="../../../../jquery-ui.overrides.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>
<script type="text/javascript" src="../../../../script-dir/jquery-3.5.1.min.js"></script>
<script type="text/javascript" src="../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="package-tree-page">
<script type="text/javascript">var pathtoroot = "../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top">
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li>Class</li>
<li class="nav-bar-cell1-rev">Tree</li>
<li><a href="../../../../index-files/index-1.html">Index</a></li>
<li><a href="../../../../help-doc.html#tree">Help</a></li>
</ul>
</div>
<div class="sub-nav">
<div class="nav-list-search"><label for="search-input">SEARCH:</label>
<input type="text" id="search-input" value="search" disabled="disabled">
<input type="reset" id="reset-button" value="reset" disabled="disabled">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<div class="header">
<h1 class="title">Hierarchy For Package io.github.simplexdevelopment.scheduler</h1>
<span class="package-hierarchy-label">Package Hierarchies:</span>
<ul class="horizontal">
<li><a href="../../../../overview-tree.html">All Packages</a></li>
</ul>
</div>
<section class="hierarchy">
<h2 title="Class Hierarchy">Class Hierarchy</h2>
<ul>
<li class="circle">java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" class="type-name-link external-link" title="class or interface in java.lang">Object</a>
<ul>
<li class="circle">java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Record.html" class="type-name-link external-link" title="class or interface in java.lang">Record</a>
<ul>
<li class="circle">io.github.simplexdevelopment.scheduler.<a href="BukkitDisposable.html" class="type-name-link" title="class in io.github.simplexdevelopment.scheduler">BukkitDisposable</a> (implements reactor.core.Disposable)</li>
<li class="circle">io.github.simplexdevelopment.scheduler.<a href="ReactorBukkitScheduler.html" class="type-name-link" title="class in io.github.simplexdevelopment.scheduler">ReactorBukkitScheduler</a> (implements reactor.core.scheduler.Scheduler, reactor.core.scheduler.Scheduler.Worker)</li>
</ul>
</li>
<li class="circle">io.github.simplexdevelopment.scheduler.<a href="SchedulingSystem.html" class="type-name-link" title="class in io.github.simplexdevelopment.scheduler">SchedulingSystem</a>&lt;T&gt; (implements io.github.simplexdevelopment.api.<a href="../api/ISchedule.html" title="interface in io.github.simplexdevelopment.api">ISchedule</a>)</li>
<li class="circle">io.github.simplexdevelopment.scheduler.<a href="ServiceManager.html" class="type-name-link" title="class in io.github.simplexdevelopment.scheduler">ServiceManager</a></li>
<li class="circle">io.github.simplexdevelopment.scheduler.<a href="ServicePool.html" class="type-name-link" title="class in io.github.simplexdevelopment.scheduler">ServicePool</a></li>
</ul>
</li>
</ul>
</section>
</main>
</div>
</div>
</body>
</html>