ProtocolLib/Javadoc/com/comphenix/protocol/AsynchronousManager.html
2013-01-22 13:29:54 +01:00

434 lines
20 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (version 1.7.0_07) on Tue Jan 22 13:27:26 CET 2013 -->
<title>AsynchronousManager</title>
<meta name="date" content="2013-01-22">
<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
</head>
<body>
<script type="text/javascript"><!--
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="AsynchronousManager";
}
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar_top">
<!-- -->
</a><a href="#skip-navbar_top" title="Skip navigation links"></a><a name="navbar_top_firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/AsynchronousManager.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../index-files/index-1.html">Index</a></li>
<li><a href="../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../com/comphenix/protocol/Application.html" title="class in com.comphenix.protocol"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../com/comphenix/protocol/Packets.html" title="class in com.comphenix.protocol"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../index.html?com/comphenix/protocol/AsynchronousManager.html" target="_top">Frames</a></li>
<li><a href="AsynchronousManager.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method_detail">Method</a></li>
</ul>
</div>
<a name="skip-navbar_top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">com.comphenix.protocol</div>
<h2 title="Interface AsynchronousManager" class="title">Interface AsynchronousManager</h2>
</div>
<div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Known Implementing Classes:</dt>
<dd><a href="../../../com/comphenix/protocol/async/AsyncFilterManager.html" title="class in com.comphenix.protocol.async">AsyncFilterManager</a></dd>
</dl>
<hr>
<br>
<pre>public interface <span class="strong">AsynchronousManager</span></pre>
<div class="block">Represents a asynchronous packet handler.</div>
<dl><dt><span class="strong">Author:</span></dt>
<dd>Kristian</dd></dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method_summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span>Methods</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../com/comphenix/protocol/AsynchronousManager.html#cleanupAll()">cleanupAll</a></strong>()</code>
<div class="block">Remove listeners, close threads and transmit every delayed packet.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../com/comphenix/protocol/error/ErrorReporter.html" title="interface in com.comphenix.protocol.error">ErrorReporter</a></code></td>
<td class="colLast"><code><strong><a href="../../../com/comphenix/protocol/AsynchronousManager.html#getErrorReporter()">getErrorReporter</a></strong>()</code>
<div class="block">Retrieve the default error reporter.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../com/comphenix/protocol/PacketStream.html" title="interface in com.comphenix.protocol">PacketStream</a></code></td>
<td class="colLast"><code><strong><a href="../../../com/comphenix/protocol/AsynchronousManager.html#getPacketStream()">getPacketStream</a></strong>()</code>
<div class="block">Retrieve the default packet stream.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>java.util.Set&lt;java.lang.Integer&gt;</code></td>
<td class="colLast"><code><strong><a href="../../../com/comphenix/protocol/AsynchronousManager.html#getReceivingFilters()">getReceivingFilters</a></strong>()</code>
<div class="block">Retrieves a immutable set containing the ID of the recieved client packets that will be
observed by the asynchronous listeners.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>java.util.Set&lt;java.lang.Integer&gt;</code></td>
<td class="colLast"><code><strong><a href="../../../com/comphenix/protocol/AsynchronousManager.html#getSendingFilters()">getSendingFilters</a></strong>()</code>
<div class="block">Retrieves a immutable set containing the ID of the sent server packets that will be
observed by the asynchronous listeners.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>java.util.Set&lt;<a href="../../../com/comphenix/protocol/events/PacketListener.html" title="interface in com.comphenix.protocol.events">PacketListener</a>&gt;</code></td>
<td class="colLast"><code><strong><a href="../../../com/comphenix/protocol/AsynchronousManager.html#getTimeoutHandlers()">getTimeoutHandlers</a></strong>()</code>
<div class="block">Get a immutable list of every registered timeout handler.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../com/comphenix/protocol/AsynchronousManager.html#hasAsynchronousListeners(com.comphenix.protocol.events.PacketEvent)">hasAsynchronousListeners</a></strong>(<a href="../../../com/comphenix/protocol/events/PacketEvent.html" title="class in com.comphenix.protocol.events">PacketEvent</a>&nbsp;packet)</code>
<div class="block">Determine if a given synchronous packet has asynchronous listeners.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../com/comphenix/protocol/async/AsyncListenerHandler.html" title="class in com.comphenix.protocol.async">AsyncListenerHandler</a></code></td>
<td class="colLast"><code><strong><a href="../../../com/comphenix/protocol/AsynchronousManager.html#registerAsyncHandler(com.comphenix.protocol.events.PacketListener)">registerAsyncHandler</a></strong>(<a href="../../../com/comphenix/protocol/events/PacketListener.html" title="interface in com.comphenix.protocol.events">PacketListener</a>&nbsp;listener)</code>
<div class="block">Registers an asynchronous packet handler.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../com/comphenix/protocol/AsynchronousManager.html#registerTimeoutHandler(com.comphenix.protocol.events.PacketListener)">registerTimeoutHandler</a></strong>(<a href="../../../com/comphenix/protocol/events/PacketListener.html" title="interface in com.comphenix.protocol.events">PacketListener</a>&nbsp;listener)</code>
<div class="block">Register a synchronous listener that handles packets when they time out.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../com/comphenix/protocol/AsynchronousManager.html#signalPacketTransmission(com.comphenix.protocol.events.PacketEvent)">signalPacketTransmission</a></strong>(<a href="../../../com/comphenix/protocol/events/PacketEvent.html" title="class in com.comphenix.protocol.events">PacketEvent</a>&nbsp;packet)</code>
<div class="block">Signal that a packet is ready to be transmitted.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../com/comphenix/protocol/AsynchronousManager.html#unregisterAsyncHandler(com.comphenix.protocol.async.AsyncListenerHandler)">unregisterAsyncHandler</a></strong>(<a href="../../../com/comphenix/protocol/async/AsyncListenerHandler.html" title="class in com.comphenix.protocol.async">AsyncListenerHandler</a>&nbsp;handler)</code>
<div class="block">Unregisters and closes the given asynchronous handler.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../com/comphenix/protocol/AsynchronousManager.html#unregisterAsyncHandlers(org.bukkit.plugin.Plugin)">unregisterAsyncHandlers</a></strong>(org.bukkit.plugin.Plugin&nbsp;plugin)</code>
<div class="block">Unregisters every asynchronous handler associated with this plugin.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../com/comphenix/protocol/AsynchronousManager.html#unregisterTimeoutHandler(com.comphenix.protocol.events.PacketListener)">unregisterTimeoutHandler</a></strong>(<a href="../../../com/comphenix/protocol/events/PacketListener.html" title="interface in com.comphenix.protocol.events">PacketListener</a>&nbsp;listener)</code>
<div class="block">Unregisters a given timeout listener.</div>
</td>
</tr>
</table>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method_detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="registerAsyncHandler(com.comphenix.protocol.events.PacketListener)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>registerAsyncHandler</h4>
<pre><a href="../../../com/comphenix/protocol/async/AsyncListenerHandler.html" title="class in com.comphenix.protocol.async">AsyncListenerHandler</a>&nbsp;registerAsyncHandler(<a href="../../../com/comphenix/protocol/events/PacketListener.html" title="interface in com.comphenix.protocol.events">PacketListener</a>&nbsp;listener)</pre>
<div class="block">Registers an asynchronous packet handler.
<p>
Use <a href="../../../com/comphenix/protocol/async/AsyncMarker.html#incrementProcessingDelay()"><code>AsyncMarker.incrementProcessingDelay()</code></a> to delay a packet until its ready to be transmitted.
<p>
To start listening asynchronously, pass the getListenerLoop() runnable to a different thread.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>listener</code> - - the packet listener that will recieve these asynchronous events.</dd>
<dt><span class="strong">Returns:</span></dt><dd>An asynchrouns handler.</dd></dl>
</li>
</ul>
<a name="unregisterAsyncHandler(com.comphenix.protocol.async.AsyncListenerHandler)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>unregisterAsyncHandler</h4>
<pre>void&nbsp;unregisterAsyncHandler(<a href="../../../com/comphenix/protocol/async/AsyncListenerHandler.html" title="class in com.comphenix.protocol.async">AsyncListenerHandler</a>&nbsp;handler)</pre>
<div class="block">Unregisters and closes the given asynchronous handler.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>handler</code> - - asynchronous handler.</dd></dl>
</li>
</ul>
<a name="unregisterAsyncHandlers(org.bukkit.plugin.Plugin)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>unregisterAsyncHandlers</h4>
<pre>void&nbsp;unregisterAsyncHandlers(org.bukkit.plugin.Plugin&nbsp;plugin)</pre>
<div class="block">Unregisters every asynchronous handler associated with this plugin.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>plugin</code> - - the original plugin.</dd></dl>
</li>
</ul>
<a name="getSendingFilters()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSendingFilters</h4>
<pre>java.util.Set&lt;java.lang.Integer&gt;&nbsp;getSendingFilters()</pre>
<div class="block">Retrieves a immutable set containing the ID of the sent server packets that will be
observed by the asynchronous listeners.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Every filtered server packet.</dd></dl>
</li>
</ul>
<a name="getReceivingFilters()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getReceivingFilters</h4>
<pre>java.util.Set&lt;java.lang.Integer&gt;&nbsp;getReceivingFilters()</pre>
<div class="block">Retrieves a immutable set containing the ID of the recieved client packets that will be
observed by the asynchronous listeners.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Every filtered client packet.</dd></dl>
</li>
</ul>
<a name="hasAsynchronousListeners(com.comphenix.protocol.events.PacketEvent)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasAsynchronousListeners</h4>
<pre>boolean&nbsp;hasAsynchronousListeners(<a href="../../../com/comphenix/protocol/events/PacketEvent.html" title="class in com.comphenix.protocol.events">PacketEvent</a>&nbsp;packet)</pre>
<div class="block">Determine if a given synchronous packet has asynchronous listeners.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>packet</code> - - packet to test.</dd>
<dt><span class="strong">Returns:</span></dt><dd>TRUE if it does, FALSE otherwise.</dd></dl>
</li>
</ul>
<a name="getPacketStream()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPacketStream</h4>
<pre><a href="../../../com/comphenix/protocol/PacketStream.html" title="interface in com.comphenix.protocol">PacketStream</a>&nbsp;getPacketStream()</pre>
<div class="block">Retrieve the default packet stream.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Default packet stream.</dd></dl>
</li>
</ul>
<a name="getErrorReporter()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getErrorReporter</h4>
<pre><a href="../../../com/comphenix/protocol/error/ErrorReporter.html" title="interface in com.comphenix.protocol.error">ErrorReporter</a>&nbsp;getErrorReporter()</pre>
<div class="block">Retrieve the default error reporter.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Default reporter.</dd></dl>
</li>
</ul>
<a name="cleanupAll()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>cleanupAll</h4>
<pre>void&nbsp;cleanupAll()</pre>
<div class="block">Remove listeners, close threads and transmit every delayed packet.</div>
</li>
</ul>
<a name="signalPacketTransmission(com.comphenix.protocol.events.PacketEvent)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>signalPacketTransmission</h4>
<pre>void&nbsp;signalPacketTransmission(<a href="../../../com/comphenix/protocol/events/PacketEvent.html" title="class in com.comphenix.protocol.events">PacketEvent</a>&nbsp;packet)</pre>
<div class="block">Signal that a packet is ready to be transmitted.
<p>
This should only be called if <a href="../../../com/comphenix/protocol/async/AsyncMarker.html#incrementProcessingDelay()"><code>AsyncMarker.incrementProcessingDelay()</code></a>
has been called previously.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>packet</code> - - packet to signal.</dd></dl>
</li>
</ul>
<a name="registerTimeoutHandler(com.comphenix.protocol.events.PacketListener)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>registerTimeoutHandler</h4>
<pre>void&nbsp;registerTimeoutHandler(<a href="../../../com/comphenix/protocol/events/PacketListener.html" title="interface in com.comphenix.protocol.events">PacketListener</a>&nbsp;listener)</pre>
<div class="block">Register a synchronous listener that handles packets when they time out.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>listener</code> - - synchronous listener that will handle timed out packets.</dd></dl>
</li>
</ul>
<a name="unregisterTimeoutHandler(com.comphenix.protocol.events.PacketListener)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>unregisterTimeoutHandler</h4>
<pre>void&nbsp;unregisterTimeoutHandler(<a href="../../../com/comphenix/protocol/events/PacketListener.html" title="interface in com.comphenix.protocol.events">PacketListener</a>&nbsp;listener)</pre>
<div class="block">Unregisters a given timeout listener.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>listener</code> - - the timeout listener to unregister.</dd></dl>
</li>
</ul>
<a name="getTimeoutHandlers()">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>getTimeoutHandlers</h4>
<pre>java.util.Set&lt;<a href="../../../com/comphenix/protocol/events/PacketListener.html" title="interface in com.comphenix.protocol.events">PacketListener</a>&gt;&nbsp;getTimeoutHandlers()</pre>
<div class="block">Get a immutable list of every registered timeout handler.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>List of every registered timeout handler.</dd></dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar_bottom">
<!-- -->
</a><a href="#skip-navbar_bottom" title="Skip navigation links"></a><a name="navbar_bottom_firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/AsynchronousManager.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../index-files/index-1.html">Index</a></li>
<li><a href="../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../com/comphenix/protocol/Application.html" title="class in com.comphenix.protocol"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../com/comphenix/protocol/Packets.html" title="class in com.comphenix.protocol"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../index.html?com/comphenix/protocol/AsynchronousManager.html" target="_top">Frames</a></li>
<li><a href="AsynchronousManager.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method_detail">Method</a></li>
</ul>
</div>
<a name="skip-navbar_bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</body>
</html>